Monitoring
Definition
Im Allgemeinen beinhaltet Monitoring die Beobachtung oder Betreuung von Prozessen. “Monitor” werden auch Bildschirme oder Lautsprecher genannt, die unter anderem zur Kontrolle eingesetzt werden. Der Vorgang des Monitorings kann durch eine Person oder eine Maschine bzw. Software durchgeführt werden.
Im IT-Bereich bezeichnet Monitoring die Überwachung von Betriebssystemen, Geräten, Netzwerkleistungen sowie Software- oder Webanwendungen. Beim Website Monitoring geht es um die Gewährleistung der Erreichbarkeit, Funktionalität und Leistung bzw. Ausführung von Internetseiten. Viele Websites werden entweder gar nicht oder nur sporadisch manuell getestet, doch gerade, weil so viele Faktoren einen Einfluss auf die oben genannten Faktoren haben, ist vor allem automatisiertes Monitoring essenziel.
Der Kerngedanke des Website Monitorings ist es, über Ausfälle jeglicher Art informiert zu werden und diese schnellstmöglich zu beheben oder eine Website im Notfall mithilfe von Backups wiederherzustellen. Dies ist allerdings ein Extremfall – auch ohne Ausfälle dient das Monitoring dem Verständnis von Abläufen und deren Auswertung mit einer anschließenden Optimierung.
Arten von Monitoring
Neben dem Web-Monitoring gibt es noch viele weitere Arten des Monitorings.
Business Transaction Monitoring
Das Business Transaction Monitoring ist eine Geschäftstransaktionsüberwachung, bei der die Verwaltung von Informationstechnologien aus Geschäftstransaktionsperspektive im Mittelpunkt stehen. Ein Beispiel ist die Überwachung der unterschiedlichen Schritte bei der Online-Bestellung von Waren und Gütern, sodass Fehler festgestellt und der Bestellvorgang optimiert werden kann.
Application Performance Monitoring
Beim Application Performance Monitoring, welches mit Applikationsleistungsüberprüfung übersetzt werden kann und auch Softwarequalitätsmanagement genannt wird, wird die Funktionalität von Programmen und Anwendungen überprüft. Ziel ist dabei die Optimierung des Benutzererlebnisses.
Dafür gibt es unterschiedliche Tools, die teilweise auf ganz bestimmte Anwendungen zugeschnitten oder für eine Reihe ähnlicher Anwendungen ausgelegt sind. Mithilfe der Tools können Daten ausgegeben werden, die Entwicklern dabei helfen, Fehler in der Ausführung des Programms oder beeinträchtigende Faktoren zu identifizieren. Diese beinhalten Informationen zur CPU, der Zentrale Recheneinheit eines Computers, dem benötigtem Speicherplatz, der Datenübertragungsgeschwindigkeit und der Datenübertragungsrate, sprich der Anzahl und dem Umfang an Daten.
Network Monitoring
Das Network Monitoring ist ein System, das laufend Computernetzwerke auf die Funktionalität und die Geschwindigkeit überprüft und den Administratoren Fehler meldet. Es geht eine Meldung raus, sobald langsame oder fehlerhafte Komponenten auffällig werden. Dies ist beispielsweise der Fall, wenn eine Downtime, also eine Nicht-Erreichbarkeit des Servers, oder ein Serverfehler vorliegt.
System Monitoring
Beim System Monitoring findet eine Leistungsüberprüfung eines Computers statt. Diese geschieht unter Angabe verschiedener Parameter, zum Beispiel der CPU-Auslastung, also des Arbeitsspeichers, der Auslastung des Prozessors und der Aktivität des Netzwerks.
Website Monitoring
Das Website Monitoring beinhaltet verschiedene Tests, eine Dokumentation der durchgeführten Tests, auch Logging genannt, wobei die unterschiedlichen Prozesse erfasst werden, sowie die anschließende Wartung einer Website und ihrer Funktionen. Dies gewährleistet, dass die Seite aktuellen Standards entspricht und diese einhält.
Das Monitoring kann sowohl rein technisch als auch für den Endbenutzer ausgeführt werden, sodass sowohl das Backend der Website wie auch das Frontend für das beste Benutzererlebnis (User Experience) optimiert wird.
Arten des Website Monitorings
Das Website Monitoring lässt sich wiederum in verschiedene Arten unterteilen.
Real User Monitoring
Real User Monitoring, kurz RUM, wird auch Ende-zu-Ende-Überprüfung genannt und meint die manuelle Überprüfung der unterschiedlichen Funktionen im Rahmen einer authentischen Benutzung einer Website in Echtzeit. Dabei werden nicht nur die Aktionen und die Qualität der Ausführung dieser dokumentiert, sondern auch die Grunddaten zum Gerätetyp und dessen technischen Eigenschaften sowie ggf. der einzelnen Komponenten, dem Betriebssystem und dem verwendeten Browser.
Das Real User Monitoring ist eine passive Art des Monitorings und muss, wie der Name schon sagt, von einer Person ausgeführt werden und erfordert Aktionen. Es eignet sich für vor allem für individuelle Vorfälle oder zur Verfolgung der Auswirkungen von Änderungen auf der Website. Da diese Form des Monitorings etwas aufwendiger ist, immer die jeweilige Situation und ihre Gegebenheiten mit reinspielen und es nicht so regelmäßig ausgeführt wird wie beispielsweise automatisches Monitoring, können bestimmte Fehler unentdeckt bleiben. Dazu zählen beispielsweise solche, die nur bei hohem Traffic, also einer hohen Zugriffsrate bzw. vielen Anfragen an die Website auftreten, da dies manuell nicht oder nur schwer simuliert werden kann.
Synthetisches Monitoring
Beim synthetischen Monitoring werden künstlich Nutzeranfragen simuliert, um die Funktionen der Website zu testen. Diese Anfragen sind wie Bots zu verstehen, die ausgehend von diversen, von der Website unabhängigen Servern auf sie und ihre APIs, also die Programmierschnittstellen, zugreifen.
Diese Art der Überprüfung erfolgt teilweise sogar international: Dabei helfen sogenannte Checkpoints, die global verteilt sind und vom jeweiligen Standort aus Anfragen an die Website senden, die auch aufeinander reagieren können. Synthetisches Monitoring ist eine (pro-)aktive Form des Monitorings, erfordert also keine zusätzliche Aktion durch einen Nutzer und gilt als effektivster Schutz gegen Ausfälle und Geschwindigkeitsabfall.
Lokales Monitoring
Das lokale Monitoring betrifft die technische “Gesundheit” der Website und schließt nicht unbedingt die Benutzererfahrung mit ein. Im Vordergrund steht dabei die Servererreichbarkeit. Diese wird mithilfe von automatisierten Tests in regelmäßigen Abständen, zum Beispiel alle zehn Minuten, überprüft. So wird gewährleistet, dass die Seite erreichbar ist und ordnungsgemäß funktioniert. Sollte ein Problem vorliegen, muss dies entweder technisch durch den Entwickler oder durch den Hosting-Provider gelöst werden.
Globales Monitoring
Globales Monitoring dient dazu, die weltweite Servererreichbarkeit zu testen und zu überprüfen. Manchmal ist eine Website nur in einer bestimmten Region nicht erreichbar, was durch globales Monitoring erkannt werden kann. Dieses identifiziert den jeweiligen DNS-Server. Der DNS-Server, wobei DNS für Domain Name System steht, enthält die IP, also die Internet-Protocol-Adressen sowie die zugewiesenen Host-Namen, Domains genannt, und übersetzt diese in eine IP-Nummer. So kann beispielsweise www.tenmedia.de in die entsprechende 12-stellige IP-Nummer übersetzt werden, die sie in Wirklichkeit ist und dadurch kann der DNS-Server dann aktualisiert oder repariert werden.
Was wird beim Website Monitoring überprüft?
Obwohl die Liste lang ist, was beim Monitoring geprüft werden kann, lassen sich drei Hauptkategorien feststellen: das Uptime Monitoring für die Erreichbarkeit, das Transaction Monitoring für die Funktionalität und das Web Performance Monitoring für die Leistung der Website.
- Uptime Monitoring
Beim Uptime Monitoring geht es um die Erreichbarkeit der Website. Die Überprüfung findet über sogenannte Ping-Tests, eine Echo-Anfrage, oder das Senden von Gets statt. Gets sind Anfragen für den Zugriff auf einen bestimmten Teil des Ordnerverzeichnisses der Website. Die Serverantwort und die Zeit lassen dann eine Aussage über einen fehlerfreien Code zu, sodass die Servererreichbarkeit verifiziert werden kann. Eine Latenzüberprüfung gibt außerdem Auskunft über die Zeitüberschreitung der Anfragen. Auch die Netzknoten werden überprüft, wobei die Funktionalität und die Zeit gemessen wird, wie lange ein sogenannter Netzwerk-“Hop”, also wenn Informationen von einem zum anderen Knotenpunkt wandern, braucht. Darüber hinaus werden lokale und Zwischenverbindungsprobleme identifiziert. Beim erweiterten Uptime Monitoring können zusätzliche Informationen zu Inhalt, Antwortzeit, API, Benutzerauthentifizierung, Verifizierung von DNS- oder SSL-Zertifikaten gesammelt werden. SSL steht dabei für Source Socket Layer, ein verschlüsseltes Protokoll zwischen Server und Client, das zur Datenübertragung dient (unverschlüsselte Protokolle sind beispielsweise Hypertext-Transfer-Protokolle, kurz HTTP). - Transaction Monitoring
Im Rahmen des Transaction Monitorings werden alle Funktionen der Website überprüft. Dabei lässt man ein Skript laufen, welches folgende Benutzeraktionen ausführen kann: - Login
- Ausfüllen von Formularen und anderen Eingabefeldern
- Reaktion auf System-Aufforderungen
- Ausführen von Bestell- und Bezahlvorgängen
Dieser Vorgang stellt sicher, dass alle Funktionen verfügbar und wie vorgesehen ausführbar sind. Manchmal kann dies in Vorbereitung auf die Website-Nutzung oder bei einem Website Relaunch auch durch reale Benutzer geschehen. - Web Performance Monitoring
Das Web Performance Monitoring hat einen Fokus auf die Ausführung und Leistung der Website. Dabei werden Ladezeiten gemessen und die Leistung der einzelnen Elemente getestet. Die Antwortzeiten schließen sowohl das Frontend (die Benutzeroberfläche) sowie das Backend (der Code im Hintergrund) der Website mit ein. Beim Web Performance Monitoring wird zumeist ein echter Browser zur Überprüfung verwendet, weshalb es auch Real-Browser-Monitoring genannt wird.
Beispiel für den Ablauf eines Monitorings über Checkpoints
Eine Möglichkeit des Monitorings ist das synthetische Monitoring, bei dem Checkpoints zur Überprüfung der Erreichbarkeit dienen. Ein Ablauf kann wie folgt aussehen:
- Auswählen des Checkpoints
Über den Monitoring-Anbieter wird der Standort und die Art des Checkpoints sowie weitere Konfigurationsmöglichkeiten ausgewählt und die gewünschten Anweisungen gesendet. - Verbindungsaufbau
Der Checkpoint stellt die Verbindung her und führt die Anweisungen aus (zum Beispiel zur Funktionalität o. ä.). - Ergebnis
Der Checkpoint meldet dem Monitoring-System seine Ergebnisse. - Abgleich
Sollte ein Fehler festgestellt werden, wird automatisch ein neuer Checkpoint mit einer erneuten Überprüfung beauftragt, der dieselbe Anfrage ausführt, um den Fehler gegenzuprüfen. Tritt er auch beim zweiten Checkpoint erneut auf, gilt er als verifiziert. - Warnung
Abschließend wird durch das Monitoring-System eine Warnung versendet, sofern sich der Fehler innerhalb der zuvor festgelegten Toleranzgrenze befindet.
Für diese Art von Test kann ein Zeitplan erstellt werden, sodass er beispielsweise einmal pro Minute oder sogar jede Stunde ausgeführt wird. Eine Festlegung auf die Zeit ist abhängig von der Art des Monitorings. Üblich sind Zeitpläne von minütlich für Uptime Monitoring, eine Überprüfung der Performance ist etwa alle fünf Minuten angemessen und für Transaktionen reicht eine Überprüfung von etwa alle 15 Minuten aus.
Auswertung des Monitorings
Darstellungsformen
Die Ergebnisse des Monitorings können entweder als Bericht in Textform stattfinden, als grafische Darstellung, als Tabelle oder in Form von Diagrammen. Diese können je nach Anbieter des Monitorings und den eigenen Präferenzen variieren.
Benachrichtigungsformen – Wie werden Website-Betreiber informiert?
Sollte infolge des Monitorings ein oder mehrere Fehler festgestellt werden, werden Website-Betreiber entweder automatisch per E-Mail, SMS oder manuell per Telefon benachrichtigt.
Das SNMP, eine Abkürzung für Simple Network Management Protocol, gilt als Standard-Tool für das Monitoring und wird vor allem für Network Monitoring, z.B. bei der Serverüberprüfung eingesetzt. Häufig ist dieses bereits im Netzwerk-Equipment enthalten. Normalerweise operiert es passiv, wird aber ein schwerwiegender Fehler festgestellt, wird eine Notfall-Meldung ausgesandt, die sich SNMP trap nennt.
Je nach Benachrichtigungsform und Art des Monitorings kann der Netzwerkpfad, der Ausschnitt aus dem HTML-Code, ein Screenshot oder ein kurzer Videoclip über den Ausfall bzw. den Websitefehler enthalten sein.
Sinn und Zweck des Monitorings
Monitoring zur Qualitätssicherung, Optimierung und Instandhaltung
Das Monitoring wird in den meisten Fällen mit Ausfällen oder schweren Systemfehlern in Verbindung gebracht, die es identifizieren soll. Dies ist eine essentielle Funktion, schließlich sollen diese schnell identifiziert und behoben werden. Zur Qualitätssicherung gehört aber auch die Verbesserung oder eine reine Optimierung funktionierender Vorgänge. Weniger dramatische Fehler sind aber ebenfalls wichtig zu erkennen und auch wenn keine Fehler entdeckt werden, kann man sich über die automatische Überprüfung der Abläufe einen schnellen Überblick verschaffen. So können die Abläufe besser verstanden und gezielt optimiert werden.
Eine ständige Optimierung wiederum gewährleistet nicht nur ein positives Benutzererlebnis, sondern auch eine lückenlose Sicherheit und weniger Angriffsfläche für Hacker.
Monitoring zur Überwachung von Ausfällen
Sollten Website-Ausfälle auftreten, können diese sofort durch das Monitoring erkannt werden. So ist eine schnelle Reaktion möglich. Diese kann entweder in Form eines automatisierten Server-Resets erfolgen oder durch eine Änderung des Programmcodes behoben werden. Wird der Server zurückgesetzt, bietet das den Vorteil, dass so die Zeit überbrückt werden kann, bis der Fehler entweder durch einen zusätzlichen automatisierten Schritt oder manuell durch einen Entwickler behoben ist.
Monitoring bei TenMedia
TenMedia ist eine dynamische Agentur im Herzen Berlins. Seit 2011 haben wir uns vor allem im Bereich Webentwicklung spezialisiert und übernehmen die technische Entwicklung von Websites, Apps und Cloud-Software. Neben diesen und vielen anderen Leistungen im Bereich Digitalisierung betreiben wir unsere eigenen Portale und übernehmen auch Hosting, Automatisierung und Monitoring.
Zu unseren angewandten Arten des Monitorings gehören Software-, System-, und Website-Monitoring. Dafür nehme wir die von uns entwickelten Websites und mobilen Apps in unser Monitoring mit auf. Dieses wird automatisch im Minutentakt durchgeführt. Erhalten wir eine Meldung einer Downtime, also der Nicht-Erreichbarkeit des Servers, einer rapiden Erhöhung der 500-Fehler (interne Server-Fehler) oder der 404-Fehler (bei denen die Seite beispielsweise durch veraltete oder fehlerhafte Links nicht gefunden wird), sind wir sofort zur Stelle und identifizieren die Ursache. Anschließend klären wir das Problem in Absprache mit dem Kunden und dem Hoster. Durch unser Monitoring stehen Websites unter ständiger Beobachtung und sind in sicheren Händen.