Opsætning af Filebeat og Logstash i DevOps
Når en applikation genererer logs, er det vigtigt at indsamle, behandle og analysere dem. I DevOps anvendes ofte ELK-stakken (Elasticsearch, Logstash, Kibana) sammen med Filebeat til dette formål. Filebeat læser logs fra din server, Logstash behandler og filtrerer dataene, og Elasticsearch gemmer dem til videre analyse.
Du vil lære at konfigurere Filebeat og Logstash til at arbejde sammen med vores Flask-applikation, så alle brugerevents indsamles korrekt og sendes til ELK-stakken.
Sådan fungerer det
Filebeat fungerer som en agent på serveren, hvor din applikation kører. Den overvåger logfiler og sender nye poster til Logstash. Logstash modtager logs, behandler dem — for eksempel ved at parse JSON-strukturer — og sender dem derefter videre til Elasticsearch. Elasticsearch gemmer og organiserer dataene, så du nemt kan søge, analysere og visualisere dem i Kibana.
I vores eksempel vil Filebeat overvåge app.log-filen, som genereres af Flask-applikationen. Logstash vil behandle disse logs og sende dem til Elasticsearch. Elasticsearch opretter et separat indeks for hver dag, navngivet flask-logs-YYYY.MM.DD. Disse daglige indekser hjælper dig med at organisere logs efter dato, hvilket gør det lettere at søge efter events, analysere tendenser eller fejlfinde problemer fra en bestemt dag uden at skulle gennemgå alle logs på én gang.
Konfiguration af Filebeat
Opret først en konfigurationsfil til Filebeat. Sørg for, at du befinder dig i mappen elk-demo
, som du oprettede tidligere. Kør derefter følgende kommando for at oprette og åbne Filebeat-konfigurationsfilen:
Dette åbner editoren, hvor du kan indsætte Filebeat-konfigurationen.
Efter indsættelse skal du gemme filen med Ctrl + O
, trykke på Enter
og afslutte med Ctrl + X
.
Indsæt følgende konfiguration i editoren:
filebeat.yml
Denne konfiguration instruerer Filebeat i at overvåge filen /logs/app.log
. Hver ny logpost sendes til Logstash, som lytter på port 5044. Dette sikrer, at alle hændelser fra applikationen automatisk sendes til behandling og indeksering.
Konfiguration af Logstash
Opret derefter en konfigurationsfil til Logstash. Sørg for, at du befinder dig i mappen elk-demo
, som du oprettede tidligere. Kør derefter følgende kommando for at oprette og åbne Logstash-konfigurationsfilen:
Dette åbner editoren, hvor du kan indsætte Logstash-konfigurationen. Indsæt følgende konfiguration i filen:
logstash.conf
Med disse konfigurationer er Filebeat og Logstash klar til at arbejde sammen. Filebeat overvåger applikationsloggene, Logstash filtrerer og behandler dem, og Elasticsearch gemmer og indekserer dataene, så de er klar til analyse og visualisering i Kibana.
1. Hvad er Filebeats hovedrolle i ELK-stakken?
2. Hvorfor opretter Logstash et separat indeks for hver dag i Elasticsearch?
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 3.7
Opsætning af Filebeat og Logstash i DevOps
Stryg for at vise menuen
Når en applikation genererer logs, er det vigtigt at indsamle, behandle og analysere dem. I DevOps anvendes ofte ELK-stakken (Elasticsearch, Logstash, Kibana) sammen med Filebeat til dette formål. Filebeat læser logs fra din server, Logstash behandler og filtrerer dataene, og Elasticsearch gemmer dem til videre analyse.
Du vil lære at konfigurere Filebeat og Logstash til at arbejde sammen med vores Flask-applikation, så alle brugerevents indsamles korrekt og sendes til ELK-stakken.
Sådan fungerer det
Filebeat fungerer som en agent på serveren, hvor din applikation kører. Den overvåger logfiler og sender nye poster til Logstash. Logstash modtager logs, behandler dem — for eksempel ved at parse JSON-strukturer — og sender dem derefter videre til Elasticsearch. Elasticsearch gemmer og organiserer dataene, så du nemt kan søge, analysere og visualisere dem i Kibana.
I vores eksempel vil Filebeat overvåge app.log-filen, som genereres af Flask-applikationen. Logstash vil behandle disse logs og sende dem til Elasticsearch. Elasticsearch opretter et separat indeks for hver dag, navngivet flask-logs-YYYY.MM.DD. Disse daglige indekser hjælper dig med at organisere logs efter dato, hvilket gør det lettere at søge efter events, analysere tendenser eller fejlfinde problemer fra en bestemt dag uden at skulle gennemgå alle logs på én gang.
Konfiguration af Filebeat
Opret først en konfigurationsfil til Filebeat. Sørg for, at du befinder dig i mappen elk-demo
, som du oprettede tidligere. Kør derefter følgende kommando for at oprette og åbne Filebeat-konfigurationsfilen:
Dette åbner editoren, hvor du kan indsætte Filebeat-konfigurationen.
Efter indsættelse skal du gemme filen med Ctrl + O
, trykke på Enter
og afslutte med Ctrl + X
.
Indsæt følgende konfiguration i editoren:
filebeat.yml
Denne konfiguration instruerer Filebeat i at overvåge filen /logs/app.log
. Hver ny logpost sendes til Logstash, som lytter på port 5044. Dette sikrer, at alle hændelser fra applikationen automatisk sendes til behandling og indeksering.
Konfiguration af Logstash
Opret derefter en konfigurationsfil til Logstash. Sørg for, at du befinder dig i mappen elk-demo
, som du oprettede tidligere. Kør derefter følgende kommando for at oprette og åbne Logstash-konfigurationsfilen:
Dette åbner editoren, hvor du kan indsætte Logstash-konfigurationen. Indsæt følgende konfiguration i filen:
logstash.conf
Med disse konfigurationer er Filebeat og Logstash klar til at arbejde sammen. Filebeat overvåger applikationsloggene, Logstash filtrerer og behandler dem, og Elasticsearch gemmer og indekserer dataene, så de er klar til analyse og visualisering i Kibana.
1. Hvad er Filebeats hovedrolle i ELK-stakken?
2. Hvorfor opretter Logstash et separat indeks for hver dag i Elasticsearch?
Tak for dine kommentarer!