diff --git a/src/sunstone/models/SunstoneServer.rb b/src/sunstone/models/SunstoneServer.rb index 1c810f7265..165f758669 100644 --- a/src/sunstone/models/SunstoneServer.rb +++ b/src/sunstone/models/SunstoneServer.rb @@ -231,7 +231,7 @@ class SunstoneServer ############################################################################ # ############################################################################ - def get_monitoring(id, resource, monitor_resources, gid) + def get_monitoring(id, resource, monitor_resources, opts={}) watch_client = case resource when "vm","VM" OneWatchClient::VmWatchClient.new @@ -242,13 +242,16 @@ class SunstoneServer return [200, error.to_json] end + filter = {} + filter[:uid] = opts[:uid] if opts[:gid]!="0" + columns = monitor_resources.split(',') columns.map!{|e| e.to_sym} if id - rc = watch_client.resource_monitoring(id.to_i, columns) + rc = watch_client.resource_monitoring(id.to_i, columns, filter) else - rc = watch_client.total_monitoring(columns) + rc = watch_client.total_monitoring(columns, filter) end if rc.nil? diff --git a/src/sunstone/sunstone-server.rb b/src/sunstone/sunstone-server.rb index 156c302248..2e09422136 100755 --- a/src/sunstone/sunstone-server.rb +++ b/src/sunstone/sunstone-server.rb @@ -269,7 +269,8 @@ get '/:resource/monitor' do nil, params[:resource], params[:monitor_resources], - session[:user_gid]) + :uid => session[:user_id], + :gid => session[:user_gid]) end get '/:resource/:id/monitor' do @@ -277,7 +278,8 @@ get '/:resource/:id/monitor' do params[:id], params[:resource], params[:monitor_resources], - session[:user_gid]) + :uid => session[:user_id], + :gid => session[:user_gid]) end