TYPO3 Monitoring mit Zabbix

Hände zeigen auf Graphen am Laptop

Probleme erkennen, bevor sie gravierend und teuer werden!

Derzeit befindet sich bei mir eine TYPO3-Monitoring-Extension für Zabbix in der Entwicklung. Hintergrund ist, dass ich ein mächtiges Monitoring-System mit TYPO3 (und anderen Systemen) verbinden möchte, um die Vorteile der komplexen Einstellungsmöglichkeiten und diversen Datenquellen nutzen zu können. Dies macht kleine Insellösungen als eigenständige TYPO3-Erweiterungen überflüssig. Schließlich kümmert sich bei Zabbix eine ganze Community um das Programm.

Ziel ist es, folgende Daten in und über TYPO3 Systeme zu sammeln:

  • 500er Fehler (Exceptions)
  • 404-Seitenaufrufe
  • Fehlerhafte BE-/FE-Logins
  • Verbotene Backend-Usernames (beim Ausscheiden von Mitarbeitern beispielsweise)
  • TYPO3 Update verfügbar
  • TYPO3 Sicherheits-Update verfügbar
  • Speicherplatz
  • Update-Prozess nicht vollständig / DB-Compare unvollständig
  • Extension-Security-Updates verfügbar / Überprüfung auf unsichere Extensions
  • Planer-Task für Repository-Update läuft
  • PHP Version / TYPO3 Version abrufen
  • Debug-Modus aktiv / Debug-Funktionen aktiv / Deprecated Log aktiv
  • Überprüfen ob benutzerdefinierte Planer-Tasks laufen
  • Unsichere Einstellungen (noch zu definieren)

Anreichern kann man diese Daten dann mit weiteren Datenquellen:

  • SSL Zertifikate auf Validität und Restlaufzeit prüfen
  • Responsive-Design-Fehler durch Anbindung der Google Webmaster Tools / Search Console (TODO)
  • Weitere Server-Daten wie CPU/RAM-Auslastung, IO Durchsatz
  • Lighthouse (Google Page Speed) Score-Werte. Derzeit nur Startseite, geplant ist für mehrere.

Die Extension soll flexibel erweiterbar sein, damit beispielsweise Formular-Tests und Bestellungsprozesse kontinuierlich geprüft werden können. Das Anlegen von Prozessen mit POST/GET-Variablen ist in Zabbix möglich.

Das Zabbix-Dashboard kann hier in einer Demo eingesehen werden:
https://monitoring2.wappler.systems/zabbix/index.php?reconnect=1&form=default&enter=guest

Das Dashboard kann nach den Bedürfnissen eingerichtet werden. Zabbix ermöglicht die Eskalation von Benachrichtigungen präzise für Benutzer und Gruppen einzustellen. Man kann die TYPO3 Informationen mit weiteren Informationen über den Server anreichern, wenn der Hoster dies ermöglicht.

TYPO3 Fehler in Zabbix
TYPO3 Fehler in Zabbix

Da Zabbix ein Profi-Monitoring-Tool ist, können Messungen von verschiedenen Servern durchgeführt werden oder über Proxies geleitet werden. Messungen wie Response-Zeiten sind natürlich auch möglich. So kann man hohe Lasten erkennen und entgegenwirken.

Im folgenden Screenshot sind die derzeitig verfügbaren Messwerte erkennbar.

Technische Umsetzung

Die Extension ist mittels Middleware in den Frontend-Prozess eingehakt. Dadurch ist TYPO3 9 derzeitiges Minimum. Theoretisch kann es zu eID kompatibel geschrieben werden, wodurch ältere Versionen möglich sind.

Mit der Extension wird ein Zabbix-Template ausgeliefert. Darin sind Items und Triggers bereits enthalten.

Gerne könnt ihr Vorschläge für interessante Daten im Kommentarbereich hinterlassen!

Projekt-Website

Derzeit befindet sich eine spezielle Projekt-Website in der Entstehung: https://www.t3monitoring.de

Code

https://github.com/svewap/zabbix_client

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 5 / 5. Anzahl Bewertungen: 2

Bisher keine Bewertungen! Sei der Erste, der diesen Beitrag bewertet.

Sven Wappler

TYPO3 Experte, symfony, Magento, SEO, Frontend und Backend

Das könnte dich auch interessieren …

4 Antworten

  1. Josef Glatz sagt:

    DB Version
    Letzte ausführung scheduler
    Mailversandfehler (wenn konfigurierte MAIL Settings mal fehlschlagen beim Senden

  2. Sven Wappler sagt:

    Ist teilweise umgesetzt 🙂

  3. Neidhard Reuental sagt:

    Ich möchte z.Z. ein Monitoring mit Zabbix aufbauen. Dabei bin ich auf diese Extension gestoßen.
    Grundsätzlich funktioniert sie, was mir aber Bauchschmerzen verursacht ist die Aktualität/Weiterentwicklung und vor allem dass jeder Wert über einen eigenen Request abgerufen wird. Das verursacht sehr viel Last (beim Clienten und dem Zabbix-Server).

    Gibt es hier noch eine Weiterentwicklung und wie sieht es mit TYPO3 v12 aus?

  4. Sven Wappler sagt:

    Hallo, eine Version für die 12 ist in Arbeit, benötigt aber noch einiges an Zeit.
    Weiterentwickelt wir diese immer mal wieder. Vorschläge, Unterstützungen und Spenden sind willkommen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert