自定义告警模板

Viewed 86

image.png

以下是配置文件内容
有两个问题不太明白需要各位老师帮忙解答下。

  1. 我写的判断条件,当条件不成立时,告警信息有空行显示这个有什么办法不显示嘛
  2. 告警值 在哪里可以查看相关函数可用调整保留或自动转换的

级别状态: {{if .IsRecovered}}[ S{{.Severity}} Alert Recovered]{{else}}[ S{{.Severity}} Alert Triggered]{{end}}
主题: {{.RuleName}}
{{if .TargetIdent}}监控对象:{{.TargetIdent}}{{end}}
{{ if index .TagsMap "cluster" }}集群: {{ index .TagsMap "cluster" }} {{ end }}
{{ if index .TagsMap "instance" }}实例:{{ index .TagsMap "instance" }} {{ end }}
{{ if index .TagsMap "job" }}项目:{{ index .TagsMap "job" }} {{ end }}
{{ if index .TagsMap "device" }}磁盘:{{ index .TagsMap "device" }} {{ end }}
{{$isExtraLabels := match "^;" .RuleNote}}{{if $isExtraLabels}}自定义Lable: {{.RuleNote}}{{end}}
{{if not .IsRecovered}}触发时值:{{.TriggerValue}}{{end}}
{{if .RuleNote}}规则备注:{{.RuleNote}}{{end}}
{{if .IsRecovered}}恢复时间:{{timeformat .LastEvalTime}}{{else}}首次触发时间: {{timeformat .FirstTriggerTime}}{{end}}
{{$time_duration := sub now.Unix .FirstTriggerTime }}{{if .IsRecovered}}{{$time_duration = sub .LastEvalTime .FirstTriggerTime }}{{end}}
持续时长: {{humanizeDurationInterface $time_duration}}
发送时间: {{timestamp}}

1 Answers

1、我感觉你那些if语句别换行,都写一行可能就好了
2,{{.TriggerValue}} 这个我看字符串,估计不好搞,据说下一个版本会做出float64,就可以方便的format了