Rosmarin ist eine PHP-Software, mit der die Verfügbarkeit von Webseiten und Mailservern überwacht werden kann.
Seinen Anfang nahm Rosmarin im Jahre 2011, als ich mit zwei weiteren Leuten eine Webseite für unseren Verein eingerichtet habe. Zum ersten mal selbst einen Apache und einen Postfix eingerichtet, dazu ein selbstgeschriebenes Content-Management-System und eine Mailkontenverwaltung im Alpha-Stadium* – da kann es schon mal vorkommen, dass irgendetwas nicht ganz rund läuft.
Nach einigen kleineren Ausfällen hielten wir es für eine gute Idee, den Server zu überwachen. Der Plan war, in einem preiswerten Hosting-Angebot eine PHP-Software zu installieren, die das erledigt. Im Internet findet man durchaus PHP-Software zur Serverüberwachung und auch unser Serveranbieter stellte ein Tool zur Überwachung bereit. Allerdings testen diese Softwares alle nur, ob der Server auf einem bestimmten Port ansprechbar ist – teilweise wird noch der HTTP-Statuscode von Webseiten überwacht. Ich wollte aber den Inhalt einer Webseite überwachen und testen, ob der Mailserver Emails auch wirklich zustellt. Natürlich gibt es auch ausgewachsene Monitoring-Lösungen wie Nagios, die so etwas beherrschen, aber die geben sich nicht mit einem FTP-Zugang und einem PHP-Interpreter zufrieden.
Also habe ich selbst ein PHP-Script geschrieben, das stündlich die Webseite aufruft und prüft, ob der Seiteninhalt noch der gleiche ist (Natürlich wird nicht die Startseite überwacht, die sich doch regelmäßig ändert, sondern eine Unterseite). Außerdem wird jede Stunde eine Email an ein dafür eingerichtetes Mailkonto gesendet und anschließend überwacht, ob die Email auch ankommt. Wenn ein Fehler auftritt, dann gibt es Alarm per Email.
Am Anfang waren es nur 150 Zeilen Code, die Email-Daten waren hartkodiert, die URLs und die md5-Summen der Seiteninhalte waren in einer Textdatei gespeichert. Jedes mal, wenn sich an der Vereinsseite etwas änderte, musste ich per FTP die Textdatei anpassen. Schließlich habe ich mich daran gemacht, eine Weboberfläche dazu zu programmieren und noch ein paar Einstellmöglichkeiten hinzuzufügen – das Ergebnis gibt es hier zum Download.
http://www.ungelesen.net/rosmarin-demo
0.9.4 (16. Februar 2015)
0.9.3 (05. Februar 2015)
0.9.2 (18. November 2013)
Rosmarin 0.9.4
Rosmarin 0.9.3
Rosmarin 0.9.2
* Obwohl VBoxAdm damals noch im Alpha-Stadium war, war es durchaus für den Produktiveinsatz geeignet. Es war die beste Weboberfläche zur Mailsystem-Verwaltung die wir finden konnten.