Application Performance Monitoring (APM)
Was ist Application Performance Monitoring (APM)?
Application Performance Monitoring (APM) umfasst eine Reihe von Tools und Prozessen. Diese sollen IT-Fachleuten dabei helfen, sicherzustellen, dass Enterprise-Anwendungen die von Mitarbeitern, Partnern und Kunden geforderte Leistung, Zuverlässigkeit und positive User Experience (UX) bieten.
Application Performance Monitoring fällt unter den allgemeineren, aber verwandten Begriff Application Performance Management. Während sich Application Performance Monitoring auf die Nachverfolgung der Leistung einer Anwendung beschränkt, konzentriert sich Application Performance Management auf das umfassendere Konzept, die Leistungsniveaus einer Anwendung zu kontrollieren. Mit anderen Worten: Monitoring ist Teil des Managements.
Eine effektive Plattform für Application Performance Monitoring sollte sich auf das Infrastruktur-Monitoring sowie auf die Kontrolle der User Experience, Leistung und Zuverlässigkeit aller Abhängigkeiten und Geschäftstransaktionen fokussieren. APM-Tools liefern Administratoren die benötigten Daten, um Probleme, die sich negativ auf die Leistung einer Anwendung auswirken können, schnell zu erkennen, zu isolieren und zu lösen.
IT-Fachleute können mithilfe der Leistungsmetriken, die ein APM-Tool von einer oder mehreren Anwendungen im selben Netzwerk sammelt, die zugrunde liegende Ursache eines Problems herausfinden. Zu den von APM-Tools erfassten Daten gehören die CPU-Auslastung der Clients, der Speicherbedarf, der Datendurchsatz und der Bandbreitenverbrauch.
Was ist der Zweck von APM?
Die permanente Verfügbarkeit und angemessene Performance einer Anwendung sind für die Fähigkeit eines Unternehmens, kontinuierliche Geschäftsprozesse zu gewährleisten, unerlässlich. Dies verhindert unnötige Störungen des Geschäftsbetriebs und steigert die Kundenzufriedenheit. Eine effektive APM-Plattform bietet einem Unternehmen die Möglichkeit, die Leistung seiner Anwendungen mit den Geschäftsergebnissen zu verknüpfen, Fehler zu isolieren und zu beheben, bevor sie sich auf den Endbenutzer auswirken und die mittlere Reparaturzeit (MTTR) zu reduzieren.
APM-Tools erfassen und quantifizieren Daten aus fast allen Bereichen, die für die Leistung einer Anwendung eine Rolle spielen. Als Grundlage prüfen die Tools für Application Performance Monitoring die Hosting-Plattform der Anwendung, sammeln Informationen über die Prozessauslastung und untersuchen den Speicherbedarf sowie die Lese- und Schreibgeschwindigkeit der Festplatte. Sie überwachen außerdem die Prozessorauslastung, die sich aus der Anzahl der Operationen pro Sekunde ergibt, die der CPU-Server ausführt.
Ist die Speicherauslastung hoch, treten Probleme mit der Anwendungs-Performance auf. Daher beobachtet APM, wie viele Daten eine CPU kurzfristig speichert.
Auf Softwareebene verfolgen APM-Tools die Fehlerraten, das heißt, wie oft eine Anwendung ein Problem hat oder nicht funktioniert. Ein Fehler kann zum Beispiel auftreten, wenn der Anwendung nicht genügend Speicher zur Verfügung steht. APM-Tools überwachen zudem die Codeausführung, um festzustellen, wo es bei speicherintensiven Prozessen, wie der Suche in einer Datenbank, zu Engpässen kommen kann.
Automatisiertes Load Balancing kann IT-Fachleuten den Eindruck vermitteln, alles würde reibungslos funktionieren, weil die Gesamtleistung der Server in Ordnung zu sein scheint. In Wahrheit verschleiert die Automatisierung möglicherweise Probleme, so dass einige Server mehr Last bewältigen müssen als andere. APM-Tools können IT-Experten dabei unterstützen, dieses Manko zu vermeiden, indem sie alle Server gleichzeitig überwachen, um herauszufinden, wo ein Problem liegt.
Warum ist APM wichtig?
Application Performance Monitoring bietet Unternehmen etliche Vorteile, was die organisatorische Effektivität, den Ruf oder die Marke und die langfristige Kosteneffizienz betrifft.
Zu den organisatorischen Vorteilen gehören eine bessere Kooperation und Zusammenarbeit bei der Application Delivery. Frontend Monitoring hilft bei der Überwachung der Anwendung aus der Sicht des Benutzers – die User Experience (UX). Backend Monitoring überwacht die zahlreichen Dienste und Abhängigkeiten, die von der Anwendung genutzt werden, etwa eine wichtige Datenbank. Infrastruktur-Monitoring schließlich, entweder lokal oder Cloud-basiert, hilft, sicherzustellen, dass alle Softwareanwendungen auf einer korrekt konfigurierten und funktionsfähigen Infrastruktur laufen können. APM-Initiativen müssen diese traditionellen Silos zugunsten einer nahtlosen und transparenten Application Delivery aufbrechen.
Der Ruf und die Marke des Unternehmens profitieren von zuverlässigen und verfügbaren Anwendungen. Wenn Benutzer nicht auf eine Anwendung zugreifen können beziehungsweise die Anwendung langsam oder überhaupt nicht reagiert, sind die Benutzer unzufrieden, weil sie ihre Aufgaben nicht erledigen können. Infolgedessen leidet der Ruf des Unternehmens. Dies kann zu einer geringeren Nutzung der Anwendung, einer schlechteren Anwendungsakzeptanz und Umsatzeinbußen für die Firma führen. Für jedes Unternehmen, das sich auf seine Anwendungen oder Softwareservices verlässt, ist es eine kluge Strategie, dafür zu sorgen, dass die Anwendung gut funktioniert.
Mit Einnahmen gehen logischerweise Kosten einher. Es kostet Geld, eine Anwendung zu warten und Fehler zu beheben. Ein Unternehmens-Workload, der schlecht funktioniert, bei dem es häufig zu Software- oder Infrastrukturproblemen kommt oder bei dem die Verfügbarkeit beeinträchtigt ist, verursacht Kosten für das Troubleshooting. Application Monitoring hilft, Probleme zu erkennen und schnell zu beheben. In einigen Fällen lässt sich der Fehler sofort beheben, bevor die Benutzer überhaupt ein Problem bemerken. Den Kosten für APM stehen direkte Kosteneinsparungen gegenüber, wenn man daran denkt, dass sich dadurch Downtime und Troubleshooting der Anwendung vermeiden lassen.
Was sind die Komponenten von APM?
Application Performance Monitoring konzentriert sich auf die Überwachung von fünf Hauptkomponenten der Anwendungsleistung:
- Laufzeitanwendungsarchitektur
- Real User Monitoring
- Geschäftstransaktionen
- Komponenten-Monitoring
- Analytik und Reporting
Laufzeitanwendungsarchitektur: Dieser Aspekt analysiert die Hardware- und Softwarekomponenten, die bei der Ausführung der Anwendung verwendet werden, sowie die Pfade, die sie zur Kommunikation nutzen. Durch Mustererkennung und die Identifizierung von Leistungsproblemen können IT-Fachleute das Potenzial für künftige Probleme einschätzen, bevor sie auftreten, und notwendige Upgrades rechtzeitig planen, etwa mehr Anwendungs-Storage.
Real User Monitoring: Diese Komponente (auch als End User Experience Monitoring bezeichnet) sammelt benutzerbasierte Leistungsdaten, um zu verstehen, wie gut die Anwendung aus Nutzerperspektive funktioniert, und um potenzielle Performance-Probleme zu erkennen. APM kann beispielsweise die Antwortzeiten einer kritischen Webseite überwachen und Antwortzeiten markieren, die einen bestimmten Schwellenwert überschreiten, so dass die Stakeholder über Verzögerungen oder Probleme bei der Reaktionszeit der Anwendung informiert werden. Real User Monitoring ermöglicht es einem Unternehmen, effizient auf Störungen zu reagieren und deren Auswirkungen abzuschätzen. Es gibt zwei Möglichkeiten, die Endnutzer-Erfahrung zu verfolgen:
- Synthetisches Monitoring: Bei dieser Überwachungsmethode kommen Prüfprogramme und Bots zum Einsatz, um einen Endbenutzer zu simulieren und Probleme zu erkennen, bevor die Anwendung geöffnet wird. Synthetisches Monitoring wird auch zur Kontrolle von Service Level Agreements (SLA) verwendet, die im Zusammenhang mit der App stehen.
- Agentenloses Monitoring: Diese Methode nutzt Testdaten, um den Netzwerk-Traffic zu analysieren, der über Load Balancer und Switches läuft. Agentenloses Monitoring gibt Aufschluss über die Performance der gesamten Infrastruktur und über Details der analysierten Clients, zum Beispiel deren Standort, Betriebssystem und Browser.
Geschäftstransaktionen: Diese Komponente (auch User-defined Transaction Profiling genannt) konzentriert sich auf die Untersuchung spezifischer Benutzerinteraktionen und deren Nachbildung, um die Bedingungen zu testen und zu verstehen, die zu einem Leistungsproblem führen. Der Prozess unterstützt Unternehmen bei der Verfolgung von Ereignissen in den verschiedenen Komponenten der Anwendung. Zudem zeigt er, wann und wo Ereignisse auftreten und ob die Leistungsfähigkeit optimiert ist. Diese Art der Profilerstellung ist zusammen mit Komponenten-Monitoring für ein effektives Troubleshooting in komplexen Anwendungsumgebungen unerlässlich.
Komponenten-Monitoring: Auch als Application Component Deep Dive bezeichnet, umfasst dieser Aspekt die Überwachung sämtlicher Komponenten der IT-Infrastruktur. Alle genutzten Ressourcen und aufgetretenen Ereignisse innerhalb der App-Performance-Infrastruktur werden intensiv und detailliert kontrolliert. Das beinhaltet eine Analyse der gesamten Server, Betriebssysteme, Middleware, Anwendungskomponenten und Netzwerkkomponenten. Komponenten-Monitoring ermöglicht ein tieferes Verständnis der verschiedenen Elemente und Pfade, die in den vorherigen Prozessen identifiziert wurden.
Analytik und Reporting: Dieser Punkt umfasst die Umwandlung der aus den obengenannten Prozessen gewonnenen Daten in Informationen, die man nutzen kann, um:
- eine Performance Baseline anhand früherer und aktueller Daten festzulegen, die eine Erwartung für die normale App-Leistung vorgibt
- potenzielle Verbesserungsbereiche durch den Vergleich von Infrastrukturänderungen mit Performance-Änderungen zu identifizieren
- Leistungsprobleme anhand von Verlaufs- und Baseline-Daten zu erkennen, zu lokalisieren und zu beheben
- etwaige zukünftige Probleme mittels aussagekräftiger Informationen vorherzusagen und zu vermeiden
Die Analytik- und Reporting-Komponenten sind wesentlich, um zu gewährleisten, dass das Unternehmen einen guten Return on Investment (ROI) sowohl durch die Anwendung als auch durch APM erhält.
Wie funktioniert APM?
Tools beziehungsweise Plattformen für Application Performance Monitoring beobachten, wie die Anwendungen arbeiten und ob sie sich ordnungsgemäß verhalten. Verhalten sich die Apps nicht korrekt, werden Daten über die Ursache des Problems gesammelt und dann im Kontext ihrer Auswirkungen auf das Unternehmen analysiert. Zudem wird die Anwendungsumgebung angepasst, um ähnliche Probleme zu verhindern, bevor sie auftreten.
Bei der Konfiguration einer APM-Plattform gilt es, drei Kategorien von Daten zu berücksichtigen:
- Metriken: Eine Metrik ist ein quantifiziertes Maß, das man nutzen kann, um den Status eines bestimmten Prozesses zu erkennen. Metriken werden oft mit einer festgelegten Baseline verglichen, um den Status des Systems oder Prozesses zu analysieren. Sich ändernde Metriken sind ein häufiger Hinweis auf ein zugrunde liegendes Problem.
- Traces: Ein Trace ist die vollständige Verarbeitung einer Anfrage. Er wird verwendet, um den kompletten Weg einer Anfrage durch alle Komponenten und Dienste des Netzwerks zu veranschaulichen und zu verstehen. Ein Trace enthält Hunderte von Datenpunkten, die auf Fehler hinweisen, Sicherheitsbedrohungen diagnostizieren sowie Netzwerkprobleme erkennen und eingrenzen können.
- Protokolldateien: Sie werden automatisch von einer Anwendung oder einem Betriebssystem angelegt und enthalten Informationen über das Benutzerverhalten und Ereignisse, die im Zusammenhang mit der Anwendung stattgefunden haben. Protokolldateien werden verwendet, um eine Root-Cause-Analyse durchzuführen, zu verstehen, warum sich eine Metrik geändert hat, und um festzustellen, wo ein Ereignis seinen Ursprung hatte.
Da Performance Monitoring Teil des breiter gefassten Themas Performance Management ist, sollte man beachten, dass überwachte Daten und Analytik möglicherweise nicht ausreichen, um eine adäquate Benutzererfahrung sicherzustellen. Performance-Management-Systeme kombinieren oft Monitoring-Daten mit Automatisierung und Orchestrierung, um ein gewisses Maß an Autonomie bei der Problembehebung zu erreichen.
Wenn beispielsweise die Speicherkapazität eines Storage-Systems nicht mehr ausreicht, kann es zu Problemen bei der Leistung oder Verfügbarkeit der Anwendung kommen, bevor ein Administrator das Problem beheben kann. In diesem Fall könnte ein Performance-Management-System aufgrund von Monitoring-Alarmen und -Daten automatisch mehr Speicherplatz bereitstellen und so verhindern, dass Anwendungsprobleme überhaupt auftreten.
Wie unterscheiden sich APM und Observability?
Die Begriffe Application Performance Monitoring und Observability werden oft synonym verwendet, aber sie können sich vom Umfang her voneinander unterscheiden.
Bei APM geht es um das Erfassen von Daten durch Metriken, Traces und Protokolle, um die Leistung zu messen und potenzielle Probleme zu identifizieren. Oberflächlich betrachtet gilt dieselbe Definition auch für Observability. Observability definiert oder ermittelt den Zustand eines Systems basierend auf den Daten, die dieses System erzeugt. Bei relativ einfachen Systemen mit nur wenig Hardware in einem begrenzten physischen Rahmen lassen sich APM und Observability nicht voneinander unterscheiden.
Allerdings geht Observability in der Regel weiter als APM. Der grundlegende Unterschied zwischen den beiden Konzepten besteht darin, wie viele Daten erhoben und wie sie verarbeitet und interpretiert werden.
Moderne Anwendungsarchitekturen können äußerst komplex sein und eine große Anzahl von Diensten und verteilten Systemen umfassen, die über mehrere Netzwerke und physische Standorte, einschließlich der Cloud, verteilt sind. Diese Entwicklung kann unübersichtliche und schwierig zu überwachende Umgebungen zur Folge haben. Observability konzentriert sich darauf, mehr Daten über ein breiteres Spektrum an Umgebungen zu erfassen, und führt dann anspruchsvolle Analysen von Datenmustern durch, um Einblicke in große und komplexe Umgebungen zu ermöglichen.
Wichtige APM-Metriken
Es gibt viele mögliche Metriken, die man heranziehen kann, um den Status einer Anwendung zu beurteilen. Zu den wichtigsten Application-Monitoring-Metriken zählen die folgenden Punkte:
- Web Performance Monitoring: Damit wird die durchschnittliche Antwortzeit für Interaktionen mit Endbenutzern gemessen, um festzustellen, ob die Geschwindigkeit die Anwendungsleistung beeinträchtigt.
- Antwortzeit beziehungsweise Reaktionszeit: Ähnlich wie beim Web Performance Monitoring wird hier die Zeit gemessen, die eine Anwendung benötigt, um eine Anfrage oder Abfrage eines Benutzers zu beantworten.
- Ressourcennutzung: Diese Metrik überwacht die CPU-Auslastung zusammen mit der Lese- und Schreibgeschwindigkeit von Festplatten sowie den Speicherbedarf, um zu ermitteln, ob die Nutzung die App-Performance beeinträchtigt.
- Verfügbarkeit und Uptime der Anwendung: Die Metrik misst, ob die Anwendung online und für Nutzer verfügbar ist. Sie wird regelmäßig eingesetzt, um herauszufinden, ob die SLAs eines Unternehmens eingehalten werden.
- Anforderungsraten: Damit wird die von der Anwendung empfangene Traffic-Menge gemessen, um signifikante Zunahmen, Rückgänge oder gleichzeitige Benutzer zu identifizieren.
- Kundenzufriedenheit: Diese Kennzahl gibt darüber Auskunft, wie Kunden die Anwendung im Vergleich zu einer festgelegten Baseline bewerten.
- Fehlerraten: Diese Metrik beobachtet, wie stark die Anwendung auf Softwareebene beeinträchtigt wird oder ausfällt.
- Anzahl der Instanzen: Zu ermitteln, wie viele Server- oder App-Instanzen zu einem bestimmten Zeitpunkt laufen, ist insbesondere für Cloud-Anwendungen wichtig.
Metriken wie die Verfügbarkeit sind weit verbreitet und lassen sich auf viele verschiedene Apps anwenden. Andere Metriken, etwa die Kundenzufriedenheit, können individuell erstellt beziehungsweise auf die spezifischen Bedürfnisse oder den Zweck der Anwendung zugeschnitten werden.
Wo liegen die Vorteile und Herausforderungen von APM?
Im Allgemeinen wird APM zur proaktiven Überwachung des Verhaltens und der Leistung einer Anwendung und ihrer Umgebung eingesetzt. Außerdem lassen sich so Probleme erkennen und beheben, bevor die Anwendung in nennenswertem Umfang beeinträchtigt wird. Das ist ein weitgefasstes Ziel und bedeutet zahlreiche Kompromisse für das Unternehmen. APM bietet drei wesentliche Vorteile:
- Bessere Collaboration: Metriken und erhobene Daten können die Kooperation und Zusammenarbeit zwischen traditionellen Silos innerhalb eines Unternehmens fördern und auf diese Weise zu einem schlankeren und flexibleren Unternehmen beitragen.
- Bessere Customer Experience (CX): Wenn Anwendungen und Services verfügbar sind und einwandfrei funktionieren, verbessert sich die Customer Experience, was hilft, den Ruf und die Marke des Unternehmens zu stärken.
- Kosteneinsparungen: APM kann dazu beitragen, die Kosten von Downtime und schlechter UX zu vermeiden.
Aber APM kann auch Anforderungen für die Stakeholder mit sich bringen und das Unternehmen vor folgende Herausforderungen stellen:
- Verwendung der falschen Metriken: APM erfolgt nicht automatisch. Es ist Aufgabe des Unternehmens, die aussagekräftigsten Metriken auszuwählen und zu überwachen oder neue Metriken für die zu überwachende Anwendung zu erstellen.
- Die erfassten Metriken werden nicht genutzt: Metriken sind nutzlos, wenn sie nicht verwendet werden, um das Anwendungsverhalten und die Performance zu überwachen. Erfassen Sie die Daten, die Sie benötigen, und nutzen Sie die gesammelten Informationen.
- Unzureichende technische Kenntnisse: Moderne Anwendungen können komplexe Gebilde mit vielen Abhängigkeiten sein. Daher sollte APM von Mitarbeitern implementiert und verwaltet werden, die die Anwendung, die Umgebung und die APM-Technologien kennen.
- Unklare Stakeholder oder Ziele: Die Stakeholder bestimmen die Ziele. Sie müssen sich darüber klar werden, welche Parameter einer Anwendung gemessen werden sollen und warum diese Parameter wichtig sind. Monitoring als Selbstzweck hat weder für das Unternehmen noch die Benutzer einen Wert.
Was lässt sich mit APM überwachen?
IT-Experten können Regeln erstellen und Monitoring-Parameter auswählen, so dass das APM-Tool sie alarmiert, wenn es zu einem Problem kommt oder die Leistung einer Anwendung in einem bestimmten Bereich abfällt beziehungsweise von einer festgelegten Baseline abweicht. Außerdem können sie Anwendungen entsprechend ihrer Relevanz für das Unternehmen priorisieren.
In virtualisierten Umgebungen können APM-Tools IT-Fachleute bei der Überwachung von Anwendungsservern unterstützen, um sicherzustellen, dass sie die SLAs einhalten.
Die Cloud bringt eine Vielzahl zusätzlicher Abhängigkeiten für die Anwendungsleistung mit sich, sogar wenn die Anwendungen selbst nicht in der Cloud laufen. Aus diesem Grund gibt es Cloud Application Performance Monitoring, das sich auf die Überwachung der Leistung von Anwendungen konzentriert, die in Private-Cloud- oder Hybrid-Cloud-Bereitstellungen eingesetzt werden.
Eine APM-Plattform muss beispielsweise die Netzwerkkommunikation überwachen, um festzustellen, ob ein Kommunikationsproblem zwischen der Anwendung und Cloud-Diensten vorliegt, die sie zur Ausführung benötigt, oder zwischen der Anwendung und den Benutzern selbst. Zu diesem Zweck überwachen viele Tools sowohl die Latenz als auch die Anzahl der eingehenden und ausgehenden Anfragen einer Anwendung.
Application Performance Monitoring: Best Practices
APM kann ein komplexes und anspruchsvolles Vorhaben sein. Der Begriff Application Performance (Anwendungsleistung) ist nicht immer klar. Die Tools und Prozesse, die für die Bereitstellung von APM implementiert werden, erfordern sorgfältige Überlegungen, umfassende Tests und regelmäßige Überprüfungen. Die folgenden Punkte können einem Unternehmen helfen, das Potenzial von APM optimal auszuschöpfen:
- Verwenden Sie das richtige Tool für die jeweilige Aufgabe: Wählen Sie APM-Tools gemäß den Monitoring-Anforderungen für die Anwendung und deren Betriebsumgebung aus. Einfache APM-Tools sind unter Umständen unflexibel oder unzureichend, während komplexe Tools möglicherweise zu schwierig in der Handhabung sind oder nicht hinreichend genutzt werden. Informieren Sie sich, führen Sie Proof-of-Principle-Tests durch, und wählen Sie ein APM-Tool, das am besten geeignet ist.
- Gehen Sie sorgfältig vor, wenn Sie Metriken auswählen und Daten erfassen: Mehr Daten sind nicht unbedingt besser. Entscheiden Sie, welche Daten für die jeweilige Anwendung am sinnvollsten sind. Dann implementieren Sie APM, um diese Daten zu sammeln und die relevantesten davon zu verarbeiten.
- Erstellen Sie Prozesse auf Basis von APM: Daten zu erfassen und Alarme zu verschicken, bringt nichts, wenn niemand damit etwas anfangen kann. Sie müssen verstehen, was passiert, wenn Probleme auftauchen, und Prozesse und Verfahren entwickeln, um Probleme wie Anwendungs-Downtime oder Performance-Einbrüche zu lösen, sobald sie auftreten.
- Sorgen Sie für überschaubare Prozesse: Wenn man einen Prozess festlegt, von der Generierung von Alarmen bis zur Erstellung automatischer Reaktionen auf Probleme, empfiehlt sich ein dynamischer Ansatz, der regelmäßig überprüft und aktualisiert wird, wenn sich die Anforderungen von Anwendungen und Unternehmen ändern. Statische Prozesse zu etablieren und APM-Tools zu implementieren, die schwer zu warten sind, kann die APM-Umsetzung für ein Unternehmen sehr viel problematischer machen.
- Testen und validieren Sie: Vergewissern Sie sich, dass die von einem APM-Tool erfassten Daten und Metriken auch stimmen. Nur weil ein Unternehmen ein APM-Tool implementiert, heißt das nicht, dass das Tool tatsächlich funktioniert. Wenn das Tool keine Daten mehr generiert, sollten Sie das Problem sofort angehen und beheben.
- Überprüfen Sie das gesamte Reporting: Nehmen Sie sich die Zeit, um Berichte zu prüfen und Trends in den Metriken zu erkennen. Das APM-Reporting kann eine wichtige Grundlage für Maßnahmen wie Infrastruktur-Upgrades, Kapazitätsplanung und sogar neue Software-Fixes und Optimierungen sein.
Top-APM-Tools und -Anbieter
Unternehmen können unter zahlreichen APM-Tools wählen. Diese sind entweder speziell für APM-Aufgaben konzipiert oder verfügen über eine APM-Funktionalität, die in ein breiteres Funktionsspektrum integriert ist. Zu den beliebtesten APM-Tools gehören sowohl Third-Party- als auch Cloud-basierte Angebote. Dazu zählen folgende Produkte:
- AppDynamics
- Azure Application Insights
- DX Application Performance Monitoring
- Datadog
- Dell Foglight
- Dynatrace
- eG Innovations
- Google Cloud Console
- Grafana
- LogicMonitor
- ManageEngine Applications Manager
- Microsoft System Center
- Nagios
- New Relic
- Opsview
- Paessler PRTG
- Pulse Secure Virtual Traffic Manager
- Red Hat OpenShift Container Platform
- Sematext APM
- Sensu
- Site24x7
- SolarWinds AppOptics
- Splunk
- Stackify Retrace
- Zenoss
Angesichts der großen Anzahl potenzieller Tools sollten Unternehmen auf jeden Fall Zeit und Energie in die Bewertung der Funktionen und die Produktauswahl investieren.
Die wichtigsten Funktionen von APM-Tools
APM-Tools überwachen die Leistung einer Anwendung im zeitlichen Verlauf und helfen IT-Fachleuten, die Auswirkungen verschiedener Abhängigkeiten auf die Performance einer Anwendung zu verstehen. Bei der Auswahl eines APM-Tools sollten Unternehmen nach Produkten Ausschau halten, die sich auf einfache Bedienung, User Experience und die Bereitstellung aussagekräftiger Informationen anhand der gesammelten Daten konzentrieren.
Generell sollte ein APM-Tool außerdem:
- die Leistung auf Codeebene überwachen
- Anwendungen verwalten, die in der vom Unternehmen gewählten Sprache geschrieben wurden
- den gesamten Infrastruktur-Stack überwachen
- Zusammenhänge zwischen der App-Performance und den Geschäftsergebnissen erkennen
- die Vorteile von KI nutzen
Sehen Sie sich einige spezifische Funktionen im Detail an. Ein APM-Tool bietet in der Regel die folgenden Funktionen:
- Monitoring von Servern und sonstiger Infrastruktur sowie Metriken
- Unterstützung für eine breite Palette von Metriktypen
- Unterstützung für benutzerdefinierte Metriken
- Log-Daten von Anwendungen
- Error Reporting für Fehler und Bugs von Anwendungen
- Real User Monitoring, darunter client- und serverseitige Metriken
- Web Performance Monitoring
- Synthetisches Monitoring, das heißt Tests gegen vorprogrammiertes Anwendungsverhalten
- Lasttests zur Bewertung der Skalierbarkeit
- Root-Cause-Analyse für das Troubleshooting
- KI-basierte Analytik
- Integration in Services und Anwendungen von Drittanbietern
Integration von APM in Ihrem Unternehmen
Es gibt zahlreiche APM-Tools, aber Tools allein machen noch keine erfolgreiche APM-Initiative aus. Unternehmens- und Technologieverantwortliche sollten eine Reihe von Fragen berücksichtigen, bevor sie mit der Einführung von APM beginnen. Zu den typischen Überlegungen gehören die folgenden Aspekte:
- Gibt es Anwendungen oder Services, die von Performance Monitoring profitieren würden? Dabei handelt es sich in der Regel um missionskritische Workloads, auf die das Unternehmen angewiesen ist und deren Störung sich negativ auf das Geschäft auswirken würde.
- Welche Daten sind für diese Anwendung oder diesen Service am wichtigsten? Machen Sie sich klar, welche Metriken oder Daten für den Workload erfasst werden sollten. Die Wahrscheinlichkeit ist groß, dass ein APM-Tool weit mehr Daten liefert als nötig. Deshalb sollten Sie sich genau überlegen, welche Daten das Unternehmen wirklich benötigt.
- Welche Analysen, Alarme oder Berichte sind sinnvoll? Klären Sie, wie Metriken und Daten verarbeitet werden sollen, wer für die Bearbeitung von Alarmen zuständig ist, was Berichte enthalten und welche Art von Einblicken die Analysen bieten sollen.
- Wie sollten die APM-Tools genutzt werden? Denken Sie über den APM-Prozess nach, zum Beispiel über den Empfang von Alarmen oder die Implementierung automatisierter Reaktionen.
- Wer ist für APM zuständig? Berücksichtigen Sie die an einer APM-Bereitstellung beteiligten Stakeholder, von den Anwendungsverantwortlichen bis zu den IT-Administratoren. Entscheiden Sie, wer die Verantwortung für die APM-Initiative trägt.
- Welche APM-Tools erfüllen diese Kriterien? Evaluieren Sie potenzielle APM-Tools anhand der Anforderungen und erstellen Sie eine kurze Liste möglicher Kandidaten für die Evaluierung.
- Kann das APM-Tool in der Umgebung funktionieren? Nutzen Sie Proof-of-Principle-Tests, um APM-Tools zu evaluieren und zu überprüfen, ob sie die festgelegten Anforderungen erfüllen: beispielsweise KI-Analytik, benutzerdefinierte Metriken oder Cloud-Integration. Stellen Sie sicher, dass sich die Tools für die vorhandene Umgebung eignen und keine ungewöhnlichen oder ungeplanten Abhängigkeiten bestehen.
- Wie können APM-Pläne geändert werden? Achten Sie auf einfache Bedienbarkeit bei der Änderung von Metriken, der Erstellung benutzerdefinierter Metriken und der Anpassung an neue Anwendungsfälle. Überlegen Sie, wie man die geplanten Tools und Prozesse an die sich ändernden Unternehmensanforderungen anpassen kann.
Mit der Beantwortung dieser Fragen kann ein Unternehmen Entscheidungen treffen, um mit einer APM-Bereitstellung fortzufahren. Oft ist es am besten, klein anzufangen mit einer einzigen Anwendung oder einem einzigen Service, Fachwissen mit dem APM-Tool in der Praxis aufzubauen und dann die APM-Nutzung bei Bedarf systematisch zu erweitern.