【发布时间】:2016-11-09 02:15:31
【问题描述】:
我正在监视某些通常分叉
执行检查的表达式正在寻找大于 300 的进程:
{Template OS Linux:proc.num[].avg(5m)}>300
在我专门为同样继承“Template OS Linux”和“Template IPA Servers”的此类服务器创建的另一个模板中,覆盖价值的最佳方法是什么?
【问题讨论】:
标签: zabbix
我正在监视某些通常分叉
执行检查的表达式正在寻找大于 300 的进程:
{Template OS Linux:proc.num[].avg(5m)}>300
在我专门为同样继承“Template OS Linux”和“Template IPA Servers”的此类服务器创建的另一个模板中,覆盖价值的最佳方法是什么?
【问题讨论】:
标签: zabbix
可能是user macros。您将在原始模板中添加一个用户宏:
{$TRIGGER_THRESHOLD_PROCESSES_RUNNING}
你会像这样修改触发器表达式:
{Template OS Linux:proc.num[].avg(5m)}>{$TRIGGER_THRESHOLD_PROCESSES_RUNNING}
然后,您可以在较低级别的模板(甚至单个主机)上定义具有相同名称的用户宏,但具有不同的值。
用户宏名由你决定,只要符合语法规则即可。
【讨论】:
如果您监控的所有系统上的进程始终超过 300 个,您也可以只编辑原始模板。例如,对于我的特定用例来说,450 是一个更好的值,因为我总是有至少 160 多个进程括在括号中,这些进程不能反映我实际尝试监控的内容 - 用户空间。您可能希望使用比我的示例更适合您的环境的数字。
我通过转到原始模板来更改此值,您可以从配置 --> 模板 --> 模板 OS Linux --> 触发器 --> {HOST.NAME} 上的进程太多,然后更改根据您的特定需求,从 300 到更合理的值。
需要注意的一点是,并非环境中的所有服务器都是相同的,如果您的环境有多种不同类型的服务器,那么用户宏解决方案将要好得多。
【讨论】: