Definition von Log-Aggregation
Log-Aggregation bezeichnet die Erfassung, Normalisierung und Konsolidierung von Protokollen aus verschiedenen Quellen auf einer zentralen Plattform, auf der die Daten anschließend korreliert und analysiert werden können. Die aggregierten Daten dienen danach als exklusive Informationsquelle für verschiedene Anwendungsszenarien, einschließlich der Behebung von Problemen oder Fehlern im Zusammenhang mit der Anwendungsleistung, der Identifizierung von Infrastrukturengpässen oder der Suche nach der Ursache eines Cyberangriffs.
In diesem Artikel erfahren Sie mehr über die Notwendigkeit der Log-Aggregation, die einzelnen Schritte bei der Log-Aggregation und die Arten von Protokollen, die Sie zusammentragen sollten. Darüber hinaus sehen wir uns die Funktionen an, auf die Sie bei der Wahl einer Plattform für die Aggregation und Verwaltung von Protokollen achten müssen.
Welche Vorteile bietet Log-Aggregation?
Mit der Log-Aggregation können Sie Ereignisse aus verschiedenen Quellen an einem Ort zusammentragen und diese Daten anschließend durchsuchen, analysieren und interpretieren. Die Log-Aggregation ist nicht nur für die End-to-End-Beobachtbarkeit von Bedeutung, sondern auch bei verschiedenen Anwendungen von Nutzen, zum Beispiel:
- Echtzeitanalyse und -überwachung: Sicherheitsinformations- und Ereignismanagement (SIEM)-Lösungen sind auf Protokolle angewiesen, um Sicherheitsverletzungen, Angriffsmuster und Trends zu erkennen.
- Anwendungsüberwachung: Lösungen zur Verwaltung der Anwendungsleistung (Application Performance Management, APM) nutzen Protokolle, um Funktions- oder Leistungsprobleme in einer Anwendung schnell zu lokalisieren und damit die mittlere Zeit bis zur Behebung (MTTR) zu verkürzen und die Anwendungsverfügbarkeit zu erhöhen.
- Kapazitätenplanung: Systemprotokolle zeigen oft die Ressourcensättigung und die daraus resultierenden infrastrukturbezogenen Engpässe an. Damit erleichtern sie die schnelle Behebung dieser Probleme und geben operativen Teams die Möglichkeit, die aktuelle Auslastung der Infrastrukturkapazitäten zu beurteilen und für die Zukunft zu planen.
- AIOps: Einige moderne Log-Management-Systeme nutzen hochentwickelte Technologien wie künstliche Intelligenz (KI) und Machine Learning (ML)-Algorithmen für Log-Daten, um Ereignisse zu korrelieren, Anomalien zu erkennen und Trends zu analysieren.
- Prüfung und Compliance: Protokolle können auch zu Prüfzwecken genutzt werden, z. B. für die Prüfung von Datenbank-Zugriffsdatensätzen, Server-Anmeldungen oder erfolgreichen/erfolglosen API-Anforderungen. Diese Datensätze werden oft benötigt, um die Compliance mit Vorschriften wie PCI-DSS oder HIPAA zu gewährleisten.
- Beheben von Sicherheitsbedrohungen: Das Analysieren von Protokollen hilft oft bei der Identifizierung von Sicherheitsbedrohungen wie DDoS– und Brute-Force-Angriffen. Netzwerk-Flow-Protokolle und Firewall-Protokolle können auch verwendet werden, um nicht autorisierten Datenverkehr zu blockieren.
- Datenvisualisierung: Mit den aggregierten Protokollen können Dashboards für die grafische Darstellung von Daten erstellt werden.
- Erweiterte Analysen und Visualisierung: Die Log-Aggregation unterstützt auch den Einsatz fortschrittlicher Analysen wie Data Mining, Freitextsuchen, komplexe RegEx-Abfragen für umfassende Analysen und die Erweiterung von Dashboards. Solche Funktionen können für Netzwerkkontrollzentren (NOCs) oder Sicherheitskontrollzentren (SOCs) hilfreich sein.
Was beinhaltet die Log-Aggregation?
Die Aggregation und Analyse von Protokollen aus verschiedenen Quellen umfasst mehrere Schritte.
Identifizieren der Log-Quellen
Moderne verteilte Unternehmensanwendungen bestehen aus vielen beweglichen Teilen. Deshalb müssen Sie zunächst alle Komponenten identifizieren, aus denen Sie Protokolle aggregieren möchten. Damit Protokolle beherrschbar bleiben, können Sie festlegen, dass nur bestimmte Arten von Ereignissen (z. B. erfolglose Anmeldeversuche oder Abfragen, die länger als ein eingestellter Schwellenwert dauerten) oder Ereignisse mit einer bestimmten Wichtigkeit erfasst werden.
Sie können zum Beispiel festlegen, dass alle erfolglosen Verbindungsversuche aus Ihrem Netzwerk-Eindringungserkennungssystem (NIDS), aber nur kritische Fehlermeldungen über abstürzende Pods aus Ihrem Kubernetes-Cluster erfasst werden.
Erfassung von Protokollen
Der nächste Schritt nach der Identifizierung der Log-Quellen ist die Erfassung dieser Protokolle. Die Erfassung der Protokolle sollte automatisch erfolgen. Es gibt mehrere Möglichkeiten, Protokolle zu erfassen, zum Beispiel:
- Anwendungen können Standardprotokolle wie Syslog zur Protokollierung von Meldungen nutzen, um die Protokolle kontinuierlich in ein zentralisiertes System einzuspeisen.
- Sie können benutzerdefinierte Integrationen und Erfassungstools (aka Agenten) auf Servern installieren, die die Protokolle auf dem lokalen Rechner lesen und an die Logging-Plattform senden.
- Die Code-Instrumentierung erfasst Meldungen aus bestimmten Programmteilen, wobei die Meldungen oft von den jeweils vorliegenden Fehlerbedingungen abhängen.
- Log-Management-Systeme können direkt auf Quellsysteme zugreifen und Log-Dateien über das Netzwerk kopieren.
Parsen von Protokollen
Protokolle müssen geparst werden, bevor daraus aussagekräftige Informationen gewonnen werden können. Dabei bezeichnet „Parsen“ die Extraktion wichtiger Informationen aus jedem protokollierten Ereignis und deren Konvertierung in ein allgemein lesbares Format. Diese Daten werden anschließend für spätere Analysen gespeichert. Protokolle können ziemlich groß sein und viele überflüssige Daten enthalten. Beim Parsen werden nur die relevanten Daten extrahiert – und der Rest verworfen.
Beim Parsen wird zum Beispiel der ursprüngliche Zeitstempel in Werte für eine bestimmte Zeitzone konvertiert. Zeitstempel sind wichtige Metadaten für ein Ereignis. In den Protokollen kann es je nach Log-Quelle verschiedene Zeitstempel geben.
Ein Parser kann weitere wichtige Informationen wie den Benutzernamen, die IP-Adresse der Quelle und des Ziels, das verwendete Netzwerkprotokoll und die eigentliche Meldung aus dem Protokoll extrahieren. Beim Parsen können Daten zum Beispiel auch so herausgefiltert werden, dass nur Ereignisse des Typs ERROR und WARNING übrig bleiben und alle Ereignisse mit geringerem Schweregrad ausgeschlossen werden.
Verarbeiten von Protokollen
Nach dem Parsen kann die Log-Aggregation weitere Aktionen zur Verarbeitung der Eingaben ausführen.
Bei der Indexierung wird eine spaltenbasierte Zuordnung der geparsten und gespeicherten Daten erstellt, ähnlich wie bei einem Datenbankindex. Die Indexierung erleichtert und beschleunigt die Protokollabfrage. Durch eindeutige Indexe werden doppelte Log-Daten vermieden.
Auch die Datenanreicherung kann sehr hilfreich sein, um weitere Erkenntnisse aus Ihren Protokollen zu gewinnen. Beispiele für die Datenanreicherung sind:
- Hinzufügen geografischer Standortdaten zu Ihren Log-Daten aus IP-Adressen
- Ersetzen von HTTP-Statuscodes durch ihre tatsächlichen Meldungen
- Hinzufügen von Betriebssystem- und Webbrowserdetails
Bei der Maskierung werden vertrauliche Daten wie Verschlüsselungsschlüssel, persönliche Informationen oder Authentifizierungstoken und Anmeldedaten in protokollierten Meldungen geschwärzt.
Speichern von Protokollen
Die meisten Log-Management-Plattformen komprimieren die geparsten, indexierten und angereicherten Protokolle vor dem Speichern. Durch die Komprimierung sinken die Kosten für die Netzwerkbandbreite und die Speicherung der Protokolle. Meist wird bei der Komprimierung ein proprietäres Format verwendet.
Wenn Sie Protokolle aggregieren, müssen Sie auch die zugehörigen Aufbewahrungsrichtlinien festlegen, d. h. wie lange die Protokolle gespeichert werden sollten. Die Einstellungen hängen von mehreren Faktoren wie dem verfügbaren Speicherplatz, den Branchenanforderungen oder den Unternehmensrichtlinien ab. Gleichzeitig können für verschiedene Arten von Protokollen verschiedene Aufbewahrungsanforderungen gelten. Nach der festlegten Zeit können alte Protokolle vom System entfernt oder in weniger teuren Speichern mit höherer Latenz archiviert werden. Durch das Entfernen und Archivieren von Protokollen kann die Abfrageleistung gesteigert werden, weil die Größe der Daten abnimmt, auf die häufig zugegriffen wird. Darüber hinaus werden auf diese Weise die Prüfungsabläufe vereinfacht.
Welche Arten von Protokollen sollten Sie aggregieren?
Die Arten der Protokolle, die Sie aggregieren sollten, hängen von Ihrem Anwendungsszenario ab. Dies ist Teil der bereits erläuterten Log-Identifizierungsphase. Die nachfolgende unvollständige Liste enthält einige Empfehlungen für Protokolle, die Sie erfassen sollten:
- Systemprotokolle, die vom Syslog-, journalctl- oder Event Log-Dienst generiert wurden
- Webserver-Protokolle
- Middleware-Protokolle
- Anwendungsprotokolle, z. B. von Mikroservices
- Netzwerk-Flow-Protokolle
- Firewall-, Virenschutz-, Eindringungserkennungssystem (IDS)-Protokolle
- Datenbankprotokolle
- API-Gateway-Protokolle
- Lastausgleichsprotokolle
- DNS-Protokolle
- Authentifizierungsdienst-Protokolle
- Proxyserver-Protokolle
- Konfigurationsänderungsprotokolle
- Backup & Recovery-Protokolle
Je nach Ihren Anforderungen können Sie bestimmte Protokolle ausschließen, z. B. Protokolle von erfolgreichen Integritätskontrollen oder Anmeldungen. Möglicherweise ist es sinnvoll, die meisten Protokolle von Komponenten wie Bastion-Server oder FTP-Server in der DMZ auszuschließen. Auch in diesem Fall sollten Sie jedoch Authentifizierungsprotokolle aus diesen Systemen erfassen.
Funktionen einer Plattform für Log-Aggregation
Mittlerweile gibt es viele Plattformen für Log-Aggregation auf dem Markt. Berücksichtigen Sie bei der Entscheidung für eine solche Plattform die folgenden Faktoren.
Effiziente Datenerfassung
Die Plattform für Log-Aggregation sollte nahtlos Protokolle aus verschiedenen Quellen zusammentragen, z. B. von Anwendungsservern, Datenbanken, API-Endgeräten oder Webservern. Dies kann plattformnativ oder über aktiv verwaltete Plug-ins erfolgen. Außerdem sollte die Plattform alle wichtigen Log-Formate wie Textdateien, CSV, JSON oder XML unterstützen.
Robuste Verarbeitung
Die Plattform muss Unternehmensdaten effizient parsen, indexieren, komprimieren, speichern und analysieren. Zudem sollte sie eine einfache und umfangreiche Abfragesprache zum Durchsuchen, Sortieren, Filtern und Analysieren von Protokollen sowie eine Möglichkeit zum Erstellen von Dashboards und Berichten bieten.
Echtzeit-Überwachung
Die zum Erfassen, Parsen, Indexieren, Komprimieren und Speichern der Protokolle benötigte Zeit sollte möglichst kurz sein. Außerdem sollten Benutzer die Protokolle während ihrer Erfassung und Verarbeitung in Echtzeit überwachen können.
Skalierbarkeit
Die Plattform sollte mit plötzlichen Spitzen beim eingehenden Log-Datenstrom souverän umgehen und Datenverluste während der Übertragung verhindern. Außerdem sollte die allmähliche Zunahme des Datenvolumens nicht zu einer Verschlechterung der Such- und Abfrageleistung führen.
Sicherheit
Log-Daten sollten sowohl während der Speicherung als auch während der Übertragung verschlüsselt werden. Dies wird in einigen Branchen gesetzlich vorgeschrieben. Außerdem sollte die Plattform über Mechanismen wie rollenbasierte Zugriffskontrolle verfügen, um den Benutzerzugriff auf die Daten zu kontrollieren.
Warnungen und Integration
Die Lösung sollte es den Betreibern erlauben, Warnungen auf der Basis bestimmter Kriterien in den protokollierten Ereignissen zu erstellen, und diese Warnungen an zahlreiche Kommunikationssysteme senden können. Auch die Integration mit Tools und Plattformen von Drittanbietern wäre wünschenswert, z. B. die automatische Erstellung von Service-Tickets.
Kosteneffektivität
Letztendlich sollte die Plattform für Log-Aggregation ihren Wert durch geringe Gesamtbetriebskosten rechtfertigen, wenn Sie eine Kosten-Nutzen-Analyse vornehmen.
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