Ich habe das Gefühl, dass mir das Offensichtliche fehlt, aber es ist mir mit man [curl|wget]
oder Google nicht gelungen ("http" macht einen so schlechten Suchbegriff). Ich suche nach einer schnellen und schmutzigen Lösung für einen unserer Webserver, die häufig ausfällt und den Statuscode 500 mit einer Fehlermeldung zurückgibt. Sobald dies geschieht, muss es neu gestartet werden.
Da die Hauptursache schwer zu finden zu sein scheint, streben wir eine schnelle Lösung an, in der Hoffnung, dass dies ausreicht, um die Zeit zu überbrücken, bis wir sie wirklich beheben können (der Service benötigt keine Hochverfügbarkeit).
Die vorgeschlagene Lösung besteht darin, einen Cron-Job zu erstellen, der alle 5 Minuten ausgeführt wird und http: // localhost: 8080 / überprüft . Wenn dies mit dem Statuscode 500 zurückgegeben wird, wird der Webserver neu gestartet. Der Server wird in weniger als einer Minute neu gestartet, sodass nicht nach bereits laufenden Neustarts gesucht werden muss.
Bei dem fraglichen Server handelt es sich um eine Ubuntu 8.04-Minimalinstallation mit gerade genug installierten Paketen, um das auszuführen, was derzeit benötigt wird. Es ist nicht unbedingt erforderlich, die Aufgabe in Bash auszuführen, aber ich möchte, dass sie in einer so minimalen Umgebung ausgeführt wird, ohne dass weitere Interpreter installiert werden.
(Ich bin mit Skripten hinreichend vertraut, sodass der Befehl / die Optionen zum Zuweisen des http-Statuscodes zu einer Umgebungsvariablen ausreichen würden - das habe ich gesucht und konnte es nicht finden.)