Skip to content

Instantly share code, notes, and snippets.

@kballenegger
Created August 4, 2014 05:21
Show Gist options
  • Save kballenegger/b05a41a1ed29595fbdae to your computer and use it in GitHub Desktop.
Save kballenegger/b05a41a1ed29595fbdae to your computer and use it in GitHub Desktop.
Scout plugin.
#!/usr/bin/env ruby
require 'scout_api'
group_name = ARGV[0]
Scout::Account.new('chartboost', 'kenneth@chartboost.com', '...')
all_servers = Scout::Server.all(group_name: 'API')
loads = all_servers.map do |server|
last_five_minutes = server.metrics.average(name: 'Server Load/last_five_minutes')
last_fifteen_minutes = server.metrics.average(name: 'Server Load/last_fifteen_minutes')
((last_five_minutes['value'] + last_fifteen_minutes['value']) / 2) || -1
end.select {|i| i >= 0 }
avg = loads.reduce(&:+) / loads.count
puts avg
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment