Configuration de Filebeat et Logstash dans DevOps
Lorsqu'une application génère des journaux, il est important de les collecter, de les traiter et de les analyser. En DevOps, la pile ELK (Elasticsearch, Logstash, Kibana), associée à Filebeat, est souvent utilisée à cette fin. Filebeat lit les journaux depuis votre serveur, Logstash traite et filtre les données, et Elasticsearch les stocke pour une analyse ultérieure.
Vous apprendrez à configurer Filebeat et Logstash pour fonctionner avec notre application Flask afin que tous les événements utilisateur soient correctement collectés et envoyés à la pile ELK.
Fonctionnement
Filebeat agit comme un agent sur le serveur exécutant votre application. Il surveille les fichiers de journal et envoie les nouvelles entrées à Logstash. Logstash reçoit les journaux, les traite — par exemple en analysant les structures JSON — puis les transmet à Elasticsearch. Elasticsearch stocke et organise les données afin que vous puissiez les rechercher, les analyser et les visualiser facilement dans Kibana.
Dans notre exemple, Filebeat surveillera le fichier app.log généré par l'application Flask. Logstash traitera ces journaux et les enverra à Elasticsearch. Elasticsearch crée un index distinct pour chaque jour, nommé flask-logs-YYYY.MM.DD. Ces index quotidiens vous aident à organiser les journaux par date, ce qui facilite la recherche d'événements, l'analyse des tendances ou la résolution de problèmes d'une journée spécifique sans avoir à parcourir tous les journaux en même temps.
Configuration de Filebeat
Commencez par créer un fichier de configuration pour Filebeat. Assurez-vous d'être dans le dossier elk-demo
que vous avez créé précédemment. Exécutez ensuite la commande suivante pour créer et ouvrir le fichier de configuration de Filebeat :
Cela ouvrira l'éditeur où vous pourrez coller la configuration Filebeat.
Après avoir collé, enregistrez le fichier avec Ctrl + O
, appuyez sur Enter
, puis quittez avec Ctrl + X
.
Dans l'éditeur, insérez la configuration suivante :
filebeat.yml
Cette configuration indique à Filebeat de surveiller le fichier /logs/app.log
. Chaque nouvelle entrée de journal est envoyée à Logstash, qui écoute sur le port 5044. Cela garantit que tous les événements de l'application sont automatiquement envoyés pour traitement et indexation.
Configuration de Logstash
Ensuite, créez un fichier de configuration pour Logstash. Assurez-vous d'être dans le dossier elk-demo
que vous avez créé précédemment. Exécutez ensuite la commande suivante pour créer et ouvrir le fichier de configuration Logstash :
Cela ouvrira l’éditeur où vous pourrez coller la configuration Logstash. Collez la configuration suivante dans le fichier :
logstash.conf
Avec ces configurations, Filebeat et Logstash sont prêts à fonctionner ensemble. Filebeat surveillera les journaux de l’application, Logstash les filtrera et les traitera, et Elasticsearch stockera et indexera les données, les rendant prêtes pour l’analyse et la visualisation dans Kibana.
1. Quel est le rôle principal de Filebeat dans la pile ELK ?
2. Pourquoi Logstash crée-t-il un index séparé pour chaque jour dans Elasticsearch ?
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 3.7
Configuration de Filebeat et Logstash dans DevOps
Glissez pour afficher le menu
Lorsqu'une application génère des journaux, il est important de les collecter, de les traiter et de les analyser. En DevOps, la pile ELK (Elasticsearch, Logstash, Kibana), associée à Filebeat, est souvent utilisée à cette fin. Filebeat lit les journaux depuis votre serveur, Logstash traite et filtre les données, et Elasticsearch les stocke pour une analyse ultérieure.
Vous apprendrez à configurer Filebeat et Logstash pour fonctionner avec notre application Flask afin que tous les événements utilisateur soient correctement collectés et envoyés à la pile ELK.
Fonctionnement
Filebeat agit comme un agent sur le serveur exécutant votre application. Il surveille les fichiers de journal et envoie les nouvelles entrées à Logstash. Logstash reçoit les journaux, les traite — par exemple en analysant les structures JSON — puis les transmet à Elasticsearch. Elasticsearch stocke et organise les données afin que vous puissiez les rechercher, les analyser et les visualiser facilement dans Kibana.
Dans notre exemple, Filebeat surveillera le fichier app.log généré par l'application Flask. Logstash traitera ces journaux et les enverra à Elasticsearch. Elasticsearch crée un index distinct pour chaque jour, nommé flask-logs-YYYY.MM.DD. Ces index quotidiens vous aident à organiser les journaux par date, ce qui facilite la recherche d'événements, l'analyse des tendances ou la résolution de problèmes d'une journée spécifique sans avoir à parcourir tous les journaux en même temps.
Configuration de Filebeat
Commencez par créer un fichier de configuration pour Filebeat. Assurez-vous d'être dans le dossier elk-demo
que vous avez créé précédemment. Exécutez ensuite la commande suivante pour créer et ouvrir le fichier de configuration de Filebeat :
Cela ouvrira l'éditeur où vous pourrez coller la configuration Filebeat.
Après avoir collé, enregistrez le fichier avec Ctrl + O
, appuyez sur Enter
, puis quittez avec Ctrl + X
.
Dans l'éditeur, insérez la configuration suivante :
filebeat.yml
Cette configuration indique à Filebeat de surveiller le fichier /logs/app.log
. Chaque nouvelle entrée de journal est envoyée à Logstash, qui écoute sur le port 5044. Cela garantit que tous les événements de l'application sont automatiquement envoyés pour traitement et indexation.
Configuration de Logstash
Ensuite, créez un fichier de configuration pour Logstash. Assurez-vous d'être dans le dossier elk-demo
que vous avez créé précédemment. Exécutez ensuite la commande suivante pour créer et ouvrir le fichier de configuration Logstash :
Cela ouvrira l’éditeur où vous pourrez coller la configuration Logstash. Collez la configuration suivante dans le fichier :
logstash.conf
Avec ces configurations, Filebeat et Logstash sont prêts à fonctionner ensemble. Filebeat surveillera les journaux de l’application, Logstash les filtrera et les traitera, et Elasticsearch stockera et indexera les données, les rendant prêtes pour l’analyse et la visualisation dans Kibana.
1. Quel est le rôle principal de Filebeat dans la pile ELK ?
2. Pourquoi Logstash crée-t-il un index séparé pour chaque jour dans Elasticsearch ?
Merci pour vos commentaires !