当前位置: 首页 > news >正文

Prometheus+Grafana+AlertManager监控SpringBoot项目并发送邮件告警通知

文章目录

  • Prometheus+Grafana+AlertManager监控平台搭建
  • 新建SpringBoot项目
    • 为Prometheus提供指标
      • 新建项目,引入依赖
      • 新建接口,运行程序
    • 推送指标到pushgateway
  • 开始监控
    • Grafana连接Prometheus数据源
    • 导入Grafana模板
    • 监控SpringBoot项目
  • 邮件告警通知
  • 同系列文章

Prometheus+Grafana+AlertManager监控平台搭建

Docker搭建并配置Prometheus

Docker拉取并配置Grafana

Docker安装并配置Node-Exporter

Docker安装并配置cAdvisor

Docker安装并运行Alertmanager

新建SpringBoot项目

为Prometheus提供指标

新建项目,引入依赖

<!--用于导出prometheus系统类型的指标数据-->
<dependency><groupId>io.micrometer</groupId><artifactId>micrometer-registry-prometheus</artifactId><version>1.9.8</version>
</dependency>

新建接口,运行程序

Prometheus配置文件中已添加该项目地址,运行后到Prometheus页面中查看连接情况
在这里插入图片描述

成功

推送指标到pushgateway

引入依赖

<dependency><groupId>io.prometheus</groupId><artifactId>simpleclient</artifactId><version>0.12.0</version>
</dependency>
<dependency><groupId>io.prometheus</groupId><artifactId>simpleclient_pushgateway</artifactId><version>0.12.0</version>
</dependency>

新增push接口,用于推送指标(job=B,instance=A)到Pushgateway

@GetMapping("push")
public void executeBatchJob(){try{String url = "192.168.251.44:9091";CollectorRegistry registry = new CollectorRegistry();Gauge guage = Gauge.build("my_custom_metric11", "This is my custom metric.").create();guage.set(1.22);guage.register(registry);PushGateway pg = new PushGateway(url);Map<String, String> groupingKey = new HashMap<String, String>();groupingKey.put("instance", "A");pg.pushAdd(registry, "B", groupingKey);} catch (Exception e){e.printStackTrace();}
}

运行后调用接口,访问Pushgateway
在这里插入图片描述

指标已被推送至Pushgateway

开始监控

Grafana连接Prometheus数据源

点击Add your first data source
在这里插入图片描述

选择Prometheus
在这里插入图片描述

Prometheus server URL中输入IP地址及端口号
注意:此处IP地址为Prometheus在Docker容器内部的IP地址
在这里插入图片描述

查看容器内ID方法:

docker exec -it 容器ID sh
ifconfig

在这里插入图片描述
退出:Ctrl+D

点击底部Save&Test
在这里插入图片描述

导入Grafana模板

在这里插入图片描述
填入模板号,点击load
在这里插入图片描述
选择之前设置的Prometheus作为数据源即可
在这里插入图片描述

监控SpringBoot项目

在这里插入图片描述

邮件告警通知

开启邮箱POP3/SMTP服务(以QQ邮箱为例)

在这里插入图片描述
在这里插入图片描述

开启后获得授权码,填到alertmanager配置文件相应位置中,并补全其他必要信息,重启alertmanager服务。
停止SpringBoot项目,等待一段时间。
进入Prometheus的Alerts页面,可以看到有告警信息,提示所监控机器不可用,状态已经为Firing,这表示已经将告警发送至Alertmanager。
在这里插入图片描述

进入AlertManager界面,可以看到告警信息。
在这里插入图片描述
AlertManager会根据配置好的规则将消息发送至邮箱。

在这里插入图片描述
在这里插入图片描述

操作完成


同系列文章

Linux安装Docker

Docker搭建并配置Prometheus

Docker拉取并配置Grafana

Docker安装并配置Node-Exporter

Docker安装并配置cAdvisor

Docker安装并运行Alertmanager

Prometheus+Grafana+AlertManager监控Linux主机状态

http://www.lryc.cn/news/135704.html

相关文章:

  • 猿辅导Motiff亮相IXDC 2023国际体验设计大会,发布新功能获行业高度关注
  • 【QT】重写QAbstractLIstModel,使用ListView来显示多列数据
  • 【从零学习python 】64. Python正则表达式中re.compile方法的使用详解
  • 【FAQ】视频云存储/安防监控EasyCVR视频汇聚平台如何通过角色权限自行分配功能模块?
  • 基于Spring Boot的社区诊所就医管理系统的设计与实现(Java+spring boot+MySQL)
  • mysql从传统模式切到GTID模式后启动主从,主从异常报错1236
  • Qt+C++串口调试接收发送数据曲线图
  • 【从零学习python 】75. TCP协议:可靠的面向连接的传输层通信协议
  • IPv4 基础概念
  • stm32片内读写项目总结(多字节读写tongxindu)
  • ECMAScript6 简介及拓展
  • 可视化构建包分析报告
  • 统一git使用方法,git状态变迁图,git commit提交规范
  • react与vue的区别
  • 成功解决SQL 错误 [22000]: 第3 行附近出现错误: 试图修改自增列[ID](达梦数据库)
  • 【算法】活用双指针完成复写零操作
  • 【面试高频题】难度 3/5,字典树热门运用题
  • vue base64图片转file流 下载到本地 或者上传
  • 无涯教程-PHP - 简介
  • web基础+HTTP协议+httpd详细配置
  • 【sql】MongoDB的增删改查分页条件等
  • 我的动态归纳(便于搜索)
  • langchain ChatGPT AI私有知识库
  • API接口常用数据格式Json,Json的定义和XML的区别
  • 密码学学习笔记(二十一):SHA-256与HMAC、NMAC、KMAC
  • 操作系统-笔记-第四章-文件管理
  • 【MiniGUI】文字颜色实现透明度变化
  • css中元素加定位之后到一定距离元素会变小
  • Java 语言实现冒泡排序
  • 面向对象单选题