You Are Making Scout Even Better

By Andre Bullet_white Posted in Plugins Bullet_white 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!


Tina Fey: go with the bran muffin on the white plate

By Derek Bullet_white Posted in Development Bullet_white Comments Comments

First, Tina Fey needs to write more. Both of her New Yorker articles have been terrific. Second, her latest New Yorker piece had a great nugget on how producing is about discouraging creativity:

You may have an occasion where the script calls for a bran muffin on a white plate, and people from the props department show up with a bran cake in the shape of Santa Claus sitting on a silver platter that says “Welcome to Denmark” on it. “We just thought it would be funny”, they say. And you have to find a polite way to explain that the character is Jewish, so her eating Santa’s face might have negative connotations, and the silver tray, while beautiful, is creating a weird glare on camera, and maybe let’s just go with the brain muffin on the white plate.

It’s easy to get absorbed in code and build something that’s technically awesome yet far more than you need. In other words, that Redis-backed, OpenID-compatible, audible capatcha, two-factor identification login system idea of mine is creative, but wouldn’t a session cookie and that old-school relational database my grandpa talked about work for now?

Read More →


Quick & dirty log monitoring

By Derek Bullet_white Posted in Examples Bullet_white Comments Comments

Sometimes we have an immediate need to watch for a term in a log file. For example, if we’re doing a major deploy, we might watch for the term error in a log file. We want to make sure the rate of errors doesn’t increase.

To do this, we’ll use Yaroslav Lazor’s Log Watcher Scout Plugin. We just had a great use case for this.

Yesterday we released a preview of Redwood, a MacRuby app we’re building. Redwood works just like Spotlight on your OSX desktop but searches the web apps we commonly use at Scout (Gmail, Google Docs, and Basecamp).

To track the number of downloads, we configured the plugin to watch for the term in the Apache access log and pow we’re tracking Redwood downloads:


This continues to be one of my favorite Scout plugins: the biggest reason we don’t monitor important metrics is that setting up monitoring is a pain. This plugin eliminates that excuse.



Custom Plugin Changes

By Andre Bullet_white Comments Comments

We’ve made some changes to Scout’s custom plugins. The “creating a plugin” documentation is updated, but here are the highlights:

To create a custom plugin, place a .rb file on your server

Place my_plugin.rb in Scout’s data directory on your server. By default, the .scout/ directory is in the home directory of whatever user is running Scout.

To get you started, here is the simplest possible plugin:

class SimplePlugin < Scout::Plugin
  def build_report

When does the new plugin run?

The plugin will run the next time the Scout agent runs. If you’re actively developing your plugin, use test mode (scout test myplugin.rb) so you can see changes to your plugin immediately.

How to install your custom plugin on multiple servers

When you want to install your custom plugin on multiple servers, there are two options:

  • Option #1: you can just copy my_plugin.rb to your other servers. Simple, low overhead, and flexible.
  • Option #2: send us the code. We’ll sign it with our private key and place it your own private plugin directory. From then on, you can click-to-install it just like any other plugin, but it will only be available to you.

The second option is great if you’re bringing lots of servers online, or you’re using our cloud monitoring. When a new cloud instance checks in, it can start using one of these plugins immediately, without you having to copy the plugin file to the new server.

What about existing custom plugins?

If you’ve been with Scout for a while, you may already have some custom plugins. These plugins will continue to work exactly has they did – you don’t need to do anything.

Questions / Feedback?

Just drop us an email! We’re happy to clarify, or help you get started writing a custom plugin of your own. Also check out the creating a plugin documentation for more details.


Behind our financial dashboard

By Derek Bullet_white Posted in Business Bullet_white Comments Comments

We started Scout to make monitoring server infrastructure easier. With our heads deep in code, it took us a while to realize that monitoring our business was just as important. Here’s a look at the financial dashboard we created (as you’ll guess, the data isn’t real):

Financial Dashboard

Key Components

  • Activity by Day – This shows signups, cancellations, and subscription changes for the past two weeks.
  • Activity by Week – This is similar to the daily activity table but provides a weekly rollup of the data. It adds the projected monthly revenue and revenue change.
  • Paying Activity by Month – This rolls up data by month, adding in churn, average revenue per-account, and lifetime value. It also forecasts the next month’s activity.

Read More →


When you are not the smartest programmer in the room

By Derek Bullet_white Posted in Development, Business Bullet_white Comments Comments

Most of the freshman engineering students at my college took two computer science courses together. These were the hardest classes I would take during college (my colleague was a TA for these courses so he deserves partial blame).

The experience for Sam Epstein, a friend of mine, was decidedly different. A project that might take me a week to finish (poorly) would take Sam a couple of hours. This was a seminal moment in my life: while I knew there were smarter people than myself, I thought I could out-work my way to the top. In programming this wasn’t the case. I’d never be Sam Epstein. Not only would I not be Sam, I was pretty average compared to my peers.

Read More →


Older posts: 1 ... 35 36 37 38 39 ... 68