Grafana面板(panel):报警功能(alerts)
文章目录
- alerts(报警设置)
- Create a Grafana managed alerting rule
- Add Grafana managed rule
- alert notifications
- 增加一个notification channel
- alert报警邮件中的链接地址错误如何配置
- alert产生的报警如何删除?
- alert设置注意事项
alerts(报警设置)
注意:grafana的alert和Transform是互斥的,用来一个,另一个就用不了了。且经过调查,发现阈值和alert的设置中,很多地方不支持变量的使用。
grafana报警功能包含以下四个关键组件。
组件 | 说明 |
---|---|
Alerting rule | 决定一个报警是否启动的评估标准。它由一个或多个请求和表达式,一个条件,评估频率,以及满足条件的持续时间(可选)组成。 |
Contact point | 当alerting rule的条件被满足时,发送通知的渠道。 |
Notification policy | 匹配或者分组哪些评估标准。用来决定在哪或者多久一次发送通知。 |
Silences | 用于关闭通知的日期和匹配标准。 |
Create a Grafana managed alerting rule
详见https://grafana.com/docs/grafana/latest/alerting/old-alerting/create-alerts/
grafana允许你创建alerting rules,这些报警规则请求一个或多个数据源,降低或转换结果,然后把它们和给定的阈值比较。当这些被执行时,grafana会方式通知给contact point(发送通知的渠道)。
一个报警规则是一系列评估标准的集合,这些评估标准决定了报警是否会被触发。
Add Grafana managed rule
选中panel的编辑界面(如下图)|Alert|Create Alert
出现如下界面,选项的说明如下:
Rule(规则)
- Name:报警规则的名字。可以使用默认值。可以使用变量。
- Evaluate every:指明评估的频率。必须是10s的倍数。
- For:指明报警触发前,条件为真需要持续的时间。注意:只要一个条件满足了,报警就会进入预备状态(Pending state,查看grafana上的State history可以看到状态),此时并不会立即发送通知(如邮件)。如果条件保持为真的时间达到指定的持续时间,报警会转换为触发状态(Alerting state),此时会发送通知,且状态恢复正常也会发通知;否则,报警会变回正常状态。
注意:可以在grafana的配置文件里面通过修改
alerting.min_interval_seconds
来设置最小的评估时间间隔。If no data or all values are null
设置为No Data
时,For
不起作用。No Data
会立即除法。这也可能导致OK
通知不发送,如果警告转换过程为No Data -> Pending -> OK
Conditions
目前唯一支持的条件类型是
Query
条件,它允许指定一个请求字母(代表某个请求),时间范围和聚合函数。如下示例
avg() OF query(A, 15m, now) IS BELOW 14
avg()
,设置该用哪个函数将一个序列的值减少(转换)为一个值,再用这个值和阈值比较。点击下面的函数名(如last)可以切换聚合函数。query(A, 15m, now)
,字母对应的是请求(建立panel时,每个请求前的字母)。后两个参数定义了时间范围:15m, now
代表15min前到现在。10m, now-2m
代表10分钟前到两分钟前。IS BELOW 14
定义了比较方式和阈值。点击IS BELOW
可以切换比较方法。
说明:报警中的请求不支持变量。多个条件只支持
AND
和OR
运算且是顺序执行。如condition:A(evaluates to: TRUE) OR condition:B(evaluates to: FALSE) AND condition:C(evaluates to: TRUE)计算为 ((TRUE OR FALSE) AND TRUE) = TRUE
Multiple Series(请求包含多个序列)
如果一个请求返回多个序列,则聚合函数和阈值检查将会作用为每个序列评估一次。grafana当前并不追踪每个序列的警告规则状态。例如:
报警条件中的请求返回两个序列server1 和server2。server1序列触发报警,状态转换为
Alerting
,发送通知;若接下来对同样的报警规则,server1 也触发了,则不会发送通知,应为状态已经是
Alerting
。即若当前报警规则状态为
Pending
,则其他的序列触发报警并不会通知。因此,强烈建议一个请求返回一个序列,降低alert设置的复杂度(使用where)。
No Data和Error Handing
无数据选项 说明 No Data 设置报警规则状态为 NoData
,这会触发通知。Alerting 设置报警规则状态为 Alerting
Keep Last State 保持当前报警规则的状态 Ok 设置报警规则状态为 OK
Execution errors or timeouts
错误或超时选项 说明 Alerting 设置报警规则状态为 Alerting
Keep Last State 保持当前报警规则的状态 若数据不稳定,建议设置为
Keep Last State
Notifications
实际中通知被配置然后在多个报警中共享。详见
选项 | 说明 |
---|---|
Send to | 选择一个报警通知渠道(如某个email) |
Message | 输入一些要发送的信息。一些警告通知支持html或者更多形式。支持模板 |
Tags | 指明一系列tag(键值对),它们会被包含在通知中。只有某些通知支持,参见some notifiers |
- Alert state history and annotations
警报状态更改记录在 Grafana 数据库的内部注释表中。可以在报警的State history
部分看到相关信息或者情况历史状态。
下面是alert配置界面。
alert notifications
报警状态发生改变时,会发送通知。每个报警可以有多个通知。为了给报警增加一个通知,首先要增加一个notification channel
(如邮件,pageDuty等)。
增加一个notification channel
在dashboard的左侧栏目上:Alerting(铃状标志)|Notification channels|new channel
详见https://grafana.com/docs/grafana/latest/alerting/old-alerting/notifications/
alert报警邮件中的链接地址错误如何配置
https://stackoverflow.com/questions/41282961/how-to-edit-the-link-in-a-slack-notification-from-grafana
https://blog.csdn.net/west_jing/article/details/112873302
修改[server]
部分,以冒号开头的时注释。详见https://en.wikipedia.org/wiki/INI_file
alert产生的报警如何删除?
前往alert|Status history|Clear history|保存刷新dashboard即可清除伯氨基标志(带颜色的竖直虚线)
alert设置注意事项
- 报警基于某个请求的,而覆写(overwrite设置,如下图)某个measurement(对应一个序列)让它不在图中显示是请求后处理,这个报警是识别不了的,所有覆写的序列也会参与报警评估。因此为了方便报警设置建议:不需要的序列建议请求中用
where
排除。
Grafana面板(panel):报警功能(alerts)相关推荐
- Grafana面板(panel):从数据源请求数据
文章目录 概述 请求编辑器(query editor) Query syntax grafana UI界面上的Query tab 概述 query描述了Grafana的panel怎么和data sou ...
- Grafana面板(panel):数据处理(Transformation)---一个奇怪的功能!
文章目录 Transformation 概念 多个transformation的执行顺序 transformation类型 Add field from calculation Concatenate ...
- 面板panel与窗口frame的区别
面板panel与窗口frame的区别 References 都可以在其上加载组件 面板需要加载在组件上才能使用,而窗口不需要 JPanel和JFrame都可以作为容器存放别的控件 但JPanel一般作 ...
- AWT_面板 Panel(Java)
AWT_面板 Panel(Java) package Demo01;import java.awt.*; import java.awt.event.WindowEvent; import java. ...
- jQuery Mobile中面板panel的data-*选项
全栈工程师开发手册 (作者:栾鹏) jQuery Mobile 所有data-*选项 jQuery Mobile中面板panel的data-*选项 带有 data-role="panel&q ...
- Pandas 面板Panel
一.Panel介绍 Pandas 面板(Panel)是3维数据的存储结构,相当于一个存储 DataFrame 的字典,有3个轴(axis),分别给出描述涉及面板数据的操作的一些语义,具体如下: ite ...
- 普罗米修斯-Grafana 面板
Grafana Grafana 指标 语法: 指标类型: 新增一个QPS的demo: 1. 新增一个看板 2.配置QPS 3. 纵坐标单位说明: 4. copy一个看板: 保存为文件 函数 变量 Pr ...
- html5拖动的面板 panel,基于jQuery UI的Bootstrap Panel面板功能增强插件
LobiPanel是一款基于jQuery UI的Bootstrap Panel面板功能增强插件.通过该插件可以为Bootstrap的原生Panel面板增加编辑标题,最大化,最小化,面板拖动关闭面板等功 ...
- Bootstrap3 面板 .panel 容器
面板 虽然不总是必须的,但某些时候你可能需要将某些 DOM 内容放到一个盒子里.对于这种情况,可以试试面板组件. 创建面板 Bootstrap的面板组件是内容的容器,它由页眉.主体.页脚三部分组成.面 ...
最新文章
- Pandas 基础 (2)—— DataFrame
- python元组转字典_python中怎么将元组、字典转化为列表
- 今晚8点直播 | 美团是怎么玩儿AI的?大牛揭秘美团超大规模数据集——美团大脑
- 书Visual C++.NET应用教程(附光盘)——高等学校计算机语言应用教的评论
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
- Consul入门04 - Consul集群
- java set spliterator_Java HashSet spliterator() 方法
- linux 统计当前目录下文件或者文件夹的数量
- 红橙Darren视频笔记 Activity启动流程(API28)
- 【选手分享】你想知道的比赛思路这里都有!速查收!
- practice:如何使用2008R2上的AD管理中心
- 房费制——报表(1)
- Linux下Select多路复用实现简易聊天室
- 重大危机引发的公司经营战略问题回顾
- 伺服驱动器cn1引脚定义_伺服驱动器CN1引脚定义,和面板操作设置,跪求高手指点。说明书弄丢了.脉冲,使能,方向,接第几引脚...
- 金蝶k3单据编码规则_金蝶K3各单据操作步骤
- 吸引子传播(Affinity Propagation)算法
- libero-soc许可证申请和环境配置
- 比犀利哥更经典的话语
- Unity摄像机画面制作全景图片|截图制作全景图