第五章 触发器(Trigger)

  • 触发器
    • 触发器概述
      • 触发器表达式允许定义一个什么状况的阈值,如果接收的数据超过了可接受的状态,则触发器会被触发或将状态改为异常
      • 触发器的状态

描述

OK

这是一个正常的触发器状态,在旧版本的 Zabbix 称之为 False

Problem

通常意味着发生某些事情,True。

  • Trigger 的配置
    • Trigger 的配置步骤

      configuration - host/template - trigger -create trigger

    • 创建监控项

         

      • 名称:触发器名称,名称中可包含宏: {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {ITEM.VALUE}, {ITEM.LASTVALUE} 和{$MACRO}。
      • 严重性

严重性

定义

颜色

未分类

未知严重性

灰色

信息

提示

浅蓝色

警告

警告

黄色

一般严重

一般问题

橙色

严重

发生重要的事情

浅红色

灾难

灾难,财务损失等

红色

  • 异常表达式:用于定义异常条件的逻辑表达式
  • 事件成功迭代:
    • 表达式:ok 事件 基于与问题表达式形同的表达式生成。
    • 恢复表达式:如果问题表达式计算为 False,恢复表达式为 True,则生成 Ok 事件。
    • None:触发器永远不会返回到 Ok 状态。
    • 异常事件生成模式
      • 单个:当触发器第一次进入异常状态时,生成一条单个条件。
      • 多重:每一个触发器异常评估都将产生一条事件。
    • 事件成功关闭:
      • 所有问题:此触发器的所有问题
      • 所有问题如果标签值匹配:只有那些匹配事件标签值引发的问题。
  • 触发器表达式
    • 模板

      {<server>:<key>.<function>(<parameter>)}<operator><constant>

    • 函数(https://www.zabbix.com/documentation/4.0/manual/appendix/triggers/functions)

函数

参数

支持类型

描述

例子

abschange

float,int,str,test,log

返回最近获取到值与之前值的差值的绝对值,字符串:0表示相等,1表示不同。

  

  • 函数参数

函数调用

含义

sum(600)

600秒内所有值的总和

sum(#5)

最后5个值的总和

   

  • 运算符

优先级

运算符

定义

未知值注释

1

-

-Unknown → Unknown

2

not

逻辑非

not Unknown → Unknown

3

*

* Unknown → Unknown

(yes, Unknown, not 0 - to not lose

Unknown in arithmetic operations)

1.2 * Unknown → Unknown

  

/

Unknown / 0 → error

Unknown / 1.2 → Unknown

0.0 / Unknown → Unknown

4

+

1.2 + Unknown → Unknown

  

-

1.2 - Unknown → Unknown

5

<

小于。该运算符定义:

   

A<B (A<B-0.000001)

1.2 < Unknown → Unknown

  

<=

小于等于。该运算符定义:

   

A<=B (AB+0.000001)

Unknown <= Unknown → Unknown

  

>

大于. 该运算符定义:

   

A>B (A>B+0.000001)

  

  

>=

大于等于。 该运算符定义:

   

A>=B (AB-0.000001)

  

6

=

相等。 该运算符定义:

   

A=B (AB-0.000001) and (AB+0.000001)

  

  

<>

不等于。该运算符定义:

   

A<>B (A<B-0.000001) or (A>B+0.000001)

  

7

and

逻辑与

and Unknown → 0

and Unknown → Unknown

Unknown and Unknown → Unknown

8

or

逻辑或

or Unknown → 1

or Unknown → Unknown

Unknown or Unknown → Unknown

   

来自 <https://www.zabbix.com/documentation/4.0/zh/manual/config/triggers/expression>

   

  • 触发器的依赖关系

    有时候一台主机的可用性依赖于另一台主机。如果一台路由器宕机,则路由器后端的服务器将变得不可用。如果这两者都设置了触发器,你可能会收到关于两个主机宕机的通知,然而只有路由器是真正故障的。

    这就是主机之间某些依赖关系可能有用的地方,设置依赖关系的通知可能会被抑制,而只发送根本问题的通知。

    虽然Zabbix不支持主机之间的直接依赖关系,但是它们可以定义另外一种更加灵活的方式 - 触发器依赖关系。一个触发器可以有一个或多个依赖的触发器。

    因此在我们简单示例中,我们打开服务器触发器配置的窗口,并设置它依赖于路由器的相应触发器。有了这样的依赖性,只要它所依赖的触发器处于"异常"状态,服务器触发器就不会改变状态,因此不会执行依赖的动作,也不会发送通知。

    如果服务器和路由器都宕机且有依赖关系,Zabbix将不执行依赖触发器的动作。

       

来自 <https://www.zabbix.com/documentation/4.0/zh/manual/config/triggers/dependencies>

   

  • 触发器设置
    • 创建触发器->依赖关系->添加所依赖的触发器
  • 自定义触发器的严重性
    • 管理->一般->触发器严重性
  • 事件标记
posted @ 2019-12-25 13:41  天上的白云真白呀  阅读(382)  评论(0编辑  收藏  举报