Die kontinuierliche Protokollierung und Überwachung von Ereignissen ist ein wesentlicher Bestandteil der Pflege der Anwendungsintegrität, der Zugänglichkeit und der Verfügbarkeit. Obwohl sich Protokollierung und Überwachung in Funktion und Rolle unterscheiden, sind beide für eine effektive Anwendungsverwaltung unerlässlich.

Bei der Protokollierung handelt es sich um den Prozess des Erfassung von und des Zugriffs auf Protokolle. Protokolle sind mit Zeitstempel versehene Aufzeichnungen von Ereignissen, die in verschiedenen Teilen einer Anwendung aufgetreten sind (und von diesen generiert wurden), einschließlich ihrer Komponenten und ihrer Infrastruktur.

Bei der Überwachung kommt eine Reihe von Diagnosetools und -techniken zum Einsatz, um Systemmetriken zu erfassen und auszuwerten. Die Überwachung konzentriert sich auf die Zuverlässigkeit und Leistung jeder Komponente innerhalb der Infrastruktur der Anwendung.

In diesem Artikel befassen wir uns mit verschiedenen Protokollierungs- und Überwachungsprozessen und untersuchen, warum sie für die Verwaltung von Anwendungen wichtig sind. Außerdem behandeln wir Best Practices zur Integration von Protokollierung und Überwachung, um Transparenz und Zugänglichkeit für die gesamte Anwendung zu gewährleisten.

Was ist Protokollierung?

Protokolle sind eine wichtige Informationsquelle für die Anwendungsverwaltung. Sie enthalten historische Aufzeichnungen von Ereignissen (einschließlich Transaktionen, Kompromittierungen und Fehlern), die innerhalb einer Anwendung aufgetreten sind. Diese Protokolle werden verwendet, um Einblicke in die Leistung der Anwendung im Laufe der Zeit zu gewinnen.

Durch die Überprüfung der Protokolle können Sie Fehler beheben, Sicherheitslücken finden oder potenzielle Kompromittierungen aufspüren. Die Verwaltung von Protokollen erfordert mehrere Überlegungen.

Protokollspeicher

Komplexe Anwendungen generieren in der Regel mehr Protokolle mit einer höheren Protokollgröße und führen zu einer Überlastung der Festplatte und hohen Speicherkosten. Um einen effektiven Ansatz für die erweiterte Protokollspeicherung zu bestimmen, müssen Sie Aufbewahrungs- und Archivierungsrichtlinien einrichten.

Protokollaggregation

Anwendungskomponenten generieren Protokolle, die auf ihren jeweiligen gehosteten Servern gespeichert werden. Bei komplexen Anwendungen kann es daher vorkommen, dass die Protokolldateien auf Hunderte von Servern verteilt werden. Entwickler und DevOps-Techniker benötigen Zugriff auf die Server, auf denen diese unterschiedlichen Protokolle gehostet werden, um Fehler zu verfolgen oder Anwendungen zu debuggen. Dieser Debugging-Ansatz ist nicht nur mühselig, sondern kann aufgrund des erforderlichen Zugriffs auch das Sicherheitsrisiko erhöhen.

Die Protokollaggregation an einem zentralen Ort ermöglicht einen einfachen und zuverlässigen Zugriff auf Ereignisse, die in der gesamten Infrastruktur generiert werden, ohne auf verschiedene Server zugreifen zu müssen.

Protokollsicherung

Protokolle, die vertrauliche Informationen (wie Kennwörter oder Kontonummern) enthalten, müssen ordnungsgemäß gesichert werden. Dazu kann das Verschlüsseln oder Maskieren vertraulicher Daten sowie die Implementierung von Zugriffskontrollrichtlinien für vertrauliche Protokolle gehören.

Protokollanreicherung

Die Protokollanreicherung erhöht die Qualität der Protokollerfassung und setzt Protokollereignisse in den Kontext, indem fehlende Informationen hinzugefügt oder redundante Informationen bereinigt werden. Das verbessert die allgemeine Lesbarkeit und Zuverlässigkeit von Protokollen und hilft bei der Korrelation von Ereignissen über Protokolle hinweg. Insgesamt vereinfacht das die Identifizierung relevanter Trends und Problemursachen, ohne dass jeder Datensatz einzeln ausgewertet werden muss.

Was ist Überwachung?

Unter Überwachung versteht man die Echtzeitbeobachtung von Protokollen und Metriken eines Systems, in der Regel mithilfe von Dashboards, Visualisierungen und Warnungen. Indem Techniker den aktuellen Status der Anwendung im Auge behalten, können sie Probleme oder Anomalien identifizieren. Diese Überwachung lässt sich mit automatisierten Warnungen kombinieren, z. B. wenn eine bestimmte Metrik einen kritischen Schwellenwert überschreitet, um Techniker sofort zu benachrichtigen, wenn ein Anwendungsproblem behoben werden muss.

Verschiedene Überwachungstechniken werten verschiedene Sätze von Systemmetriken aus, um umfassendere Aspekte Ihrer Anwendungsumgebung abzudecken.

  • Real User Monitoring (RUM) nutzt Benutzerinformationen und -verhalten (innerhalb der Anwendung), um die Leistung der Endbenutzererfahrung zu bestimmen. Ein System kann z. B. überwachen, wie schnell eine Website-Seite geladen wird, wenn Benutzer Produkte in ihren Einkaufswagen legen.
  • Bei der synthetischen Überwachung werden computergestützte Daten und Skripte verwendet, um Benutzerinteraktionen nachzuahmen und so die Integrität und Leistung einer Anwendung zu testen. Beispielsweise kann sie innerhalb kurzer Zeit wiederholt Produkte zu einem Warenkorb hinzufügen oder daraus entfernen, um potenzielle Störungen zu finden.
  • Die Netzwerküberwachung hilft dabei, leistungsschwache Komponenten innerhalb der Infrastruktur zu ermitteln, indem Netzwerkmetriken (z. B. Latenzrate, Anforderungszeit oder Antwortzeit) beobachtet werden.
  • Die Infrastrukturüberwachung bewertet kontinuierlich die Ressourcennutzung jeder Infrastrukturkomponente und gewährleistet so die Integrität und die Betriebszeit des Servers.
  • Die Anwendungsüberwachung wertet kontinuierlich die von einer Anwendung ausgegebenen Protokolle und Metriken aus, um die ordnungsgemäße Funktionalität der Anwendung sicherzustellen.

Integrierte Protokollierung und Überwachung

Bei der Fehlerbehebung einer fehlerhaften Anwendung sollten Sie sowohl Protokollierung als auch Überwachung nutzen. Die Protokollierung liefert Informationen über anomale Ereignisse, während eine effiziente Überwachung Einblicke in den Status der Anwendung zum Zeitpunkt des Auftretens bietet. Eine effektive Protokollierung kann Ihnen also dabei helfen, die Ursache von Problemen zu ermitteln, während eine effektive Überwachung sicherstellt, dass Sie benachrichtigt werden, wenn ein Problem aufgetreten ist (oder bald auftreten wird).

Durch die Implementierung der folgenden Best Practices für die Integration von Protokollierung und Überwachung können Sie die Leistung und Zuverlässigkeit Ihrer Anwendung sowie die Effektivität der Fehlerbehebung durch Ihr Technikteam verbessern.

  • Pflegen Sie relevante und konsistente Daten für Ihre Protokolldateien.
  • Protokollieren und aktivieren Sie die Überwachung aller relevanten und nützlichen Ereignisinformationen.
  • Ergänzen Sie jedes Protokollereignis mit ausreichenden Metadaten, um einen hilfreichen Kontext für das Ereignis hinzuzufügen (z. B. Zeitstempel und HTTP-Antwortcodes) und detaillierte Einblicke über Überwachungs-Dashboards zu erhalten.
  • Erstellen Sie Vorlagen für das Protokollierungsformat, um die Einheitlichkeit in Ihrem System sicherzustellen.
  • Gruppieren Sie ähnliche Ereignisse in derselben Protokolldatei.
  • Verwenden Sie separate Protokolldateien für verschiedene Ereignistypen (z. B. bestellungen.log und stornierungen.log).
  • Wenden Sie geeignete Aufbewahrungsrichtlinien an, um alte Protokolle auszulagern oder zu löschen. Das beschleunigt die Protokollanalyse und reduziert die Kosten für die Protokollspeicherung.
  • Erzwingen Sie effiziente Schwellenwertkriterien für geeignete Metriken (z. B. CPU- und RAM-Auslastung).
  • Aktivieren Sie Warnmechanismen für kritische Metriken, damit Ihr Team schnellstmöglich die erforderlichen Maßnahmen ergreifen kann.
  • Legen Sie sinnvolle Schwellenwerte fest, um die Generierung irrelevanter Warnungen zu vermeiden.
  • Richten Sie umfassende Überwachungs-Dashboards ein, um kritische Metriken und Anwendungsprotokolle zu analysieren.

Vollständige Protokollierung und Einblicke – kostenlos

Falcon LogScale Community Edition (ehemals Humio) ist eine kostenlose moderne Log-Management-Plattform für die Cloud. Durch die Erfassung von Streaming-Daten erhalten Sie einen sofortigen Überblick über verteilte Systeme und können Zwischenfälle verhindern bzw. beheben.

Falcon LogScale Community Edition ist sofort kostenlos verfügbar und bietet folgende Vorteile:

  • Erfassung von bis zu 16 GB pro Tag
  • Speicherung bis zu 7 Tage
  • Keine Kreditkarte erforderlich
  • Unbegrenzter Zugriff ohne Testzeitraum
  • Indexlose Protokollierung, Echtzeit-Warnungen und Live-Dashboards
  • Zugriff auf unseren Marktplatz und zugehörige Pakete, einschließlich Leitfäden zur Entwicklung neuer Pakete
  • Lernen und Kooperation in einer aktiven Gemeinschaft