1 |
<HTML> |
<HTML> |
2 |
<HEAD> |
<HEAD> |
3 |
<!-- $Id$ --> |
<!-- $Id$ --> |
4 |
<TITLE>Proposal for monit 4.0</TITLE> |
<TITLE>Proposal for monit 4.1</TITLE> |
5 |
<link rel="stylesheet" title="Default" type="text/css" href="monit.css"> |
<link rel="stylesheet" title="Default" type="text/css" href="monit.css"> |
6 |
</HEAD> |
</HEAD> |
7 |
|
|
32 |
<b><u>Introduction:</u></b><p> |
<b><u>Introduction:</u></b><p> |
33 |
|
|
34 |
|
|
35 |
This document is a draft for the next major release of monit, monit |
This document is a draft for the next minor release of monit, monit |
36 |
4.0. Each feature item is listed with the responsible for the |
4.1. Each feature item is listed with the responsible for the |
37 |
implementation, the current progress (the color will go from blue to |
implementation, the current progress (the color will go from blue to |
38 |
green) and how we judge the importance of this feature (high, medium, |
green) and how we judge the importance of this feature (high, medium, |
39 |
low). |
low). |
51 |
|
|
52 |
<ol> |
<ol> |
53 |
|
|
54 |
<li><b>Monitoring file systems and devices.</b><p> |
<li> <b>ICMP echo test for remote host monitoring</b><p> |
55 |
|
<code> |
56 |
|
<table border=0 cellspacing=5> |
57 |
|
<tr> |
58 |
|
<td width=50%>Responsible:</td><td width=50%>?</td> |
59 |
|
</tr> |
60 |
|
<tr> |
61 |
|
<td width=50%>Progress:</td> |
62 |
|
<td width=50% bgcolor="blue" align=center><b><font color=#ffffff>0%</font></b></td> |
63 |
|
</tr> |
64 |
|
<tr> |
65 |
|
<td width=50%>Importance:</td><td width=50%>MEDIUM</td> |
66 |
|
</tr> |
67 |
|
</table> |
68 |
|
</code> |
69 |
|
<br> |
70 |
<p> |
<p> |
71 |
|
|
72 |
|
<li><b>web and console output simplification (don't display "not defined" options)</b><p> |
73 |
<code> |
<code> |
74 |
<table border=0 cellspacing=5> |
<table border=0 cellspacing=5> |
75 |
<tr> |
<tr> |
76 |
<td width=50%>Responsible:</td><td width=50%>Martin</td> |
<td width=50%>Responsible:</td><td width=50%>?</td> |
77 |
</tr> |
</tr> |
78 |
<tr> |
<tr> |
79 |
<td width=50%>Progress:</td> |
<td width=50%>Progress:</td> |
80 |
<td width=50% bgcolor="green" align=center><b><font color=#ffffff>100%</font></b></td> |
<td width=50% bgcolor="blue" align=center><b><font color=#ffffff>0%</font></b></td> |
81 |
</tr> |
</tr> |
82 |
<tr> |
<tr> |
83 |
<td width=50%>Importance:</td><td width=50%>HIGH</td> |
<td width=50%>Importance:</td><td width=50%>MEDIUM</td> |
84 |
</tr> |
</tr> |
85 |
</table> |
</table> |
86 |
</code> |
</code> |
87 |
<br> |
<br> |
88 |
<p> |
<p> |
|
<li><b>Execute arbitary programs.</b><p> |
|
89 |
|
|
90 |
This functionality will allow you to start an arbitary program in a |
<li><b>HTTP request returned data checksum</b><br> |
91 |
timestamp or resource statement. Examples: |
It makes sense now to implement this test, because when monit was designed for |
92 |
|
local tests only, it was possible to checksum the page or script directly in |
93 |
|
the filesystem. It is not possible to do the same for remote hosts => it will |
94 |
|
be usefull to support this option, something like:<br><br> |
95 |
|
|
96 |
<pre> |
<pre> |
97 |
if timestamp /usr/local/apache/conf/httpd.conf was changed |
if failed host my.web.org port 80 protocol http and request "/my/page.html" |
98 |
then exec "/etc/init.d/apache restart" |
with checksum 8f7f419955cefa0b33a2ba316cba3659 then alert |
|
|
|
|
if mem > 100 Mb then exec "/<path>/program argument" |
|
|
as UID nobody and with GID nobody |
|
99 |
</pre> |
</pre> |
100 |
|
|
101 |
<p> |
It will involve chunked transfer encoding implementation as discussed in the past.<br> |
102 |
|
|
103 |
|
<br> |
104 |
|
|
105 |
<code> |
<code> |
106 |
<table border=0 cellspacing=5> |
<table border=0 cellspacing=5> |
107 |
<tr> |
<tr> |
108 |
<td width=50%>Responsible:</td><td width=50%>Jan-Henrik</td> |
<td width=50%>Responsible:</td><td width=50%>?</td> |
109 |
</tr> |
</tr> |
110 |
<tr> |
<tr> |
111 |
<td width=50%>Progress:</td> |
<td width=50%>Progress:</td> |
112 |
<td width=50% bgcolor="green" align=center><b><font color=#ffffff>100%</font></b></td> |
<td width=50% bgcolor="blue" align=center><b><font color=#ffffff>0%</font></b></td> |
113 |
</tr> |
</tr> |
114 |
<tr> |
<tr> |
115 |
<td width=50%>Importance:</td><td width=50%>HIGH</td> |
<td width=50%>Importance:</td><td width=50%>MEDIUM</td> |
116 |
</tr> |
</tr> |
117 |
</table> |
</table> |
118 |
</code> |
</code> |
119 |
<br> |
<br> |
120 |
<p> |
<p> |
121 |
|
|
122 |
</ol> |
<li><b>Internal cervlet refactoring to utilize new socket code</b><p> |
123 |
|
<code> |
124 |
|
<table border=0 cellspacing=5> |
125 |
|
<tr> |
126 |
|
<td width=50%>Responsible:</td><td width=50%>?</td> |
127 |
|
</tr> |
128 |
|
<tr> |
129 |
|
<td width=50%>Progress:</td> |
130 |
|
<td width=50% bgcolor="blue" align=center><b><font color=#ffffff>0%</font></b></td> |
131 |
|
</tr> |
132 |
|
<tr> |
133 |
|
<td width=50%>Importance:</td><td width=50%>HIGH</td> |
134 |
|
</tr> |
135 |
|
</table> |
136 |
|
</code> |
137 |
|
|
138 |
</TD> |
</TD> |
139 |
</TR> |
</TR> |