Promrtheus+Grafana+onealert--实现报警

article/2025/10/22 3:52:13

目录

前言

一、定义

1.告警功能概述

2.通知告警信息

3.prometheus监控系统的告警逻辑

1.告警功能:

2.静默、抑制、分组等功能;

二、Grafana+onealert报警

登陆http://www.onealert.com/→注册帐户→登入后台管理​编辑

​编辑 获取appkey

 1.在Grafana中配置Webhook URL

 2.测试cpu负载告警

 3.测试报警

 开始测试

 睿象云中也提示告警信息

我们解决问题后,只需在睿象云中将告警关闭就行,就会当作问题被解决了

​编辑 邮件中会告知告警已解决


前言

Prometheus对指标的收集、存储同告警能力分属于Prometheus Server和AlertManager(通用的组件)两个独立的组件,前者仅负责基于"告警规则"生成告警通知,具体的告警操作则由后者完成;

Alertmanager负责处理由客户端发来的告警通知客户端通常是Prometheus server,但它也支持接收来自其它工具的告警;
Alertmanager对告警通知进行分组、去重后,根据路由规则将其路由到不同的receiver,如Email、短信或PagerDuty等;
目前Alertmanager还不支持钉钉,那用户完全可以通过Webhook与钉钉机器人进行集成,从而通过钉钉接收告警信息。同时AltManager还提供了静默和告警抑制机制来对告警通知行为进行优化
PS:webhook是一个APr概念, webhoo是一种web回调或者http的push APT.Webhook作为一个轻量的事件处理应用
 

一、定义

1.告警功能概述

prometheus对指标的收集、存储与告警能力分属于Prometheus serve和alertmanager两个独立的组件,pro-server只负责通过"告警规则"生成告警通知,具体告警操作是由alertmmanager完成
告警规则:
是由PromQL编写的布尔值表达式使用>< =与一个常用量值,比如80%进行比较,其返回值为true或false

prometheus-server对抓取到的指标序列与告警规则中做为比较的Prometheus匹配,则会把此样本值抓取过来作比较,若返回值为true则认为指标异常,不能满足false,则为正常值以上表达式为告警规则表达式
比如:筛选一个指标数据cpu使用率<0%系统异常
 

2.通知告警信息

一旦条件表达式为true了就会触发通知信息,送给altermanager,由alter借助特定服务的API或者访问入口,将此信息发出去一般称为告警媒介,也可以借助邮件进行告警SMTP

3.prometheus监控系统的告警逻辑

route:告警路由,分组、分类分发告警消息给不同渠道

prometheus通过alter-rule规则,生成告警通知给altermanager
altermanager会生成本地的告警路由表(第一路由默认称为根路由,所有的告警信息都需要一个根路由,没有一个匹配项,则需要设置一个默认路由)为实现将特定的信息发送给特定的用户
例如:
按消息级别来看,严重、中等、普通级别,红色报警、蓝色报警,应用发送方
按分组:业务运维、系统运维、基础设施运维、k8s运维

1.告警功能:

除了基本的告警通知能力外,Altermanager还支持对告警进行去重、分组、抑制、

2.静默、抑制、分组等功能;

分组 (Grouping):将相似告警合并为单个告警通知的机制,在系统因大面积故障而触发告警潮时,分组机制能避免用户被大量的告警噪声淹没,进而导致关键信息的隐没;
抑制(Inhibition):系统中某个组件或服务故障而触发告警通知后,那些依赖于该组件或服务的其它组件或服务可能也会因此而触发告警,抑制便是避免类似的级联告警的一种特性,从而让用户能将精力集中于真正的故障所在;
静默(silent):是指在一个特定的时间窗口内,即便接收到告警通知,Alertmanager也不会真正向用户发送告警信息的行为;通常,在系统例行维护期间,需要激活告警系统的静默特性;
路由(route):用于配置Alertmanager如何处理传入的特定类型的告警通知,其基本逻辑是根据路由匹配规则的匹配结果来确定处理当前告警通知的路径和行为
 

二、Grafana+onealert报警

Prometheus 报警需要使用 alertmanager 这个组件,而且报警规则需要手动编写(对运维来说不友好)。所以我这里选用 grafana+onealert 报警。注意:实现报警前把所有机器时间同步再检查一遍

登陆http://www.onealert.com/→注册帐户→登入后台管理

 获取appkey

 1.在Grafana中配置Webhook URL

1、在Grafana中创建Notification channel,选择类型为Webhook;
2、推荐选中Send on all alerts和Include image,Cloud Alert体验更佳;
3、将第一步中生成的Webhook URL填入Webhook settings Url;
URL格式:
http://api.aiops.com/alert/api/event/prometheus/bd8cc0af7b2644f1834a8d0b9d9e5ced4、Http Method选择POST;
5、Send Test&Save;

 2.测试cpu负载告警

现在可以去设置一个报警来测试了(这里以我们前面加的 cpu 负载监控来做测试)

#查看cpu占用率
(1- ((sum(increase(node_cpu_seconds_total{mode="idle"}[1m])) by(instance)) / (sum(increase(node_cpu_seconds_total[1m])) by(instance))))*100

 3.测试报警

在被监控端下载一个stress测试工具

yum install -y epel*
yum install -y stress

 开始测试

设置4核cpu,此时cpu就会被冲高

发来的报警如下图

邮箱会发来报警邮件

 睿象云中也提示告警信息

我们解决问题后,只需在睿象云中将告警关闭就行,就会当作问题被解决了

 邮件中会告知告警已解决


http://chatgpt.dhexx.cn/article/Kugj7Q7B.shtml

相关文章

OneAlert 入门(四)——事件分派和通知必达

OneAlert 是国内首个 SaaS 模式的云告警平台&#xff0c;集成国内外主流监控/支撑系统&#xff0c;实现一个平台上集中处理所有 IT 事件&#xff0c;提升 IT 可靠性。有了 OneAlert&#xff0c;你可以更快更合理地为事件划分优先级、分配路径&#xff0c;从而极大地提高团队的协…

OneAlert 入门(三)——事件分析

OneAlert 是国内首个 SaaS 模式的云告警平台&#xff0c;集成国内外主流监控/支撑系统&#xff0c;实现一个平台上集中处理所有 IT 事件&#xff0c;提升 IT 可靠性。有了 OneAlert&#xff0c;你可以更快更合理地为事件划分优先级、分配路径&#xff0c;从而极大地提高团队的协…

OneAlert 入门(二)——事件分析

OneAlert 是国内首个 SaaS 模式的云告警平台&#xff0c;集成国内外主流监控/支撑系统&#xff0c;实现一个平台上集中处理所有 IT 事件&#xff0c;提升 IT 可靠性。有了 OneAlert&#xff0c;你可以更快更合理地为事件划分优先级、分配路径&#xff0c;从而极大地提高团队的协…

js中的function fn(){}和var fn=function(){}

函数声明&#xff1a; funName()//正常执行 function funName(){//code }函数表达式&#xff1a; funName() //报错 funName is not a function var funNamefunction(){//code }解析器在向执行环境加载数据时&#xff0c;对这两种是有区别的&#xff0c;解析器会率先读取函…

JS--JS 的 new 做了什么?

1. 创建临时对象/新对象 2. 绑定原型 3. 指定 this 临时对象 4. 执行构造函数 5. 返回临时 参考借鉴其他博客非原创&#xff0c;总结下&#xff0c;以制作一个策略类战争游戏为例&#xff0c;玩家可以操作一堆士兵攻击敌方。 我们着重来研究一下这个游戏里面的「制造士…

29-js

JS—Day01 第0节&#xff1a;JS简介 编译语言&#xff1a;在运行之前会源代码进行编译。 为什么需要编译&#xff1a;我们写的代码通过高级语言写&#xff08;C&#xff0c;java&#xff09;面向用户友好。但是计算机只认识0或1&#xff0c;所有我们需要将写好的源代码便以为…

jQuery.fn.extend() 的源码实现

jQuery.fn.extend(object) 概述 在 jQuery 下添加实例方法 参数 参数说明object扩展 jQuery 实例方法的对象&#xff0c;里面包含着函数 示例 目的&#xff1a;在 jQuery 下增加两个实例方法 代码&#xff1a; const aMin function (a, b) {return a < b ? a : b;…

[JavaScript实例] 兼容IE和最新FF的复制粘贴代码

在网上看了很多这样的代码&#xff0c;但是在最新版本的火狐上都是失效了…… 没办法了&#xff0c;只能自己写了&#xff01; 这个方法主要是复制文本的内容包括HTML代码&#xff0c;以及很多网站实现的文章末尾添加的文章来源功能&#xff01;好了&#xff0c;话就不多说了&a…

JSF 组件开发

组件模型的关键考验就是&#xff1a;能否从第三方供应商购买组件&#xff0c;并把它们插入应用程序&#xff1f;与可购买可视 Swing 组件一样&#xff0c;也可以购买 Java ServerFaces (JSF) 组件&#xff01;需要一个好玩的日历&#xff1f;可以在开源实现和商业组件之间选择。…

欧拉函数及其计算

欧拉函数 1. 定义 什么是欧拉函数&#xff1f; 任意给定正整数n&#xff0c;请问在小于等于n的正整数之中&#xff0c;有多少个与n构成互质关系&#xff1f;&#xff08;比如&#xff0c;在1到8之中&#xff0c;有多少个数与8构成互质关系&#xff1f;&#xff09; 计算这个值…

欧拉公式理解

https://blog.csdn.net/xieyan0811/article/details/72833722 欧拉公式是数学里最令人着迷的公式之一&#xff0c;它将数学里最重要的几个常数联系到了一起&#xff1a;两个超越数&#xff1a;自然对数的底e&#xff0c;圆周率π&#xff1b;两个单位&#xff1a;虚数单位i和自…

高数 不定积分 欧拉代换

高数 不定积分 欧拉代换&#xff1a;

用虚数i与欧拉公式来解释分数阶微积分

ps:如果研究又遇到分数阶相关课题的童鞋可以与博主联系获取分数阶相关的源代码&#xff0c;不图什么&#xff0c;就图个点赞 一、问题简介 在最近的课题中接触到了分数阶导数相关的东西&#xff0c;比如函数 f ( t ) f(t) f(t)对t的0.5阶导等等&#xff0c;网上有一些对于分数…

常用的积分方法讨论(数学表达与代码整理)(龙格-库塔、中值积分、欧拉积分)

积分方法讨论&#xff08;数学表达与代码整理&#xff09; 数学原理 1.1 四元数与角速度的关系 在无人机或无人车的导航系统中常常采用四元数代替欧拉角来表示机体的旋转&#xff0c;因为欧拉角在计算过程中容易产生奇异&#xff0c;这与欧拉角的计算需要利用正弦、余弦公式…

常微分方程的解法 (二): 欧拉(Euler)方法

上一节讲了 常微分方程的三种离散化 方法:差商近似导数、数值积分、Taylor 多项式近似。 目录 2 欧拉&#xff08;Euler&#xff09;方法 2.1 向前 Euler 公式、向后 Euler 公式 2.2 Euler 方法的误差估计 3 改进的 Euler 方法 3.1 梯形公式 …

微积分 --- 欧拉数e的计算方法(个人学习笔记)

计算方法1&#xff1a; 计算方法2&#xff1a; 对于100来说&#xff0c;分37份的话&#xff0c;其值最接近e&#xff0c;且所有份的乘积最大为9.2944e15。 下面是从微积分的角度去求证&#xff0c;如果要让y为最大值&#xff0c;应该让xc/e&#xff0c;这就是最优份数。 &am…

考研数二第十七讲 反常积分与反常积分之欧拉-泊松(Euler-Poisson)积分

反常积分 反常积分又叫广义积分&#xff0c;是对普通定积分的推广&#xff0c;指含有无穷上限/下限&#xff0c;或者被积函数含有瑕点的积分&#xff0c;前者称为无穷限广义积分&#xff0c;后者称为瑕积分&#xff08;又称无界函数的反常积分&#xff09;。 含有无穷上限/下…

#欧拉第二积分(伽马函数)

伽玛函数&#xff0c;也叫欧拉第二积分&#xff0c;是阶乘函数在实数与复数上扩展的一类函数。 伽玛函数作为阶乘函数的延拓&#xff0c;是定义在复数范围内的亚纯函数&#xff0c;通常写成&#xff0c;负整数和0是它的一阶极点。 实数域&#xff1a; 复数域&#xff1a; 在解…

常见的数值积分方法 (欧拉、中值、龙格-库塔,【常用于IMU中】)

1. 积分基本概念 设F(x)为函数f(x)的一个原函数&#xff0c;我们把函数f(x)的所有原函数F(x)C&#xff08;C为任意常数&#xff09;叫做函数f(x)的不定积分(indefinite integral)。 非线性微分方程: 在有限的时间间隔Δt积分: 连续时间内积分: 工程上最常见的有三种&#xff…

欧拉积分法

数值积分法是求定积分的近似值的数值方法。即用被积函数的有限个抽样值的离散或加权平均近似值代替定积分的值。 数值积分法也是计算机仿真中常用的一种方法。在已知函数的微分方程时&#xff0c;求解函数下一时刻的值&#xff0c;我们主要有欧拉法、梯形法和龙格库塔法。 欧拉…