@@ -125,11 +125,14 @@ def show( path_names )
125
125
connect_for ( zone ) do |con |
126
126
db = con . db ( db_name )
127
127
info [ :links ] [ :manage ] = "/databases/1"
128
- info [ :size ] = to_mb ( con . database_info [ db_name ] )
129
- # info[:node] = db.nodes
130
- info [ :collections ] = collection_names ( db ) . size
131
- info [ :error ] = db . error
132
- info [ :last_status ] = db . last_status
128
+ info . merge! ( db . stats )
129
+ info [ 'dataSize' ] = to_mb ( info [ 'dataSize' ] )
130
+ info [ 'storageSize' ] = to_mb ( info [ 'storageSize' ] )
131
+ info [ 'avgObjSize' ] = to_mb ( info [ 'avgObjSize' ] )
132
+ info [ 'fileSize' ] = to_mb ( info [ 'fileSize' ] )
133
+ info [ 'indexSize' ] = to_mb ( info [ 'indexSize' ] )
134
+ info . delete ( 'ok' )
135
+ info [ :errors ] = db . error?
133
136
end
134
137
elsif path_name_tokens . size == 4
135
138
cltn_name = path_name_tokens . pop
@@ -183,7 +186,7 @@ def paginate_cltn( path_names, query_params=[{},[]], page=1, per_page=10 )
183
186
db = con . db ( db_name )
184
187
cltn = db [ cltn_name ]
185
188
count = cltn . find ( query_params . first ) . count
186
-
189
+ puts "Count #{ count } -- #{ query_params . first } "
187
190
list = WillPaginate ::Collection . create ( page , per_page , count ) do |pager |
188
191
offset = ( page -1 ) *per_page
189
192
sort = query_params . last . empty? ? [ [ '_id' , Mongo ::DESCENDING ] ] : query_params . last
@@ -198,7 +201,8 @@ def paginate_cltn( path_names, query_params=[{},[]], page=1, per_page=10 )
198
201
results = cltn . find ( query ,
199
202
:sort => sort ,
200
203
:skip => offset ,
201
- :limit => per_page ) . to_a
204
+ :limit => per_page ) . to_a
205
+ puts "RESULTS #{ results . count } "
202
206
pager . replace ( results )
203
207
end
204
208
end
@@ -426,8 +430,8 @@ def connect_for( zone, &block )
426
430
yield con
427
431
con . close ( )
428
432
rescue => boom
429
- # puts boom
430
- # puts boom.backtrace.each {|l| puts l }
433
+ puts boom
434
+ puts boom . backtrace . each { |l | puts l }
431
435
raise "MongoDB connection failed for `#{ @info [ 'host' ] . inspect } :#{ @info [ 'port' ] . inspect } with #{ boom } "
432
436
end
433
437
end
@@ -456,10 +460,10 @@ def format_indexes( indexes )
456
460
end
457
461
458
462
# Convert size to mb
459
- def to_mb ( val )
463
+ def to_mb ( val )
460
464
return 0 unless val
461
- return val if val < 1_000_000
462
- "#{ format_number ( val /1_000_000 ) } Mb"
465
+ return ( "%5.2f" % val ) if val < 1_000_000
466
+ "%5.2f Mb" % ( val /1_000_000.0 )
463
467
end
464
468
465
469
# Add thousand markers
0 commit comments