Grafana如何自定义告警消息

以下是一个使用pushgateway获取磁盘健康状态的报警消息。

可以看到,grafana默认的模板有很多无用内容。

Grafana如何自定义告警消息

获取数据

在grafana的报警预览中,只有state和info两个列显示。

Grafana如何自定义告警消息

info内容看起来是一个键值对类型的数据,其实只是一个字符串,无法从中获取我们想要的键值对。

我们通过go templete语法,提取字符串里的数据。

{{ with $values }}
{{ range $k, $v := . }}
Location: {{$v.Labels.location}}
Variable: {{$v.Labels.variable}}
Alerting value: {{ $v }}
{{ end }}
{{ end }}

将该内容填写到报警配置内的下图所示位置。

Grafana如何自定义告警消息

设置告警消息模板

设置消息模板

Grafana如何自定义告警消息

或者也可以填写为(模板内容可以自定义)

{{ define "alert_list" }}{{ range . }}
Annotations:
{{ range .Annotations.SortedPairs }} - {{ .Name }} = {{ .Value }}
{{ end }}{{ end }}{{ end }}

设置告警模板

{{ define "message" }}{{ if gt (len .Alerts.Firing) 0 }}**Firing**
{{ template "alert_list" .Alerts.Firing }}{{ if gt (len .Alerts.Resolved) 0 }}

{{ end }}{{ end }}{{ if gt (len .Alerts.Resolved) 0 }}**Resolved**
{{ template "alert_list" .Alerts.Resolved }}{{ end }}{{ end }}

设置推送内容

Grafana如何自定义告警消息
{{ template "message" . }}

测试

Grafana如何自定义告警消息

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/6347

(0)
李逍遥的头像李逍遥
上一篇 2022年12月7日 下午3:57
下一篇 2022年12月8日 下午5:23

相关推荐

  • Linux系统之nethogs命令

    1.简介 NetHogs是一个小型的net top工具,不像大多数工具那样拖慢每个协议或者是每个子网的速度而是依照进程进行带宽分组。 NetHogs不需要依赖载入某个特殊的内核模块。 假如发生了网络堵塞你能够使用NetHogs立即看到哪个PID形成的这种情况。 这样就很容易找出哪个程序突然长时间占用你的带宽。 NetHogs是一个类似于Linux的top指令…

    2023年9月19日
    87900
  • 禅道安装

    禅道介绍 禅道项目管理软件是国产的开源项目管理软件,专注研发项目管理,内置需求管理、任务管理、bug管理、缺陷管理、用例管理、计划发布等功能,实现了软件的完整生命周期管理。 禅道属于开源项目,有收费版,本次以开源版9.1.2进行搭建 禅道官网:http://www.zentao.net/ 提示:本地环境我们没有安装mysql,安装禅道环境需要LNMP或者LA…

    2023年4月27日
    1.2K00
  • HTTPS 下使用WebSocket的一些实践

    问题描述: HTTPS 下发起WS连接,连接失败,Chrom 浏览器报错。 socket.js:19 Mixed Content: The page at ‘https://app.XXX.com’ was loaded over HTTPS, but attempted to connect to the insecure WebSocket endpoi…

    2023年1月20日
    1.1K00
  • 在linux中访问网站提示“Nginx 502 bad gateway”错误如何处理?

    问题原因 “Nginx 502 Bad Gateway”错误表示访问请求的php-cgi进程已经开始执行,但是由于读取资源失败等原因没有执行完毕,导致php-cgi进程终止。 常见的问题原因如下: 解决方案 您可以参考如下操作进行逐一排查。 说明 本文中/usr/local/php/etc/php-fpm.conf、/usr/local/php/etc/ph…

    2023年11月16日
    91800
  • Redis删除特定前缀key的优雅实现

    Redis中没有批量删除特定前缀key的指令,但我们往往需要根据前缀来删除,那么究竟该怎么做呢?可能你一通搜索后会得到下边的答案 直接在linux下通过redis的keys命令匹配到所有的key,然后调用系统命令xargs来删除,看似非常完美,实则风险巨大 因为Redis的单线程服务模式,命令keys会阻塞正常的业务请求,如果你一次keys匹配的数量过多或者…

    2023年1月17日
    1.3K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信