Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Plugins for the Scout Server Monitoring and Reporting Tool
Ruby Other

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
amazon_s3 Rename things so they sort better
amazon_ses_quota added ses stats, renamed old ses to ses_quota
amazon_ses_stats added ses stats, renamed old ses to ses_quota
amazon_sqs created new sqs status plugin, moved old to archive
apache2_status fixed typo in yaml
apache_analyzer fix bug in apache analyzer
apache_load Added test
asterisk_monitoring updates to mysql slow queries to handle utc, added initial asterisk p…
beanstalkd_monitoring label update
celery_overall Consistent naming btw directories, plugin files, and class names, cha…
celery_task_details Consistent naming btw directories, plugin files, and class names, cha…
celery_tasks Consistent naming btw directories, plugin files, and class names, cha…
ceph fix broken yaml after ruby 1.9 upgrade
check_timestamp fix check_timestamp test
cloudkick_wrapper Add Cloudkick plugin wrapper
couchbase_stats Adding couchbase stats plugin.
couchdb_database_monitoring Added authentication options (click advanced settings)
couchdb_overall_monitoring Better error message for Errno::ECONNREFUSED
cpu_usage Just reporting steal and not guest metrics, updating tests, cleaning …
delayed_job Fix AR 2.x find syntax for delayed_job
disk_inode_usage converting to integers to remove '%'
disk_usage tighten up capacity field requirements
docker_monitor better error message if stats API is unreadable
ec2_cloudwatch fix broken yaml after ruby 1.9 upgrade
ec2_monitor Merge branch 'master' of i…
elasticsearch_cluster_status Added query rate / time metadata
elasticsearch_index_status adds metadata for query rate + time
elasticsearch_node_status divide-by-zero error in elasticsearch node status
environment_check changed wording
exim added Exim plugin
file_stat Alert only on status change for file_stat
freeradius_stats min_value should be low_value
galera_cluster_status Adds local_recv_queue and local_send_queue.
gearman_overview task to job
gearman_task Added gearman plugins.
generic_json_uri Forgot to commit the test file.
generic_shell_command added generic shell command plugin
haproxy_monitoring Add option for OpenSSL::SSL::VERIFY_NONE to haproxy_monitoring plugin
heroku_dataclip Comment fix in heroku_dataclip
innodb_stats remove unnecessary rescue from innodb stats
iostat Use absolute value to iostat wait calculation
java_heap cleaned up error handling
jmx_agent Report the exception when the JMX command fails
jstat removed puts debugging line
kestrel_overall Deal with cases where the stats aren't available
kestrel_queue Deal with cases where the stats aren't available
load_averages using all caps for LANG
log_watcher Revert "Fix logwatcher to safely run on first run and log truncation"
logstash_elasticsearch_canary using status code if present
lxc_monitor docker support for the docker plugin
mail_monitor added mailq monitor
mdstat Mdstat detects down disks
memcached_stats Cleaned up the `memcached_stats` plugin and added test
memory_profiler fix broken yaml after ruby 1.9 upgrade
mk_heartbeat added mk_heatbeat from Matt Griffith
mod_pagespeed_monitoring Support for parsing mod_pagespeed tags when they are embedded inside …
mongo_database_stats Updates mongo_database_stats, compatible with mongo gem < 2.0 and the…
mongo_replicaset_monitoring Revert "Revert "any occurance of the word "alert" adds an internal al…
mongo_server_status adding new config parameters to the Mongo::Connection initialization
mongo_slow_queries connect_timeout and op_timeout options for other mongo plugins. btw, …
mongrel_cluster_monitor report exceptions
mpstat fix broken yaml after ruby 1.9 upgrade
mysql2_replication_monitor mysql replication bug
mysql_buffer_pool_stats A bunch of new MySQL global status tracking plugins.
mysql_data_log A bunch of new MySQL global status tracking plugins.
mysql_extra_stats A bunch of new MySQL global status tracking plugins.
mysql_handler_stats A bunch of new MySQL global status tracking plugins.
mysql_innodb_rows A bunch of new MySQL global status tracking plugins.
mysql_mmm initial mysql mmm monitor
mysql_query_statistics removed unnecessary require
mysql_replication_monitor new mysql2 replication monitor plugin
mysql_slow_queries set min value to 5 slow queries /min
mysql_sort_select A bunch of new MySQL global status tracking plugins.
mysql_thread_pool_monitor added start of nginx test
nagios_check_raid Fixing options
nagios_wrapper Error handling in nagios_wrapper
netfilter_conntrack Renamed plugin and handle errors in netfilter_conntrack
network_connections don't distinquish between ip4 and ip6 connections
network_throughput changed /proc/ access to cat -- workaround for http://blade.nagaokaut…
nfs_monitoring Added metadata, handling zero connections
nginx_report consistent formatting
nsq_monitor added topic + channel names to error messages, using precision=0
ntp_time Added NTP Time Metadata
ntpstat Use the original key for synchronized in ntpstat
opsource_cloud_files updated to use x-client-specification header to account for issues wh…
overview_with_alerts fix broken yaml after ruby 1.9 upgrade
passenger added passenger 4 support
passenger_memory_stats Ignoring invalid byte sequence exceptions
passenger_status Ruby 1.9.1 compatibility
percona_heartbeat added metadata file & renamed plugin file
php_fpm_status Added metadata, changed message to an error, removed old fpm plugin
ping added simple ping plugin
postgresql_monitoring fix broken metadata for postgresql monitoring
postgresql_replication Adds a plugin to monitor PostgreSQL replication.
powermta_stats moved options in-line and changed require to 'needs'
process_usage Made ignore window an advanced option, renamed directory for clarity
puppet_last_run handling empty puppet file
rabbitmq_overall removing --- from metadata
rabbitmq_queue_details Check for vhost option in order to avoid runtime exception if vhost i…
rails_app_data_example Updated our Rails app data example
rails_requests Remove extra lines from rails_requests test.rb
redis-info redis info: units and updated flow
resque_stats report the number of stored backtraces
riak_stats-core updating riak_stats; adding riak_stats-core and riak_stats-fsm. no te…
riak_stats-fsm updating riak_stats; adding riak_stats-core and riak_stats-fsm. no te…
riak_stats updating riak_stats; adding riak_stats-core and riak_stats-fsm. no te…
rrd_cached switching to unix socket
sidekiq_monitor update to work with sidekiq 3.0
simple_port_check Removed default ports, added error when no ports
simple_process_check Add notes about memory naming, undo metric name change in simplre pro…
solr_replication single plugin options for master and slave, more error message cleanu…
solr_stats reformat metric names and add labels for solr_stats
sphinx_monitor ignore badly formatted lines in sphinx log
ssl_cert_expiration add yaml
ssl_monitor fix bug with delete from date string
stale_daemon_monitor monitor a collection of process names
starling_monitor Removed error rescue so full backtrace comes thru, remove alert logic…
swappiness using native counters
tcp_socket_state Added more plugins
tomcat_monitor fixing exception logging
tungsten Fixed an issue with datasources alert
url_monitor Makes the Request Body Type an advanced attribute
uwsgi_monitoring add labels and precision to uwgsi monitoring
varnish handle nil varnish path - take two
vertica_query_metrics using current session table
zookeeper_info Fixing typo
zz_archive fix broken yaml
.gitignore add ruby-version to gitignore
Gemfile Allow the plugin to read a default file
Gemfile.lock Changing `source :rubygems` to use HTTPS.
MIT-LICENSE Added MIT License typo in readme
Rakefile added rakefile to automatically run all plugin test.rb tests
test_helper.rb elasticsearch node name defaults to hostname

Scout Plugins Library

Scout is a hosted monitoring solution. Scout uses open-source plugins (written in Ruby) to monitor a wide variety of system, OS, and application metrics.

Each folder in this repository represents one Scout plugin.

Gem Dependencies

This repo contains a Gemfile to use with bundler to install needed Gems for tests and the plugins themselves.

If you don't have Bundler:

gem install bundler

Once Bundler is installed:

bundle install

How to Make your own Scout plugin

Anyone can create a Scout plugin. Get started by:

  1. looking at the examples in this Repository
  2. reading the development guide at

When you have something working you'd like to share, drop us a note at

Or, send us a pull request here on github. Also don't hesitate to contact us before or during plugin development if you need guidance.

A note on tests

Plugin tests are key. Read up on plugin testing at

We prefer test/unit for its ubiquity and simplicity.

Something went wrong with that request. Please try again.