End2End-Monitoring

Dem Anwender über die Schulter geschaut

Steffen Rieger schreibt als Experte zu den Themen IT-Servicemanagement, Systemmanagement, Cloud und Storage. Seit über 15 Jahren im Infrastruktur- und Servicemanagementbereich tätig leitet er momentan den Bereich Infrastructure & Operations beim Beratungshaus it-novum und betreut dort die IT-Lösungen von Konzerngruppen und Mittelständlern. Steffen Rieger engagiert sich stark für offene IT-Lösungen und hat aus der Erfahrung mit proprietären Produkten die beiden Projekte openITCOCKPIT (System-Monitoring) und openATTIC (Storage Management) gegründet.
End2End-Monitoring simuliert Prozesse aus Sicht des Anwenders. Es stellt dadurch sicher, dass Applikationen und Abläufe wirklich funktionieren. Dieser Beitrag gibt einen Überblick für Einsteiger.

Zu einem umfassenden Monitoring der IT-Infrastruktur gehört längst nicht mehr nur, dass ein System per Ping erreichbar ist oder das Mailrelay auf einen SMTP-Request wie erwartet antwortet. Ein umfassendes Netzwerk- und Systemmonitoring ist die Grundvoraussetzung zur Fehlersuche und führt dazu, Probleme frühzeitig zu erkennen und zu verhindern. Allerdings kann es einen wichtigen Aspekt nicht abbilden, nämlich die Sicht des Anwenders.
Hier setzt das End2End-Monitoring - nicht zu verwechseln beispielsweise mit einem SAP-Monitoring - an. Es simuliert Prozesse aus Sicht eines Endanwenders und stellt dadurch sicher, dass eine Applikation beziehungsweise ein Ablauf auch wirklich funktioniert.

End2End-Monitoring simuliert Prozesse aus Sicht eines Endanwenders. Das soll sicherstellen, dass eine Applikation oder ein ein Ablauf auch wirklich funktioniert.
End2End-Monitoring simuliert Prozesse aus Sicht eines Endanwenders. Das soll sicherstellen, dass eine Applikation oder ein ein Ablauf auch wirklich funktioniert.
Foto: ra2studio - shutterstock.com

In der Regel wird dazu ein typischer Mitarbeiterrechner (Robot) eingerichtet, der die Umgebung für die End2End-Überwachung bereitstellt. Die Entwicklung eines Ablaufs erfolgt meist mit einer Scriptsprache wie AutoIT. Um sich einen schnellen Überblick verschaffen zu können, bietet es sich an, die Robots an verschiedenen Orten im Netzwerk aufzubauen und die Ergebnisse in einem zentralen Systemmanagement-Tool zusammenzuführen und auszuwerten.

Die Anwendersituation nachvollziehen

Eine immer funktionierende IT wird inzwischen von jedem Anwender als gegeben angesehen. Erschwert wird das immer mehr durch die zentrale Bereitstellung von Applikationen und Services, weil dadurch immer mehr Fehlerquellen auftreten können.

Es gibt viele Fehlerquellen, die dazu führen können, dass eine Applikation für den Benutzer nicht zur Verfügung steht (sh. Abb. 1) . Zum einen ist das der SAP Server, der die Applikation als solche bereitstellt, zum anderen ist das die Infrastruktur, über die der Benutzer auf die Applikation zugreift. Zu guter Letzt gibt es noch den Anwender-PC, über den die Applikation aufgerufen wird.

Abbildung 1: Viele Ursachen können dazu führen, dass ein Benutzer nicht auf eine Anwendung zugreifen kann.
Abbildung 1: Viele Ursachen können dazu führen, dass ein Benutzer nicht auf eine Anwendung zugreifen kann.
Foto: it-novum GmbH

Mit einem End2End-Monitoring werden die Applikationen aus dem Blickwinkel eines Endanwenders betrachtet. Stellt man durch das Monitoring fest, dass die Applikation reibungslos funktioniert, hat man zeitgleich auch eine Information darüber, dass der SAP Server funktionieren muss und auch die Netzwerkinfrastruktur. Das End2End-Monitoring stellt somit eine Korrelation von mehreren Komponenten dar.

Doch kann diese Art der Überwachung deutlich mehr. Da es sich um programmierte und simulierte Abläufe handelt, kann an jedem einzelnen Punkt die Zeit gemessen werden. Dadurch ist es nicht nur möglich, zu überprüfen, ob eine Applikation zur Verfügung steht, sondern auch, in welcher Qualität. Ein Beispiel hierfür wäre ein Webshop, bei dem ein Käufer naturgemäß lange Ladezeiten ungern in Kauf nimmt.

Die Beweggründe, End2End-Monitoring einzurichten, sind daher meist der Wunsch, eine höhere Kundenzufriedenheit zu erreichen, oder Verfügbarkeiten und die Qualität einer Applikation nachweisen zu können.

Aufbau eines stabilen End2End-Monitorings

End2End-Monitoring wird oft nur als Aufzeichnung eines Ablaufs angesehen, der immer wieder abgespielt wird. Diese Sicht ist zwar grundsätzlich richtig, da ein Script genau das macht, aber auch nur solange, bis der Ablauf nicht mehr so ist, wie gewohnt. Recorder neigen dazu, Mausbewegungen und Klicks an entsprechenden Stellen aufzunehmen. Die Qualität ist, wie man sich vorstellen kann, meist schlecht, da schon kleinere Verschiebungen dazu führen können, dass der gewohnte Ablauf nicht mehr funktioniert.

Um ein stabiles End2End Script zu programmieren, sollte man sich im Vorfeld folgende Fragen stellen:

  • Wie ist der genaue Ablauf?

  • Welche Fehler können auftreten?

  • Existieren Abweichungen im Ablauf, die keinen Fehler darstellen?

  • Wie kann die Applikation im Fehlerfall sauber beendet werden?

  • Wie kann man am besten auf Elemente zugreifen?

  • Wie lange soll der Aufruf einer Aktion maximal dauern?

Je genauer der Ablauf beschrieben wird, desto höher ist die Wahrscheinlichkeit, am Ende ein stabiles End2End-Monitoring zu haben.

Davon abgesehen, erreicht man eine höhere Stabilität auch, wenn man sich an folgende Regeln hält:

  • Prüfung, ob die Applikation bereits läuft

  • Fenster sollten immer maximiert werden

  • Die Verwendung von Positionsangaben sollte vermieden werden

  • Soweit möglich sollte auf Mausklicks verzichtet werden

  • Pixelpunkte sollten als Indikatoren nicht verwendet werden

  • Die Nutzung von bereitgestellten Methoden ist empfehlenswert:

  • Formularinhalte

  • Buttons

  • Verlinkungen

  • Läuft die Applikation zu lange, muss sie beendet werden:

  • Aufruf mit Timern

  • Abbruch nach Ablauf des Timers

  • Applikation sauber beenden

  • Wenn nicht anders möglich, Prozesse beenden

  • Ausführung auf mindestens zwei Robots und Korrelation der Ergebnisse, um die Wahrscheinlichkeit von Fehlalarmen zu minimieren

Mit End2End-Monitoring kann die Sicht eines Anwenders auf eine Applikation IT-basiert nachgestellt und nachvollzogen werden. End2End-Monitoring trägt somit dazu bei, dass SLAs und Verfügbarkeiten von Applikationen und Services nachgewiesen werden können (bw)