Docker OpenTelemetry Input Package
| Version | 0.1.0 (View all) |
| Subscription level What's this? | Basic |
| Developed by What's this? | Elastic |
| Minimum Kibana version(s) | 9.2.0 |
To use beta integrations, go to theIntegrations page in Kibana, scroll down, and toggle on theDisplay beta integrations option.
The Docker OpenTelemetry Input Package for Elastic enables collection of telemetry data from Docker containers through OpenTelemetry protocols using thedockerstats receiver. It provides comprehensive metrics about container resource usage including CPU, memory, network, and block I/O statistics.
This package receives telemetry data from the Docker daemon by configuring the Docker endpoint in the Input Package, which then gets applied to thedocker_stats receiver present in the EDOT collector, which then forwards the data to Elastic Agent. The Elastic Agent processes and enriches the data before sending it to Elasticsearch for indexing and analysis. Once the data arrives into Elasticsearch, its correspondingDocker OpenTelemetry Assets Package gets auto installed and the dashboards light up.
- Access to the Docker daemon socket (default:
unix:///var/run/docker.sockon Linux andnpipe:////./pipe/docker_engineon Windows) - Docker API version greater than or equal to the one defined inDocker Stats Receiver Repo. Also, the API version must be supported by the Docker Engine being monitored.
This integration uses the OpenTelemetry dockerstats receiver which is currently inalpha stability. The configuration and metrics may change between versions.
For step-by-step instructions on how to set up an integration, see theGetting started guide.
The following configuration options are available:
The endpoint of the Docker daemon. If not specified, the receiver usesunix:///var/run/docker.sock on Linux.For remote Docker hosts, you can use TCP endpoints liketcp://docker-host:2375.
A list of container image names to exclude from metrics collection. Supports wildcards.Example:
- "nginx:*"- "redis:latest"The Docker API version to use. Default is"1.44".For Docker Engine v29, API version"1.44" or higher must be used.
Defines how long this receiver waits before starting. Default is1s.
Map container labels to metric resource attributes. This allows you to add custom dimensions to your metrics based on container labels.Example:
my.container.label: my_metric_labelapp.version: versionMap container environment variables to metric resource attributes.Example:
MY_ENV_VAR: my_metric_labelAPP_VERSION: versionFor a complete list of all available metrics, including their types, descriptions, and default enabled status, refer to theDocker Stats Receiver documentation in the upstream OpenTelemetry Collector repository.
Themetrics configuration allows you to enable optional metrics or disable default metrics.
For example, to enable per-CPU usage metrics (which are disabled by default):
metrics: container.cpu.usage.percpu: enabled: true- OpenTelemetry dockerstats receiver documentation
- Docker Stats API documentation
- Elastic Observability documentation
Changelog
| Version | Details | Minimum Kibana version |
|---|---|---|
| 0.1.0 | Enhancement (View pull request) Initial technical preview of Docker Stats OpenTelemetry input package | 9.2.0 |