Każdy układ czujnika dostaje swój własny katalog w drzewie katalogów systemowych /sys/devices. Żeby znaleźć układy czujników, najlepiej jest sprawdzić linki symboliczne urządzeń z /sys/class/hwmon/hwmon*, gdzie * to liczba całkowita (0,1,2,...).
Odczyty czujników umieszczane są albo w katalogu /sys/class/hwmon/hwmon*/ dla urządzeń wirtualnych, albo w katalogu /sys/class/hwmon/hwmon*/device dla urządzeń rzeczywistych. Plik o nazwie name, znajdujący się w katalogach hwmon* lub hwmon*/device zawiera nazwę układu, odpowiadającą nazwie sterownika jądra używanego przez układ czujnika.
W każdym pliku znajduje się tylko jedna wartość odczytu czujnika. Podstawowy schemat nazywania plików zawierających odczyty czujnika wewnątrz dowolnego z powyższych katalogów jest następujący: <typ><numer>_<pozycja>, gdzie
Informacje o dostępnych czujnikach dla hosta można uzyskać przy użyciu narzędzi sensor-detect i sensors (pakiet lm-sensors: http://lm-sensors.org/). Sensors-detect pomaga określić, które moduły są niezbędne dla dostępnych czujników. Po załadowaniu modułów, do odczytu wartości z wszystkich układów czujników można użyć programu sensors. Nazewnictwo odczytów czujników używane przez ten program może być inne niż ogólny schemat (<typ><numer>_<pozycja>):
Takie nazewnictwo pozwala użytkownikowi na określenie typu używanego urządzenia. Jeżeli zarówno nie istnieje plik <typ><numer>_label ani nie ma etykiety w pliku konfiguracji, typ urządzenia może być określony na podstawie atrybutu name (hwmon*/device/name). Aktualne nazwy czujników akceptowane przez zabbix_agent, można uzyskać uruchamiając program sensors z parametrem -u (sensors -u).
W programie sensor dostępne czujniki są podzielone według typu szyny (ISA adapter, PCI adapter, SPI adapter, Virtual device, ACPI interface, HID adapter).
(Odczyty czujników są pobierane z katalogu /proc/sys/dev/sensors)
Przykładowy klucz: sensor[w83781d-i2c-0-2d,temp1]
Do Zabbix 1.8.4, używany był format sensor[temp1].
(Odczyty czujników są pobierane z katalogu /sys/class/hwmon)
Przykładowy klucz:
sensor[k8temp-pci-00c3,temp, max] lub sensor[0000:00:18.3,temp1]
sensor[smsc47b397-isa-0880,in, avg] lub sensor[smsc47b397.2176,in1]
Etykiety czujników wyświetlane poleceniem sensors nie zawsze mogą być użyte bezpośrednio, ze względu na to, że nazewnictwo etykiet może się różnić w zależności od dostawcy układu czujnika. Na przykład, wyjście sensors może zawierać następujące linie:
$ sensors
in0: +2.24 V (min = +0.00 V, max = +3.32 V)
Vcore: +1.15 V (min = +0.00 V, max = +2.99 V)
+3.3V: +3.30 V (min = +2.97 V, max = +3.63 V)
+12V: +13.00 V (min = +0.00 V, max = +15.94 V)
M/B Temp: +30.0°C (low = -127.0°C, high = +127.0°C)
Z powyższego, tylko jednej etykiety można użyć bezpośrednio:
Próba użycia innych etykiet (np. Vcore lub +12V) nie powiedzie się.
Żeby odszukać prawdziwą nazwę czujnika, której Zabbix mógłby użyć do odczytu jego wartości, należy uruchomić sensors -u. W wyniku można zaobserwować np.:
$ sensors -u
...
Vcore:
in1_input: 1.15
in1_min: 0.00
in1_max: 2.99
in1_alarm: 0.00
...
+12V:
in4_input: 13.00
in4_min: 0.00
in4_max: 15.94
in4_alarm: 0.00
...
Zatem Vcore powinno być odczytywane przez in1, a +12V przez in4.1
Oprócz Napięcia (in) Zabbix może odczytywać również natężenie (curr), temperaturę (temp) i prędkość wiatraczków (fan).
Zgodnie ze specyfikacją są to napięcia na nóżkach układu i ogólnie rzecz biorąc można je regulować.↩︎