3 手动关闭问题

概述

通常,当触发器状态从 Problem 变为 OK 时,问题事件会自动恢复,但在某些情况下,很难通过触发器表达式来判断问题是否已经恢复。 在这种情况下,问题需要手动关闭。

例如,syslog 可能会报告某些内核参数需要调整以获得最佳性能。 在这种情况下,问题会报告给 Linux 管理员,由他们修复后再手动关闭该问题。

只有启用了 Allow manual close 选项的触发器,其问题才能被手动关闭。

当问题被“手动关闭”时,Zabbix 会为 Zabbix 服务器生成一个新的内部任务。 随后,task manager 进程会执行该任务并生成一个 OK 事件,从而关闭该问题事件。

生成的 OK 事件包含为该事件解析出的完整事件标签集合(包括从模板、主机和触发器继承的标签)。 这些标签可用于通知中,也可用于宏,例如 {EVENT.RECOVERY.TAGS}{EVENT.RECOVERY.TAGSJSON}

手动关闭问题并不意味着底层触发器将来不会再次进入 Problem 状态。 触发器表达式会重新求值,并且可能再次产生问题:

  • 当触发器表达式中包含的任意监控项接收到新数据时(请注意,被限流预处理步骤丢弃的值不会被视为已接收,因此不会导致触发器表达式重新求值);
  • 当表达式中使用了 date and time 和/或 nodata() 函数时。

配置

手动关闭问题需要两个步骤。

触发器配置

在触发器配置中,启用 允许手动关闭 选项。

问题更新窗口

如果某个带有 Manual close 标志的触发器产生了问题,您可以打开该问题的问题更新弹出窗口,并手动关闭该问题。

要关闭问题,请在表单中勾选 Close problem 选项,然后点击 Update

所有必填输入字段都以红色星号标记。

该请求由 Zabbix 服务器处理。 通常关闭问题需要几秒钟。 在此过程中,Monitoring > Problems 中会显示 CLOSING 作为该问题的状态。

验证

可以通过以下方式验证问题已被手动关闭:

  • 在事件详情中查看,可通过 监控 > 问题 进入;
  • 在通知消息中使用 {EVENT.UPDATE.HISTORY} 宏,该宏将提供此信息。