Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 99 lines (66 sloc) 4.151 kB
0774426 @cannikin Updated README, unpacked delayed_job
cannikin authored
1 = Owl
2
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.
6
02793b1 @cannikin Updated README
cannikin authored
7 == Methodology
8
9 Everything is relative. Owl shows you how your sites are responding compared to how they've
10 been responding in the past.
11
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.
20
0774426 @cannikin Updated README, unpacked delayed_job
cannikin authored
21 == Terminology
22
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:
25
26 * http://example.com/home
27 * http://example.com/login
28
29 These could both live under a site named "Example.com" so that you easily monitor just certain
30 groups of servers instead of all of them at once.
31
32 == Usage
33
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.
37
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.
40
41 === Frontend
42
43 The Owl frontend is a Ruby on Rails website. Before you start it you will need to build the
cfad873 @cannikin README updates
cannikin authored
44 database and seed it with data. Copy `config/database_sample.yml` to `config/database.yml`
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:
47
48 rake db:migrate
49 rake db:seed
50
51 You can now start the frontend:
52
53 script/server
54
55 And then start Mouse:
56
57 lib/mouse/bin/mouse -i 30
58
59 This tells Mouse to start crawling your watches every 30 seconds (you can call Mouse with
60 -h to see available options).
61
02793b1 @cannikin Updated README
cannikin authored
62 Now browse to Owl and start adding sites and watches: http://localhost:3000 You are now
63 viewing the Dashboard.
64
65 === Adding a Site
66
67 Just click the large "Add Group" button at the bottom of the page.
68
69 === Adding a Watch
70
71 In each Site you'll see an "Add URL" button. Click that to add a watch. Once you have
72 created a watch you can click on its name and edit it or configure alerts.
73
74 If you want to set an absolute limit at which a site's response time is really considered bad,
75 set the Warning Time attribute a number of milliseconds. If the site responds slower than
76 this then it will blink on the Dashboard page, regardless of what color it is.
77
78 If the content on a page does not match the regular expression you enter in the Content Match
79 field, the site will be considered down and turn red. Likewise if the Expected Response does
80 match it will be considered down. If the request to your server times out it will be considered
81 down.
82
83 To add alerts for a watch, you need to create it first and then edit it by clicking on the
84 name in your dashboard.
0774426 @cannikin Updated README, unpacked delayed_job
cannikin authored
85
86 === Alerts
87
88 Owl currently supports alerts via Twitter and Instant Message. You will need to start
89 Delayed Job so that it can pull messages off the job queue and send them to you. See
aa1d07a @cannikin README updates
cannikin authored
90 <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
91 so simply modify them to use your own Twitter and IM account connection info.
92
93 SMS and Email notifications are stubbed out but have not been built as of this writing.
02793b1 @cannikin Updated README
cannikin authored
94
95 === Extended vs. Compact View
96
97 The compact view is the original intention of Owl: being able to tell at a glance what
98 state your servers are in.
Something went wrong with that request. Please try again.