引用变量
title: "引用变量"
description: "通过引用告警标签、属性,实现对故障的严重程度和标题等信息的定制"
date: "2024-05-11T10:00:00+08:00"
url: "https://docs.flashcat.cloud/zh/flashduty/customize-incident-attrs"
概述
通过引用告警标签、属性的变量,实现对故障的严重程度和标题以及描述等信息的修改与定制。主要应用在两种场景:
- 通过告警 Event API 上报自定义告警事件时,可以使用 title_rule 字段自定义告警的标题。
# 示例:指定resource和check标签作为告警标题
title_rule: "[TPL]${resource} / ${check}"
- 告警 Pipeline 中引用变量,实现对告警的严重程度和标题以及描述等信息的修改。
更多引用变量方式
通过${var}引用标签
以[TPL]作为前缀,使用${}来引用变量,变量内容将从标签中提取,提取不到使用<no value>替代。
示例:
规则 | 标签值 | 生成内容 |
---|---|---|
[TPL]${resource} / ${check} | {"resource": "127.0.0.1", "check": "cpu idle low"} | 127.0.0.1 / cpu idle low |
[TPL]${resource} / ${check} | {"resource": "127.0.0.1"} | 127.0.0.1 / <no value> |
[TPL]${resource} / 主机宕机 | {"resource": "127.0.0.1"} | 127.0.0.1 / 主机宕机 |
通过Golang模版语法引用
以[TPL]作为前缀,使用{{}}来引用变量(可以引用标签和属性),提取不到使用<no value>替代。
示例:
规则 | 变量值 | 生成内容 |
---|---|---|
[TPL]{{.Labels.resource}} / {{.Labels.check}} | {"resource": "127.0.0.1", "check": "cpu idle low"} | 127.0.0.1 / cpu idle low |
[TPL]{{.Labels.resource}} / {{.Labels.check}} | {"resource": "127.0.0.1"} | 127.0.0.1 / <no value> |
[TPL]{{.EventSeverity}} / 主机宕机 | {"EventSeverity": "Warning"} | Warning / 主机宕机 |
支持引用的属性列表
字段 | 类型 | 释义 |
---|---|---|
Title | string | 标题 |
Description | string | 描述 |
EventSeverity | string | 严重程度 |
常见问题
使用标签动态生成标题,如果标签不存在怎么办?
取决于您使用哪一种变量获取方式,标题可能会保留原始的变量信息或使用<no value>替代。
即使获取不到变量,也不影响告警的生成,您可放心调试。
最后修改时间: 9 天前