Zabbix
如何使用 zabbix 檢查每個 CPU 的程序數?
預設情況下,zabbix 能夠檢查機器上的程序總數,如果超過 300 則觸發和錯誤。
顯然,這不適用於更大的機器。我確實有一台帶有 32 個程式碼的伺服器,顯然 300 個程序對於這台機器來說毫無意義。
如果每個 CPU 的程序數大於 300,我確實想更改此規則以觸發警告。
此觸發器位於 linux 模板中,名為“{HOST.NAME} 上的程序太多”,預設值為
"{Template OS Linux:proc.num[].avg(5m)}>300"
我試圖寫類似的東西,
{Template OS Linux:proc.num[].avg(5m)}/{Template OS Linux:system.cpu.num}>300
但似乎 zabbix (2.2) 不喜歡這個觸發器表達式。Incorrect trigger expression. Check expression part starting from "/{Template OS Linux:system.cpu.num}>300".
重新配置此檢查的正確方法是什麼?
觸發器表達式中項目引用的正確語法是:
{host:item.func()}
在您的特定情況下,該
func()
部分在 之後失去system.cpu.num
,因此正確的表達式為:{Template OS Linux:proc.num[].avg(5m)}/{Template OS Linux:system.cpu.num.last()}>300
請注意,如果您不習慣手動編輯觸發器表達式,您可以使用表達式右側的“添加”按鈕,它會彈出一個簡單的嚮導: