scout_scout

A library for extracting data out of Scout, a hosted monitoring service. This is experimental and likely to change.

require 'scout_scout'
scout = ScoutScout.new('youraccountname', '[email protected]', 'sekret')

#all your servers
servers = scout.servers

#one specific server - pass in hostname
ram_hungry = ScoutScout::Server.first('db1.awesome.com')

#all servers that match the hostname.
# see mysql regex formatting: http://dev.mysql.com/doc/refman/5.0/en/regexp.html
app_servers = ScoutScout::Server.all(:host => 'db[0-9]*.awesome.com')

#details on that server's plugins
ram_hungry_plugins = ram_hungry.plugins

#details about a specific plugin
data = ram_hungry.plugin(12345)

#all available descriptors
descriptors = ScoutScout::Descriptor.all

# all descriptors on servers that match the provided host
descriptors = ScoutScout::Descriptor.all(:host => 'awesome.com')

#cluster metrics
ScoutScout::Cluster.average('mem_used')

Metrics

The library allows you to extract aggregate metrics across all and/or selected servers in your account. See Cluster#average for information and examples.

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2010 Jesse Newland, Derek Haynes. See LICENSE for details.