PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mon



Max Power
02.02.07, 15:12
Ich versuche gerade meine Prozesse mittels mon zu überwachen, was auch ganz gut funktioniert. Ich habe jetzt ein skript gefunden das meine Dienste nach einem ausfall automatisch neustartet, allerdings scheint es dort ein paar probleme zu geben.

Dieses überwacht den Webserver

01 watch webhost01
02 service httpd_prozess
03 monitor watch_prozess.monitor /usr/sbin/httpd2-prefork ;;
04 interval 30s
05 period RESTART:
06 alert httpd_restart.alert
07 alert remote.alert -H monhost
08 upalertafter 2m
09 numalerts 1
10 period RESTART_FAILED:
11 alert mail.alert -S "httpd restart failed" xxx@xxx.de
12 numalerts 1
13 alertafter 3m

Perlskript

01 #!/usr/bin/perl
02
03 use Proc::ProcessTable;
04
05 $ps = new Proc::ProcessTable;
06
07 $ret = 0;
08 PROZESS: foreach $prozess (@ARGV) {
09 foreach $p ( @{$ps->table} ){
10 next PROZESS if ($p->{cmndline} =~ /^$prozess/);
11 }
12
13 print "Prozess $prozess läuft nicht!\n";
14 $ret = 1;
15 }
16
17 exit $ret;

Neustart des Webservers

01 #!/bin/sh
02 /etc/init.d/apache2 start

Skript zum neustart des Webservers

Wenn der Dienst jetzt ausfällt bekomme ich auch sofort eine mail mit folgendem inhalt: httpd restart failed. Jetzt weis ich allerdings nicht wo das Problem liegt. Skript eins und zwei laufen einwandfrei, ich denke das Problem liegt bei dem Perlskript, und da ich von Perl keine Ahnung habe brauche ich etwas Unterstützung.

mbo
04.02.07, 10:31
Was passiert, wenn Du das Perlscript von Hand ausführst?