1、配置钉钉告警模版
创建钉钉告警模版,然后在创建钉钉告警时调用模版。
定义发送内容具体代码
my_text_alert_list 是模版名称后面再配置钉钉告警时需要调用。
{{/* 定义消息体片段 */}}
{{ define "my_text_alert_list" }}{{ range . }}
告警名称:
{{ index .Labels.alertname }}
告警机器:
{{ index .Labels.env }} {{ index .Labels.device }}
告警级别:
{{ index .Annotations.level }}
告警详情:
{{ index .Annotations.summary }}
触发阀值:
{{ index .Annotations.description }}
发生时间: {{ .StartsAt }} \n
{{ if eq .Status "resolved" }}
恢复时间: {{ .EndsAt }}
{{ end }}
{{ end }}{{ end }}
{{/* 定义消息体 */}}
{{ define "my.message" }}
{{ if gt (len .Alerts.Firing) 0 }}**--------发生告警---------**
{{ template "my_text_alert_list" .Alerts.Firing }}
{{ end }}
{{ if gt (len .Alerts.Resolved) 0 }}**-------恢复告警------**
{{ template "my_text_alert_list" .Alerts.Resolved }}
{{ end }}
{{ end }}
在创建一个标题模版
定义标题具体代码
my.title 是模版名称后面再配置钉钉告警时需要调用。
{{ define "my.title" }}[监控报警]: [{{ .Status | toUpper }}{{ if eq .Status "firing" }}:{{ .Alerts.Firing | len }}{{ if gt (.Alerts.Resolved | len) 0 }}, RESOLVED:{{ .Alerts.Resolved | len }}{{ end }}{{ end }}]{{ end }}
创建完成
2、添加钉钉告警
首先在钉钉群添加一个机器人,拿到Webhook地址,使用关键字匹配告警。
选择自定义机器人
钉钉机器人配置完成后grafan添加钉钉告警
Message 调用上面配置的模版名称:{{ template “my.title” .}}{{template “my.message” .}}
告警消息如下: