每個公司都有自己的程序,自己的進程名與監聽的端口,對於nagios來說,這些都經常需要自己去寫插件,但是zabbix不需要,它自己就有監控進程與端口的key。
1、端口監控
監控端口使用如下key:
key:net.tcp.listen[port]
Checks if this port is in LISTEN state. 0 - it is not, 1 - it is inlisten state.
翻譯:監聽端口狀態,返回結果為1,則運行;返回結果為0,則沒有運行。
如tomcat8080
Items->create item,如下圖:
![zabbix監控系列之監控項(6、端口和進程監控)](http://p2.ttnews.xyz/loading.gif)
Trigger->Create trigger,如下圖:
![zabbix監控系列之監控項(6、端口和進程監控)](http://p2.ttnews.xyz/loading.gif)
注意報警級別和報警狀態!
2、進程監控
如果一個進程沒有監聽端口,則可以使用如下key。
key:proc.num[<name>,<user>,<state>,<cmdline>]/<cmdline>/<state>/<user>/<name>
Number of processes. <name> and <user> same as inproc.mem item. <state> all (default), run, sleep, zomb. <cmdline>filter by command line (supports regex)./<cmdline>/<state>/<user>/<name>
name:是進程名
user:運行該進程的用戶
state:進程狀態包括all (default),run,sleep,zomb
cmdline:該項內容是模糊匹配,即用ps aux看到的最後一列中包含該字段則匹配上。
注:name匹配可能不是很準,一般根據cmdline來匹配進程
例如監控cond,proc.num[,root,all,crond]
Items->Create item,如下圖
Trigger-Create triggers,如下圖:
注意報警級別和報警狀態!
閱讀更多 飛哥linux 的文章