1 配置触发器

概述

要配置触发器,请执行以下步骤:

  • 转至:数据采集主机
  • 点击 主机 行中的 触发器
  • 点击右侧的 创建触发器(或者点击触发器名称以编辑现有触发器)
  • 在表单中输入触发器的参数

另请参阅有关触发器及其计算时间的 general information

配置

触发器选项卡包含所有关键的触发器属性。

所有必填字段均以红色星号标记。

参数 说明
Name 触发器名称。
支持的macros包括:{HOST.HOST}、{HOST.NAME}、{HOST.PORT}、{HOST.CONN}、{HOST.DNS}、{HOST.IP}、{ITEM.VALUE}、{ITEM.LASTVALUE}、{监控项.LOG.*}以及{$MACRO}用户宏。
可使用$1、$2...$9宏来引用表达式中的第一、第二...第九个常量。
注意:当引用相对简单直接的表达式中的常量时,$1-$9宏能正确解析。例如,名称"处理器负载在{HOST.NAME}上超过$1"将自动变为"处理器负载在New 主机上超过5",如果表达式为last(/New 主机/system.cpu.load[percpu,avg1])>5
Event name 若定义此名称,将用于create问题事件名称,而非触发器名称。
事件名称可用于构建包含问题数据的有意义告警(参见example)。
支持与触发器名称相同的宏集合,外加{TIME}和{?EXPRESSION}表达式宏。
Operational data 操作数据允许定义包含宏的任意字符串。这些宏将在监控Problems中动态解析为实时数据。虽然触发器名称中的宏(见上文)会在问题发生时解析为其值并成为静态问题名称的基础,但操作数据中的宏保持动态显示最新信息的能力。若未在触发器级别配置操作数据,则将显示表达式中所有监控项的最新值。
支持与触发器名称相同的宏集合。
Severity 通过点击按钮设置所需的触发器severity
Expression 用于定义问题条件的逻辑expression
支持Time suffixesmemory大小后缀
当表达式中所有条件均满足(即表达式评估为TRUE)时创建问题。除非在恢复表达式中指定额外恢复条件,否则当表达式评估为FALSE时问题将立即解决。
OK event generation OK事件生成选项:
表达式 - 基于与问题事件相同的表达式生成OK事件;
恢复表达式 - 当问题表达式评估为FALSE且恢复表达式评估为TRUE时生成OK事件;
- 此情况下触发器永远不会自行返回OK状态。
Recovery expression (可选)定义在原始问题表达式已评估为FALSE后,解决问题前必须满足额外条件的逻辑expression
恢复表达式对触发器迟滞非常有用。若问题表达式仍为TRUE,则无法仅通过恢复表达式解决问题。
仅当为OK事件生成选择'恢复表达式'时显示此字段。
PROBLEM event generation mode 问题事件生成模式:
单次 - 触发器首次进入'问题'状态时生成单个事件;
多次 - 触发器每次'问题'评估时都生成事件。
OK event closes 选择OK事件关闭范围:
所有问题 - 该触发器的所有问题
标签值匹配的所有问题 - 仅关闭事件标签值匹配的触发器问题
Tag for matching 输入用于事件关联的事件标签名称。
仅当为OK事件关闭属性选择'标签值匹配的所有问题'时显示此字段,此时为必填项。
Allow manual close 勾选以允许manual closing此触发器生成的问题事件。确认问题事件时可手动关闭。
Menu entry name 若不为空,此处输入的名称(最多64字符)将在多个前端位置用作菜单入口URL参数中指定触发器URL的标签。若为空,则使用默认名称触发器URL
支持与触发器URL相同的宏集合。
Menu entry URL 若不为空,此处输入的URL(最多2048字符)将在多个前端位置的event menu中显示为链接,例如点击监控→Problems使用部件仪表板部件中的问题名称时。
支持与触发器名称相同的宏集合,外加{EVENT.ID}、{HOST.ID}和{TRIGGER.ID}。注意:包含秘密值的用户宏不会在URL中解析。
Description 用于提供有关此触发器更多信息的文本字段。可包含修复特定问题的指导、责任人员联系方式等。
支持与触发器名称相同的宏集合。
Enabled 取消勾选此框将在需要时禁用触发器。
禁用触发器的问题不再显示在前端,但不会被删除。

标签选项卡允许您定义触发器级别的tags。此触发器的所有问题都将被标记为在此处输入的值。

此外,继承和触发器标签选项允许查看模板级别定义的标签(如果触发器来自该模板)。若多个模板具有相同标签,这些标签仅显示一次且模板名称以逗号分隔。触发器不会"继承"或显示主机级别标签。

参数 说明
Name/Value 设置自定义标签以标记触发器事件。
标签由标签名和值组成。可仅使用名称或配对值。一个触发器可具有多个同名但不同值的标签。
事件标签中支持用户宏、带上下文的用户宏、低级发现宏以及带有{{ITEM.VALUE}}{{ITEM.LASTVALUE}}和低级发现宏的functions宏。低级发现宏可在宏上下文中使用。
触发器标签值支持{TRIGGER.ID}宏。这对识别从触发器原型创建的触发器非常有用,例如可在维护期间抑制来自这些触发器的问题。
若展开值总长度超过255字符,将被截断至255字符。
查看事件标签支持的所有宏支持
Event tags可用于事件关联、操作条件,并显示在监控问题问题部件中。

依赖项选项卡包含触发器的所有dependencies

点击添加以新增依赖项。

您也可以通过打开现有触发器,点击克隆按钮后以不同名称保存来配置触发器。

测试表达式

可以测试配置的触发器表达式,以查看根据接收到的值,表达式结果会是什么。

以下是一个来自官方模板的表达式示例:

avg(/Cisco IOS SNMPv2/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN}
       or
       last(/Cisco IOS SNMPv2/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS}

要测试该表达式,请点击表达式字段下方的 表达式构造器(Expression constructor)

在表达式构造器中,会列出所有单独的表达式。要打开测试窗口,请点击表达式列表下方的 测试(Test)

在测试窗口中,您可以输入示例值(例如中的 '80'、'70'、'0'、'1'),然后点击 测试(Test) 按钮查看表达式结果。

可以看到各个表达式的结果以及整个表达式的最终结果。

"TRUE" 表示指定的表达式成立。在此特定情况 A 中,"80" 大于指定值 {$TEMP_WARN},例如中的 "70"。正如预期,结果显示为 "TRUE"。

"FALSE" 表示指定的表达式不成立。在此特定情况 B 中,{$TEMP_WARN_STATUS} 的 "1" 需要等于指定值,例如中的 "0"。正如预期,结果显示为 "FALSE"。

所选的表达式类型为 "OR"。如果至少有一个指定条件(在此例中为 A 或 B)为 TRUE,则整体结果也将为 TRUE。这意味着当前值超过了警告值,并且已发生问题。