Konfigurera Filebeat och Logstash i DevOps
När en applikation genererar loggar är det viktigt att samla in, bearbeta och analysera dem. Inom DevOps används ofta ELK-stacken (Elasticsearch, Logstash, Kibana) tillsammans med Filebeat för detta ändamål. Filebeat läser loggar från din server, Logstash bearbetar och filtrerar datan, och Elasticsearch lagrar den för vidare analys.
Du kommer att lära dig hur du konfigurerar Filebeat och Logstash för att fungera med vår Flask-applikation så att alla användarhändelser samlas in korrekt och skickas till ELK-stacken.
Så fungerar det
Filebeat fungerar som en agent på servern där din applikation körs. Den övervakar loggfiler och skickar nya poster till Logstash. Logstash tar emot loggarna, bearbetar dem — till exempel genom att tolka JSON-strukturer — och skickar dem sedan vidare till Elasticsearch. Elasticsearch lagrar och organiserar datan så att du enkelt kan söka, analysera och visualisera den i Kibana.
I vårt exempel kommer Filebeat att övervaka filen app.log som genereras av Flask-applikationen. Logstash bearbetar dessa loggar och skickar dem till Elasticsearch. Elasticsearch skapar ett separat index för varje dag, med namnet flask-logs-YYYY.MM.DD. Dessa dagliga index hjälper dig att organisera loggarna efter datum, vilket gör det enklare att söka efter händelser, analysera trender eller felsöka problem från en specifik dag utan att behöva gå igenom alla loggar på en gång.
Konfigurera Filebeat
Skapa först en konfigurationsfil för Filebeat. Kontrollera att du befinner dig i mappen elk-demo
som du skapade tidigare. Kör sedan följande kommando för att skapa och öppna konfigurationsfilen för Filebeat:
Detta öppnar redigeraren där du kan klistra in Filebeat-konfigurationen.
Efter att du har klistrat in, spara filen med Ctrl + O
, tryck på Enter
och avsluta med Ctrl + X
.
I redigeraren, infoga följande konfiguration:
filebeat.yml
Denna konfiguration instruerar Filebeat att övervaka filen /logs/app.log
. Varje ny loggrad skickas till Logstash, som lyssnar på port 5044. Detta säkerställer att alla händelser från applikationen automatiskt skickas för bearbetning och indexering.
Konfigurera Logstash
Skapa därefter en konfigurationsfil för Logstash. Kontrollera att du befinner dig i mappen elk-demo
som du skapade tidigare. Kör sedan följande kommando för att skapa och öppna Logstash-konfigurationsfilen:
Detta öppnar redigeraren där du kan klistra in Logstash-konfigurationen. Klistra in följande konfiguration i filen:
logstash.conf
Med dessa konfigurationer är Filebeat och Logstash redo att arbeta tillsammans. Filebeat övervakar applikationsloggarna, Logstash filtrerar och bearbetar dem, och Elasticsearch lagrar och indexerar data, vilket gör den redo för analys och visualisering i Kibana.
1. Vad är Filebeats huvudsakliga roll i ELK-stacken?
2. Varför skapar Logstash ett separat index för varje dag i Elasticsearch?
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Awesome!
Completion rate improved to 3.7
Konfigurera Filebeat och Logstash i DevOps
Svep för att visa menyn
När en applikation genererar loggar är det viktigt att samla in, bearbeta och analysera dem. Inom DevOps används ofta ELK-stacken (Elasticsearch, Logstash, Kibana) tillsammans med Filebeat för detta ändamål. Filebeat läser loggar från din server, Logstash bearbetar och filtrerar datan, och Elasticsearch lagrar den för vidare analys.
Du kommer att lära dig hur du konfigurerar Filebeat och Logstash för att fungera med vår Flask-applikation så att alla användarhändelser samlas in korrekt och skickas till ELK-stacken.
Så fungerar det
Filebeat fungerar som en agent på servern där din applikation körs. Den övervakar loggfiler och skickar nya poster till Logstash. Logstash tar emot loggarna, bearbetar dem — till exempel genom att tolka JSON-strukturer — och skickar dem sedan vidare till Elasticsearch. Elasticsearch lagrar och organiserar datan så att du enkelt kan söka, analysera och visualisera den i Kibana.
I vårt exempel kommer Filebeat att övervaka filen app.log som genereras av Flask-applikationen. Logstash bearbetar dessa loggar och skickar dem till Elasticsearch. Elasticsearch skapar ett separat index för varje dag, med namnet flask-logs-YYYY.MM.DD. Dessa dagliga index hjälper dig att organisera loggarna efter datum, vilket gör det enklare att söka efter händelser, analysera trender eller felsöka problem från en specifik dag utan att behöva gå igenom alla loggar på en gång.
Konfigurera Filebeat
Skapa först en konfigurationsfil för Filebeat. Kontrollera att du befinner dig i mappen elk-demo
som du skapade tidigare. Kör sedan följande kommando för att skapa och öppna konfigurationsfilen för Filebeat:
Detta öppnar redigeraren där du kan klistra in Filebeat-konfigurationen.
Efter att du har klistrat in, spara filen med Ctrl + O
, tryck på Enter
och avsluta med Ctrl + X
.
I redigeraren, infoga följande konfiguration:
filebeat.yml
Denna konfiguration instruerar Filebeat att övervaka filen /logs/app.log
. Varje ny loggrad skickas till Logstash, som lyssnar på port 5044. Detta säkerställer att alla händelser från applikationen automatiskt skickas för bearbetning och indexering.
Konfigurera Logstash
Skapa därefter en konfigurationsfil för Logstash. Kontrollera att du befinner dig i mappen elk-demo
som du skapade tidigare. Kör sedan följande kommando för att skapa och öppna Logstash-konfigurationsfilen:
Detta öppnar redigeraren där du kan klistra in Logstash-konfigurationen. Klistra in följande konfiguration i filen:
logstash.conf
Med dessa konfigurationer är Filebeat och Logstash redo att arbeta tillsammans. Filebeat övervakar applikationsloggarna, Logstash filtrerar och bearbetar dem, och Elasticsearch lagrar och indexerar data, vilket gör den redo för analys och visualisering i Kibana.
1. Vad är Filebeats huvudsakliga roll i ELK-stacken?
2. Varför skapar Logstash ett separat index för varje dag i Elasticsearch?
Tack för dina kommentarer!