Zabbix is a free, open-source monitoring tool for diverse IT components, such as networks, servers, VM and cloud services. Zabbix provides metrics, such as network utilization, CPU load and disk usage consumption. The software monitors operations on Linux, HP-UX, Mac OS X, Solaris and Windows via agents installed on machines with a centralised server. It includes enterprise class features that can scale to support monitoring on thousands of servers.
Zabbix is installed as an 'agent' on machines to be monitored, with a central server that performs the monitoring. User defined 'templates' determine what attributes about a given client/agent to monitor; in this way, you can use Zabbix to monitor an enormous variety of activities.
Zabbix server is written in C on the back end, and PHP on the front end, and requires a relational database for the back end. Zabbix agent 1 is written in C and Zabbix agent 2 is written in Golang.