This is the blog for Scout, simple server monitoring powered by plugins. From request times to memory usage, put your monitoring in one place. Install in minutes.

"Plugins" Posts


Sidekiq and Puppet Monitoring Plugins = 70+ plugins strong!

Posted in Plugins | Comments Comments

With the Sidekiq Monitor Plugin (by Scott Klein of StatusPage.io) and the Puppet Last Run Plugin (by Didip Kerabat of Kongregrate) Scout’s plugin directory count has now passed 70 plugins!

The Sidekiq Monitor Plugin monitors key metrics for Sidekiq, a Ruby message processing library. Didip’s Puppet Last Run Plugin tracks key metrics for the most recent Puppet run on a monitored server.

Have a useful plugin sitting around? Share it! Send a pull request to our scout-plugins repository on Github.

 
 

Kestrel in Production at Papertrail

Posted in Plugins | Comments Comments

We’ve added prolific plugin contributor Eric Lindvall’s latest plugins to Scout: Kestrel Overall and Kestrel Queue Monitoring. Kestrel is a simple message queue built from production needs at Twitter. Being the gentleman he is, Eric shared his experiences with Kestrel at Papertrail, a hosted log aggregation service.

Why Kestrel?

As all good message queues should, it provides:

  • transactional reads to prevent losing messages if a worker crashes before finishing processing a message
  • durability to prevent losing messages if a queue server crashes or is stopped after messages have been sent to it
  • “normal” queues (only one client sees a given message) and “fanout queues” (all clients see a given message, which many messaging systems call “topics”)

We picked Kestrel because it has bounded memory usage (it has a configuration setting to specify how many queued messages should reside in RAM, generally defaulting to 128MB), it’s small (I was able to read the entire Scala codebase in a weekend), and running on the JVM (which we have experiencing with) was a plus.

 

Read more... More

 

An update to the "Simple Process Check" Plugin

Posted in Plugins | Comments Comments

The Simple Process Check plugin takes a comma-delimited list of process names, and alerts you if any of the named processes stop running. It’s an easy way to keep tabs on the essential processes on your server.

What’s New: Track Multiple Processes with Different Arguments

You can also check that a process exists with a certain substring included in its arguments. For example, to check for two instances of node (one with “emailer” in its args, and one with “eventLogger” in its args), set this in process_names: node/emailer,node/eventLogger.

You can mix and match pure process_names and process_name/args.

Here’s the link to the Simple Process Check plugin again.

 
 

New Plugin: Simple Process Check

Posted in Plugins | Comments Comments

Simple Process Check is a new plugin in the spirit of the recent Simple Port Check.

Provide a comma-delimited list of process names (names only, no paths). This plugin checks that at least one instance of each named process is running.

Alerting

  1. You’ll get an email if any of the processes have NO instances running.
  2. You’ll get another email when any of the non-running processes are present again.

Simple Process Check vs. Process Usage

The Process Usage keeps tabs on one specific process name. It tracks the number of instances running, the total memory usage, number of restarts, etc.

Simple Process Check keeps tabs on multiple processes (according to the list of names you provide), but provides less information on each process. You should use Simple Process Check if you have a number of processes to monitor, and primarily need assurance that they all are running.

Try it out

That link again: Simple Process Check. Let us know if you have any questions or feedback.

 
 

Monitoring HAProxy

Posted in Plugins | Comments Comments

HAProxy is a rock-solid, high performance TCP/HTTP load balancer. It’s what we use at Scout to proxy traffic to our app servers.

We’ve added a plugin to monitor HAProxy: just specify the URL to your HAProxy stats page and the name of the proxy. You’ll get the request rate, error rate, and proxy status for the specified proxy.

Why monitoring the load balancer is important

The load balancer is one of the best places to narrow down the cause of an outage. If all servers in a proxy aren’t processing requests, it’s often an indication of an outage further down the stack (ex: the database). If it’s isolated to a specific app server, the first place to look might be the downed app server.

The Scout HAProxy plugin gathers its metrics by parsing the output of the HAProxy Status page. It’s one of my favorite open source status pages: the page loads quickly and the color-coded statuses make it easy to focus on problem areas during an incident. The Scout plugin and the HAProxy status page play well together: if the plugin records a dramatic change in the throughput, error rate, or the proxy status, we’ll pull up the HAProxy status page and dig further.

Installation Notes

Like all Scout plugins, installing the HAProxy plugin is just a couple of mouse clicks away. Just click the button in the Scout UI and select the HAProxy Monitoring plugin. Note that the plugin has one dependency: the fastercsv gem must be installed. See the plugin directory entry for more details on the plugin.

Credit

A big thanks to Jesse Newland for the initial version of this plugin.

 
 

Monitoring Apache ZooKeeper

Posted in Plugins | Comments Comments

With over 50 million plays, OMGPOP – the free multiplayer game site – is logging a lot of data. Tracking stats like app downloads and launches paint a picture of how their games are performing.

This logging data is collected via Flume, a system for collecting streaming data, and delivered to a Hadoop Distributed File System (HDFS). So, how do you keep your Flume nodes configured in a consistent manner?

Enter Apache ZooKeeper, “a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services” (from the ZooKeeper homepage). Michael Fielder (Blog | Twitter), an NYC-based freelance systems operations engineering consultant, recently created a Scout Plugin for monitoring ZooKeeper at OMGPOP. The plugin parses the output of the srvr command on the installed server, reporting key ZooKeeper metrics. Additionally, an error is generated if ZooKeeper is not running.

 

Read more... More

 

JMX Monitoring

Posted in Plugins | Comments Comments

JMX Monitoring

One of the features Java Management Extensions provides is the ability to add instrumentation to an application. While this makes collecting metrics straightforward, it doesn’t address storage for these metrics. Enter David Dossot’s JMX Monitoring Scout Plugin.

 

Read more... More

 

You Are Making Scout Even Better

Posted in Plugins | Comments Comments

A huge thank you to Scout users who have sent us plugin fixes and enhancements! It’s really a pleasure to see the plugin library grow and improve. Here are the latest updates:

Memory Profiler

Solaris Compatibility added by Ankur Bulsara

URL Monitoring

Better exception handling for bad hostnames and request timeouts – Eric Lindvall and Venu Keesari

Disk Usage

Cleaned up some metric parsing – Michael Grosser

MongoDB Slow Queries

Added ability to read from replicas and silenced warnings in older mongo gems (<1.1.5) - Niels Meersschaert and Chris Griego

RabbitMQ Queue Details

Compatibility updates for version 2.3 by Chris Griego and Doug Barth

Passenger Status

Hiding metric output for servers you aren’t using (Apache or Nginx). Added metrics on the largest Passenger process memory size. By Chris Griego.

MySQL Stats

Added connections and max used connections metrics – Eric Lindvall

Delayed Job

Fixed “Oldest waiting delayed job” metric – Eric Lindvall

Device I/O

Fixed warning – Valery Vishnyakov

Ruby on Rails Monitoring

Added compatibility for Request Log Analyzer 1.10.0 – Chris Griego

How to update your plugins.

From any server page, click Plugins, and see if any are listed with update available:

Click through on the “updates available link”, then click the “Update Code” button. You’ll get the latest code.

Got an update, or an issue?

Send us a plugin support request if you have any issues. Got an update or a fix? Send us a Github pull request!

Thanks again to this round of plugin contributors!

 
 

CouchDB Monitoring Plugins

Posted in Plugins | Comments Comments

John Wood of Signal has released 2 plugins for monitoring CouchDB.

CouchDB Overall

couchdb overall monitoring

This plugin monitors your CouchDB installation across all databases, reporting activity across a number of metrics.

CouchDB Database

This plugin monitors a specific CouchDB database. If you have multiple databases on a server, install this plugin for each database.

Why CouchDB? Find out next week

The guys at Signal are smart dudes, so I was naturally curious where CouchDB fits into their infrastructure. Next week I’ll publish an interview with John where he explains their use case for CouchDB, which performance metrics they watch, the learning curve for CouchDB, and more.

Subscribe to our RSS feed or follow us on Twitter for the interview with John.

The Plugins

Like all Scout plugins, installing the CouchDB plugin is a button click away.

Other Database Monitoring Plugins

 
 

Beanstalkd in the wild (and a Scout plugin)

Posted in Plugins | Comments Comments

Beanstalkd is a simple, fast work queue. As its FAQ eloquently states, “beanstalkd is a big to-do list for your distributed application”. It’s commonly used to move intensive work out of the web request cycle and into the background.

Kevin Lawver of uPlaya has whipped up a Scout plugin for monitoring beanstalkd. At uPlaya, you upload a song and they tell if you if it has the potential to be a hit. 3 reasons why beanstalkd is great for uPlaya:

 

Read more... More

 

Older posts: 1 2 3 4

Scout Server Monitoring
More about Scout signup


Subscribe

feed RSS Feed

feed Twitter



Email Newsletter

Sent every couple of months, hear about new features, tips, discounts, and more. Enter your email address below:




Browse