samhendley-god 0.7.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. data/History.txt +293 -0
  2. data/Manifest.txt +114 -0
  3. data/README.txt +60 -0
  4. data/Rakefile +35 -0
  5. data/bin/god +128 -0
  6. data/examples/events.god +84 -0
  7. data/examples/gravatar.god +54 -0
  8. data/examples/single.god +66 -0
  9. data/ext/god/extconf.rb +55 -0
  10. data/ext/god/kqueue_handler.c +123 -0
  11. data/ext/god/netlink_handler.c +167 -0
  12. data/init/god +42 -0
  13. data/lib/god.rb +667 -0
  14. data/lib/god/behavior.rb +52 -0
  15. data/lib/god/behaviors/clean_pid_file.rb +21 -0
  16. data/lib/god/behaviors/clean_unix_socket.rb +21 -0
  17. data/lib/god/behaviors/notify_when_flapping.rb +51 -0
  18. data/lib/god/cli/command.rb +229 -0
  19. data/lib/god/cli/run.rb +176 -0
  20. data/lib/god/cli/version.rb +23 -0
  21. data/lib/god/condition.rb +96 -0
  22. data/lib/god/conditions/always.rb +23 -0
  23. data/lib/god/conditions/complex.rb +86 -0
  24. data/lib/god/conditions/cpu_usage.rb +80 -0
  25. data/lib/god/conditions/degrading_lambda.rb +52 -0
  26. data/lib/god/conditions/disk_usage.rb +27 -0
  27. data/lib/god/conditions/file_mtime.rb +28 -0
  28. data/lib/god/conditions/flapping.rb +128 -0
  29. data/lib/god/conditions/http_response_code.rb +168 -0
  30. data/lib/god/conditions/lambda.rb +25 -0
  31. data/lib/god/conditions/memory_usage.rb +82 -0
  32. data/lib/god/conditions/process_exits.rb +72 -0
  33. data/lib/god/conditions/process_running.rb +74 -0
  34. data/lib/god/conditions/tries.rb +44 -0
  35. data/lib/god/configurable.rb +57 -0
  36. data/lib/god/contact.rb +106 -0
  37. data/lib/god/contacts/campfire.rb +82 -0
  38. data/lib/god/contacts/email.rb +95 -0
  39. data/lib/god/contacts/jabber.rb +65 -0
  40. data/lib/god/contacts/twitter.rb +39 -0
  41. data/lib/god/contacts/webhook.rb +47 -0
  42. data/lib/god/dependency_graph.rb +41 -0
  43. data/lib/god/diagnostics.rb +37 -0
  44. data/lib/god/driver.rb +206 -0
  45. data/lib/god/errors.rb +24 -0
  46. data/lib/god/event_handler.rb +111 -0
  47. data/lib/god/event_handlers/dummy_handler.rb +13 -0
  48. data/lib/god/event_handlers/kqueue_handler.rb +17 -0
  49. data/lib/god/event_handlers/netlink_handler.rb +13 -0
  50. data/lib/god/logger.rb +120 -0
  51. data/lib/god/metric.rb +59 -0
  52. data/lib/god/process.rb +342 -0
  53. data/lib/god/registry.rb +32 -0
  54. data/lib/god/simple_logger.rb +53 -0
  55. data/lib/god/socket.rb +96 -0
  56. data/lib/god/sugar.rb +47 -0
  57. data/lib/god/system/portable_poller.rb +42 -0
  58. data/lib/god/system/process.rb +42 -0
  59. data/lib/god/system/slash_proc_poller.rb +92 -0
  60. data/lib/god/task.rb +491 -0
  61. data/lib/god/timeline.rb +25 -0
  62. data/lib/god/trigger.rb +43 -0
  63. data/lib/god/watch.rb +184 -0
  64. data/test/configs/child_events/child_events.god +44 -0
  65. data/test/configs/child_events/simple_server.rb +3 -0
  66. data/test/configs/child_polls/child_polls.god +37 -0
  67. data/test/configs/child_polls/simple_server.rb +12 -0
  68. data/test/configs/complex/complex.god +59 -0
  69. data/test/configs/complex/simple_server.rb +3 -0
  70. data/test/configs/contact/contact.god +84 -0
  71. data/test/configs/contact/simple_server.rb +3 -0
  72. data/test/configs/daemon_events/daemon_events.god +37 -0
  73. data/test/configs/daemon_events/simple_server.rb +8 -0
  74. data/test/configs/daemon_events/simple_server_stop.rb +11 -0
  75. data/test/configs/daemon_polls/daemon_polls.god +17 -0
  76. data/test/configs/daemon_polls/simple_server.rb +6 -0
  77. data/test/configs/degrading_lambda/degrading_lambda.god +31 -0
  78. data/test/configs/degrading_lambda/tcp_server.rb +15 -0
  79. data/test/configs/matias/matias.god +50 -0
  80. data/test/configs/real.rb +59 -0
  81. data/test/configs/running_load/running_load.god +16 -0
  82. data/test/configs/stress/simple_server.rb +3 -0
  83. data/test/configs/stress/stress.god +15 -0
  84. data/test/configs/task/logs/.placeholder +0 -0
  85. data/test/configs/task/task.god +26 -0
  86. data/test/configs/test.rb +61 -0
  87. data/test/helper.rb +151 -0
  88. data/test/suite.rb +6 -0
  89. data/test/test_behavior.rb +21 -0
  90. data/test/test_campfire.rb +41 -0
  91. data/test/test_condition.rb +50 -0
  92. data/test/test_conditions_disk_usage.rb +56 -0
  93. data/test/test_conditions_http_response_code.rb +109 -0
  94. data/test/test_conditions_process_running.rb +44 -0
  95. data/test/test_conditions_tries.rb +67 -0
  96. data/test/test_contact.rb +109 -0
  97. data/test/test_dependency_graph.rb +62 -0
  98. data/test/test_driver.rb +11 -0
  99. data/test/test_email.rb +45 -0
  100. data/test/test_event_handler.rb +80 -0
  101. data/test/test_god.rb +598 -0
  102. data/test/test_handlers_kqueue_handler.rb +16 -0
  103. data/test/test_logger.rb +63 -0
  104. data/test/test_metric.rb +72 -0
  105. data/test/test_process.rb +246 -0
  106. data/test/test_registry.rb +15 -0
  107. data/test/test_socket.rb +42 -0
  108. data/test/test_sugar.rb +42 -0
  109. data/test/test_system_portable_poller.rb +17 -0
  110. data/test/test_system_process.rb +30 -0
  111. data/test/test_task.rb +262 -0
  112. data/test/test_timeline.rb +37 -0
  113. data/test/test_trigger.rb +59 -0
  114. data/test/test_watch.rb +279 -0
  115. metadata +193 -0
@@ -0,0 +1,293 @@
1
+ == 0.7.13 / 2009-03-05
2
+ * Minor Enhancment
3
+ * Added watch.dir setting to change working directory to something other than '/' [github.com/samhendley]
4
+
5
+ ==
6
+ * Bug Fixes
7
+ * Auto daemonized processes are now stopped/unmonitored correctly [github.com/jcapote]
8
+
9
+ == 0.7.12 / 2008-12-10
10
+ * Bug Fixes
11
+ * Fix capistrano deployability [github.com/eric]
12
+ * Fix event handling [brianw]
13
+
14
+ == 0.7.11 / 2008-11-14
15
+ * Bug Fixes
16
+ * Make notifications work inside lifecycle blocks
17
+
18
+ == 0.7.10 / 2008-11-13
19
+ * Major Enhancements
20
+ * Enable sending of arbitrary signals to a task or group via `god signal`
21
+ * Bug Fixes
22
+ * setup logging *after* loading a given config file when daemonized.
23
+ enables logging to the 'God.log_file' specified in a config file. [github.com/jnewland]
24
+ * New Conditions
25
+ * FileMtime < PollCondition - trigger on file mtime durations [github.com/jwilkins]
26
+ * New Contacts
27
+ * Twitter - allow messages to twitter [github.com/jwilkins]
28
+ * Campfire - send messages to 37signals' Campfire [github.com/hellvinz]
29
+ * Minor Enhancements
30
+ * Add watch log_cmd that can be reopened with STDOUT instead of a log file [github.com/jberkel]
31
+ * Added webhook output support [Martyn Loughran]
32
+
33
+ == 0.7.9 / 2008-08-06
34
+ * Major Enhancements
35
+ * Use a psuedo-priority queue for more efficient driver loop [Darrell Kresge]
36
+ * Bug Fixes
37
+ * Fix file_writable? when using chroot [github.com/eric]
38
+
39
+ == 0.7.8 / 2008-07-09
40
+ * Bug Fixes
41
+ * Catch all Exceptions from HttpResponseCode condition [github.com/rliebling]
42
+ * Don't error out if the process went away in SlashProcPoller [Kevin Clark]
43
+ * Correction of Task#handle_poll to prevent crash under event registration failure conditions. [github.com/raggi]
44
+ * Cleaned up logging of failed e-mail sends. [github.com/raggi]
45
+ * Listen on 127.0.0.1 when using God as a client. [github.com/halorgium]
46
+ * New Behaviors
47
+ * clean_unix_socket [github.com/gma]
48
+ * New Contacts
49
+ * jabber [github.com/jwulff]
50
+ * email via sendmail [github.com/monde]
51
+ * Minor Enhancements
52
+ * chroot support [github.com/eric]
53
+ * Added God.log_file for the main god log, overridden by command line option. [github.com/raggi]
54
+ * Print groups from `god status` command if present [github.com/pdlug]
55
+ * Allow headers to be specified for http_response_code condition [github.com/pdlug]
56
+
57
+ == 0.7.7 / 2008-06-17
58
+ * Bug Fixes
59
+ * Fix detection of proc file system [raggi]
60
+
61
+ == 0.7.6 / 2008-05-13
62
+ * Major Enhancements
63
+ * Implement System::Process methods for Linux based on /proc [Kevin Clark]
64
+ * Minor Enhancements
65
+ * Allowing directories to be loaded at start [Bert Goethals]
66
+ * Bug Fixes
67
+ * Don't leak events on error in the kqueue handler [Kevin Clark]
68
+
69
+ == 0.7.5 / 2008-02-21
70
+ * Bug Fixes
71
+ * Remove Ruby's Logger and replace with custom SimpleLogger to stop threaded leak
72
+
73
+ == 0.7.4 / 2008-02-18
74
+ * Bug Fixes
75
+ * Introduce local scope to prevent faulty optimization that causes memory to leak
76
+
77
+ == 0.7.3 / 2008-02-14
78
+ * Minor Enhancements
79
+ * Add --bleakhouse to make running diagnostics easier
80
+ * Bug Fixes
81
+ * Use ::Process.kill(0, ...) instead of `kill -0` [queso]
82
+ * Fix pid_file behavior in process-centric conditions so they work with tasks [matias]
83
+ * Redirect output of daemonized god to log file or /dev/null earlier [_eric]
84
+
85
+ == 0.7.2 / 2008-02-04
86
+ * Bug Fixes
87
+ * Start event system for CLI commands
88
+ * Up internal history to 100 lines per watch
89
+
90
+ == 0.7.1 / 2008-02-04
91
+ * Minor Enhancements
92
+ * Add --no-events option to completely disable events system
93
+
94
+ == 0.7.0 / 2008-02-01
95
+ * Minor Enhancements
96
+ * Better default pid_file_directory behavior
97
+ * Add --attach <pid> to specify that god should quit if <pid> exits
98
+ * Bug Fixes
99
+ * Handle ECONNRESET in HttpResponseCode
100
+
101
+ == 0.6.12 / 2008-01-31
102
+ * Minor Enhancements
103
+ * Allow log file output for non-daemonized god
104
+ * Switch to SIGTERM from SIGHUP for default lambda killer
105
+
106
+ == 0.6.11 / 2008-01-31
107
+ * Major Enhancements
108
+ * HUGE refactor of timer system to simplify scheduling
109
+ * Minor Enhancements
110
+ * Check for a truly working event system and disallow event conditions if none is present
111
+
112
+ == 0.6.10 / 2008-01-24
113
+ * Bug Fixes
114
+ * Fix ensure_stop nil pid no local variable bug
115
+
116
+ == 0.6.9 / 2008-01-23
117
+ * Bug Fixes
118
+ * Fix Timer condition dedup behavior
119
+
120
+ == 0.6.8 / 2008-01-23
121
+ * Minor Enhancements
122
+ * Warn if a command returns a non-zero exit code
123
+ * Ensure that stop command actually stops process
124
+
125
+ == 0.6.7 / 2008-01-22
126
+ * Minor Enhancements
127
+ * Add --no-syslog option to disable Syslog
128
+ * Allow contact redeclaration (dups are ignored)
129
+
130
+ == 0.6.6 / 2008-01-07
131
+ * Bug Fixes
132
+ * Redo Timer mutexing to reduce synchronization needs
133
+
134
+ == 0.6.5 / 2008-01-04
135
+ * Bug Fixes
136
+ * Fix Timer descheduling deadlock issue
137
+ * Change HttpResponseCode to use GET instead of HEAD
138
+
139
+ == 0.6.4 / 2008-12-31
140
+ * Bug Fixes
141
+ * Refactor Hub to clarify mutexing
142
+ * Eliminate potential iteration problem in Timer
143
+ * Add caching PID accessor to process to solve event deregistration failure
144
+
145
+ == 0.6.3 / 2007-12-18
146
+ * Minor Enhancements
147
+ * Output ProcessExits registration/deregistration info
148
+
149
+ == 0.6.2 / 2007-12-17
150
+ * Minor Enhancements
151
+ * Output registered PID for ProcessExits
152
+ * Bug Fixes
153
+ * Fix `god remove <group>` not working for unmonitored watches
154
+
155
+ == 0.6.1 / 2007-12-14
156
+
157
+ * Minor Enhancement
158
+ * Log when state change is complete
159
+
160
+ == 0.6.0 / 2007-12-4
161
+
162
+ * Minor Enhancement
163
+ * Move Syslog calls into God::Logger and clean up all calling code
164
+ * Remove god's pid file on user requested termination
165
+ * Better handling and cleanup of DRb server's unix domain socket
166
+ * Allow shorthand for requesting a god log
167
+ * Add `god check` to make it easier to diagnose event problems
168
+ * Refactor god binary into class/method structure
169
+ * Implement `god remove` to remove a Task altogether
170
+ * New Conditions
171
+ * DiskUsage < PollCondition - trigger if disk usage is above limit on mount [Rudy Desjardins]
172
+
173
+ == 0.5.2 / 2007-10-10
174
+
175
+ * Minor Enhancement
176
+ * Allow extra args to pass through to config file
177
+
178
+ == 0.5.1 / 2007-10-08
179
+
180
+ * Bug Fixes
181
+ * Rescue connection refused in http response code condition
182
+
183
+ == 0.5.0 / 2007-10-05
184
+
185
+ * Major Enhancements
186
+ * Implement lifecycle scoped metric to allow for cross-state conditions
187
+ * Add TriggerCondition for conditions that need info about state changes
188
+ * Implement notification system
189
+ * Add Tasks (a generalization of Watches) to do non-process related tasks
190
+ * Add example init.d file in GOD_INSTALL_DIR/init/god [scott becker]
191
+ * Add human readable info to conditions (and make low level log lines debug)
192
+ * Switch DRb to use a unix domain socket for security reasons
193
+ * Minor Enchancements
194
+ * Allow EventConditions to do transition overloading
195
+ * Report errors during god startup instead of failing silently
196
+ * Make transition block optional (default to Always condition returning true)
197
+ * Better usage info for `god --help`
198
+ * Explain what's going on when attempting to rebind to an in-use port
199
+ * Add -b option to god binary to auto-bind to an unused port
200
+ * Add `god quit` to stop god without stopping any tasks
201
+ * Make self-daemonized Watch commands synchronous (as they should be)
202
+ * Allow self-daemonized Watches to specify a log (could be useful)
203
+ * Check for existence of config file if specified
204
+ * Robustify `god load` and report errors back to the command issuer
205
+ * Warn when `god load` tries to set global options
206
+ * Add Configurable.clear method and make built-in conditions clear on entry
207
+ * New Conditions
208
+ * Flapping < TriggerCondition - trigger on state change
209
+ * HttpResponseCode < PollCondition - trigger on http response code or timeout (thx scott becker)
210
+ * New Contacts
211
+ * Email < Contact - notify via email (smtp)
212
+ * Bug Fixes
213
+ * Fix abort not aborting problem
214
+ * Fix -p option not working for god binary
215
+ * Fix God.init not accepting block (thx _eric)
216
+ * Fix SIGHUP ignore (thx _eric)
217
+ * Fix error reporting on `god --help` (don't error report a normal SystemExit)
218
+
219
+ == 0.4.3 / 2007-09-10
220
+ * Bug Fixes
221
+ * fix Process#alive? to not raise on no such file (affects `god terminate`)
222
+
223
+ == 0.4.2 / 2007-09-10
224
+ * Bug Fixes
225
+ * fix netlink buffer issue that prevented events on Linux from working consistently [dkresge]
226
+
227
+ == 0.4.1 / 2007-09-10
228
+ * Bug Fixes
229
+ * require 'stringio' for ruby 1.8.5
230
+
231
+ == 0.4.0 / 2007-09-10
232
+
233
+ * Major Enhancements
234
+ * Add the ability for conditions to override transition state (for exceptional cases)
235
+ * Implement dynamic load of config files while god is running (god load <filename>)
236
+ * Add ability to save auto-daemonized process output to a log file
237
+ * Add robust default stop lambda command for auto-daemonized processes (inspired by _eric)
238
+ * Add status command for god binary (shows status of each watch)
239
+ * Create proper logger with timestamps
240
+ * Add log command to god binary to get real time logs for a specific watch from a running god instance
241
+ * Add terminate command for god binary (stop god and all watches)
242
+ * Minor Enhancements
243
+ * Enforce validity of Watches
244
+ * Enforce that God.init is not called after a Watch
245
+ * Move pid_file_directory creation and validation to God.start
246
+ * Remove check for at least one Watch during startup (now that dynamic loading exists)
247
+ * New Conditions
248
+ * Tries < PollCondition - triggers after the specified number of tries
249
+ * Add :notify_when_flapping behavior to check for oscillation [kevinclark]
250
+ * Add :degrading_lambda condition. [kevinclark]
251
+ It uses a decaying interval (1/2 rate) for 3 cycles before failing.
252
+ * Bug Fixes
253
+ * Use exit!(0) instead of exit! in god binary to exit with code 0 (instead of default -1)
254
+ * Command line group control fixed
255
+ * Fix cross-thread return problem
256
+
257
+ == 0.3.0 / 2007-08-17
258
+
259
+ * Fix netlink header problem on Ubuntu Edgy [Dan Sully]
260
+ * Add uid/gid setting for processes [kevinclark]
261
+ * Add autostart flag for watches so they don't necessarily startup with god [kevinclark]
262
+ * Change command line call options for god binary to accommodate watch start/stop functionality
263
+ * Add individual start/stop/restart grace periods for finer grained control
264
+ * Change default DRb port to 17165 ('god'.to_i(32))
265
+ * Implement command line control to start/restart/stop/monitor/unmonitor watches/groups by name
266
+ * Watches can now belong to a group that can be controlled as a whole
267
+ * Allow god to be installed (sans events) on systems that don't support events
268
+ * Daemonize and handle PID files for non-daemonizing scripts [kevinclark]
269
+ * Fix simple mode lifecycle gap
270
+ * Remove necessity to specify pid_file for conditions
271
+ * Change config file to use God.init and God.watch directly instead of God.meddle block
272
+ * Move god binary command logic to main library
273
+ * Enhance god binary with better reporting
274
+ * Fix synchronization bug in Timer (reported by Srini Panguluri)
275
+ * Add Lambda condition for easy custom conditions [Mike Mintz]
276
+ * Add sugar for numerics (seconds, minutes, kilobytes, megabytes, percent, etc)
277
+ * Add optional PID and log file generation to god binary for daemon mode
278
+ * Add God.load to do glob enabled loading
279
+ * Add -V option to god binary for detailed version/build info
280
+
281
+ == 0.2.0 / 2007-07-18
282
+
283
+ * Rewrote innards to use a state and event based lifecycle
284
+ * Basic support for events via kqueue (bsd/darwin) and netlink/pec (linux) [kevinclark]
285
+ * Added advanced syntax (simple syntax calls advanced api underneath)
286
+ * Condition returns have changed meaning. With simple syntax, a true return activates block
287
+ * Updated http://god.rubyforge.org with updated simple config and new advanced config
288
+
289
+ == 0.1.0 / 2007-07-07
290
+
291
+ * 1 major enhancement
292
+ * Birthday!
293
+
@@ -0,0 +1,114 @@
1
+ History.txt
2
+ Manifest.txt
3
+ README.txt
4
+ Rakefile
5
+ bin/god
6
+ examples/events.god
7
+ examples/gravatar.god
8
+ examples/single.god
9
+ ext/god/extconf.rb
10
+ ext/god/kqueue_handler.c
11
+ ext/god/netlink_handler.c
12
+ init/god
13
+ lib/god.rb
14
+ lib/god/behavior.rb
15
+ lib/god/behaviors/clean_pid_file.rb
16
+ lib/god/behaviors/clean_unix_socket.rb
17
+ lib/god/behaviors/notify_when_flapping.rb
18
+ lib/god/cli/command.rb
19
+ lib/god/cli/run.rb
20
+ lib/god/cli/version.rb
21
+ lib/god/condition.rb
22
+ lib/god/conditions/always.rb
23
+ lib/god/conditions/complex.rb
24
+ lib/god/conditions/cpu_usage.rb
25
+ lib/god/conditions/degrading_lambda.rb
26
+ lib/god/conditions/disk_usage.rb
27
+ lib/god/conditions/file_mtime.rb
28
+ lib/god/conditions/flapping.rb
29
+ lib/god/conditions/http_response_code.rb
30
+ lib/god/conditions/lambda.rb
31
+ lib/god/conditions/memory_usage.rb
32
+ lib/god/conditions/process_exits.rb
33
+ lib/god/conditions/process_running.rb
34
+ lib/god/conditions/tries.rb
35
+ lib/god/configurable.rb
36
+ lib/god/contact.rb
37
+ lib/god/contacts/campfire.rb
38
+ lib/god/contacts/email.rb
39
+ lib/god/contacts/jabber.rb
40
+ lib/god/contacts/twitter.rb
41
+ lib/god/contacts/webhook.rb
42
+ lib/god/dependency_graph.rb
43
+ lib/god/diagnostics.rb
44
+ lib/god/driver.rb
45
+ lib/god/errors.rb
46
+ lib/god/event_handler.rb
47
+ lib/god/event_handlers/dummy_handler.rb
48
+ lib/god/event_handlers/kqueue_handler.rb
49
+ lib/god/event_handlers/netlink_handler.rb
50
+ lib/god/logger.rb
51
+ lib/god/metric.rb
52
+ lib/god/process.rb
53
+ lib/god/registry.rb
54
+ lib/god/simple_logger.rb
55
+ lib/god/socket.rb
56
+ lib/god/sugar.rb
57
+ lib/god/system/portable_poller.rb
58
+ lib/god/system/process.rb
59
+ lib/god/system/slash_proc_poller.rb
60
+ lib/god/task.rb
61
+ lib/god/timeline.rb
62
+ lib/god/trigger.rb
63
+ lib/god/watch.rb
64
+ test/configs/child_events/child_events.god
65
+ test/configs/child_events/simple_server.rb
66
+ test/configs/child_polls/child_polls.god
67
+ test/configs/child_polls/simple_server.rb
68
+ test/configs/complex/complex.god
69
+ test/configs/complex/simple_server.rb
70
+ test/configs/contact/contact.god
71
+ test/configs/contact/simple_server.rb
72
+ test/configs/daemon_events/daemon_events.god
73
+ test/configs/daemon_events/simple_server.rb
74
+ test/configs/daemon_events/simple_server_stop.rb
75
+ test/configs/daemon_polls/daemon_polls.god
76
+ test/configs/daemon_polls/simple_server.rb
77
+ test/configs/degrading_lambda/degrading_lambda.god
78
+ test/configs/degrading_lambda/tcp_server.rb
79
+ test/configs/matias/matias.god
80
+ test/configs/real.rb
81
+ test/configs/running_load/running_load.god
82
+ test/configs/stress/simple_server.rb
83
+ test/configs/stress/stress.god
84
+ test/configs/task/logs/.placeholder
85
+ test/configs/task/task.god
86
+ test/configs/test.rb
87
+ test/helper.rb
88
+ test/suite.rb
89
+ test/test_behavior.rb
90
+ test/test_campfire.rb
91
+ test/test_condition.rb
92
+ test/test_conditions_disk_usage.rb
93
+ test/test_conditions_http_response_code.rb
94
+ test/test_conditions_process_running.rb
95
+ test/test_conditions_tries.rb
96
+ test/test_contact.rb
97
+ test/test_dependency_graph.rb
98
+ test/test_driver.rb
99
+ test/test_email.rb
100
+ test/test_event_handler.rb
101
+ test/test_god.rb
102
+ test/test_handlers_kqueue_handler.rb
103
+ test/test_logger.rb
104
+ test/test_metric.rb
105
+ test/test_process.rb
106
+ test/test_registry.rb
107
+ test/test_socket.rb
108
+ test/test_sugar.rb
109
+ test/test_system_portable_poller.rb
110
+ test/test_system_process.rb
111
+ test/test_task.rb
112
+ test/test_timeline.rb
113
+ test/test_trigger.rb
114
+ test/test_watch.rb
@@ -0,0 +1,60 @@
1
+ god
2
+ by Tom Preston-Werner
3
+ Kevin Clark (kqueue/netlink support)
4
+
5
+ http://god.rubyforge.org
6
+
7
+ == DESCRIPTION:
8
+
9
+ God is an easy to configure, easy to extend monitoring framework written
10
+ in Ruby.
11
+
12
+ Keeping your server processes and tasks running should be a simple part of
13
+ your deployment process. God aims to be the simplest, most powerful
14
+ monitoring application available.
15
+
16
+ == DOCUMENTATION:
17
+
18
+ See online documentation at http://god.rubyforge.org
19
+
20
+ == COMMUNITY:
21
+
22
+ Sign up for the god mailing list at http://groups.google.com/group/god-rb
23
+
24
+ == INSTALL:
25
+
26
+ $ sudo gem install god
27
+
28
+ == CONTRIBUTE:
29
+
30
+ Latest code is available at http://github.com/mojombo/god
31
+
32
+ The 'master' branch can be cloned with:
33
+
34
+ $ git clone git://github.com/mojombo/god.git
35
+
36
+ == LICENSE:
37
+
38
+ (The MIT License)
39
+
40
+ Copyright (c) 2007 Tom Preston-Werner
41
+
42
+ Permission is hereby granted, free of charge, to any person obtaining
43
+ a copy of this software and associated documentation files (the
44
+ 'Software'), to deal in the Software without restriction, including
45
+ without limitation the rights to use, copy, modify, merge, publish,
46
+ distribute, sublicense, and/or sell copies of the Software, and to
47
+ permit persons to whom the Software is furnished to do so, subject to
48
+ the following conditions:
49
+
50
+ The above copyright notice and this permission notice shall be
51
+ included in all copies or substantial portions of the Software.
52
+
53
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
54
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
55
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
56
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
57
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
58
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
59
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
60
+