Einrichtung von Filebeat und Logstash in DevOps
Wenn eine Anwendung Protokolle generiert, ist es wichtig, diese zu sammeln, zu verarbeiten und zu analysieren. Im DevOps-Bereich wird hierfür häufig der ELK-Stack (Elasticsearch, Logstash, Kibana) zusammen mit Filebeat verwendet. Filebeat liest Protokolle von Ihrem Server, Logstash verarbeitet und filtert die Daten, und Elasticsearch speichert sie zur weiteren Analyse.
Sie lernen, wie Sie Filebeat und Logstash so konfigurieren, dass sie mit unserer Flask-Anwendung zusammenarbeiten, sodass alle Benutzerereignisse ordnungsgemäß erfasst und an den ELK-Stack gesendet werden.
Funktionsweise
Filebeat fungiert als Agent auf dem Server, auf dem Ihre Anwendung läuft. Es überwacht Protokolldateien und sendet neue Einträge an Logstash. Logstash empfängt die Protokolle, verarbeitet sie – beispielsweise durch das Parsen von JSON-Strukturen – und leitet sie dann an Elasticsearch weiter. Elasticsearch speichert und organisiert die Daten, sodass Sie diese in Kibana einfach durchsuchen, analysieren und visualisieren können.
In unserem Beispiel überwacht Filebeat die von der Flask-Anwendung generierte Datei app.log. Logstash verarbeitet diese Protokolle und sendet sie an Elasticsearch. Elasticsearch erstellt für jeden Tag einen separaten Index mit dem Namen flask-logs-YYYY.MM.DD. Diese täglichen Indizes helfen Ihnen, die Protokolle nach Datum zu organisieren, sodass Sie Ereignisse leichter suchen, Trends analysieren oder Probleme eines bestimmten Tages untersuchen können, ohne alle Protokolle durchsuchen zu müssen.
Filebeat konfigurieren
Erstellen Sie zunächst eine Konfigurationsdatei für Filebeat. Stellen Sie sicher, dass Sie sich im zuvor erstellten Ordner elk-demo
befinden. Führen Sie dann den folgenden Befehl aus, um die Filebeat-Konfigurationsdatei zu erstellen und zu öffnen:
Dies öffnet den Editor, in den Sie die Filebeat-Konfiguration einfügen können.
Nach dem Einfügen speichern Sie die Datei mit Ctrl + O
, drücken Enter
und beenden den Editor mit Ctrl + X
.
Fügen Sie im Editor die folgende Konfiguration ein:
filebeat.yml
Diese Konfiguration weist Filebeat an, die Datei /logs/app.log
zu überwachen. Jeder neue Logeintrag wird an Logstash gesendet, das auf Port 5044 lauscht. Dadurch wird sichergestellt, dass alle Ereignisse der Anwendung automatisch zur Verarbeitung und Indexierung weitergeleitet werden.
Logstash konfigurieren
Erstellen Sie als Nächstes eine Konfigurationsdatei für Logstash. Stellen Sie sicher, dass Sie sich im Ordner elk-demo
befinden, den Sie zuvor erstellt haben. Führen Sie dann den folgenden Befehl aus, um die Logstash-Konfigurationsdatei zu erstellen und zu öffnen:
Dadurch wird der Editor geöffnet, in den Sie die Logstash-Konfiguration einfügen können. Fügen Sie die folgende Konfiguration in die Datei ein:
logstash.conf
Mit diesen Konfigurationen sind Filebeat und Logstash bereit, zusammenzuarbeiten. Filebeat überwacht die Anwendungsprotokolle, Logstash filtert und verarbeitet sie, und Elasticsearch speichert und indiziert die Daten, sodass sie für Analyse und Visualisierung in Kibana bereitstehen.
1. Was ist die Hauptaufgabe von Filebeat im ELK-Stack?
2. Warum erstellt Logstash für jeden Tag einen separaten Index in Elasticsearch?
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 3.7
Einrichtung von Filebeat und Logstash in DevOps
Swipe um das Menü anzuzeigen
Wenn eine Anwendung Protokolle generiert, ist es wichtig, diese zu sammeln, zu verarbeiten und zu analysieren. Im DevOps-Bereich wird hierfür häufig der ELK-Stack (Elasticsearch, Logstash, Kibana) zusammen mit Filebeat verwendet. Filebeat liest Protokolle von Ihrem Server, Logstash verarbeitet und filtert die Daten, und Elasticsearch speichert sie zur weiteren Analyse.
Sie lernen, wie Sie Filebeat und Logstash so konfigurieren, dass sie mit unserer Flask-Anwendung zusammenarbeiten, sodass alle Benutzerereignisse ordnungsgemäß erfasst und an den ELK-Stack gesendet werden.
Funktionsweise
Filebeat fungiert als Agent auf dem Server, auf dem Ihre Anwendung läuft. Es überwacht Protokolldateien und sendet neue Einträge an Logstash. Logstash empfängt die Protokolle, verarbeitet sie – beispielsweise durch das Parsen von JSON-Strukturen – und leitet sie dann an Elasticsearch weiter. Elasticsearch speichert und organisiert die Daten, sodass Sie diese in Kibana einfach durchsuchen, analysieren und visualisieren können.
In unserem Beispiel überwacht Filebeat die von der Flask-Anwendung generierte Datei app.log. Logstash verarbeitet diese Protokolle und sendet sie an Elasticsearch. Elasticsearch erstellt für jeden Tag einen separaten Index mit dem Namen flask-logs-YYYY.MM.DD. Diese täglichen Indizes helfen Ihnen, die Protokolle nach Datum zu organisieren, sodass Sie Ereignisse leichter suchen, Trends analysieren oder Probleme eines bestimmten Tages untersuchen können, ohne alle Protokolle durchsuchen zu müssen.
Filebeat konfigurieren
Erstellen Sie zunächst eine Konfigurationsdatei für Filebeat. Stellen Sie sicher, dass Sie sich im zuvor erstellten Ordner elk-demo
befinden. Führen Sie dann den folgenden Befehl aus, um die Filebeat-Konfigurationsdatei zu erstellen und zu öffnen:
Dies öffnet den Editor, in den Sie die Filebeat-Konfiguration einfügen können.
Nach dem Einfügen speichern Sie die Datei mit Ctrl + O
, drücken Enter
und beenden den Editor mit Ctrl + X
.
Fügen Sie im Editor die folgende Konfiguration ein:
filebeat.yml
Diese Konfiguration weist Filebeat an, die Datei /logs/app.log
zu überwachen. Jeder neue Logeintrag wird an Logstash gesendet, das auf Port 5044 lauscht. Dadurch wird sichergestellt, dass alle Ereignisse der Anwendung automatisch zur Verarbeitung und Indexierung weitergeleitet werden.
Logstash konfigurieren
Erstellen Sie als Nächstes eine Konfigurationsdatei für Logstash. Stellen Sie sicher, dass Sie sich im Ordner elk-demo
befinden, den Sie zuvor erstellt haben. Führen Sie dann den folgenden Befehl aus, um die Logstash-Konfigurationsdatei zu erstellen und zu öffnen:
Dadurch wird der Editor geöffnet, in den Sie die Logstash-Konfiguration einfügen können. Fügen Sie die folgende Konfiguration in die Datei ein:
logstash.conf
Mit diesen Konfigurationen sind Filebeat und Logstash bereit, zusammenzuarbeiten. Filebeat überwacht die Anwendungsprotokolle, Logstash filtert und verarbeitet sie, und Elasticsearch speichert und indiziert die Daten, sodass sie für Analyse und Visualisierung in Kibana bereitstehen.
1. Was ist die Hauptaufgabe von Filebeat im ELK-Stack?
2. Warum erstellt Logstash für jeden Tag einen separaten Index in Elasticsearch?
Danke für Ihr Feedback!