Business-IT
07.03.2019
Alle Apps im Griff
1. Teil: „Application Performance Monitoring“

Application Performance Monitoring

Application Performance MonitoringApplication Performance MonitoringApplication Performance Monitoring
Andrey Suslov / shutterstock.com
Schwachstellen erkennen, Performance verbessern, Ausfälle vermeiden.
Das ist einer dieser Tage, an denen man besser im Bett geblieben wäre. Am Service-Telefon geht ein wütender  Kundenanruf nach dem anderen ein, der E-Mail-Server läuft mit Beschwerden über und auf den Social-Media-Kanälen hagelt es Beschimpfungen; „Betrug“, „Sauerei“ und „Drecks­laden“ sind noch die harmlosesten davon. Und das alles nur, weil eine App zwei Stunden nicht funktioniert hat, ein Service nicht erreichbar war oder die Verbindung lahmt.
Die Toleranz der Anwender gegenüber Ausfällen oder Performance-Schwächen geht gegen null - diese Erfahrung macht fast jedes Unternehmen, das digital mit Endkunden kommuniziert.  „Angesichts der digitalen Transformation und des wettbewerbsintensiven Marktes können es sich Unternehmen nicht mehr leisten, Ausfallzeiten oder Leistungseinbußen bei Anwendungen hinzunehmen“, weiß Federico De Silva Leon, Research Director beim Marktforschungsunternehmen Gartner. Hinzu kommt die ständige Gier nach neuen Features und Funktionen. „Nutzer digitaler Dienste erwarten heute konstante Aktualisierungszyklen. Das erhöht den Druck auf die IT, immer schneller neue und bessere Lösungen zu liefern“, erklärt Gerald Ismaier, Regional VP Central Europe von Dynatrace.
Aber auch intern ist Software zu einem geschäftskritischen Faktor geworden, betont Karsten Flott, Sales Engineer Manager bei der Cisco-Tochter AppDynamics: „Zentrale Geschäftsprozesse laufen heute digital, deshalb kann sich kein Unternehmen mehr Ausfälle, Performance-Probleme oder langwierige Fehlersuchen leisten.“
Die Überwachung der Software-Umgebungen durch das sogenannte Application Performance Monitoring (APM) wird daher zu einem geschäftskritischen Faktor. „APM ist zwingend erforderlich“, sagt Sascha Giese, Head Geek bei SolarWinds. „Jedes Unternehmen, dessen wirtschaftliches Überleben von der IT abhängig ist, sollte sämtliche Schichten der IT kontrollieren können.“
Ein wirkungsvolles APM ist in den vergangenen Jahren jedoch immer schwieriger geworden. Hybride Szenarien und Multi-Cloud-Umgebungen überfordern herkömmliche Tools, die für den Einsatz in überschaubaren internen IT-Infrastrukturen konzipiert wurden. „Je weiter die Digitalisierung im Unternehmen voranschreitet, desto weitläufiger werden die Anwendungslandschaften“, beobachtet AppDynamics-Manager Flott, „darüber hinaus sorgen Technologien wie Container und Microservices für zusätzliche Komplexität.“
Vor allem die zunehmende Nutzung von Software as a Service ist nach Ansicht von SolarWinds-Head-Geek Giese eine große Herausforderung für das klassische APM: „Die Cloud als proprietäre Lösung bietet keinen oder nur geringen Zugriff auf Details der Anwendung und der zugrunde liegenden Infrastruktur.“
Anbieter von APM-Lösungen wie AppDynamics, Dyna­trace und SolarWinds haben erkannt, dass für einen reibungslosen Applikationsbetrieb auch Server, Netzwerke, virtuelle Infrastrukturen und Cloud-Umgebungen möglichst durchgängig überwacht werden müssen. „Letzten Endes hängen die verschiedenen Schichten in der IT zusammen, und die Fähigkeit, ein Problem zeitnah identifizieren und lösen zu können, kann über den Betriebserfolg entscheiden“, erklärt Sascha Giese.
Tabelle:

2. Teil: „Die Suche nach Lösungen“

Die Suche nach Lösungen

Schnelle Entwicklungszyklen, hybride Umgebungen und die Erwartungshaltung der Anwender steigern die Nachfrage nach integrierten Lösungen, die einen durchgängigen Blick auf die Applikations-Performance ermöglichen. Gartner erwartet, dass bis 2021 der Anteil der mit solchen APM-Suiten verwalteten Applikationen 20 Prozent betragen und sich damit im Vergleich zu 2017 vervierfachen wird. „Unternehmen überwachen vor allem kritische Applikationen, die Einnahmen generieren oder an unternehmenskritische Geschäftsprozesse gebunden sind“, berichtet Federico De Silva Leon. Der Gartner-Analyst schätzt, dass die Nachfrage pro Jahr um rund 10 Prozent steigen wird, die Marktforscherkollegen von Mordor Intelligence erwarten sogar ein durchschnittliches jährliches Wachstum von knapp 12 Prozent. „Durch die steigende Komplexität von Geschäftsprozessen steigt auch die Nachfrage nach Lösungen, die die notwendige Granularität liefern können“, hebt Sascha Giese von SolarWinds hervor.
Nach Ansicht von AppDynamics-Manager Flott nimmt die Nachfrage auch deshalb zu, weil APM für immer mehr Branchen relevant wird, etwa für die Automobilindustrie: „Vor wenigen Jahren gab es dort praktisch keine Systeme, die man mit einer APM-Lösung hätte absichern können. Jetzt werden es immer mehr - von der Fahrzeug-App bis zum Bordcomputer.“

Das APM von morgen

Wie in vielen anderen Bereichen der IT sollen auch im APM Machine Learning und Künstliche Intelligenz (KI) helfen, die Herausforderungen zu bewältigen. Selbstlernende Algorithmen sollen komplexe Zusammenhänge erkennen und leichter verständlich machen, bei Problemen die Ursachenanalyse beschleunigen und Fehlentwicklungen möglichst detektieren, bevor es überhaupt zu Performance-Einbußen oder Ausfällen kommt. Das Kürzel dazu heißt AIOps - Artificial
Intelligence for Operations. „An AIOps kommt in Zukunft kein Unternehmen vorbei“, glaubt Karsten Flott von App­Dynamics. „Unternehmen möchten nicht nur wissen, dass es gegenwärtig ein Problem gibt, sondern vielmehr bereits Tage davor darüber informiert werden, dass es zu einem Problem kommen kann, wenn sich bestimmte Metriken so weiterentwickeln wie in der Vergangenheit.“
Ein weiterer Trend, den der AppDynamics-Manager ausgemacht hat, ist das sogenannte dynamische Baselining: „Das bedeutet, dass APM-Lösungen bei der Bewertung von Leistungsmetriken nicht mit statischen Schwellenwerten arbeiten, sondern kontextabhängig agieren.“ Steigt etwa die Antwortzeit eines Onlineshops während einer Rabattaktion leicht an, kann das aufgrund des höheren Kundenandrangs erklärt und toleriert werden. Im normalen Betrieb löst dieselbe Antwortzeit dagegen bereits einen Alarm aus. „Diese flexible Anomalie-Erkennung basiert auf selbstlernenden Algorithmen“, erklärt Flott.
Als dritten großen Trend sieht Flott das Zusammenwachsen von Business Intelligence (BI) und Application Performance Monitoring. „APM-Lösungen sollten nicht mehr nur Anwendungsumgebungen abbilden, sondern vollständige Geschäftsprozesse.“ Das sei für alle Unternehmen entscheidend, deren Geschäftserfolg von der Leistungsfähigkeit ihrer digitalen Angebote abhängt. „Angesichts einer solchen Abhängigkeit können Anwendungsleistung und wirtschaftliche Performance nicht mehr getrennt voneinander gedacht werden - und sollten auch nicht mehr getrennt voneinander gemessen werden.“
3. Teil: „Das richtige APM-Tool“

Das richtige APM-Tool

Um die Leistung einer Applikation wirklich einschätzen und optimieren zu können, benötigen Unternehmen eine durchgängige Sicht auf alle beteiligten Prozesse und Schichten. „Es ist heutzutage nicht mehr ausreichend, die Performance einer Anwendung anhand der CPU-Auslastung eines Prozesses einzuschätzen“, betont Sascha Giese von SolarWinds, „es kann durchaus sein, dass überwachte Komponenten einer Anwendung sich selbst als ‚grün‘ darstellen, die Mitarbeiter aber dennoch über Probleme bei der Nutzung klagen.“
Darüber hinaus sollten natürlich alle verwendeten Systeme und Arbeitsumgebungen unterstützt werden, inklusive aller verwendeten Cloud-Angebote, egal ob Infrastructure, Platform und Software as a Service oder Serverless Computing. „Unternehmen sollten den Grad der Offenheit einer APM-Lösung betrachten und prüfen, ob sich diese sofort mit der Vielzahl an Cloud-Services nutzen lässt, die das Unternehmen einsetzt“, rät Dynatrace-VP Ismaier. „Es ist auch wichtig, dass sich die Lösung vollständig in die verwendeten DevOps-Toolchains integriert, damit Unternehmen Prozesse automatisieren und so ihre Agilität verbessern können.“
Für Gartner-Research-Director De Silva Leon ist die Abdeckung von Programmiersprachen und Frameworks wie Java, .NET, PHP, Node.js, Go oder Python ein wesentliches Auswahlkriterium. „Außerdem sollten Unternehmen nach APM-Suiten suchen, die nicht nur Daten aus proprietären Agenten, sondern auch aus Open-Source-Tools auswerten können“, so De Silva Leon weiter, „denn Open-Source-Werkzeuge werden immer mehr zum Standard, wenn es um die Überwachung moderner verteilter und dynamischer Anwendungen geht.“
Funktionsfülle, durchgängiges Monitoring und Integra­tionsmöglichkeiten nutzen allerdings nichts, wenn die Anwender mit den Ergebnissen nichts anfangen können. „Herkömmliche APM-Tools führen oft nur zu mehr Daten oder Alarmmeldungen, die Benutzer überfordern und von ihnen verlangen, dass sie mit Hilfe von Dashboards die Ursache für Performance-Probleme finden“, warnt Ismaier.

Fazit

„Von hier an blind“ heißt ein Song der deutschen Popgruppe „Wir sind Helden“. Dieses Motto gilt auch für viele Unternehmen, die auf hybride Cloud-Strukturen migrieren oder Software as a Service einsetzen. Zu komplex und undurchsichtig sind die Datenströme und Abhängigkeiten, um mit herkömmlichen Methoden der Leistungsmessung erfasst werden zu können. APM-Lösungen müssen heute daher mehr können, als nur einfache Performance-Metriken zu liefern. Kennzahlen anderer Systeme und Cloud-Umgebungen müssen ebenso berücksichtigt werden wie die Leistung, die beim Nutzer tatsächlich ankommt. Das erfordert offene Plattformen, die eine Vielzahl von Komponenten, Schnittstellen, Programmiersprachen und Betriebsumgebungen integrieren können.
Besonders große Hoffnung setzen Anbieter wie Anwender dabei auf den Einsatz von Künstlicher Intelligenz. KI-basierte Analysen sollen helfen, Probleme schneller zu analysieren oder sogar vorhersagen zu können. In einer Zeit, in der die Kundenerfahrung immer mehr von der Verfügbarkeit digitaler Angebote und Kanäle abhängt, ist das eine unverzichtbare Voraussetzung für den Geschäftserfolg. „Unternehmen sollten sich der strategischen Bedeutung von Application Performance Monitoring bewusst sein“, betont AppDynamics-Manager Flott.
Was gute APM-Suiten ausmacht
Laut Gartner sollte eine APM-Suite folgende Komponenten enthalten:
Digital Experience Monitoring (DEM): Das DEM erfasst, was an Leistung, Verfügbarkeit und Benutzererfahrung tatsächlich bei Anwendern, digitalen Agenten oder Maschinen ankommt, wenn diese mit Unternehmensanwendungen interagieren. Die Erfahrung am mobilen oder webbasierten Endpunkt lässt sich direkt messen (Real User Monitoring, RUM) oder auch emulieren (Synthetic Transaction Monitoring, STM).
Application Discovery, Tracing and Diagnostics (ADTD): In herkömmlichen Umgebungen sind Applikationsverwaltung, Transaktionsüberwachung und Performance-Monitoring auf verschiedene Tools verteilt, was eine Fehleranalyse erschwert. ADTD kombiniert die Erkennung und Visualisierung der Anwendungstopologie mit spezifischen Transaktionsprofilen und der detaillierten Analyse der Anwendungskomponenten, um Probleme schneller zu erkennen und zu beheben.
AIOps: Mit AIOps ist der Einsatz Künstlicher Intelligenz (Artificial Intelligence) im IT-Betrieb gemeint. AIOps für Anwendungen soll die Erkennung von Mustern, Abweichungen und deren Ursachen automatisieren. Neben maschinellem Lernen werden auch herkömmliche statistische Verfahren eingesetzt.
4. Teil: „Im Gespräch mit Dr. Andreas Brunnert von RETIT“

Im Gespräch mit Dr. Andreas Brunnert von RETIT

  • Dr. Andreas Brunnert: Geschäftsführer und Gesellschafter bei RETIT
    Quelle:
    RETIT
Dr. Andreas Brunnert, geschäftsführender Gesellschafter des Software-Dienstleisters RETIT, erklärt im Gespräch mit com! pro­fessional, warum APM-Projekte oft an ganz banalen Fehlern scheitern.
com! professional: Herr Brunnert, Sie be­raten Unternehmen bei der Performance-Optimierung von Business-Anwendungen. Welche Rolle spielt dabei das Application Performance Monitoring?
Andreas Brunnert: Ich sehe Application Performance Monitoring als eine wesentliche Komponente zur Umsetzung von Digitalisierungsinitiativen. Durch die Digitalisierung zieht Software in immer mehr Unternehmensbereiche ein. Diese Entwicklung erfordert die Integration von Software-Systemen, die bisher nicht miteinander kommuniziert haben. Hinzu kommt die Einbindung externer Angebote wie Cloud-Instanzen und Software as a Service (SaaS). APM-Lösungen spielen auch dabei eine wesentliche Rolle.
com! professional: In welcher Hinsicht?
Brunnert: Nur wenn man die Transaktionsabläufe und komplexen Wechselwirkungen innerhalb und zwischen den Systemen versteht, kann man diese kontrollieren und steuern. Genau diese Transparenz bietet APM.
com! professional: Was sind die größten Herausforderungen beim Application Performance Monitoring?
Brunnert: Eine der größten Herausforderungen aller APM-Lösungen ist es, mit der technologischen Entwicklung Schritt zu halten. Wenn zum Beispiel eine neue Programmiersprache oder ein neues Framework zur Software-Entwicklung eingeführt wird, kostet es einige Zeit, ein entsprechendes Monitoring dafür bereitzustellen. Diesen Aufwand müssen derzeit alle APM-Anbieter individuell betreiben, was zusätzliche Kosten verursacht und somit die Preise für APM-Lösungen nach oben treibt.
com! professional: Gibt es eine Lösung für dieses Problem?
Brunnert: Es gibt Initiativen wie OpenTracing und OpenCensus, die versuchen, diesen Aufwand zu reduzieren, indem eine einheitliche Schnittstelle zur Erhebung von Monitoring-Daten bereitgestellt wird. Es ist jedoch noch offen, inwieweit kommerzielle APM-Lösungen diese Schnittstellen unterstützen und sich an diesen Initiativen beteiligen werden. Es gibt zwar eine zunehmende Anzahl von Open-Source-APM-Tools, die diese Schnittstellen integrieren, aber deren Technologieunterstützung reicht bisher nicht an die kommerzieller Lösungen heran.
com! professional: Was sind technologisch ge­sehen die wichtigsten APM-Trends?
Brunnert: Ich denke, der wichtigste Trend ist aktuell die automatische Analyse von Monitoring-Daten durch den Einsatz von Machine-Learning-Methoden. Die Menge der erhobenen Daten ist durch die Komplexität der Systeme und deren Dynamik mittlerweile kaum noch manuell beherrschbar. Es ist daher immens wichtig, dass Lösungen im APM-Bereich eine Voranalyse bereitstellen, um den Nutzer bei der Kontrolle der Systeme zu unterstützen.
com! professional: Wie weit ist der Einsatz von Machine Learning im APM schon vorangekommen?
Brunnert: Derzeit sind wir noch in einem frühen Stadium der Entwicklung, was sich zum einen in der geringen Menge entsprechender Angebote zeigt und zum anderen in der Qualität der existierenden Angebote. Die aktuellen Lösungen liefern leider oft noch zu unscharfe Voranalysen oder „False Positives“ auf Basis einfacher zeitlicher Korrelationsanalysen, was die Nutzbarkeit noch einschränkt. Hier wird sich in den nächsten Jahren aber sicher noch einiges tun.
com! professional: Was sind die größten Fehler, die bei der Implementierung und beim Einsatz gemacht werden?
Brunnert: Die größten Fehler sind typischerweise organisato­rischer Natur, etwa wenn einzelnen Unternehmensbereichen der Zugriff auf die Daten in den APM-Tools verweigert wird.
Ein Beispiel sind APM-Daten aus der Überwachung von Produktivumgebungen, auf die das Entwicklungsteam nicht zugreifen darf. Ein weiterer typischer organisatorischer Fehler ist, dass sich keiner so richtig für das APM verantwortlich fühlt.
com! professional: Fehlt es nicht oft auch am nötigen Wissen?
Brunnert: Ja, der Umgang mit APM-Tools erfordert viel Erfahrung in verschiedenen Bereichen, die oft auf unterschiedliche Rollen im Unternehmen verteilt sind - man muss sich nämlich mit der IT-Infrastruktur und der Software-Architektur gleichermaßen auskennen, um die Daten aus APM-Tools wirklich effi­zient nutzen zu können. Häufig sind zudem individuelle Anpassungen existierender APM-Lösungen oder zusätzliche Aggrega­tionswerkzeuge notwendig, die Daten von mehreren APM-Tools integrieren können. Ohne ein solches Customizing kann es schnell passieren, dass die Anwender in der Menge der verfüg­baren Informationen die für sie wichtigen Daten nicht mehr finden und die APM-Nutzung abnimmt. 
com! professional: Was sollten Unternehmen bei der Wahl eines APM-Anbieters beachten?
Brunnert: In meinen Augen sind zwei Fragen bei der Auswahl eines APM-Anbieters essenziell: Welche APM-Daten werden für welche Organisationseinheiten benötigt? Und: Für welche Technologien benötige ich die APM-Daten? Insbesondere die Antwort auf die erste Frage schränkt die möglichen Anbieter meist deutlich ein. Wenn zum Beispiel eine Lösung für ein rein produktives Monitoring gesucht wird, das auch ein paar Metriken für die Marketingabteilung liefern soll, brauche ich andere Funktionen als bei einem APM-Tool, das Entwickler als Qualitätssicherungswerkzeug in ihrer Software-Delivery-Pipeline einsetzen wollen.
Im ersten Fall können Lösungen genutzt werden, die eine starke Datenaggregation vornehmen und beispielsweise Metriken wie die Antwortzeiten und Durchsatzzahlen der Transaktionen auf Minutenbasis zusammenfassen. Im zweiten Fall sind solche Lösungen nicht geeignet, da die Entwicklungsteams viel tiefere Informationen über den Transaktionsverlauf benötigen und hier eine so starke Aggregation den Nutzen eines APM-Tools deutlich einschränkt.
Sobald die Analyse der Anwendungsfälle abgeschlossen wurde, ist noch zu klären, welche Technologien man im Einsatz hat und welche der infrage kommenden APM-Lösungen diese unterstützen, wodurch sich die Anzahl der Möglichkeiten noch einmal reduziert. Natürlich gibt es weitere wichtige Kriterien wie Lizenzkosten, Art des Betriebs (On-Premise oder SaaS) und Installationsaufwand, aber die genannten Punkte sollten immer zuerst geklärt werden.
com! professional: Gibt es nicht auch universell einsetzbare APM-Tools?
Brunnert: Sobald man eine Lösung für alle Anwendungsfälle sucht, wird das Feld dünn und man landet typischerweise bei den Marktführern. Aber auch hier gibt es deutliche Unterschiede in der Art der Datenaggregation. Mein Rat an Kunden ist: Man sollte immer Werkzeuge wählen, die so wenig wie möglich aggregieren. Man kann dann immer noch eine Aggregation vornehmen, indem man einen Filter über die Rohdaten legt. Wenn das APM-Tool selbst jedoch nur aggregierte Daten anbietet, ist der Weg zurück versperrt.

mehr zum Thema