RousselTMLEARNING

TP · Logstash: from discovery to expertise

Lab: Logstash in production (persistent queue, DLQ, multiple pipelines)

What you will learn in this TP
  • Declare several pipelines
  • Enable the persistent queue and the DLQ
  • Trigger and read a rejection
  • Monitor Logstash

Introduction #

What you will learn in this section
  • Declare several pipelines
  • Enable the persistent queue and the DLQ
  • Trigger and read a rejection
  • Monitor Logstash

Context. Documents vanish between Logstash and Elasticsearch. You set up a persistent queue and a DLQ to lose nothing, and learn to find rejected events.

Prerequisites: Docker and Docker Compose, 4 GB of free RAM, jq  ·  Estimated time: 45 min

Hands-on #

Guided steps, with their solution.

  1. 1. Lab files

    Why? The "web" pipeline writes to the logs-web-lab data stream; the "dlq" pipeline reads its rejections.

  2. 2. A strict mapping

    Why? The status field is declared as an integer: a non-numeric status will be rejected by Elasticsearch, feeding the DLQ.

  3. 3. Send events

    Send three valid events and one whose status is not numeric.

  4. 4. Read the DLQ

    Why? The rejected document is not lost: the "dlq" pipeline shows it with the rejection reason.

  5. 5. Monitor and test the queue

    Check the pipeline statistics, stop Elasticsearch, send events, then restart it: they are delivered.

Difficulty level : ●●●○○ (3/5)

My progress

  • ⏱ Estimated time : ≈ 45 min

Sign in to track your progress and take notes. Sign in

💬 Questions about this lesson

No questions yet: be the first to ask for help or share your configuration.

Ask a question about this lesson →

Course Glossary

Logstash

An open-source, server-side data processing pipeline that ingests data from a multitude of sources simultaneously, transforms it, and then sends it to...

Recommended Articles

Logstash in production: persistent queues, DLQ and multiple pipelines

Make Logstash reliable in production: persistent queue, dead letter queue, multiple pipelines and...

Logstash: enrich, test, monitor and deploy on Kubernetes

Enrich with translate, geoip and elasticsearch, consume Kafka, test pipelines, monitor Logstash a...

Logstash best practices: pipelines, performance, reliability and monitoring

Logstash best practices: multiple pipelines, dissect rather than grok, conditionals, persistent q...

Logstash: role, pipeline concept and installation

Written version of the video lessons: what Logstash is for, how a pipeline works (inputs, filters...

Bindplane in production: high availability, security, Kubernetes and configuration as code

Operate Bindplane in production: active-active servers, PostgreSQL and event bus, TLS for OpAMP, ...

Elasticsearch ingestion: Bulk API, ingest pipelines, enrich and reindex

Ingest and transform data in Elasticsearch: Bulk API, ingest pipelines and processors (grok, diss...

Logstash: inputs and outputs

Written version of the video lessons: common inputs (beats, file, tcp/udp, http, kafka, jdbc) and...

Logstash: filters, grok and dissect

Written version of the video lessons: essential filters (mutate, date, json, kv, drop), the grok ...

Logstash: managing plugins and adopting Elastic Common Schema (ECS)

Written version of the video lessons: list, install, update and bundle Logstash plugins offline; ...

Support us

♥ SUPPORT US

Support RousselTM Learning

Courses, articles, labs and certificates stay free with no intrusive ads. A voluntary contribution, of any amount you choose, pays for hosting, lab environments and new content.

Contribute with PayPal Any amount · card or PayPal accountLearn more
QR code PayPal
Or scan this QR code with your phone

Thank you, every contribution counts!