可以定义某个动作仅在事件匹配一组指定条件时才执行。 配置配置操作时设置条件。
条件匹配区分大小写。
以下条件可用于基于触发器的操作:
条件类型 | 支持的运算符 | 描述 |
---|---|---|
Host group | equals does not equal |
指定要包含的主机组或要排除的主机组。 等于 - 事件属于此主机组。 不等于 - 事件不属于此主机组。 指定父主机组将隐式选择所有嵌套的主机组。若仅指定父组,则所有嵌套组必须额外使用不等于操作符进行设置。 |
Template | equals does not equal |
指定要排除的模板或模板。 等于 - 事件属于从此模板继承的触发器。 不等于 - 事件不属于从此模板继承的触发器。 |
Host | equals does not equal |
指定 主机 或 主机 以排除。 等于 - 事件属于此 主机。 不等于 - 事件不属于此 主机。 |
Tag name | equals does not equal contains does not contain |
指定要排除的事件标签或事件标签。 等于 - 事件包含此标签。 不等于 - 事件不包含此标签。 包含 - 事件有一个包含此 string 的标签。 不包含 - 事件没有包含此 string 的标签。 |
Tag value | equals does not equal contains does not contain |
指定要排除的事件标签和值组合。 等于 - 事件包含此标签和值。 不等于 - 事件不包含此标签和值。 包含 - 事件的标签和值中包含这些字符串。 不包含 - 事件的标签和值中不包含这些字符串。 |
Trigger | equals does not equal |
指定要排除的触发器或触发器。 等于 - 事件由此触发器生成。 不等于 - 事件由除该触发器外的任何其他触发器生成。 |
Event name | contains does not contain |
在触发器生成的事件名称中指定一个要包含的 string 或一个要排除的 string。默认情况下,事件名称与触发器名称匹配,除非在 trigger configuration 中指定了自定义事件名称。 包含 - 事件名称包含此 string。 不包含 - 此 string 从事件名称中排除。 注意:输入的值将与事件名称进行比较,并会展开所有宏。 |
Trigger severity | equals does not equal is greater than or equals is less than or equals |
指定触发器严重性。 等于 - 等于触发器严重性。 不等于 - 不等于触发器严重性。 大于等于 - 大于或等于触发器严重性。 小于等于 - 小于或等于触发器严重性。 |
Time period | in not in |
指定一个时间段或要排除的时间段。 in - 事件时间在时间段内。 not in - 事件时间不在时间段内。 格式描述请参见 time period specification 页面。 支持 User macros。 |
Problem is suppressed | no yes |
指定问题是否因主机维护而被抑制(不显示)。 no - 问题未被抑制。 yes - 问题被抑制。 |
以下条件可用于服务操作:
条件类型 | 支持的运算符 | 描述 |
---|---|---|
Service | equals does not equal |
指定一个服务或要排除的服务。 等于 - 事件属于此服务。 不等于 - 事件不属于此服务。 指定父服务会隐式选择所有子服务。如果只想指定父服务,则所有嵌套的服务必须额外使用 不等于 运算符进行设置。 |
Service name | contains does not contain |
指定服务名称中的一个 string 或要排除的 string。 包含 - 事件由名称中包含此 string 的服务生成。 不包含 - 在服务名称中找不到此 string。 |
Service tag name | equals does not equal contains does not contain |
指定一个事件标签或要排除的事件标签。服务事件标签可以在服务配置部分 Tags 中定义。 等于 - 事件具有此标签。 不等于 - 事件没有此标签。 包含 - 事件具有包含此 string 的标签。 不包含 - 事件没有包含此 string 的标签。 |
Service tag value | equals does not equal contains does not contain |
指定一个事件标签和值的组合或要排除的标签和值的组合。服务事件标签可以在服务配置部分 Tags 中定义。 等于 - 事件具有此标签和值。 不等于 - 事件没有此标签和值。 包含 - 事件具有包含这些字符串的标签和值。 不包含 - 事件没有包含这些字符串的标签和值。 |
确保在 Alerts → Media types 菜单中为服务操作定义 概述。
否则,通知将不会发送。
以下条件可用于基于发现的事件:
条件类型 | 支持的操作符 | 描述 |
---|---|---|
Host IP | equals does not equal |
指定一个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 列表格式中支持空格。 |
Service type | equals does not equal |
指定一个发现服务的服务类型或要排除的服务类型。 等于 - 匹配发现的服务。 不等于 - 不匹配发现的服务。 可用服务类型:SSH、LDAP、SMTP、FTP、HTTP、HTTPS、POP、NNTP、IMAP、TCP、Zabbix agent、SNMPv1 agent、SNMPv2 agent、SNMPv3 agent、ICMP ping、telnet。 |
Service port | equals does not equal |
指定一个发现服务的TCP端口范围或要排除的范围。 等于 - 服务端口在该范围内。 不等于 - 服务端口不在该范围内。 |
Discovery rule | equals does not equal |
指定一个发现规则或要排除的发现规则。 等于 - 使用此发现规则。 不等于 - 使用除该规则外的任何其他规则。 |
Discovery check | equals does not equal |
指定一个发现检查或要排除的发现检查。 等于 - 使用此发现检查。 不等于 - 使用除该检查外的任何其他检查。 |
Discovery object | equals | 指定发现的 object。 等于 - 等于发现的 object(设备或服务)。 |
Discovery status | equals | Up - 匹配 '主机 Up' 和 'Service Up' 事件。 Down - 匹配 '主机 Down' 和 'Service Down' 事件。 Discovered - 匹配 '主机 Discovered' 和 'Service Discovered' 事件。 Lost - 匹配 '主机 Lost' 和 'Service Lost' 事件。 |
Uptime/Downtime | is greater than or equals is less than or equals |
'主机 Up' 和 'Service Up' 事件的运行时间。'主机 Down' 和 'Service Down' 事件的停机时间。 大于等于 - 大于或等于。参数以秒为单位。 小于等于 - 小于或等于。参数以秒为单位。 |
Received value | equals does not equal is greater than or equals is less than or equals contains does not contain |
指定从发现规则中的 agent(Zabbix、SNMP)检查接收到的值。string 比较。如果规则配置了多个 Zabbix agent 或 SNMP 检查,则会检查每个检查接收到的值(每个检查生成一个新事件,该事件与所有条件匹配)。 等于 - 等于该值。 不等于 - 不等于该值。 大于等于 - 大于或等于该值。 小于等于 - 小于或等于该值。 包含 - 包含子字符串。参数以 string 形式给出。 不包含 - 不包含子字符串。参数以 string 形式给出。 |
Proxy | equals does not equal |
指定一个 proxy 或要排除的 proxy。 等于 - 使用此 proxy。 不等于 - 使用除该规则外的任何其他 proxy。 |
发现规则中的服务检查,导致发现事件,并不会同时发生。因此,如果在动作中为 Service type
、Service port
或 Received value
条件配置了多个值,它们将逐个与发现事件进行比较,但不会同时与多个事件进行比较。结果是,对于相同检查类型的多个值,动作可能无法正确执行。
以下条件可用于基于主动 agent 的操作 自动注册
条件类型 | 支持的运算符 | 描述 |
---|---|---|
Host metadata | contains does not contain matches does not match |
指定要包含的主机元数据或要排除的主机元数据。 包含 - 主机元数据包含string。 不包含 - 主机元数据不包含string。 可以在agent configuration file中指定主机元数据。 匹配 - 主机元数据匹配正则表达式。 不匹配 - 主机元数据不匹配正则表达式。 |
Host name | contains does not contain matches does not match |
指定要包含的一个主机名称或要排除的一个主机名称。 包含 - 主机名包含string。 不包含 - 主机名不包含string。 匹配 - 主机名与正则表达式匹配。 不匹配 - 主机名与正则表达式不匹配。 |
Proxy | equals does not equal |
指定一个proxy或排除一个 proxy。 等于 - 使用此 proxy。 不等于 - 使用除这个以外的任何其他 proxy。 |
可以根据内部事件为动作设置以下条件:
条件类型 | 支持的操作符 | 描述 |
---|---|---|
Event type | equals | 监控项 处于 "not supported" 状态 - 匹配事件中某个 监控项 从“正常”状态变为“不支持”状态。 低级别自动发现规则处于 "not supported" 状态 - 匹配事件中低级别自动发现规则从“正常”状态变为“不支持”状态。 触发器处于 "unknown" 状态 - 匹配事件中触发器从“正常”状态变为 '未知' 状态。 |
Host group | equals does not equal |
指定要包含的 主机 组或要排除的 主机 组。 等于 - 事件属于此 主机组。 不等于 - 事件不属于此 主机组。 |
Tag name | equals does not equal contains does not contain |
指定事件标签或要排除的事件标签。 等于 - 事件包含此标签。 不等于 - 事件不包含此标签。 包含 - 事件包含包含此 string 的标签。 不包含 - 事件不包含包含此 string 的标签。 |
Tag value | equals does not equal contains does not contain |
指定事件标签和值的组合或要排除的标签和值的组合。 等于 - 事件包含此标签和值。 不等于 - 事件不包含此标签和值。 包含 - 事件包含包含这些字符串的标签和值。 不包含 - 事件不包含包含这些字符串的标签和值。 |
Template | equals does not equal |
指定模板或要排除的模板。 等于 - 事件属于从此模板继承的 监控项/触发器/低级别自动发现规则。 不等于 - 事件不属于从此模板继承的 监控项/触发器/低级别自动发现规则。 |
Host | equals does not equal |
指定要包含的 主机 或要排除的 主机。 等于 - 事件属于此 主机。 不等于 - 事件不属于此 主机。 |
可使用以下条件计算方式:
请注意,当多个触发器被选作 Trigger=
条件时,不允许使用 "And" 计算方式。动作只能基于一个触发器的事件执行。
主机组 等于 Oracle 服务器
主机组 等于 MySQL 服务器
事件名称 包含 '数据库已宕机'
事件名称 包含 '数据库不可用'
将被评估为:
(主机组 等于 Oracle 服务器 or 主机组 等于 MySQL 服务器) and (事件名称 包含 '数据库已宕机' or 事件名称 包含 '数据库不可用')
前一个使用 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
等等。
当尝试delete在动作条件/操作中使用的objects时,用户将收到相应的错误消息。
如果动作条件或操作包含以下情况,则不会禁用动作:
如果条件/操作中包含缺失的objects,它们不会被移除。相反,已删除的objects将显示为“已删除的主机组”、“已删除的主机”、“已删除的触发器”等。在动作列表的“信息”列中会显示一个警告图标,并提示消息:“此动作的条件或操作引用了已删除的object(s)”。
请注意,在 Zabbix 7.0.10 之前,如果在动作条件/操作中使用的某个object(主机、模板、触发器等)被删除,则该条件/操作将被移除,并且动作会被禁用。