Zabbix Documentation 5.0

Sidebar

1 条件

概述

此功能定义了只有当事件与定义的条件匹配时才执行动作。条件在配置 动作 时进行设置。

条件匹配区分大小写。

触发器动作

可以为基于触发器的动作设置以下条件:

条件类型 支持的 作符 描述
Application 等于  指包含  不含 应用集或要排除的应用集。
等于** - 事件属于链接到指定应用集的监控项的触发器。
包含** - 事件属于链接到包含该字符串的应用集的监控项的触发器。
不包含 -事件属于链接到不包含该字符串的应用集的监控项的触发器。
Host group 等于  指不等于 ** 主机组或要排除的主机组。
于** - 属于此主机组的事件。
不等于 - 不属于此主机组的事件。
指定父主机组也隐含选择了所有嵌套的主机组。要仅指定父组,必须使用 不等于 运算符另外设置所有嵌套组。
Template 等于  指不等于 ** 模板或要排除的模板。
于** - 属于从此模板继承的触发器的事件
不等于 - 不属于从此模板继承的触发器的事件。
Host 等于  指不等于 ** 主机或要排除的主机
于** - 属于此主机的事件.
不等于 - 不属于此主机的事件。
Tag name 等于  指不等于  **包含  不含 事件标签或要排除的事件标签。
于** - 有该标签的事件
不等于** - 没有该标签的事件
包含** -标签中包含此字符串的事件
不含 - 标签中不包含此字符串的事件
Tag value 等于  指不等于  **包含  不含 事件标签和值组合或要排除的标签和值组合
于** - 有此标签和值的事件
不等于** -没有此标签和值的事件
包含** - 标签和值中包含该字符串的事件
不含 - 标签和值中不包含该字符串的事件
Trigger 等于  指不等于 ** 触发器或要排除的触发器。
于** - 由该触发器生成的事件
%%不等于 %% - 除此触发器以外,由任何其他触发器生成的事件。
Trigger name 包含  在不含 * 发器名称中指定一个字符串或要排除的字符串。
包含** - 事件由触发器生成,在名称中包含此字符串。
不含 - 触发器名称中不包含该字符串。
注意: 输入的值将与所有宏展开后的触发器名称进行比较。
Trigger severity 等于  指不等于  大于等于  不小于等于 **大 触发严重性。
于** - 等于触发严重性
于** - 不等于触发严重性
等于** - 大于或等于触发严重性
小于等于 - 小于或等于触发严重性
Time period
非在 *
定时间段或要排除的时间段。
in** - 事件时间在该时间段内。
not in - 事件时间不在该时间段内。
有关格式的说明请参见 时间段规范 页面。
从Zabbix 3.4.0开始,支持 用户宏
Problem is suppressed 不是  指是 问题是否因为主机维护而被抑制(不显示)。
*不是 - 不抑制问题。
是** - 抑制问题.

自动发现动作

可以为基于自动注册的事件设置以下条件:

条件类型 支持的 作符 描述
Host IP 等于  指不等于 ** 要自动发现的主机的IP地址范围或要排除的IP范围。
于** -主机IP在该范围内。
不等于 - 主机IP不在该范围内。
它可能具有以下格式:
单个IP:192.168.1.33
IP地址范围:192.168.1-10.1-254
IP和子网掩码:192.168.4.0/24
列表: 192.168.1.1-254, 192.168.2.1-100, 192.168.2.200, 192.168.4.0/24
从Zabbix 3.0.0开始,支持带有空格的列表格式。
Service type 等于  指不等于 ** 已发现服务的服务类型或者要排除的服务类型。
于** - 匹配已发现的服务。
不等于 - 不匹配已发现的服务。
可用的服务类型:SSH, LDAP, SMTP, FTP, HTTP, HTTPS (自Zabbix 2.2开始,支持此项), POP, NNTP, IMAP, TCP, Zabbix agent, SNMPv1 agent, SNMPv2 agent, SNMPv3 agent, ICMP ping, telnet (自Zabbix 2.2开始,支持此项)
Service port 等于  指不等于 ** 已发现服务的TCP端口范围或者要排除的TCP端口范围。
于** - 服务端口在该范围内。
不等于 - 服务端口不在该范围内。
Discovery rule 等于  指不等于 ** 自动发现规则或要排除的规则。
于** - 使用此自动发现规则。
不等于 - 使用除此规则以外的任何其他的自动发现规则。
Discovery check 等于  指不等于 ** 自动发现检查或要排除的自动发现检查
于** - 使用此自动发现检查。
不等于 -使用除此以外的其他任何自动发现检查。
Discovery object 等于 指 发现的对象。
等于 - 等于发现的对象(设备或服务)。
Discovery status 等于 * Up** -匹配'Host Up' 和'Service Up'的事件
Down - 匹配'Host Down'和'Service Down'的事件
Discovered - 匹配'Host Discovered'和'Service Discovered'的事件
Lost - 匹配'Host Lost'和'Service Lost'的事件。
Uptime/Downtime 大于等于  'Ho小于等于 **大 t Up' 和 'Service Up'事件的运行时间。'Host Down'和'Service Down'事件的故障时间。
等于** - 大于或者等于。参数以秒为单位。
小于等于 - 小于或等于。参数以秒为单位。
Received value 等于  在不等于  大于等于  不小于等于  **大包含  不含 现规则中指定从agent(Zabbix, SNMP)检查接收到的值。字符串比较。如果一条规则配置了多个Zabbix agent或SNMP检查,则将检查每个接收的值(每次检查都会生成一个新事件,该事件将与所有条件进行匹配)。
于** - 等于该值。
于** - 不等于该值。
等于** - 大于或者等于该值.
小于等于** - 小于或者等于该值。
包含** -包含子串。参数以字符串形式给出。
不含 - 不包含子串。参数以字符串形式给出。
Proxy 等于  指不等于 ** proxy或要排除的proxy。
于** - 使用此代理.
不等于 -使用除此proxy以外的任何其他proxy。

自动发现规则中的服务检查,会导致发现事件,但不会同时发生。因此,如果在动作中为Service type, Service portReceived value条件配了多个值,那么它们将每次与一个自动发现事件进行比较,而 不会 同时与多个自动发现事件进行比较。结果,具有多个值的同类型检测的动作,可能无法正确地执行。

可以为基于主动式agent自动注册的动作设置以下条件:

条件类型 支持的 作符 描述
Host metadata 包含  指不含  匹配  不匹配 主机 主机元数据或要排除的主机元数据。
包含** - 主机元数据包含该字符串。
不包含** - 主机元数据不包该含字符串。
数据可以在 agent配置文件 中设置。
匹配 - 主机元数据匹配正则表达式。
不匹配 - 主机元数据不匹配正则表示。
Host name 包含  指不含  匹配  不匹配 ** 主机名称或要排除的主机名称。
包含** - 主机名称包含此字符串。
不含** - 主机名不包含此字符串。
配** - 主机名称匹配正则表达式。
不匹配 - 主机名称不包含正则表达式。
Proxy 等于  指不等于 ** proxy或要排除的proxy。
于** - 使用此proxy。
不等于 - 使用除此proxy以外的任何其他proxy.

内部事件动作

可以为基于内部事件的动作设置以下条件:

条件类型 支持的 作符 描述
Application 等于  指包含  不含 应用程序或要排除的应用集。
等于** - 属于链接到指定应用集的监控项的事件。
包含** - 事件属于一个监控项,该监控项链接到了包含此字符串的应用集。
不含 - 事件属于一个监控项,该监控项链接到了不包含此字符串的应用集。
Event type 等于 * Item in "not supported" state** - 匹配监控项从“正常”到“不支持”状态的事件
Low-level discovery rule in "not supported" state - 匹配低级别发现规则从“正常”到“不支持”状态的事件
Trigger in "unknown" state - 匹配触发器从“正常”到“未知”状态的事件
Host group 等于  指不等于 ** 主机组或要排除的主机组。
于** - 属于此主机组的事件。
不等于 - 不属于此主机组的事件。
Template 等于  指不等于 ** 模板或要排除的模板。
于** - 属于从此模板继承的监控项/触发器/低级别发现规则的事件。
不等于 - 不属于从此模板继承的监控项/触发器/低级别发现规则的事件。
Host 等于  指不等于 ** 主机或要排除的主机。
于** - 属于此主机的事件。
不等于 - 不属于此主机的事件。

条件计算类型

计算条件的选项有以下几种:

  • And - 必须满足所有条件

注意:当多个触发器被选择为Trigger =条件时,在它们之间是不允许使用"And"来计算的。只能基于一个触发器的事件执行动作。

Note that using "And" calculation is disallowed between several triggers when they are selected as a Trigger= condition. Actions can only be executed based on the event of one trigger.

  • Or - 只要满足一个条件就足够了
  • And/Or - 两者的结合:AND具有不同的条件类型,而OR具有相同的条件类型,例如:

Host group 等于 Oracle servers
Host group 等于 MySQL servers
Trigger name 包含 'Database is down'
Trigger name 包含 'Database is unavailable'

等价于

(Host group 等于 Oracle servers or Host group 等于 MySQL servers) and (Trigger name 包含 'Database is down' or Trigger name 包含 'Database is unavailable')

  • 自定义表达式 - 用户自定义动作条件的表达式。必须包含所有的条件(以大写字母 A, B, C, ...表示),可以包含空格、制表符、括号()、and (区分大小写)、or (区分大小写)和 not (区分大小写)。

虽然前面关于And/Or的示例可以表示为(A or B) and (C or D),但在自定义表达式中,您还有多种其他的计算方法:

(A and B) and (C or D)
(A and B) or (C and D)
((A or B) and C) or D
(not (A or B) and C) or not D
等等

由于删除对象而禁用动作

如果在动作条件/操作中使用的某个对象(主机,模板,触发器等)被删除了,那么条件/操作也会被删除,并且将禁用该动作,以避免错误地执行该动作。用户可以重新启用动作。

当删除以下对象时会发生这种情况:

  • 主机组(“主机组”条件,特定主机组上的“远程命令”操作);
  • 主机(“主机”条件,特定主机上的“远程命令”操作);
  • 模板(“模板”条件,“链接到模板”和“从模板中取消链接”操作);
  • 触发器(“触发器”条件);
  • 自动发现规则(使用“自动发现规则”和“自动发现检查”条件时)。

注意:如果远程命令有多个目标主机,我们删除了其中的一个,那么只有该主机将从目标列表中删除,操作本身将保留。但是,如果它是唯一的主机,那么操作也将被删除。"链接到模板"和"从模板取消链接"的操作也是一样。

当删除"发送消息"操作中使用的用户或用户组时,动作不会被禁用。