有時候我們想讓被監控端執行一個zabbix沒有預定義的檢測,zabbix的用戶自定義參數功能提供了這個方法.我們可以在客戶端配置文件zabbix_angentd.conf里面配置UserParameter.
語法如下:
UserParameter=key,command
用戶自定義參數包含一個key和一個命令,key必須整個系統唯一,配置好之后,重啟客戶端.
然后配置監控項目item,
配置→主機→監控項→創建監控項→在鍵值填入自定義的key
用戶自定義參數里指定的腳本由zabbix agent來執行,最大可以返回512KB的數據.
舉例Linux:
/etc/zabbix/zabbix_agentd.d/customize.conf
UserParameter=memory.usage.total,/bin/cat /proc/meminfo |awk '/MemTotal:/ {print $2}'
UserParameter=memory.usage.free,/bin/cat /proc/meminfo |awk '/MemFree:/ {print $2}'
memory優化為一個key
UserParameter=memory.usage[*],/bin/cat /proc/meminfo |awk '/^$1/ {print $$2}'
$1 是引用 usage[*] 中的參數
$$2 是 / bin/cat /proc/meminfo 這個命令輸出中的第二列,因 $2 是 usage[*] 中的參數,這個參數,可以有多個,以逗號分隔
zabbix server端參數獲取:
zabbix_get -s 10.10.50.20 -k memory.usage[MemTotal]
zabbix_get -s 10.10.50.20 -k memory.usage[MemFree]
→