我需要通過zabbix監視特殊的服務狀態。 當我在服務器上Zabbix用戶定義參數
[email protected] ~ $ /etc/init.d/kannelgate zabbix
運行它打印在控制檯中的號碼 - 1或0(服務上/下)
我應該在ZABBIX代理寫入通過代理來獲得這個輸出並將其發送到zabbix服務器?
我需要通過zabbix監視特殊的服務狀態。 當我在服務器上Zabbix用戶定義參數
[email protected] ~ $ /etc/init.d/kannelgate zabbix
運行它打印在控制檯中的號碼 - 1或0(服務上/下)
我應該在ZABBIX代理寫入通過代理來獲得這個輸出並將其發送到zabbix服務器?
您可以通過編寫以下行zabbix_agentd.conf這樣定義一個用戶參數:
UserParameter=kannelgate.state,/etc/init.d/kannelgate zabbix
請參閱Zabbix documentation有關定義用戶參數的詳細信息。
嘗試像
UserParameter=kannelgate.state[*],/etc/init.d/kannelgate $1
所以,你可以使用各種服務的一個參數。
您的項目鍵兩個可以關注一下:
kannelgate.state["zabbix-agent"]
和
kannelgate.state["zabbix-server"]
編輯: 感謝Selivanov鋪路,爲提及安全問題。但是,看看到的zabbix文檔: Zabbix Userparameter
報價從該部分:
以下字符不允許:?! \'「`* [] {}〜$ &;( )<> |!#@
你應該真正關心用戶參數,如果你啓用了 「UnsafeUserParameter」 上的zabbix代理方
在Zabbix 3.x文檔中,結構發生了一些變化,所以您必須在Zabbix Agent配置中進行搜索。
當使用帶參數的UserParameter時,您應該仔細檢查腳本中給定的參數。否則,對監控服務器的妥協可能會導致受監控主機的危害。 –
是的,我已經知道了 - 默認情況下zabbix代理讀取stdout來發送數據,所以不需要特殊的數據重定向。 –