UserParam Monitoring (UPM) se dá popsat jako možnost monitorovat vlastní čítače nebo čítače, které nejsou explicitně operačním systémem poskytovány. Může se jednat např. o sledování obsahu určitého souboru, který je generován nějakým příkazem, jenž se v určitých interval spouští plánovačem úloh v operačním systému. Za mě používám UPM pro monitoring teploty USB teploměru, který má tu zvláštnost, že ne vždy odpoví (anebo neodpoví do určité doby), dále ke sledování některých čítačů v Linuxu, které pro jednoduchou ilustraci uvedu, viz níže.
Zadání – zjistit počet vláken (threads) všech procesů
Tento čítač není standardně zabbix agentem poskytován (alespoň pro verzi 1.8.6), tudíž jej využiji k ilustraci. Na testovaném počítači vytvoříme soubor s názvem „zabbix-get-threads“ a označíme jej jako spustitelný (chmod +x zabbix-get-threads). Soubor umístíme do složky, kde míváme spustitelné skripty, v mém případě /usr/local/bin.
Tělo souboru:
#!/bin/sh
Ps –eL | wc –l
Nyní je třeba zabbix-agentu oznámit, kde má hledat tento spustitelný skript. V mém případě upravím konfigurační soubor /etc/zabbix/zabbix-agentd.conf tak, že přidám řádek, který obsahuje jméno volaného skriptu a cestu, kde jej najde.
Tedy,
UserParameter=os.threads,/usr/local/bin/zabbix-get-threads
a soubor uložím.
Nyní se již přesunu k frontend aplikaci, kde upravím šablonu pro OS Linux přidáním nového čítače
Description: Number of threads
Type: Zabbix agent
Key: os.threads
Type of inf.: Numeric (unsigned)
Data type: Decimal
Units:
Update int.: 60
Store value: As is
Show value: As is
Toť vše.