| pfctl_exporter.sh | ||
| pfctl_maintenance.sh | ||
| README.md | ||
Script to produce Prometheus-style .prom files from pfctl(8) output.
By default places output in /var/tmp/node_exporter, for the benefit of node_exporter.
Currently only collects data from running jails (not the host itself).
Assumptions
The script first checks for the existence of /dev/pf.
Jails with a /dev/pf have paths either of the form
/x/y
or
/x/y/root
Both cases are checked, and if /sbin/pfctl and /libexec/ld-elf.so.1 are found, they are used as-is.
If not, the former pattern is expected to be the parent of a wrapped jail, with no libraries or binaries in the regular paths.
The inner jail is expected to have a path prefix of /root relative to the parent; In such cases, the script sets LD_LIBRARY_PATH
to /root/lib and invokes /root/libexec/ld-elf.so.1 to execute /root/sbin/pfctl.
Work to be done
- Be more flexible about jail path layouts
- Support collecting pf stats for the host
- Collect per-rule statistics
- Collect per-table statistics