#!/usr/bin/perl # index.cgi # List all services currently being monitored $trust_unknown_referers = 1; require './status-lib.pl'; print "Refresh: $config{'refresh'}\r\n" if ($config{'refresh'}); &ui_print_header(undef, $text{'index_title'}, "", undef, 1, 1); # If we are using SNMP for notification, make sure the Perl module is installed if ($config{'snmp_server'}) { eval "use Net::SNMP"; if ($@) { eval "use SNMP_Session"; } if ($@) { &ui_print_endpage( &ui_config_link('index_esnmp', [ "<tt>Net::SNMP</tt>", "../cpan/download.cgi?source=3&cpan=Net::SNMP&mode=2&return=/$module_name/&returndesc=".&urlize($text{'index_return'}), undef ])); } } @serv = &list_services(); $mid = int((@serv-1) / 2); $oldstatus = &read_file($oldstatus_file, \%oldstatus); if (@serv) { &show_button(); if ($config{'sort_mode'} == 1) { @serv = sort { $a->{'desc'} cmp $b->{'desc'} } @serv; } elsif ($config{'sort_mode'} == 2) { @serv = sort { $a->{'remote'} cmp $b->{'remote'} } @serv; } elsif ($config{'sort_mode'} == 3) { @serv = sort { $oldstatus{$a->{'id'}} <=> $oldstatus{$b->{'id'}} } @serv; } if (!$config{'index_status'} && $oldstatus) { local @st = stat($oldstatus_file); if (@st) { local $t = &make_date($st[9]); print &text('index_oldtime', $t),"<br>\n"; } } # Show table of defined monitors @links = ( ); if ($access{'edit'}) { print &ui_form_start("delete_mons.cgi", "post"); push(@links, &select_all_link("d", 1), &select_invert_link("d", 1) ); } print &ui_links_row(\@links); if ($config{'columns'} == 2) { print "<table width=100%><tr>\n"; print "<td width=50% valign=top>\n"; &service_table(@serv[0 .. $mid]); print "</td> <td width=50% valign=top>\n"; &service_table(@serv[$mid+1 .. $#serv]) if (@serv > 1); print "</td></tr></table>\n"; } else { &service_table(@serv); } print &ui_links_row(\@links); if ($access{'edit'}) { print &ui_form_end([ [ "delete", $text{'index_delete'} ], [ "refresh", $text{'index_refsel'} ] ]); } } else { print "<b>$text{'index_none'}</b><p>\n"; } &show_button(); print &ui_hr(); print &ui_buttons_start(); if ($access{'sched'}) { # Open scheduled monitoring form print &ui_buttons_row("edit_sched.cgi", $text{'index_sched'}, $text{'index_scheddesc'}); } if ($access{'edit'}) { # Email templates button print &ui_buttons_row("list_tmpls.cgi", $text{'index_tmpls'}, $text{'index_tmplsdesc'}); } if (!$config{'index_status'}) { # Refresh now print &ui_buttons_row("refresh.cgi", $text{'index_refresh'}, $text{'index_refreshdesc'}); } print "</tr></table>\n"; &remote_finished(); &ui_print_footer("/", $text{'index'}); sub service_table { # Table header local @tds = $access{'edit'} ? ( "width=5" ) : ( ); print &ui_columns_start([ $access{'edit'} ? ( "" ) : ( ), $text{'index_desc'}, $text{'index_host'}, $config{'index_status'} ? ( $text{'index_up'} ) : $oldstatus ? ( $text{'index_last'} ) : ( ), ], 100, 0, \@tds); # One row per monitor foreach $s (@_) { local @cols; local $esc = &html_escape($s->{'desc'}); $esc = "<i>$esc</i>" if ($s->{'nosched'} == 1); if ($access{'edit'}) { push(@cols, &ui_link("edit_mon.cgi?id=$s->{'id'}",$esc)); } else { push(@cols, $esc); } push(@cols, &nice_remotes($s)); # Work out and show all the up icons local @ups; if ($config{'index_status'}) { # Showing the current status .. first check dependency @stats = &service_status($s, 1); if ($s->{'depend'}) { $ds = &get_service($s->{'depend'}); if ($ds) { @dstats = &service_status($ds, 1); if ($dstats[0]->{'up'} != 1) { @stats = map { { 'up' => -4 } } @stats; } } } @ups = map { $_->{'up'} } @stats; @remotes = map { $_->{'remote'} } @stats; } elsif ($oldstatus) { # Getting status from last check $stat = &expand_oldstatus($oldstatus{$s->{'id'}}); @remotes = &expand_remotes($s); @ups = map { defined($stat->{$_}) ? ( $stat->{$_} ) : ( ) } @remotes; } if (!@ups) { push(@cols, ""); } else { local @icons; for(my $i=0; $i<@ups; $i++) { $up = $ups[$i]; $h = $remotes[$i]; $h = $text{'index_local'} if ($h eq '*'); push(@icons, "<img src=".&get_status_icon($up). " title='".&html_escape($h)."'>"); } push(@cols, join("", @icons)); } if ($access{'edit'}) { print &ui_checked_columns_row(\@cols, \@tds, "d", $s->{'id'}); } else { print &ui_columns_row(\@cols, \@tds); } } print &ui_columns_end(); } sub show_button { if ($access{'edit'}) { print "<form action=edit_mon.cgi>\n"; print "<input type=submit value='$text{'index_add'}'> ", "<select name=type>\n"; foreach $h (sort { $a->[1] cmp $b->[1] } &list_handlers()) { printf "<option value=%s>%s</option>\n", $h->[0], $h->[1] || $h->[0]; } print "</select></form>\n"; } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
images | Folder | 0755 |
|
|
lang | Folder | 0755 |
|
|
services | Folder | 0755 |
|
|
CHANGELOG | File | 6.42 KB | 0644 |
|
WEBMIN-STATUS-MIB.txt | File | 1.53 KB | 0644 |
|
acl_security.pl | File | 508 B | 0755 |
|
alive-monitor.pl | File | 241 B | 0755 |
|
apache-monitor.pl | File | 697 B | 0755 |
|
backup_config.pl | File | 801 B | 0755 |
|
bind8-monitor.pl | File | 710 B | 0755 |
|
cfengine-monitor.pl | File | 415 B | 0755 |
|
cgi_args.pl | File | 321 B | 0755 |
|
change-monitor.pl | File | 791 B | 0755 |
|
config | File | 182 B | 0644 |
|
config-ALL-linux | File | 210 B | 0644 |
|
config-debian-linux | File | 225 B | 0644 |
|
config-debian-linux-3.0 | File | 216 B | 0644 |
|
config-debian-linux-3.1-ALL | File | 216 B | 0644 |
|
config-freebsd | File | 195 B | 0644 |
|
config-hpux | File | 182 B | 0644 |
|
config-netbsd | File | 182 B | 0644 |
|
config-solaris | File | 182 B | 0644 |
|
config-syno-linux | File | 197 B | 0644 |
|
config.info | File | 1.09 KB | 0644 |
|
config.info.ca | File | 1.31 KB | 0644 |
|
config.info.cs | File | 802 B | 0644 |
|
config.info.de | File | 1.28 KB | 0644 |
|
config.info.es | File | 659 B | 0644 |
|
config.info.fa | File | 994 B | 0644 |
|
config.info.fr | File | 1.42 KB | 0644 |
|
config.info.hu | File | 0 B | 0644 |
|
config.info.it | File | 0 B | 0644 |
|
config.info.ja | File | 1.04 KB | 0644 |
|
config.info.ko | File | 764 B | 0644 |
|
config.info.nl | File | 984 B | 0644 |
|
config.info.no | File | 962 B | 0644 |
|
config.info.pl | File | 1021 B | 0644 |
|
config.info.ru | File | 486 B | 0644 |
|
config.info.sv | File | 99 B | 0644 |
|
config.info.tr | File | 567 B | 0644 |
|
config.info.uk | File | 479 B | 0644 |
|
config.info.zh | File | 86 B | 0644 |
|
config.info.zh_TW | File | 229 B | 0644 |
|
consume-monitor.pl | File | 1.89 KB | 0755 |
|
defaultacl | File | 15 B | 0644 |
|
delete_mons.cgi | File | 1.03 KB | 0755 |
|
delete_tmpls.cgi | File | 712 B | 0755 |
|
dhcpd-monitor.pl | File | 616 B | 0755 |
|
dns-monitor.pl | File | 1.3 KB | 0755 |
|
dnsadmin-monitor.pl | File | 667 B | 0755 |
|
dovecot-monitor.pl | File | 302 B | 0755 |
|
du-monitor.pl | File | 790 B | 0644 |
|
edit_mon.cgi | File | 9.61 KB | 0755 |
|
edit_sched.cgi | File | 3.24 KB | 0755 |
|
edit_tmpl.cgi | File | 1.81 KB | 0755 |
|
exec-monitor.pl | File | 1.52 KB | 0755 |
|
fail2ban-monitor.pl | File | 516 B | 0755 |
|
feedback_files.pl | File | 175 B | 0755 |
|
file-monitor.pl | File | 3.35 KB | 0755 |
|
ftp-monitor.pl | File | 3.05 KB | 0755 |
|
hostsentry-monitor.pl | File | 521 B | 0755 |
|
http-monitor.pl | File | 4.13 KB | 0755 |
|
iface-monitor.pl | File | 908 B | 0755 |
|
index.cgi | File | 4.77 KB | 0755 |
|
inetd-monitor.pl | File | 399 B | 0755 |
|
init-monitor.pl | File | 576 B | 0644 |
|
jabber-monitor.pl | File | 667 B | 0755 |
|
ldap-monitor.pl | File | 1.51 KB | 0755 |
|
list_tmpls.cgi | File | 1.05 KB | 0755 |
|
load-monitor.pl | File | 1.1 KB | 0755 |
|
log_parser.pl | File | 673 B | 0755 |
|
mailq-monitor.pl | File | 1.3 KB | 0755 |
|
memory-monitor.pl | File | 1.55 KB | 0755 |
|
module.info | File | 168 B | 0644 |
|
module.info.af | File | 0 B | 0644 |
|
module.info.af.auto | File | 128 B | 0644 |
|
module.info.ar | File | 0 B | 0644 |
|
module.info.ar.auto | File | 167 B | 0644 |
|
module.info.be | File | 0 B | 0644 |
|
module.info.be.auto | File | 198 B | 0644 |
|
module.info.bg | File | 0 B | 0644 |
|
module.info.bg.auto | File | 247 B | 0644 |
|
module.info.ca | File | 118 B | 0644 |
|
module.info.ca.auto | File | 14 B | 0644 |
|
module.info.cs | File | 33 B | 0644 |
|
module.info.cs.auto | File | 105 B | 0644 |
|
module.info.da | File | 0 B | 0644 |
|
module.info.da.auto | File | 120 B | 0644 |
|
module.info.de | File | 121 B | 0644 |
|
module.info.de.auto | File | 15 B | 0644 |
|
module.info.el | File | 0 B | 0644 |
|
module.info.el.auto | File | 274 B | 0644 |
|
module.info.es | File | 40 B | 0644 |
|
module.info.es.auto | File | 95 B | 0644 |
|
module.info.eu | File | 0 B | 0644 |
|
module.info.eu.auto | File | 132 B | 0644 |
|
module.info.fa | File | 0 B | 0644 |
|
module.info.fa.auto | File | 185 B | 0644 |
|
module.info.fi | File | 0 B | 0644 |
|
module.info.fi.auto | File | 134 B | 0644 |
|
module.info.fr | File | 42 B | 0644 |
|
module.info.fr.auto | File | 107 B | 0644 |
|
module.info.he | File | 0 B | 0644 |
|
module.info.he.auto | File | 155 B | 0644 |
|
module.info.hr | File | 0 B | 0644 |
|
module.info.hr.auto | File | 134 B | 0644 |
|
module.info.hu | File | 37 B | 0644 |
|
module.info.hu.auto | File | 99 B | 0644 |
|
module.info.it | File | 39 B | 0644 |
|
module.info.it.auto | File | 96 B | 0644 |
|
module.info.ja | File | 57 B | 0644 |
|
module.info.ja.auto | File | 130 B | 0644 |
|
module.info.ko | File | 36 B | 0644 |
|
module.info.ko.auto | File | 92 B | 0644 |
|
module.info.lt | File | 0 B | 0644 |
|
module.info.lt.auto | File | 131 B | 0644 |
|
module.info.lv | File | 0 B | 0644 |
|
module.info.lv.auto | File | 136 B | 0644 |
|
module.info.ms | File | 119 B | 0644 |
|
module.info.ms.auto | File | 15 B | 0644 |
|
module.info.mt | File | 0 B | 0644 |
|
module.info.mt.auto | File | 146 B | 0644 |
|
module.info.nl | File | 33 B | 0644 |
|
module.info.nl.auto | File | 97 B | 0644 |
|
module.info.no | File | 32 B | 0644 |
|
module.info.no.auto | File | 96 B | 0644 |
|
module.info.pl | File | 97 B | 0644 |
|
module.info.pl.auto | File | 15 B | 0644 |
|
module.info.pt | File | 0 B | 0644 |
|
module.info.pt.auto | File | 133 B | 0644 |
|
module.info.pt_BR | File | 0 B | 0644 |
|
module.info.pt_BR.auto | File | 142 B | 0644 |
|
module.info.ro | File | 0 B | 0644 |
|
module.info.ro.auto | File | 153 B | 0644 |
|
module.info.ru | File | 56 B | 0644 |
|
module.info.ru.auto | File | 165 B | 0644 |
|
module.info.sk | File | 33 B | 0644 |
|
module.info.sk.auto | File | 106 B | 0644 |
|
module.info.sl | File | 0 B | 0644 |
|
module.info.sl.auto | File | 135 B | 0644 |
|
module.info.sv | File | 33 B | 0644 |
|
module.info.sv.auto | File | 92 B | 0644 |
|
module.info.th | File | 0 B | 0644 |
|
module.info.th.auto | File | 250 B | 0644 |
|
module.info.tr | File | 32 B | 0644 |
|
module.info.tr.auto | File | 105 B | 0644 |
|
module.info.uk | File | 0 B | 0644 |
|
module.info.uk.auto | File | 208 B | 0644 |
|
module.info.ur | File | 0 B | 0644 |
|
module.info.ur.auto | File | 174 B | 0644 |
|
module.info.vi | File | 0 B | 0644 |
|
module.info.vi.auto | File | 182 B | 0644 |
|
module.info.zh | File | 36 B | 0644 |
|
module.info.zh.auto | File | 76 B | 0644 |
|
module.info.zh_TW | File | 40 B | 0644 |
|
module.info.zh_TW.auto | File | 82 B | 0644 |
|
mon-monitor.pl | File | 431 B | 0755 |
|
monitor.pl | File | 14.59 KB | 0755 |
|
mysql-monitor.pl | File | 450 B | 0755 |
|
nfs-monitor.pl | File | 394 B | 0755 |
|
nut-monitor.pl | File | 2.13 KB | 0755 |
|
oldfile-monitor.pl | File | 864 B | 0755 |
|
ping-monitor.pl | File | 6.84 KB | 0755 |
|
portsentry-monitor.pl | File | 535 B | 0755 |
|
postfix-monitor.pl | File | 509 B | 0755 |
|
postgresql-monitor.pl | File | 480 B | 0755 |
|
prefs.info | File | 58 B | 0644 |
|
proc-monitor.pl | File | 1.7 KB | 0755 |
|
proftpd-monitor.pl | File | 842 B | 0755 |
|
qmailadmin-monitor.pl | File | 424 B | 0755 |
|
query-monitor.pl | File | 2.89 KB | 0755 |
|
raid-monitor.pl | File | 1.66 KB | 0755 |
|
refresh.cgi | File | 550 B | 0755 |
|
rssh-monitor.pl | File | 2.63 KB | 0755 |
|
safeacl | File | 15 B | 0644 |
|
samba-monitor.pl | File | 453 B | 0755 |
|
save_mon.cgi | File | 3.23 KB | 0755 |
|
save_sched.cgi | File | 2.44 KB | 0755 |
|
save_tmpl.cgi | File | 1.25 KB | 0755 |
|
sendmail-monitor.pl | File | 682 B | 0755 |
|
sensors-monitor.pl | File | 3.9 KB | 0755 |
|
slapd-monitor.pl | File | 606 B | 0755 |
|
space-monitor.pl | File | 3.09 KB | 0755 |
|
squid-monitor.pl | File | 881 B | 0755 |
|
sshd-monitor.pl | File | 817 B | 0755 |
|
sslcert-monitor.pl | File | 4.11 KB | 0755 |
|
status-lib.pl | File | 17.62 KB | 0755 |
|
status_monitor_api.pl | File | 593 B | 0755 |
|
system_info.pl | File | 1.48 KB | 0644 |
|
tcp-monitor.pl | File | 1.23 KB | 0755 |
|
traffic-monitor.pl | File | 2.4 KB | 0755 |
|
uninstall.pl | File | 434 B | 0755 |
|
usermin-monitor.pl | File | 496 B | 0755 |
|
webmin-monitor.pl | File | 363 B | 0755 |
|
xinetd-monitor.pl | File | 491 B | 0755 |
|