Webserver ueberwachen

Aus LagoWiki

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: Manchmal ist es notwendig, einen Webserver zu überwachen, ob die Seiten korrekt erreichbar sind. Dazu kann folgende, einfache Vorgehensweise angewandt werden: * Auf ...)
Zeile 13: Zeile 13:
then echo "Test war erfolgreich - Server läuft: $(date)"
then echo "Test war erfolgreich - Server läuft: $(date)"
else
else
 +
echo "Test war nicht erfolgreich - Server down: $(date)"
echo "Test war nicht erfolgreich - Server down: $(date)" | mail -s "Serverstatus" serverstatus@meine-email.com
echo "Test war nicht erfolgreich - Server down: $(date)" | mail -s "Serverstatus" serverstatus@meine-email.com
fi
fi
* In der ''crontab'' wir jetzt noch eingetragen, dass zu jedem Zeitpunkt x die Datei ''watch.sh'' und eine Minute später die Datei ''watch-veri.sh'' ausgeführt werden soll.
* In der ''crontab'' wir jetzt noch eingetragen, dass zu jedem Zeitpunkt x die Datei ''watch.sh'' und eine Minute später die Datei ''watch-veri.sh'' ausgeführt werden soll.
 +
 +
1,11,21,31,41,51 * * * * /root/watch.sh >> watchlog.log
 +
2,12,22,32,42,52 * * * * /root/watch-veri.sh >> watchlog.log
 +
 +
Das Schreibt die ausgaben noch zusätzlich in das Logfile names ''watchlog.log''
 +
 +
Wenn man auf Nummer sicher gehen möchte, dass die Logfiles einem nicht auf einmal den Speicher voll laufen lassen, dann trägt man noch folgedes in die ''crontab'' ein:
 +
5 5 1 * * rm /root/watchlog.log
 +
Das löscht das Logfile jeden 1. des Monats um 5:05 Uhr

Version vom 21:22, 4. Apr. 2008

Manchmal ist es notwendig, einen Webserver zu überwachen, ob die Seiten korrekt erreichbar sind. Dazu kann folgende, einfache Vorgehensweise angewandt werden:

  • Auf dem zu überprüfenden Server wird eine Datei namens test.txt angelegt, die über eine URL zu erreichen ist (z.B. http://domain.tld/test.txt)
  • Diese Datei hat den nur ein Wort als Inhalt:
test
  • Auf einem zweiten Server werden folgende Shellskripte erstellt
    • watch.sh
rm watch.file
lynx -dump http://domain.tld/test.txt > watch.file
  • watch-veri.sh
if grep test watch.file
then echo "Test war erfolgreich - Server läuft: $(date)"
else
echo "Test war nicht erfolgreich - Server down: $(date)"
echo "Test war nicht erfolgreich - Server down: $(date)" | mail -s "Serverstatus" serverstatus@meine-email.com
fi
  • In der crontab wir jetzt noch eingetragen, dass zu jedem Zeitpunkt x die Datei watch.sh und eine Minute später die Datei watch-veri.sh ausgeführt werden soll.
1,11,21,31,41,51        *       *       *       *       /root/watch.sh >> watchlog.log
2,12,22,32,42,52        *       *       *       *       /root/watch-veri.sh >> watchlog.log

Das Schreibt die ausgaben noch zusätzlich in das Logfile names watchlog.log

Wenn man auf Nummer sicher gehen möchte, dass die Logfiles einem nicht auf einmal den Speicher voll laufen lassen, dann trägt man noch folgedes in die crontab ein:

5       5       1       *       *       rm /root/watchlog.log

Das löscht das Logfile jeden 1. des Monats um 5:05 Uhr

Persönliche Werkzeuge
Lagopixel