Post by Dash0

16,553 followers

Collecting Docker container logs with OpenTelemetry isn't hard, but the obvious approach has a catch. Most teams point the filelog receiver at the Docker log directory, but it comes with real friction: filesystem permissions, loss of metadata, and managed hosts that don't expose the host filesystem at all. Docker's built-in fluentd logging driver is a much better fit. It sends logs directly to the OTel Collector the moment a container writes them, over a socket, with no file access required. In this guide, we walk through how to set up a working end-to-end pipeline: 1. Configuring fluentd as the logging driver for Docker containers 2. Setting up the fluent_forward receiver to ingest logs over a socket 3. Tuning async delivery: buffer limits, retry behavior, and what breaks silently 4. Shaping raw records into fully OTel-compliant events If you're running Docker containers in production and want a log pipeline that doesn't break when containers exit, this one's for you. Link to the full guide in the comments! 👇

Post content