Skip to content


Subversion checkout URL

You can clone with
Download ZIP
100644 103 lines (68 sloc) 4.15 KB
0774426 @cannikin Updated README, unpacked delayed_job
cannikin authored
1 = Owl
3 There are plenty of site monitoring tools out there, but we were looking for something a
4 little different. A way to determine, at a glance, the health of all of our servers. That's
5 where Owl comes in.
02793b1 @cannikin Updated README
cannikin authored
7 == Methodology
9 Everything is relative. Owl shows you how your sites are responding compared to how they've
10 been responding in the past.
12 Owl is filled with lots of pretty colors. The chosen colors conform to Western traditions:
13 green is good, yellow is a warning, red is bad. A site is considered to be responding normally
14 when it's response time is within an acceptable percentage of the average response time for the
15 last hour. So, let's say your site has been responding in an average of 500ms in the last hour.
16 If it suddenly responds in 2000ms instead it will turn a bright yellow. The are lots of gradations
17 between yellow and green and you can use this to get an idea of how your sites are responding.
18 When you are setting up a watch (see Terminology below) you can influence when you see these
19 colors -- to a degree. See Adding a Watch under Usage below.
0774426 @cannikin Updated README, unpacked delayed_job
cannikin authored
21 == Terminology
23 Owl centers around the concept of a "watch." A watch is one webpage that you want to monitor.
24 Multiple watches roll up under a "site." For example you might have two watches:
26 *
27 *
29 These could both live under a site named "" so that you easily monitor just certain
30 groups of servers instead of all of them at once.
32 == Usage
34 Owl is comprised of two parts: the front-facing website and a backend process called Mouse
35 that constantly requests all the watches you have defined. The response times, status codes,
36 etc. are saved to a database and used to compile the info for the front-facing site.
38 If you enable alerts so that you can be notified if a watch does not response as expected,
39 you will also run Delayed Job in the background to send you these alerts.
41 === Frontend
43 The Owl frontend is a Ruby on Rails website. Before you start it you will need to build the
c2d7a94 @cannikin README updates
cannikin authored
44 database and seed it with data. Copy <tt>config/database_sample.yml</tt> to <tt>config/database.yml</tt>
0774426 @cannikin Updated README, unpacked delayed_job
cannikin authored
45 and change the development/production settings to suit your environment. Next, run a couple
46 of rake tasks to prepare the database:
48 rake db:migrate
49 rake db:seed
51 You can now start the frontend:
53 script/server
e3fd9da @cannikin README updates
cannikin authored
55 Now browse to Owl and start adding sites and watches: http://localhost:3000 You are now
56 viewing the Dashboard.
58 === Mouse
60 Mouse is the backend process that requests your pages and records their responses. To start
61 mouse:
0774426 @cannikin Updated README, unpacked delayed_job
cannikin authored
63 lib/mouse/bin/mouse -i 30
65 This tells Mouse to start crawling your watches every 30 seconds (you can call Mouse with
66 -h to see available options).
02793b1 @cannikin Updated README
cannikin authored
69 === Adding a Site
71 Just click the large "Add Group" button at the bottom of the page.
73 === Adding a Watch
75 In each Site you'll see an "Add URL" button. Click that to add a watch. Once you have
76 created a watch you can click on its name and edit it or configure alerts.
78 If you want to set an absolute limit at which a site's response time is really considered bad,
79 set the Warning Time attribute a number of milliseconds. If the site responds slower than
80 this then it will blink on the Dashboard page, regardless of what color it is.
82 If the content on a page does not match the regular expression you enter in the Content Match
83 field, the site will be considered down and turn red. Likewise if the Expected Response does
84 match it will be considered down. If the request to your server times out it will be considered
85 down.
87 To add alerts for a watch, you need to create it first and then edit it by clicking on the
88 name in your dashboard.
0774426 @cannikin Updated README, unpacked delayed_job
cannikin authored
90 === Alerts
92 Owl currently supports alerts via Twitter and Instant Message. You will need to start
93 Delayed Job so that it can pull messages off the job queue and send them to you. See
aa1d07a @cannikin README updates
cannikin authored
94 <tt>lib/mouse/alerts</tt> for the job classes. These are configured in the job files themselves
0774426 @cannikin Updated README, unpacked delayed_job
cannikin authored
95 so simply modify them to use your own Twitter and IM account connection info.
97 SMS and Email notifications are stubbed out but have not been built as of this writing.
02793b1 @cannikin Updated README
cannikin authored
99 === Extended vs. Compact View
101 The compact view is the original intention of Owl: being able to tell at a glance what
102 state your servers are in.
Something went wrong with that request. Please try again.