Zabbix is a great tool for monitoring but visualization and graphing options are quite poor. For example, we can place many items on the one graph, but we can't scale them relative to each other. I know that we can use second Y axis, but this is not always helps.
Graphite is the tool that can help us! Graphite is a highly scalable real-time graphing system. Official site - http://graphite.wikidot.com/
It can:
- store numeric time-series data
- render graphs of this data on demand
It would be great to use zabbix and graphite together!
Is it possible to add option to zabbix-agent to send data in plaintext or pickle (http://stackoverflow.com/questions/1296162/how-can-i-read-a-python-pickle-database-file-from-c) format to graphite server? I'm not the C programmer, so I can't do it myself.
We store historycal data for some items in graphite and only save last recent data in zabbix (for the triggers). Now we feed our graphite by calling a script which uses zabbix API. Every 30 seconds it scans all hosts, finds items with prefix "-graphite" and sands the lastvalue and lastclock to graphite. This script loads our zabbix-server and database very well. So it would be better to send data directly from zabbix-agent (or zabbix-proxy).
Is it difficult to implement?