Standardize 'running' dashboard API output

This commit is contained in:
Scott Schneider 2014-02-11 14:05:31 -08:00
parent c8988c3dbf
commit 0fccb48455
2 changed files with 14 additions and 7 deletions

View file

@ -36,7 +36,7 @@ d3.json( running_url,
var stats_vcloud_running__data__total__tmp = 0; var stats_vcloud_running__data__total__tmp = 0;
for ( var key in stats_vcloud_running__data__live ) { for ( var key in stats_vcloud_running__data__live ) {
stats_vcloud_running__data__total__tmp = stats_vcloud_running__data__total__tmp + stats_vcloud_running__data__live[ key ]; stats_vcloud_running__data__total__tmp = stats_vcloud_running__data__total__tmp + stats_vcloud_running__data__live[ key ][ 'running' ];
stats_vcloud_running__data__keys.push( key ); stats_vcloud_running__data__keys.push( key );
for ( var c = 0; c < Object.keys(stats_vcloud_running__data__keys).length; c++ ) { color[key] = colorscale( c ); } for ( var c = 0; c < Object.keys(stats_vcloud_running__data__keys).length; c++ ) { color[key] = colorscale( c ); }
} }
@ -64,11 +64,17 @@ d3.json( running_url,
var stats_vcloud_running__data__stack = {}; var stats_vcloud_running__data__stack = {};
if ( typeof stats_vcloud_running__data[ 'stack' ] === 'undefined' ) { if ( typeof stats_vcloud_running__data[ 'stack' ] === 'undefined' ) {
stats_vcloud_running__data[ 'stack' ] = []; stats_vcloud_running__data[ 'stack' ] = [];
} }
stats_vcloud_running__data[ 'stack' ].push( stats_vcloud_running__data__live ); stats_vcloud_running__data[ 'tmp' ] = {};
for ( var key in stats_vcloud_running__data__live ) {
stats_vcloud_running__data[ 'tmp' ][ key ] = stats_vcloud_running__data__live[ key ][ 'running' ];
}
stats_vcloud_running__data[ 'stack' ].push( stats_vcloud_running__data[ 'tmp' ] );
var stats_vcloud_running__data__graph = stack( var stats_vcloud_running__data__graph = stack(
stats_vcloud_running__data__keys.sort().map( stats_vcloud_running__data__keys.sort().map(

View file

@ -115,10 +115,11 @@ get '/dashboard/stats/vcloud/running' do
config[:pools].each do |pool| config[:pools].each do |pool|
running = $redis.scard( 'vmware_host_pool__running__' + pool['name'] ) running = $redis.scard( 'vmware_host_pool__running__' + pool['name'] )
pool['major'] = $1 if pool['name'] =~ /^(\w+)\-/ pool['major'] = $1 if pool['name'] =~ /^(\w+)\-/
result[pool['major']] = result[pool['major']].to_i + running.to_i result[pool['major']] ||= Hash.new
result[pool['major']]['running'] = result[pool['major']]['running'].to_i + running.to_i
end end
content_type :json content_type :json