ManfredHerrmann / zabbix-sensors

Zabbix template & scripts to discover & monitor Linux sensors

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

zabbix-sensors

Zabbix template & scripts to discover & monitor Linux sensors

Features

  • Low-level discovery of sensors: temperature (with thresholds), fans, voltage and power
  • Triggers on temperature, fans and voltage (detect stopped fan, adjustable)

Usage

  • Put sensors.conf in /etc/zabbix/zabbix_agentd.d folder
  • Put sensors.py in /etc/zabbix/scripts folder (or in any other, but then you'll need to adjust sensors.conf)
  • Import & link template

Requirements

  • Python 3
  • lm-sensors installed

Macros

  • {$SENSORS_CRIT}: override discovered temperature crit thresholds
  • {$SENSORS_HIGH}: override discovered temperature high thresholds
  • {$SENSORS_FAN_STOP_TRIG}: set to 1 to enable fan stop trigger

Notes

  • All the needed data can be obtained directly from SysFS, but sensors binary does a lot of work under the hoods to obtain the bus type etc, so it's not easy to get device names like coretemp-isa-0000 from SysFS manually and they're required by Zabbix's sensor function
  • The actual arguments to the discovery script are not used, but are there rather to fullfill Zabbix's unique key constraints
  • Power moght not work for whatever reason

Update 2020-12

  • Script was rewritten from scratch to make use of new sensors argument -j to export in JSON format. If it's not supported then it'll fall back to parse raw text output of -u - this will stick for some time for backwards compatibility
  • Move to Python3

About

Zabbix template & scripts to discover & monitor Linux sensors


Languages

Language:Python 100.0%