1 条件
概述
只有在事件与定义的条件匹配的情况下才执行操作。 配置动作时设置条件。
可以为基于触发的动作设置以下条件:
条件类型 | 支持的操作 | 说明 |
---|---|---|
Application | = like not like | 指定要排除的应用程序或应用程序. = -事件属于与指定应用程序链接的项目的触发器. like - 事件属于与包含字符串的应用程序链接的项目的触发器. not like -事件属于链接到不包含字符串的应用程序的项目的触发器. |
Host group | = <> | 指定要排除的主机组或主机组. = - 事件属于此主机组. <> - 事件不属于此主机组. 指定父主机组隐含地选择所有嵌套的主机组.要仅指定父组,必须使用 <> 运算符另外设置所有嵌套组. |
Template | = <> | 指定要排除的模板或模板. = - 属于从此模板继承的触发器的事件. <> - 不属于从此模板继承的触发器的事件. |
Host | = <> | 指定要排除的主机或主机 = - 属于这个主机的事件. <> - 不属于这个主机的事件. |
Tag | = <> like not like | 指定事件标记或要排除的事件标记. = - 含有该标记的事件 <> - 不含该标记的事件 like -标签中包含此字符串的事件 not like - 标签中不包含此字符串的事件 |
Tag value | = <> like not like | 指定事件标签和值组合或要排除的标签和值组合 = - 包含该值和标签的事件 <> -不包含该值和标签的事件 like - 值和标签中包含该字符串的事件 not like - 值和标签中不包含该字符串的事件 |
Trigger | = <> | 指定触发器或要排除的触发器. = - 由该触发器产生的事件 <> - 除了这一个,由任何其他触发器生成的事件. |
Trigger name | like not like | 在触发器名称中指定一个字符串或要排除的字符串. like - 事件由触发器生成,在名称中包含此字符串.区分大小写. not like - 触发器名称中不包含该字符串. 区分大小写. Note: 输入的值将与所有宏扩展的触发器名称进行比较. |
Trigger severity | = <> >= <= | 指定触发严重性. = - 等于触发严重性 <> - 不等于触发严重性 >= - 大于或等于触发严重性 <= - 小于或等于触发严重性. |
Time period | in not in | 指定时间段或要排除的时间段. in - 事件时间在该时间段内. not in - 事件时间不在该时间段内. 格式描述参见 Time period specification 页面. |
Maintenance status | in not in | 指定主机进行维护或不进行维护. in - 主机处于维护模式. not in - 主机不在维护模式. Note: 如果触发表达式中涉及到多个主机,则至少有一个主机不在维护模式下,条件匹配. |
可以为基于发现的事件设置以下条件:
条件类型 | 支持的操作 | 说明 |
---|---|---|
Host IP | = <> | 指定要发现的主机的IP地址范围或要排除的范围. = -主机IP在该范围内. <> - 主机IP不在该范围内. 它可能有以下格式: 单IP: 192.168.1.33 IP地址范围: 192.168.1-10.1-254 IP mask: 192.168.4.0/24 List: 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 (available since Zabbix 2.2 version), POP, NNTP, IMAP, TCP, Zabbix agent, SNMPv1 agent, SNMPv2 agent, SNMPv3 agent, ICMP ping, telnet (available since Zabbix 2.2 version). |
Service port | = <> | 指定发现的服务或的TCP端口范围或者要排除的TCP端口范围. = - 服务端口在该范围内. <> - 服务端口不在该范围内. |
Discovery rule | = <> | 指定发现规则或要排除的发现规则. = - 使用这个发现规则. <> - 使用除此之外的任何其他发现规则. |
Discovery check | = <> | 指定discovery check或要排除的discovery check = - 使用这个 discovery check. <> -使用除此之外的其他任何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 | >= <= | Uptime for ‘Host Up’ and ‘Service Up’ events. Downtime for ‘Host Down’ and ‘Service Down’ events. >= -大于或者等于. 参数以秒为单位给出。 <= -小于或等于. 参数以秒为单位给出. |
Received value | = <> >= <= like not like | 指定从代理接收的值(Zabbix,SNMP).区分大小写字符串比较. 如果为规则配置了多个Zabbix代理或SNMP检查,则检查所有的Zabbix代理或SNMP检查(每个检查生成与所有条件匹配的新事件). = - 等于该值. <> - 不等于该值. >= - 大于或者等于该值. <= - 小于或者等于该值. like -包含子串。参数作为字符串给出. not like - 不包含子串. 参数作为字符串给出. |
Proxy | = <> | 指定代理或要排除的代理. = - 使用这个代理. <> -使用除此之外的任何其他代理. |
在发现规则里的服务检测,并不是同时发生的。因此,如果动作里multiple 值配置了Service type
, Service port
or Received value
,他们被视为一次一个发现事件,而不是多个事件。这样,有多个值的同类检测的动作,可能错误地执行。
基于活动代理自动注册的动作可以设置以下条件:
条件类型 | 支持的操作 | 说明 |
---|---|---|
Host metadata | like not like | 指定主机元数据或要排除的主机元数据. like - 主机元数据包含字符串. not like - 主机元数据不包含字符串. 可以在代理配置文件中指定主机元数据. |
Host name | like not like | 指定主机名或要排除的主机名. like - 包含字符串的主机名. not like - 不包含字符串的主机名. |
Proxy | = <> | 指定代理或要排除的代理. = - 使用这个代理. <> - 使用除此之外的任何其他代理. |
可以根据内部事件为动作设置以下条件:
Application | = like not like | 指定应用程序或要排除的应用程序. = - 属于与指定应用程序链接的项的事件. like - 属于与包含字符串的应用程序链接的项的事件. not like - 属于不包含字符串的应用程序链接的项的事件. |
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“计算。操作只能根据一个触发事件执行。
Or - 如果满足一个条件就足够了
And/Or - 两者的组合:AND与不同的条件类型和OR具有相同的条件类型,例如:
Host group = Oracle servers
Host group = MySQL servers
Trigger name like ‘Database is down’
Trigger name like ‘Database is unavailable’
计算为
(Host group = Oracle servers or Host group = MySQL servers) and (Trigger name like ‘Database is down’ or Trigger name like ‘Database is unavailable’)
- 自定义表达式 - 用户自己定义的动作条件表达式. 必须包含所有的条件 (以大写字母 A, B, C, …) 以及可能包含空格,制表符,括号,和大小写敏感字符。
当前例包含 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
etc.
由于删除对象,被禁用的actions
如果某个操作条件/操作中使用的某个对象(主机,模板,触发器等)被删除,则会删除条件/操作,禁用该操作以避免操作的错误执行。 该操作可以由用户重新启用。
当删除以下项目是会发生这种情况:
主机组(“主机组”条件,特定主机组上的“远程命令”操作));
主机(“主机”条件,特定主机上的“远程命令”操作);
模板(“模板”条件,“链接到模板”和“与模板的链接”操作);
触发器(“触发”条件);
发现规则(使用“发现规则”和“发现检查”条件时);
代理(“代理”条件)。
Note:如果远程命令有许多目标主机,并且我们删除其中的一个,则只有该主机将从目标列表中删除,操作本身将保留。 但是,如果它是唯一的主机,操作也将被删除。 “链接到模板”和“取消与模板的链接”操作也是一样。
删除“发送消息”操作中使用的用户或用户组时,操作不会被禁用。