Ce que vous allez apprendre dans ce TP
- Déclarer plusieurs pipelines
- Activer la file persistante et la DLQ
- Provoquer et lire un rejet
- Superviser Logstash
Introduction #
Ce que vous allez apprendre dans cette section
- Déclarer plusieurs pipelines
- Activer la file persistante et la DLQ
- Provoquer et lire un rejet
- Superviser Logstash
Contexte. Des documents disparaissent entre Logstash et Elasticsearch. Vous mettez en place une file persistante et une DLQ pour ne plus rien perdre, et vous apprenez à retrouver les rejets.
Prérequis : Docker et Docker Compose, 4 Go de RAM libres, jq · Durée estimée : 45 min
Mise en place #
Étapes guidées, avec leur correction.
1. Les fichiers du labo
Pourquoi ? Le pipeline « web » écrit dans le data stream
logs-web-lab; le pipeline « dlq » relit ses rejets.2. Un mapping strict
Pourquoi ? Le champ
statusest déclaré entier : un statut non numérique sera refusé par Elasticsearch, ce qui alimentera la DLQ.3. Envoyer des événements
Envoyez trois événements valides et un événement dont le statut n'est pas numérique.
4. Lire la DLQ
Pourquoi ? Le document refusé n'est pas perdu : le pipeline « dlq » l'affiche avec la raison du refus.
5. Superviser et éprouver la file
Consultez les statistiques du pipeline, arrêtez Elasticsearch, envoyez des événements, puis redémarrez-le : ils sont livrés.
Niveau de difficulté : ●●●○○ (3/5)
Mon suivi
Connectez-vous pour suivre votre progression et prendre des notes. Se connecter
💬 Questions sur cette leçon
Aucune question pour l'instant : soyez le premier à demander de l'aide ou à partager votre configuration.
Glossaire de la formation
Observabilité
La capacité à connaître l'état interne d'un système à partir des données qu'il émet.Ces données sont classées en 3 piliers : logsmétriquestracesprofil...
Elastic Common Schema (ECS)
Une spécification open source qui permet de structurer vos données de manière homogène dans l'écosystème Elastic.
Logstash
Moteur de collecte de données permettant de traiter, d'enrichir et de transformer les logs et autres événements avant de les indexer.
Access Log
Fichier de journalisation enregistrant les requêtes traitées par un serveur web (Apache, Nginx, Lighttpd, etc.). Il permet de tracer l'activité du ser...
Client IP
L'adresse IP de l'utilisateur effectuant la requête vers le serveur web. Lorsqu'un utilisateur passe par un Load Balancer ou un proxy (ex: Cloudflare)...
Timestamp
La date et l'heure exactes auxquelles la requête a été reçue par le serveur.Configuration : %t dans Apache, $time_local ou $time_iso8601 dans Nginx.
Request
La ligne de requête initiale du client. Elle comprend généralement la méthode HTTP (ex: GET), l'URL demandée et la version du protocole HTTP.Configura...
Status Code
Le code de statut HTTP final renvoyé par le serveur au client (ex : 200 pour un succès, 404 pour ressource non trouvée).Configuration : %>s dans Apach...
Size
Le volume des données renvoyées au client, mesuré en octets (généralement sans les en-têtes HTTP).Configuration : %b ou %O dans Apache, $body_bytes_se...
Referrer
L'URL de la page web depuis laquelle le client a cliqué ou suivi un lien pour accéder à la ressource actuelle.Configuration : %{Referer}i dans Apache,...
User-Agent
Les informations d'identification fournies par le client concernant son navigateur, son système d'exploitation et son appareil. Sa structure standard ...
Response Time
La durée totale prise par le serveur pour traiter la requête et renvoyer la réponse au client.Configuration : %D (microsecondes) ou %T (secondes) dans...
Articles recommandés
Logstash en production : files persistantes, DLQ et multi-pipelines
Rendre Logstash fiable en production : file persistante, dead letter queue, plusieurs pipelines e...
Logstash : enrichir, tester, superviser et déployer sur Kubernetes
Enrichir avec translate, geoip et elasticsearch, consommer Kafka, tester ses pipelines, supervise...
Bonnes pratiques Logstash : pipelines, performances, fiabilité et supervision
Bonnes pratiques Logstash : pipelines multiples, dissect plutôt que grok, conditionnels, persiste...
Logstash : rôle, concept de pipeline et installation
Version écrite des leçons vidéo : à quoi sert Logstash, comment fonctionne un pipeline (inputs, f...
Logstash : les entrées (inputs) et les sorties (outputs)
Version écrite des leçons vidéo : les inputs courants (beats, file, tcp/udp, http, kafka, jdbc) e...
Logstash : les filtres, grok et dissect
Version écrite des leçons vidéo : les filtres essentiels (mutate, date, json, kv, drop), le plugi...
Ingestion Elasticsearch : Bulk API, ingest pipelines, enrich et reindex
Ingérer et transformer des données dans Elasticsearch : Bulk API, ingest pipelines et processeurs...
Logstash : gérer les plugins et adopter Elastic Common Schema (ECS)
Version écrite des leçons vidéo : lister, installer, mettre à jour et embarquer hors ligne les pl...
Alimenter OpenSearch : pipelines d'ingestion et Data Prepper
Transformer les données avec les pipelines d'ingestion, collecter avec Data Prepper, recevoir l'O...