动作
当触发器条件满足时,操作会发送通知。请参阅通知以了解如何创建通知。如果您不想接收通知,请勿向触发器添加操作。
添加操作
添加操作的步骤
- 在触发器面板中,选择添加操作。
-
在通知部分输入操作详细信息,包括操作名称、通知渠道和通知消息正文。
您可以使用Mustache 模板向消息中添加变量。您可以访问
ctx.action.name
(当前操作的名称)以及所有操作变量。如果您的通知渠道是期望特定数据格式的自定义 Webhook,请直接在消息正文中包含 JSON(或 XML)
{ "text": "Monitor {{ctx.monitor.name}} just entered alert status. Please investigate the issue. - Trigger: {{ctx.trigger.name}} - Severity: {{ctx.trigger.severity}} - Period start: {{ctx.periodStart}} - Period end: {{ctx.periodEnd}}" }
在前面的示例中,消息内容必须符合自定义 Webhook 中的
Content-Type
标头。 - 如果您使用的是桶级监视器,请选择监视器是为每次执行还是为每次告警执行操作。
-
(可选)使用操作节流来限制您在给定时间范围内接收的通知数量。
例如,如果监视器每分钟检查一次触发条件,您每分钟可能会收到一条通知。如果您将操作节流设置为 60 分钟,那么即使在该小时内触发条件满足了数十次,您每小时收到的通知也不会超过一次。
- 选择 Create。
操作发送消息后,该消息的内容已超出安全分析插件的范围。确保消息访问安全(例如,对 Slack 渠道的访问)是您的责任。
消息示例
Monitor {{ctx.monitor.name}} just entered an alert state. Please investigate the issue.
- Trigger: {{ctx.trigger.name}}
- Severity: {{ctx.trigger.severity}}
- Period start: {{ctx.periodStart}}
- Period end: {{ctx.periodEnd}}
要在消息中使用ctx.results
变量,请使用{{ctx.results.0}}
而不是{{ctx.results[0]}}
。此差异是由于 Mustache 处理方括号表示法的方式造成的。
操作变量
变量 | 数据类型 | 描述 |
---|---|---|
ctx.trigger.actions.id | 字符串 | 操作 ID。 |
ctx.trigger.actions.name | 字符串 | 操作名称。 |
ctx.trigger.actions.message_template.source | 字符串 | 告警中要发送的消息。 |
ctx.trigger.actions.message_template.lang | 字符串 | 用于定义消息的脚本语言。必须是 Mustache。 |
ctx.trigger.actions.throttle_enabled | 布尔型 | 此触发器是否启用了节流。有关节流的更多信息,请参阅添加操作。 |
ctx.trigger.actions.subject_template.source | 字符串 | 告警中的消息主题。 |
ctx.trigger.actions.subject_template.lang | 字符串 | 用于定义主题的脚本语言。必须是 Mustache。 |