Prometheus exporter for Cgroup v2 metrics, written in Go with pluggable metric collectors similar to node_exporter.
The cgroupv2_exporter listens on HTTP port 9100 by default. See the --help output for more options.
Collectors are enabled by providing a --collector.<name> flag.
Collectors that are enabled by default can be disabled by providing a --no-collector.<name> flag.
To enable only some specific collector(s), use --collector.disable-defaults --collector.<name> ....
| Name | Description |
|---|---|
| memory.current | Current memory usage in bytes |
| memory.swap.current | Current swap usage in bytes |
| memory.high | Memory usage high threshold limit in bytes |
| memory.pressure | Memory pressure metrics (some, full, total, avg10, avg60, avg300) |
| Name | Description |
|---|---|
| cpu.pressure | CPU pressure metrics (some, full, total, avg10, avg60, avg300) |
| cpu.stat | CPU statistics (usage_usec, user_usec, system_usec, nr_periods, nr_throttled, throttled_usec) |
| cpuset.cpus | Number of CPUs in the cpuset |
| cpuset.cpus.effective | Number of effective CPUs in the cpuset |
| cpuset.mems | Number of memory nodes in the cpuset |
| cpuset.mems.effective | Number of effective memory nodes in the cpuset |
| Name | Description |
|---|---|
| io.pressure | I/O pressure metrics (some, full, total, avg10, avg60, avg300) |
| io.stat | I/O statistics per device (rbytes, wbytes, rios, wios, dbytes, dios) |
| Name | Description |
|---|---|
| memory.stat | Detailed memory statistics (anon, file, kernel_stack, slab, etc.) |
The code structure of cgroupv2_exporter is taken from node_exporter and hence adding more collectors is also similar (see collector package). The parsers package provides parsers which can be used for converting for most of the cgroup files into p8s metrics.