HipChat Notifications

By Andre Bullet_white Posted in Features Bullet_white Comments Comments

Is email just not fast enough? Do you want instant notification of Scout alerts in your HipChat room? We've added a direct integration to HipChat:

Setup is just what you'd expect - provide your API token (a notification token is fine) and the room name or ID:

Once set up, the HipChat intgration can be added to any of your notification groups. If you need notifications in multiple HipChat rooms, just click "Add HipChat" multiple times (you can reuse the API key for multiple integrations)

About HipChat

If you aren't familiar with HipChat, think group chat built for teams. It's designed for the simplicity of consumer IM, with business-oriented administrative tools.

Keeping Scout Connected

HipChat joins PagerDuty, Zapier, webhooks, email, and SMS as ways to send Scout alerts. Got another way you'd like to hook up your Scout notifications? Let us know!

 

Announcing Zapier Integration

By Andre Bullet_white Posted in Features Bullet_white Comments Comments

Zapier glues together hundreds of online applications so they can talk seamlessly with one another. Think Legos for web services. Or Unix pipes for the web world. Want a task assignment in Basecamp to trigger a HipChat message? Zapier makes it possible.

Scout alerts are now supported as Zapier inputs. So, you can wire Scout alerts to any of Zapier's 200+ services. How about giving a shoutout in Google Talk whenever a Scout alert fires?

scout to google doc

Read More →

 

Omnibus Tutorial: Package a standalone Ruby gem

By Derek Bullet_white Posted in HowTo Bullet_white Comments Comments

stack o pancakes

A couple of years ago I visited Argentina. I have trouble enough pronouncing my limited English vocabulary and I don't speak Spanish, but after a bit of time, it was pretty easy to order food, buy groceries, and use a taxi. However, occasional hangups that happen during my regular life in the states would throw me out of sorts in Spanish: a taxi driver trying to explain he doesn't have enough change would send me off the rails.

Ruby is my English when it comes to writing software, so when I hit hangups installing something Ruby-related, I can usually work my way out of them. Our monitoring agent at Scout is a Ruby gem, and while most of our customers already have Ruby installed, for those that don't a seemingly small hangup to me can be frustrating for them.

Now, thanks to Omnibus, there's an easy way to distribute your Ruby gems as standalone, full-stack program. This means folks without Ruby can have as smooth of an experience with your hip new gem as a hardened Rubyist.

Here's how I've built a full-stack installer for our scout Ruby Gem.

Read More →

 

RVM, Bundler and Cron in Production: Round 2

By Derek Bullet_white Posted in HowTo Bullet_white Comments Comments

Back in 2010, we suggested using /bin/bash -l -c to run scout via Cron when using RVM. However, this was a brute approach: /bin/bash -l -c tells bash to behave as a login, interactive process. However, as Daniel Szmulewicz elequently stated in the comments for the original blog post, "Cron jobs are by nature non-login, non-interactive processes".

Fast-forward to today: RVM usage is continuing in production, and to make things more complicated, Cron jobs often need to account for both RVM and Bundler. So, what's our preferred approach when running Ruby executables via Cron in an RVM, RVM+Bundler, or Bundler environment? A shell script.

Cron Shell Script: RVM + Bundler

Lets say we want to run a Ruby executable (scout [KEY]) via Cron with (1) Ruby 1.9.2 and (2) my Rails App's Gem bundle:

Make the shell script executable: chmod +x FILE.sh.

Add the Cron job:

* * * * * shell_script.sh

But that's a lot of typing...

It's tempting to use /bin/bash -l -c when you are busy/lazy. To get around this, the scout install [KEY] command will detect if you are using (1) RVM and/or (2) Bundler. If so, we generate the shell script for you and make it executable.

scout install BNrIneEBMwE8h6VlhO4Bw4WmOVSLmnygSFZEPCfi
=== Scout Installation Wizard ===

It looks like you've installed Scout under RVM and/or Bundler. 
We've generated a shell script for you.

Run `crontab -e`, pasting the line below into your Crontab file:

* * * * * /Users/dlite/.scout/scout_cron.sh

How do we detect RVM and Bundler? We've encapsulated it into an Environment class:

 

The winding path to server roles

By Derek Bullet_white Posted in Development Bullet_white Comments Comments

roles timeline

We're overjoyed with the reaction to server roles, our new feature that makes monitoring many servers as easy as monitoring a few. The end result hits our favorite sweet spot: it makes something that used to be painful into something fun.

Server Roles was the biggest release since the launch of Scout and the path to the release was anything but a smooth, rolling path. It's a story of fast-changing deployment environments, tangents, a failed experiment, listening, first-hand experience, and finally, something we were happy with.

Here's the story of Scout's evolution to roles.

Oct 2007: Before AWS

first account

Scout started as an internal tool at Highgroove Studios (now Big Nerd Ranch) in 2007, or, roughly one year before AWS exited Beta status. For you young chicks out there, this was a time when you couldn't click a button to provision a server.

Since it wasn't as easy to provision servers, there was less churn in the size of environments. When you wanted to monitor a new server in Scout, you'd create it in our UI and then use the provided locally in your Crontab entry. The manual step of copying the key to to the server didn't feel tedious (and was way easier than configuring Nagios, Munin, etc) since our customers weren't provisioning servers frequently.

Read More →

 

Debugging request bottlenecks with realtime charts

By Derek Bullet_white Posted in Examples Bullet_white Comments Comments

Last week, one of our application servers died. We have four app servers, so in theory, the death of one app server shouldn't bring the entire platoon down. However, real-life had other plans: 95% of requests were handled fine, but around 5% were being dropped. Here's the story of how we diagnosed and fixed the issue with our realtime charts.

Read More →

 

Older posts: 1 ... 23 24 25 26 27 ... 67