This page provides a comprehensive reference for all Docker container metrics collected by the OpenTelemetry dockerstatsreceiver. Use this reference to understand what data is available, create custom queries, and set up effective alerts for your containerized applications.
Complete metrics reference
The OpenTelemetry Collector Contrib's dockerstatsreceiver collects the following metrics from the Docker Stats API:
Metric | Description | Type |
|---|---|---|
| Number of bios/requests merged into requests belonging to this cgroup and its descendant cgroups | Sum |
| Number of requests queued up for this cgroup and its descendant cgroups | Sum |
| Number of bytes transferred to/from the disk by the group and descendant groups | Sum |
| Total amount of time in nanoseconds between request dispatch and request completion for the IOs done by this cgroup and descendant cgroups | Sum |
| Number of IOs (bio) issued to the disk by the group and descendant groups | Sum |
| Disk time allocated to cgroup (and descendant cgroups) per device in milliseconds | Sum |
| Total amount of time the IOs for this cgroup (and descendant cgroups) spent waiting in the scheduler queues for service | Sum |
| CPU kernel mode usage | Sum |
| Per-core CPU usage by the container (disabled by default) | Sum |
| System CPU usage | Sum |
| Total CPU time consumed by the container | Sum |
| CPU user mode usage | Sum |
| Percent of CPU used by the container (deprecated, use container.cpu.utilization instead) | Gauge |
| Percent of CPU used by the container | Gauge |
| Number of periods with throttling active | Sum |
| Number of periods when the container hit its throttling limit | Sum |
| Aggregate time the container was throttled | Sum |
| CPU limit set for the container | Gauge |
| Number of cores available to the container | Gauge |
| CPU shares allocated to the container | Gauge |
| Number of CPU cores used by the container | Sum |
| Memory usage limit | Sum |
| Maximum memory usage | Sum |
| Memory usage of the container. This excludes the cache | Sum |
| Percentage of memory used | Gauge |
| Amount of memory used in anonymous mappings such as brk(), sbrk(), and mmap(MAP_ANONYMOUS) that are actively used | Sum |
| Amount of cache memory used by files that are actively used | Sum |
| Amount of memory used in anonymous mappings (pages not backed by files) | Sum |
| The amount of memory used by the processes of this control group that can be associated with a block on a block device | Sum |
| Bytes that are waiting to get written back to the disk, from this cgroup | Sum |
| Number of times memory limit was hit | Sum |
| Amount of memory used by files (file cache) | Sum |
| The max amount of physical memory that the cgroup can use | Sum |
| The max amount of RAM + swap that the cgroup can use | Sum |
| Amount of memory used in anonymous mappings such as brk(), sbrk(), and mmap(MAP_ANONYMOUS) that are not actively used | Sum |
| Amount of cache memory used by files that are not actively used | Sum |
| Indicates the amount of memory mapped by the processes in the control group | Sum |
| Indicate the number of times that a process of the cgroup triggered a page fault | Sum |
| Indicate the number of times that a process of the cgroup triggered a major fault | Sum |
| Number of pages read from disk by the cgroup | Sum |
| Number of pages written to disk by the cgroup | Sum |
| The amount of memory that doesn't correspond to anything on disk: stacks, heaps, and anonymous memory maps | Sum |
| Number of bytes of anonymous transparent hugepages in this cgroup | Sum |
| The amount of memory that cannot be reclaimed | Sum |
| Number of bytes of file/anon cache that are queued for syncing to disk in this cgroup | Sum |
| Bytes received by the container via its network interface | Sum |
| Number of received packets dropped by the container | Sum |
| Received errors by the container | Sum |
| Packets received by the container via its network interface | Sum |
| Bytes sent by the container via its network interface | Sum |
| Number of sent packets dropped by the container | Sum |
| Transmission errors by the container | Sum |
| Packets sent by the container via its network interface | Sum |
| Number of PIDs in the container's cgroup | Sum |
| Maximum number of PIDs in the container's cgroup | Sum |
| Number of times the container has been restarted | Sum |
| Time elapsed since container started | Gauge |
Attribute | Description | Values |
|---|---|---|
| Custom attribute for collector identification (if configured in your collector) | String |
| The hostname of the container | String |
| The full container ID | String (64-character hex) |
| Name of the container image | String |
| Container name | String |
| Container runtime |
|
| Deployment environment identifier (if configured in your collector) | String |
| Description of the metric | String |
| Device major number (for block I/O metrics) | Integer |
| Device minor number (for block I/O metrics) | Integer |
| New Relic entity GUID for the container | String |
| New Relic entity name (typically the container name) | String |
| New Relic entity type |
|
| Instrumentation provider identifier |
|
| Network interface name (for network metrics) | String |
| Source of the metric in New Relic |
|
| New Relic entity type for entity correlation |
|
| Type of block I/O operation |
|
| OpenTelemetry library/receiver name |
|
| OpenTelemetry library version | String (e.g., |
| Service name configured in the collector | String |
| Telemetry SDK identifier |
|
| Unit of measurement for the metric | String (e.g., |
For more details, see the Docker Stats receiver documentation
Next steps
Now that you understand Docker metrics:
- Set up monitoring - Configure Docker monitoring if you haven't already
- Create dashboards: Build custom visualizations using the metrics in this reference