The Podman Metrics input plugin allows you to collect metrics from podman containers, so they can be exposed later as, for example, Prometheus counters and gauges.
The podman metrics input plugin allows Calyptia Fluent Bit to gather podman container metrics. The entire procedure of collecting container list and gathering data associated with them bases on filesystem data.This plugin does not execute podman commands or send http requests to podman api - instead it reads podman configuration file and metrics exposed by /sys and /proc filesystems.
This plugin supports and automatically detects both cgroups v1 and v2.
Example Curl message for one running container
$> curl0.0.0.0:2021/metrics# HELP fluentbit_input_bytes_total Number of input bytes.# TYPE fluentbit_input_bytes_total counterfluentbit_input_bytes_total{name="podman_metrics.0"}0# HELP fluentbit_input_records_total Number of input records.# TYPE fluentbit_input_records_total counterfluentbit_input_records_total{name="podman_metrics.0"}0# HELP container_memory_usage_bytes Container memory usage in bytes# TYPE container_memory_usage_bytes countercontainer_memory_usage_bytes{id="858319c39f3f52cd44aa91a520aafb84ded3bc4b4a1e04130ccf87043149bbbf",name="blissful_wescoff",image="docker.io/library/ubuntu:latest"} 884736
# HELP container_cpu_user_seconds_total Container cpu usage in seconds in user mode# TYPE container_cpu_user_seconds_total countercontainer_cpu_user_seconds_total{id="858319c39f3f52cd44aa91a520aafb84ded3bc4b4a1e04130ccf87043149bbbf",name="blissful_wescoff",image="docker.io/library/ubuntu:latest"} 0
# HELP container_cpu_usage_seconds_total Container cpu usage in seconds# TYPE container_cpu_usage_seconds_total countercontainer_cpu_usage_seconds_total{id="858319c39f3f52cd44aa91a520aafb84ded3bc4b4a1e04130ccf87043149bbbf",name="blissful_wescoff",image="docker.io/library/ubuntu:latest"} 0
# HELP container_network_receive_bytes_total Network received bytes# TYPE container_network_receive_bytes_total countercontainer_network_receive_bytes_total{id="858319c39f3f52cd44aa91a520aafb84ded3bc4b4a1e04130ccf87043149bbbf",name="blissful_wescoff",image="docker.io/library/ubuntu:latest",interface="eth0"} 8515
# HELP container_network_receive_errors_total Network received errors# TYPE container_network_receive_errors_total countercontainer_network_receive_errors_total{id="858319c39f3f52cd44aa91a520aafb84ded3bc4b4a1e04130ccf87043149bbbf",name="blissful_wescoff",image="docker.io/library/ubuntu:latest",interface="eth0"} 0
# HELP container_network_transmit_bytes_total Network transmited bytes# TYPE container_network_transmit_bytes_total countercontainer_network_transmit_bytes_total{id="858319c39f3f52cd44aa91a520aafb84ded3bc4b4a1e04130ccf87043149bbbf",name="blissful_wescoff",image="docker.io/library/ubuntu:latest",interface="eth0"} 962
# HELP container_network_transmit_errors_total Network transmitedd errors# TYPE container_network_transmit_errors_total countercontainer_network_transmit_errors_total{id="858319c39f3f52cd44aa91a520aafb84ded3bc4b4a1e04130ccf87043149bbbf",name="blissful_wescoff",image="docker.io/library/ubuntu:latest",interface="eth0"} 0
# HELP fluentbit_input_storage_overlimit Is the input memory usage overlimit ?.# TYPE fluentbit_input_storage_overlimit gaugefluentbit_input_storage_overlimit{name="podman_metrics.0"}0# HELP fluentbit_input_storage_memory_bytes Memory bytes used by the chunks.# TYPE fluentbit_input_storage_memory_bytes gaugefluentbit_input_storage_memory_bytes{name="podman_metrics.0"}0# HELP fluentbit_input_storage_chunks Total number of chunks.# TYPE fluentbit_input_storage_chunks gaugefluentbit_input_storage_chunks{name="podman_metrics.0"}0# HELP fluentbit_input_storage_chunks_up Total number of chunks up in memory.# TYPE fluentbit_input_storage_chunks_up gaugefluentbit_input_storage_chunks_up{name="podman_metrics.0"}0# HELP fluentbit_input_storage_chunks_down Total number of chunks down.# TYPE fluentbit_input_storage_chunks_down gaugefluentbit_input_storage_chunks_down{name="podman_metrics.0"}0# HELP fluentbit_input_storage_chunks_busy Total number of chunks in a busy state.# TYPE fluentbit_input_storage_chunks_busy gaugefluentbit_input_storage_chunks_busy{name="podman_metrics.0"}0# HELP fluentbit_input_storage_chunks_busy_bytes Total number of bytes used by chunks in a busy state.# TYPE fluentbit_input_storage_chunks_busy_bytes gaugefluentbit_input_storage_chunks_busy_bytes{name="podman_metrics.0"}0