По умолчанию zabbix может проверять общее количество процессов на машине, а также триггеров и ошибок, если они превышают 300.
Ясно, что это не подходит для больших машин. У меня есть сервер с 32 кодами, и очевидно, что для этой машины 300 процессов ничего не значат.
Я хочу изменить это правило, чтобы вызывало предупреждение, если количество процессов на процессор превышает 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
Обратите внимание, что если вам неудобно редактировать выражения триггеров вручную, вы можете использовать кнопку «Добавить» справа от выражения, которая вызывает простой мастер: