Monitor MySQL queries with Scout

By Derek Bullet_white Comments Comments

Robin Ward of Forumwarz has released a MySQL slow queries plugin for Scout that does exactly what you’d expect: sends an alert when a slow query is run.

Scout <sub> Derek Laptop

The alert contains the full query along with the query time:

Scout </sub> Alert

Note that you’ll need to enable slow query logging in your MySQL config file, but that’s just a 2 line change. See the MySQL Slow Queries directory entry for more information.

 

Meet our team at RailsConf

By Derek Bullet_white Comments Comments

Charles, myself (Derek), and Andre are boarding a plan soon for RailsConf in Portland.

If you want to do a little coding, chat about monitoring, etc. look for us there!

 

Giving your web host access to your Scout account

By Derek Bullet_white Posted in HowTo Bullet_white Comments Comments

A couple of times already, we’ve seen users give their web host access to their Scout account.

It’s a big help when debugging problems – especially things that a basic monitoring tool might not pick up (like slow web requests).

Read More →

 

How we handle background jobs

By Derek Bullet_white Posted in HowTo Bullet_white Comments Comments

We run background jobs on our Scout servers. Lots of them.

As we’ve grown, they’ve used dramatically more resources. We needed a way to simmer them down. Most of these jobs load the entire Rails environment – that’s a hefty overhead.

We’ve modified how we run background jobs and we’re seeing great results. If you’re interested in what we did, checkout Charles’ post on our Highgroove blog.

And finally, here’s the obligatory semi-promotional graph, generated by Scout, of how the load dramatically decreased after implementation:

Scout ~ Edit Graph

 

Recording Historical Data in Scout

By Derek Bullet_white Posted in HowTo Bullet_white Comments Comments

By default, when you create a report in Scout, we assume that the data corresponds to the time the report was submitted.

Sometimes this isn’t the case – for example, you can retrieve the number of subscribers to your RSS feeds in Feedburner, but not from the current day.

You can override the time Scout records the data in a Plugin with the special :scout_time report key.

Here’s an example:


# typical report data 
{:circulation => 1000}

# correspond the data w/ February 24, 2008
{:circulation => 1000, :scout_time => Time.parse("2/24/08")}

When displaying the data on a graph, the data will be shown on 2/24 and not the current date:

Scout ~ Derek Laptop

Learn more about creating Scout Plugins

 

Taking the guesswork out of scaling

By Derek Bullet_white Posted in Examples Bullet_white Comments Comments

Determining a web application’s hardware resources isn’t easy (or cheap). Frankly, it’s often just guesswork. Even when you build benchmarking scripts, they can miss key behaviors and ignore important metrics.

Scaling becomes a lot less stressful when you can quickly compare a history of your application data with server performance.

For example, we did this to get a better understanding of how our Scout server performed during our invitation process. The graph below was generated through Scout and shows the relationship between user accounts and the server load. As we expected, the overall load on the server increased as the number of accounts increased. Scout shows us how this data is correlated – it gives us an idea of how many accounts our current hardware can support.

Scout Accounts vs. Server Load
accounts vs load

It’s trivial process to regularly feed Scout your application data (user signups, orders, revenue, etc):

  1. Start with this Rails App Plugin Sample (this assumes a Ruby on Rails application, but you can do this with any framework/language)
  2. Grab your application data – just use ActiveRecord!
  3. Put the plugin on your server (can protect behind basic auth)
  4. Add the plugin
 

Older posts: 1 ... 48 49 50 51 52 ... 70