graphite-metrics: standalone graphite collectors for various stuff not (or poorly) handled by other monitoring daemons.
ore of the project is a simple daemon (harvestd), which collects metric values and sends them to graphite once per interval.
Consists of separate components ("collectors") for processing of:
* /proc/slabinfo for useful-to-watch values, not everything (configurable).
* /proc/vmstat and /proc/meminfo in a consistent way.
* /proc/stat for irq, softirq, forks.
* /proc/buddyinfo and /proc/pagetypeinfo (memory fragmentation).
* /proc/interrupts and /proc/softirqs.
* Cron log to produce start/finish events and duration for each job into a separate metrics, adapts jobs to metric names with regexes.
* Per-system-service accounting using [1]systemd and it's cgroups.
* [2]sysstat data from sadc logs (use something like sadc -F -L -S DISK -S XDISK -S POWER 60 to have more stuff logged there) via sadf binary and it's json export (sadf -j, supported since sysstat-10.0.something, iirc).
* iptables rule "hits" packet and byte counters, taken from ip{,6}tables-save, mapped via separate "table chain_name rule_no metric_name" file, which should be generated along with firewall rules (I use [3]this script to do that).
Additional metric collectors can be added via setuptools graphite_metrics.collectors entry point. Look at shipped collectors for API examples.
Requirements:
- Python
Comments not found