Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Scout your data out of Scout

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 lib
Octocat-spinner-32 spec
Octocat-spinner-32 .document
Octocat-spinner-32 .gitignore
Octocat-spinner-32 Gemfile
Octocat-spinner-32 Gemfile.lock
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.rdoc
Octocat-spinner-32 Rakefile
Octocat-spinner-32 scout_scout.gemspec
README.rdoc

scout_scout

A library for interacting with Scout, a hosted monitoring service.

require 'scout_scout'
scout = ScoutScout.new('youraccountname', 'your@awesome.com', '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)

#detauls on that server's triggers
ram_hungry_triggers = ram_hungry.triggers

#details about triggers for a specific plugin
plugin_triggers = ram_hungry.plugin(12345).triggers

#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')

#create a server using the server with id=6 as the template.
ScoutScout::Server.create('heavy metal',:id => 6) => <#ScoutScout::Server>

#delete the server with id=10
ScoutScout::Server.delete(10) => true

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

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

Something went wrong with that request. Please try again.