# | Line 1 | Line 1 | |
---|---|---|
1 | <?php | |
2 | ||
3 | – | # Navigation for the i-scream alerts. |
4 | – | # pjm2@ukc.ac.uk |
3 | # | |
4 | + | # i-scream central monitoring system |
5 | + | # http://www.i-scream.org |
6 | + | # Copyright (C) 2000-2002 i-scream |
7 | + | # |
8 | + | # This program is free software; you can redistribute it and/or |
9 | + | # modify it under the terms of the GNU General Public License |
10 | + | # as published by the Free Software Foundation; either version 2 |
11 | + | # of the License, or (at your option) any later version. |
12 | + | # |
13 | + | # This program is distributed in the hope that it will be useful, |
14 | + | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | + | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | + | # GNU General Public License for more details. |
17 | + | # |
18 | + | # You should have received a copy of the GNU General Public License |
19 | + | # along with this program; if not, write to the Free Software |
20 | + | # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21 | + | # |
22 | + | |
23 | # CONFIGURABLE CONSTANTS: - | |
24 | ||
25 | include("alerts_config.inc.php"); | |
# | Line 12 | Line 29 | include("alerts_config.inc.php"); | |
29 | ||
30 | include("iutils.inc.php"); | |
31 | ||
32 | + | if ($formMethod == "GET") { |
33 | + | # in order of public.php |
34 | + | $machine = isset($_GET['machine']) ? $_GET['machine'] : ""; |
35 | + | $fontsize = isset($_GET['fontsize']) ? $_GET['fontsize'] : ""; |
36 | + | $refresh = isset($_GET['refresh']) ? $_GET['refresh'] : ""; |
37 | + | $hideform = isset($_GET['hideform']) ? $_GET['hideform'] : ""; |
38 | + | $pagewidth = isset($_GET['pagewidth']) ? $_GET['pagewidth'] : ""; |
39 | + | $small = isset($_GET['small']) ? $_GET['small'] : ""; |
40 | + | $submit = isset($_GET['submut']) ? $_GET['submit'] : ""; |
41 | + | } |
42 | + | |
43 | function printLine($title) { | |
44 | echo "<hr style=\"color:#9999ff;\">"; | |
45 | echo "<b>$title</b>"; | |
# | Line 22 | Line 50 | function getValue($value, $alert) { | |
50 | return $matches[1]; | |
51 | } | |
52 | ||
53 | < | function printAlert($machine, $alert) { |
54 | < | $alertLevel = getValue("alertLevel", $alert); |
53 | > | function printAlert($machine, $alert, $small="") { |
54 | > | |
55 | > | global $fontsize; |
56 | > | |
57 | > | include("alerts_config.inc.php"); |
58 | > | |
59 | > | $alertLevelNum = getValue("alertLevel", $alert); |
60 | $lastAlert = getValue("lastAlert", $alert); | |
61 | $thresholdLevel = getValue("thresholdLevel", $alert); | |
62 | $source = getValue("source", $alert); | |
# | Line 33 | Line 66 | function printAlert($machine, $alert) { | |
66 | $timeTillNextAlert = getValue("timeTillNextAlert", $alert); | |
67 | $initialAlertTime = getValue("initialAlertTime", $alert); | |
68 | ||
69 | < | echo <<<EOT |
70 | < | |
71 | < | <table border="0" width="500"> |
72 | < | <tr> |
73 | < | <td><b>$attributeName</b></td> |
74 | < | </td> </td> |
75 | < | <tr> |
76 | < | <td>Alert level:</td> |
77 | < | <td><b>$alertLevelNames[$alertLevel]</b></td> |
78 | < | </tr> |
79 | < | <tr> |
80 | < | <td>Last alert time:</td> |
81 | < | <td>$lastAlert</td> |
82 | < | </tr> |
83 | < | <tr> |
84 | < | <td colspan="2"> |
85 | < | <font size="2"> |
86 | < | $source has exceeded the threshold of $thresholdValue |
87 | < | for $attributeName with a value of <b>$value</b>. |
69 | > | if ($thresholdLevel == "1") { |
70 | > | $thresholdLevel = "Lower"; |
71 | > | } |
72 | > | else if ($thresholdLevel == "2") { |
73 | > | $thresholdLevel = "Upper"; |
74 | > | } |
75 | > | else { |
76 | > | $thresholdLevel = "Normal"; |
77 | > | } |
78 | > | |
79 | > | $alertColour = $alertLevelColours[$alertLevelNum]; |
80 | > | $alertLevel = $alertLevelNames[$alertLevelNum]; |
81 | > | $initialAlertTime = strftime("%x %X", intval($initialAlertTime / 1000)); |
82 | > | |
83 | > | if ($small == "on") { |
84 | > | echo <<<EOT |
85 | > | <tr> |
86 | > | <td width="50"> |
87 | > | |
88 | > | </td> |
89 | > | <td> |
90 | > | <img src="level$alertLevelNum.gif" width="41" height="9" border="0" alt="$alertLevel"> |
91 | > | </td> |
92 | > | <td> |
93 | > | <font size="$fontsize" color="$alertColour"><b>$alertLevel</b></font> |
94 | > | </td> |
95 | > | <td> |
96 | > | <font size="$fontsize">$attributeName (c:$value t:$thresholdValue)</font> |
97 | > | </td> |
98 | > | <td> |
99 | > | |
100 | > | </td> |
101 | > | </tr> |
102 | > | EOT; |
103 | > | } |
104 | > | else { |
105 | > | echo <<<EOT |
106 | > | |
107 | > | <table border="0" cellspacing="5" width="100%"> |
108 | > | <tr> |
109 | > | <td align="left" width="40%"> |
110 | > | <img src="level$alertLevelNum.gif" width="41" height="9" border="0" alt="$alertLevel"> |
111 | > | <font color="$alertColour" size="2"><b>$alertLevel</b></font> |
112 | > | </td> |
113 | > | <td align="right" width="60%"> |
114 | > | <b>$attributeName</b> |
115 | > | </td> |
116 | > | </tr> |
117 | > | <tr> |
118 | > | <td align="right"><font size="2">Threshold:</font></td> |
119 | > | <td align="left">$thresholdValue ($thresholdLevel)</td> |
120 | > | </tr> |
121 | > | <tr> |
122 | > | <td align="right"><font size="2">Alert value:</font></td> |
123 | > | <td align="left"><b>$value</b></td> |
124 | > | </tr> |
125 | > | <tr> |
126 | > | <td align="right"><font size="2">Initially raised:</font></td> |
127 | > | <td align="left">$initialAlertTime</td> |
128 | > | </tr> |
129 | > | </table> |
130 | ||
56 | – | </font> |
57 | – | </td> |
58 | – | </tr> |
59 | – | <tr> |
60 | – | <td>Initial alert time:</td> |
61 | – | <td>$initialAlertTime</td> |
62 | – | </tr> |
63 | – | <tr> |
64 | – | <td>Time until next alert:</td> |
65 | – | <td>$timeTillNextAlert</td> |
66 | – | </tr> |
67 | – | </table> |
68 | – | |
131 | EOT; | |
132 | + | printLine(""); |
133 | + | } |
134 | ||
71 | – | printLine(""); |
72 | – | |
135 | } | |
136 | ||
137 | < | function printReports($machine) { |
138 | < | # Get a list of all files in the machine's directory. |
139 | < | include("alerts_config.inc.php"); |
140 | < | $alertArray = getdirArray("$alertDirectory/$machine", 'rsort'); |
137 | > | function printReports($machine, $small="") { |
138 | > | global $fontsize; |
139 | > | |
140 | > | # Get a list of all files in the machine's directory. |
141 | > | include("alerts_config.inc.php"); |
142 | > | $alertArray = getdirArray("$alertDirectory/$machine", 'rsort'); |
143 | > | |
144 | > | if ($small == "on") { |
145 | > | echo <<<EOT |
146 | > | <table border="0" cellpadding="2" cellspacing="6"> |
147 | > | <tr> |
148 | > | <td colspan="5"> |
149 | > | <font size="$fontsize"><b><a href="alerts.php?machine=$machine" style="color: black; text-decoration: none;">$machine</a></b></font> |
150 | > | </td> |
151 | > | </tr> |
152 | > | EOT; |
153 | > | } |
154 | > | else { |
155 | > | echo <<<EOT |
156 | > | <p> </p> |
157 | > | <table border="0" cellpadding="3" cellspacing="2" bgcolor="#000066" width="100%"> |
158 | > | <tr> |
159 | > | <td> |
160 | > | <font color="white"> |
161 | > | <b> |
162 | > | Current alerts for <a href="latest.php?machine=$machine" style="color: white">$machine</a> |
163 | > | </b> |
164 | > | <font size="2"> |
165 | > | <br>Sorted by time, latest first. |
166 | > | </font> |
167 | > | </font> |
168 | > | </td> |
169 | > | </tr> |
170 | > | <tr> |
171 | > | <td bgcolor="white"> |
172 | > | |
173 | > | EOT; |
174 | > | |
175 | > | printLine(""); |
176 | > | } |
177 | > | |
178 | > | if ($alertArray != FALSE) { |
179 | > | |
180 | > | foreach($alertArray as $file_name) { |
181 | > | $input = file("$alertDirectory/$machine/$file_name"); |
182 | > | $input = $input[0]; |
183 | > | $alerts[] = $input; |
184 | > | } |
185 | ||
186 | < | foreach($alertArray as $file_name) { |
187 | < | $input = file("$alertDirectory/$machine/$file_name"); |
188 | < | $input = $input[0]; |
189 | < | $alerts[] = $input; |
190 | < | } |
191 | < | |
192 | < | foreach ($alerts as $alert) { |
193 | < | printAlert($machine, $alert); |
194 | < | } |
186 | > | foreach ($alerts as $alert) { |
187 | > | printAlert($machine, $alert, $small); |
188 | > | } |
189 | > | } |
190 | > | else { |
191 | > | if ($small != "on") { |
192 | > | echo "There are currently no alerts held about <b>$machine</b>"; |
193 | > | printLine(""); |
194 | > | } |
195 | > | } |
196 | > | |
197 | > | if ($small == "on") { |
198 | > | echo <<<EOT |
199 | > | <tr> |
200 | > | <td colspan="5"> </td> |
201 | > | </tr> |
202 | > | </table> |
203 | > | EOT; |
204 | > | } |
205 | > | else { |
206 | > | echo <<<EOT |
207 | > | </td> |
208 | > | </tr> |
209 | > | </table> |
210 | > | EOT; |
211 | > | } |
212 | } | |
213 | ||
214 | ||
# | Line 93 | Line 216 | function printReports($machine) { | |
216 | ||
217 | <? include($titleHTML); ?> | |
218 | ||
219 | < | <? printLine("Display the latest alerts for a host"); ?> |
219 | > | <? if ($hideform != "on") { ?> |
220 | ||
221 | + | <? printLine("Latest alerts for hosts"); ?> |
222 | + | |
223 | <form method="<? echo $formMethod ?>" action="<? echo $thisPage ?>"> | |
224 | <? | |
225 | ||
# | Line 104 | Line 229 | function printReports($machine) { | |
229 | <option selected value="<? echo $machine ?>"><? echo $machine ?></option> | |
230 | <option value="">----------------</option> | |
231 | <? } | |
232 | < | foreach($file_array as $file_name) { |
232 | > | foreach ($file_array as $file_name) { |
233 | #if (is_dir($file_name)) { | |
234 | print "<option value=\"$file_name\">$file_name</option>"; | |
235 | #} | |
# | Line 112 | Line 237 | function printReports($machine) { | |
237 | print "</select>"; | |
238 | ||
239 | ?> | |
240 | + | <input type="hidden" name="small" value="<?=$small?>"> |
241 | <input type="submit" name="submit" value="Display"> | |
242 | </form> | |
243 | ||
244 | + | <? } ?> |
245 | + | |
246 | <? if ($machine) { | |
247 | ||
248 | printLine(""); | |
249 | ||
250 | < | printReports($machine); |
250 | > | $masterwidth = ""; |
251 | > | if ($small != "on") { |
252 | > | $masterwidth = ' width="100%"'; |
253 | > | } |
254 | > | |
255 | > | echo <<<EOT |
256 | > | <table border="0" align="center"$masterwidth> |
257 | > | <tr> |
258 | > | <td> |
259 | > | EOT; |
260 | > | |
261 | > | if ($machine == "ALL") { |
262 | > | $machine_array = getdirArray($alertDirectory, 'asort'); |
263 | > | if ($machine_array != FALSE) { |
264 | > | foreach ($machine_array as $machine) { |
265 | > | printReports($machine, $small); |
266 | > | } |
267 | > | } |
268 | > | else { |
269 | > | print "<font size='$fontsize'><b>There are currently no alerts</b></font>"; |
270 | > | } |
271 | > | } |
272 | > | else { |
273 | > | printReports($machine, $small); |
274 | > | } |
275 | ||
276 | + | echo <<<EOT |
277 | + | </td> |
278 | + | </tr> |
279 | + | </table> |
280 | + | EOT; |
281 | + | } |
282 | + | else { |
283 | + | printLine(""); |
284 | } | |
285 | ||
286 | ?> |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |