1 触发器事件生成
概述
触发器状态的变化是事件最常见和最重要的来源。每次触发器的状态改变时,都会生成一个事件。该事件包含了触发器状态变更的详细信息、发生时间以及触发器的新状态。
触发器会创建两种类型的事件:问题和正常。
问题事件
以下情况,会创建一个问题事件:
- 当触发器状态正常,触发器表达式评估结果为TRUE时;
- 当触发器启用了多重问题事件生成,每次触发器表达式评估结果为TRUE时。
正常事件
一个正常事件会关闭关联的问题事件,可能由以下3个组件生成:
- 触发器——基于“正常事件生成”和“正常事件关闭”
- 事件关联
- 任务管理器——当一个事件手动关闭时
触发器
触发器有“正常事件生成”的设置用来控制如何生成正常事件:
- 表达式——当触发器在问题状态其表达式评估为FALSE时,会生成一个正常事件。这是最简单的设置,默认启用。
- 恢复表达式——当触发器在问题状态其表达式评估为FALSE且恢复表达式评估为TRUE。如果触发器恢复标准与问题标准不同可以使用此设置。
- 无——不生成正常事件,可以与多个问题事件生成组合使用,当某事件发生时可以简单地发送通知。
此外,触发器有“正常事件关闭”的设置用来控制关闭问题事件:
- 所有问题 ——正常事件会关闭该触发器打开的所有问题事件。
- 标签值匹配的所有问题 ——正常事件会关闭该触发器打开的所有问题事件并且至少有一个匹配的标签值。此标签由“匹配标签“的触发器设置。如果没有要关闭的问题事件就不会生成正常事件。这通常称为触发器级别事件关联。
事件关联
事件关联(也叫做全局事件关联)是一种设置自定义事件关闭(导致正常事件生成)的规则。
这个规则定义了新的问题事件如何匹配已有的问题事件,并允许通过生成对应的正常事件来关闭新的事件或匹配的事件。
但是,配置事件关联必须非常地谨慎,因为它可能对事件处理性能造成负面影响,如果配置错误会关闭比预期更多的事件(最坏的情况会关闭所有的事件)。下面是几个配置的提示:
- 总是通过为控制事件(匹配了旧事件的事件)设置唯一的的标签来缩小关联范围,并且使用“新事件标签”关联条件
- 当使用“关闭旧事件”操作时不要忘记添加基于旧事件的条件,否则所有已有的问题事件都会关闭
- 避免使用不同关联配置所使用的通用标签
任务管理器
如果触发器启用了“允许手动关闭”的设置,就可能手动关闭触发器生成的问题事件。这在问题升级中由前端完成。事件不是直接关闭的——相反,会生成一个“关闭事件”的任务,很快会由任务管理器处理。问题事件会被关闭,任务管理器会生成对应的正常事件。