Integration von Drupal mit dem OhDear-Überwachungsdienst

08.09.2023,
Ohdear Features

Welche Vorteile bringt Monitoring für Ihre Website?

Ein Monitoring-Tool ist ein Qualitätssicherungsinstrument und bildet die letzte Absicherung gegen Bugs und Website-Probleme. Es überwacht Ihr operatives System und kann auch Ihre Staging- oder Testsysteme kontrollieren. Kein Programm ist zu 100% perfekt und von Zeit zu Zeit schleichen sich Fehler in das Produktionssystem ein, wenn aber ein ausreichend gutes Überwachungssystem vorhanden ist, hilft dieses, Fehler zu erkennen - möglicherweise sogar bevor die Nutzer davon erfahren. In jedem Fall gilt hier das Motto: "Je früher, desto besser". 

OhDear ist ein umfassender Monitoring-Dienst, der die Verfügbarkeit Ihrer Website, SSL-Zertifikate, defekte Links, geplante Tasks und viele andere Dinge überwacht. Der Punkt, der OhDear von anderen Diensten unterscheidet, ist die Ganzheitlichkeit des angebotenen Produkts. Das Website-Monitoring ist mit sehr wenig Aufwand vom Benutzer einrichtbar und die statistischen Daten über Leistung sowie andere kritische Aspekte Ihrer Website werden ansprechend präsentiert. OhDear wurde von Freek Van der Herten von Spatie, einem renommierten Unterstützer des Laravel-Ökosystems, und Mattias Geniar von Nucleus gegründet. Erfahren Sie mehr über die Entwicklung von OhDear, indem Sie sich die Entstehungsgeschichte näher ansehen. 

Probleme können über eine Vielzahl verschiedener Benachrichtigungssysteme wie Chat-Dienste und andere Kommunikationskanäle gemeldet werden. Was normalerweise Tage an Konfiguration in Anspruch nehmen würde, ist mit wenigen Klicks auf dem OhDear-Dashboard umsetzbar. Bei drunomics haben wir kürzlich eine wöchentliche Routineüberprüfung eingeführt, um regelmäßig unseren OhDear-Monitoring-Slack-Kanal zu überprüfen und Probleme anzugehen, sobald sie auftauchen. 

OhDear-Integration mit Drupal

Im Drupal-Ökosystem existiert bereits ein Monitoring-Modul (einfach Monitoring genannt), das aber keine eigenständige Monitoring-Lösung darstellt, sondern ein leichtgewichtiges Framework zur Sensordefinition bereitstellt, das von jedem Monitoring-Produkt erfasst werden kann. Es bot einen guten Ausgangspunkt für unser OhDear-Integrationsmodul, das nächste Puzzlestück war das Ohdear-php-sdk - ein Service Development Kit sowie PHP Composer-Paket, das die Verbindung mit dem OhDear-API erleichtert. Das OhDear-Integrationsmodul fungiert im Wesentlichen als Brücke zwischen Drupals Monitoring-Modul und OhDear. Während der Entwicklung des Moduls wurde der Bedarf für einen neuen Monitoring-Sensor deutlich, woraufhin drunomics einen neuen Sensor entwickelte, der Drupals eigenes Anforderungssystem zusammenfasst. Mit diesem (wir warten noch darauf, dass das Maintainer-Team des Monitoring-Moduls ihn in den Hauptcode integriert) können wir Warnungen und Fehler der Anforderungen gruppieren. OhDear liest diese in der Folge zusammen mit den Ergebnissen anderer Sensoren über einen speziellen Endpunkt mit JSON-Daten aus und erstellt daraus einen Healthcheck-Bericht.

Die zweite Funktionalität, die das OhDear-Integrationsmodul bietet, ist die Überwachung geplanter Tasks. Wenn konfiguriert, wird es am Ende des Cron-Jobs einen Ping an den OhDear-Endpunkt senden. Wenn der Ping innerhalb eines festgelegten Zeitintervalls empfangen wird, weiß OhDear, dass Ihr Cron planmäßig läuft. Es gibt Drupal-Datenbanken, die einige Gigabyte größer als nötig waren, da Cron nicht lief und Cache-Tabellen, die bei Cron-Läufen bereinigt werden, außer Kontrolle gerieten. Diese Art der Überwachung hilft, solche Probleme zu debuggen. 

Die nächste Funktionalität, die wir dem OhDear-Integrationsmodul hinzugefügt haben, ist der Wartungsaufgaben-Drush-Befehl. Damit können Sie OhDear wissen lassen, dass sich Ihre Website in Wartung befindet, womit OhDear bei den Fehlerbenachrichtigungen und Warnungen etwas nachsichtiger sein wird. Da es sich um Drush-Befehle (für die Kommandozeile) handelt, verwenden wir sie auch in Deployment-Skripten für unsere Websites. Auf diese Weise erhalten wir niemals falsch-positive Downtime-Meldungen und unsere Downtime-Statistiken bleiben einwandfrei. Zudem werden wir nicht mit unnötigen Benachrichtigungen überflutet. 

Wenn Sie also darüber nachdenken, Ihrer Drupal-Website eine All-in-One-Monitoring-Lösung hinzuzufügen, ist der OhDear-Monitoringservice zusammen mit dem OhDear-Integrationsmodul wahrscheinlich eine der schnellsten und einfachsten Möglichkeiten, dies zu realisieren. 

OhDear App

Registrieren Sie sich für ein OhDear-Konto und fügen Sie Ihre Site-Informationen hinzu.

  • Erstellen Sie Ihren API-Token unter https://ohdear.app/user/api-tokens
  • Suchen Sie die Site-ID auf der Seite „Einstellungen“
  • Finden Sie das OhDear-Secret für Ihre Site in den OhDear Application Health settings (https://ohdear.app/sites/<site-id>/check/application-health/settings)
  • Erhalten Sie die OhDear Cron-URI auf der Registerkarte "Geplante Tasks" in der OhDear-App  (https://ohdear.app/sites/<site-id>/check/scheduled-tasks)

Konfiguration

Installieren Sie das OhDear-Integrationsmodul mittels Composer auf Ihrer Drupal-Website und konfigurieren Sie es, der Prozess ist in der README-Datei des Moduls gut dokumentiert. Das Modul stellt den Endpunkt /json/oh-dear-health-check-results für OhDear-Healthchecks bereit, welche konvertierte Sensorergebnisse aus dem Monitoring-Modul sind. Der Endpunkt erfordert die Konfiguration eines OhDear-Healthcheck-Secrets, das dem OhDear-Dienst den Zugriff auf den Endpunkt ermöglicht. Die Healthreport-URL /json/oh-dear-health-check-results sollte in den Application Health settings der OhDear-App hinzugefügt werden.

Legen Sie die erforderlichen Werte aus der OhDear-App unter /admin/config/system/ohdear-settings fest.

Wenn Sie einen Bug im Modul finden oder eine Idee für eine Funktionalität haben, die das OhDear-Integrationsmodul verbessern würde, können Sie gerne ein Ticket auf der OhDear-Integrationsmodul-Seite auf drupal.org eröffnen oder in unserem #drunomics-contribute Slack-Kanal auf Drupal Slack hinterlassen. 

Happy monitoring!

P.S. Als Nächstes kommt zur OhDear-Integration die entgegengesetzte Verbindung zwischen OhDear und Drupal hinzu. So werden die wertvollsten Daten von OhDear auch innerhalb von Drupal entweder über Drush-Befehle oder auf bestimmten Pfaden verfügbar sein. Es gibt bereits ein Ticket auf drupal.org, dessen Bearbeitung in der Funktionalität resultieren wird, Ergebnisse von OhDear-Checks, Betriebszeiten und defekte Links in Drupal anzuzeigen. 

More articles

Alte Münze - "There are far better things ahead than any we leave behind"

Was mir das DrupalCamp Berlin über “Volunteering” beigebracht hat

Community14. November 2024
Vom Zögern zur Begeisterung: Als ich mich entschloss, beim DrupalCamp Berlin als Volunteer zu helfen, wusste ich nicht, was mich erwartet. Im Nachhinein war es eine unvergessliche Erfahrung, die mich tief in die Community eintauchen ließ. In meinem Bericht teile ich Einblicke hinter die Kulissen und was es wirklich bedeutet, ein Event wie dieses mitzugestalten.