From 0fccb484551ba91a7ea0755bc540194cb7c3ff0a Mon Sep 17 00:00:00 2001 From: Scott Schneider Date: Tue, 11 Feb 2014 14:05:31 -0800 Subject: [PATCH] Standardize 'running' dashboard API output --- public/lib/stats-vcloud-running.js | 16 +++++++++++----- vmware-host-pooler-api | 5 +++-- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/public/lib/stats-vcloud-running.js b/public/lib/stats-vcloud-running.js index 6a1e3ba..cabb4d4 100644 --- a/public/lib/stats-vcloud-running.js +++ b/public/lib/stats-vcloud-running.js @@ -36,7 +36,7 @@ d3.json( running_url, var stats_vcloud_running__data__total__tmp = 0; 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 ); 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 = {}; - if ( typeof stats_vcloud_running__data[ 'stack' ] === 'undefined' ) { - stats_vcloud_running__data[ 'stack' ] = []; - } + if ( typeof stats_vcloud_running__data[ 'stack' ] === 'undefined' ) { + 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( stats_vcloud_running__data__keys.sort().map( diff --git a/vmware-host-pooler-api b/vmware-host-pooler-api index 10350d1..84b78b7 100755 --- a/vmware-host-pooler-api +++ b/vmware-host-pooler-api @@ -115,10 +115,11 @@ get '/dashboard/stats/vcloud/running' do config[:pools].each do |pool| running = $redis.scard( 'vmware_host_pool__running__' + pool['name'] ) - 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 content_type :json