Absturz des Apache2 (Segmentation Fault) und Logfile-Überwachung

URL dieses Beitrags: http://blog.stefan-macke.com/2007/08/19/absturz-des-apache2-segmentation-fault-und-logfile-ueberwachung/

In meinem Webserver-Log hatte ich bis vor Kurzem ständig die folgende Fehlermeldung und diese Seite blieb beim Aufruf einfach weiß:

[Fri Aug 17 05:05:21 2007] [notice] child pid 22026 exit signal Segmentation fault (11)
[Fri Aug 17 05:05:21 2007] [notice] child pid 30189 exit signal Segmentation fault (11)
[Fri Aug 17 05:05:21 2007] [notice] child pid 13961 exit signal Segmentation fault (11)

Das lag wohl an irgendeinem fehlerhaften Modul (PHP5?) und ließ sich (jedenfalls bis jetzt) durch ein

apt-get update
apt-get upgrade

beheben. Leider weiß ich nicht, an welchem Modul es konkret lag. Ich hoffe einfach mal, dass die Fehlermeldung nicht wieder auftaucht.

Um dies zu überprüfen habe ich mir ein kleines Shell-Script geschrieben, das mein Apache2-Log regelmäßig (per Cronjob) auf die obige Meldung überprüft (ich weiß, es gibt für sowas auch Logwatch, aber das Einarbeiten in die Perl-Scripts etc. hat mir jetzt einfach zu lange gedauert). Das Script schreibt bei seinem Aufruf die aktuelle Zeit in /tmp/seglog.txt (um prüfen zu können, ob es wirklich ausgeführt wurde) und schickt, wenn es den Segmentation Fault erkennt, eine Mail an den Admin (also mich) und startet den Apache2 neu:

  1. #!/bin/bash
  2. SEG=`tail -n 20 /var/log/apache2/error.log|grep Segmentation`;
  3. TIME=`date`;
  4. echo $TIME >> /tmp/seglog.txt
  5. if [ "$SEG" != "" ];
  6. then
  7. echo "To: MeineMailAdresse@DieseDomain.de" > /tmp/segmail.txt
  8. echo "From: AbsenderAdresse@DieseDomain.de" >> /tmp/segmail.txt
  9. echo "Subject: Apache2: Segmentation fault" >> /tmp/segmail.txt
  10. echo $TIME >> /tmp/segmail.txt
  11. /etc/init.d/apache2 restart >> /tmp/segmail.txt
  12. echo `pidof apache2` >> /tmp/segmail.txt
  13. echo "." >> /tmp/segmail.txt
  14. sendmail MeineMailAdresse@DieseDomain.de < /tmp/segmail.txt
  15. rm /tmp/segmail.txt
  16. fi

Einen Kommentar schreiben

XHTML: Diese Tags sind erlaubt: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>