forked from mojombo/god
-
Notifications
You must be signed in to change notification settings - Fork 0
/
History.txt
168 lines (141 loc) · 6.93 KB
/
History.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
== 0.6.7 /
* Minor Enhancements
* Add --no-syslog option to disable Syslog
== 0.6.6 / 2008-01-07
* Bug Fixes
* Redo Timer mutexing to reduce synchronization needs
== 0.6.5 / 2008-01-04
* Bug Fixes
* Fix Timer descheduling deadlock issue
* Change HttpResponseCode to use GET instead of HEAD
== 0.6.4 / 2008-12-31
* Bug Fixes
* Refactor Hub to clarify mutexing
* Eliminate potential iteration problem in Timer
* Add caching PID accessor to process to solve event deregistration failure
== 0.6.3 / 2007-12-18
* Minor Enhancements
* Output ProcessExits registration/deregistration info
== 0.6.2 / 2007-12-17
* Minor Enhancements
* Output registered PID for ProcessExits
* Bug Fixes
* Fix `god remove <group>` not working for unmonitored watches
== 0.6.1 / 2007-12-14
* Minor Enhancement
* Log when state change is complete
== 0.6.0 / 2007-12-4
* Minor Enhancement
* Move Syslog calls into God::Logger and clean up all calling code
* Remove god's pid file on user requested termination
* Better handling and cleanup of DRb server's unix domain socket
* Allow shorthand for requesting a god log
* Add `god check` to make it easier to diagnose event problems
* Refactor god binary into class/method structure
* Implement `god remove` to remove a Task altogether
* New Conditions
* DiskUsage < PollCondition - trigger if disk usage is above limit on mount [Rudy Desjardins]
== 0.5.2 / 2007-10-10
* Minor Enhancement
* Allow extra args to pass through to config file
== 0.5.1 / 2007-10-08
* Bug Fixes
* Rescue connection refused in http response code condition
== 0.5.0 / 2007-10-05
* Major Enhancements
* Implement lifecycle scoped metric to allow for cross-state conditions
* Add TriggerCondition for conditions that need info about state changes
* Implement notification system
* Add Tasks (a generalization of Watches) to do non-process related tasks
* Add example init.d file in GOD_INSTALL_DIR/init/god [scott becker]
* Add human readable info to conditions (and make low level log lines debug)
* Switch DRb to use a unix domain socket for security reasons
* Minor Enchancements
* Allow EventConditions to do transition overloading
* Report errors during god startup instead of failing silently
* Make transition block optional (default to Always condition returning true)
* Better usage info for `god --help`
* Explain what's going on when attempting to rebind to an in-use port
* Add -b option to god binary to auto-bind to an unused port
* Add `god quit` to stop god without stopping any tasks
* Make self-daemonized Watch commands synchronous (as they should be)
* Allow self-daemonized Watches to specify a log (could be useful)
* Check for existence of config file if specified
* Robustify `god load` and report errors back to the command issuer
* Warn when `god load` tries to set global options
* Add Configurable.clear method and make built-in conditions clear on entry
* New Conditions
* Flapping < TriggerCondition - trigger on state change
* HttpResponseCode < PollCondition - trigger on http response code or timeout (thx scott becker)
* New Contacts
* Email < Contact - notify via email (smtp)
* Bug Fixes
* Fix abort not aborting problem
* Fix -p option not working for god binary
* Fix God.init not accepting block (thx _eric)
* Fix SIGHUP ignore (thx _eric)
* Fix error reporting on `god --help` (don't error report a normal SystemExit)
== 0.4.3 / 2007-09-10
* Bug Fixes
* fix Process#alive? to not raise on no such file (affects `god terminate`)
== 0.4.2 / 2007-09-10
* Bug Fixes
* fix netlink buffer issue that prevented events on Linux from working consistently [dkresge]
== 0.4.1 / 2007-09-10
* Bug Fixes
* require 'stringio' for ruby 1.8.5
== 0.4.0 / 2007-09-10
* Major Enhancements
* Add the ability for conditions to override transition state (for exceptional cases)
* Implement dynamic load of config files while god is running (god load <filename>)
* Add ability to save auto-daemonized process output to a log file
* Add robust default stop lambda command for auto-daemonized processes (inspired by _eric)
* Add status command for god binary (shows status of each watch)
* Create proper logger with timestamps
* Add log command to god binary to get real time logs for a specific watch from a running god instance
* Add terminate command for god binary (stop god and all watches)
* Minor Enhancements
* Enforce validity of Watches
* Enforce that God.init is not called after a Watch
* Move pid_file_directory creation and validation to God.start
* Remove check for at least one Watch during startup (now that dynamic loading exists)
* New Conditions
* Tries < PollCondition - triggers after the specified number of tries
* Add :notify_when_flapping behavior to check for oscillation [kevinclark]
* Add :degrading_lambda condition. [kevinclark]
It uses a decaying interval (1/2 rate) for 3 cycles before failing.
* Bug Fixes
* Use exit!(0) instead of exit! in god binary to exit with code 0 (instead of default -1)
* Command line group control fixed
* Fix cross-thread return problem
== 0.3.0 / 2007-08-17
* Fix netlink header problem on Ubuntu Edgy [Dan Sully]
* Add uid/gid setting for processes [kevinclark]
* Add autostart flag for watches so they don't necessarily startup with god [kevinclark]
* Change command line call options for god binary to accommodate watch start/stop functionality
* Add individual start/stop/restart grace periods for finer grained control
* Change default DRb port to 17165 ('god'.to_i(32))
* Implement command line control to start/restart/stop/monitor/unmonitor watches/groups by name
* Watches can now belong to a group that can be controlled as a whole
* Allow god to be installed (sans events) on systems that don't support events
* Daemonize and handle PID files for non-daemonizing scripts [kevinclark]
* Fix simple mode lifecycle gap
* Remove necessity to specify pid_file for conditions
* Change config file to use God.init and God.watch directly instead of God.meddle block
* Move god binary command logic to main library
* Enhance god binary with better reporting
* Fix synchronization bug in Timer (reported by Srini Panguluri)
* Add Lambda condition for easy custom conditions [Mike Mintz]
* Add sugar for numerics (seconds, minutes, kilobytes, megabytes, percent, etc)
* Add optional PID and log file generation to god binary for daemon mode
* Add God.load to do glob enabled loading
* Add -V option to god binary for detailed version/build info
== 0.2.0 / 2007-07-18
* Rewrote innards to use a state and event based lifecycle
* Basic support for events via kqueue (bsd/darwin) and netlink/pec (linux) [kevinclark]
* Added advanced syntax (simple syntax calls advanced api underneath)
* Condition returns have changed meaning. With simple syntax, a true return activates block
* Updated http://god.rubyforge.org with updated simple config and new advanced config
== 0.1.0 / 2007-07-07
* 1 major enhancement
* Birthday!