-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Description
Feature request: A /proc/zoneinfo collector for Linux.
/proc/zoneinfo is a Linux kernel proc file that contains lots of virtual memory subsystem metrics. Its fields are useful for per NUMA node and/or per memory zone analyses and graphs.
I wrote an initial implementation of a zoneinfo collector in May 2017 while working on Grafana dashboards for the Linux virtual memory subsystem (NUMA stats, transparent huge pages, page migrations, memory usage, etc.) that feature per NUMA node and per memory zone panels.
However, I hesitate to create a PR for several reasons:
- I assume this implementation would not be accepted "as is" because it is not implemented via https://github.com/prometheus/procfs. Unfortunately, I don't have the time to work on such a port at the moment.
- The implementation is functional but incomplete: It does not export all available fields but only those I needed for my dashboards. See collector/fixtures/e2e-output.txt for example output of the collector (prefix
node_zoneinfo_). - The implementation was only tested/used on RHEL/CentOS 6 and 7 kernels. The
/proc/zoneinfofile format has changed over time. Well, it now also parses a new section that appeared in Fedora 25 kernels. YMMV.
Ahead of PromCon and despite of all of these shortcomings I decided to rebase my implementation against today's master branch and pushed it "as is" to GitHub:
https://github.com/knweiss/node_exporter/tree/zoneinfo_collector
Maybe someone finds the code interesting.
Feel free to close this issue if you think it is not useful.