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

windows版本:Prometheus+Grafana(普罗米修斯+格拉法纳)监控 JVM

文章目录

  • Prometheus 的安装
      • 代码中添加依赖
      • 下载 Prometheus zip包
  • Grafana 的安装
    • 连接 普罗米修斯
        • 在 格拉法纳 的界面找到 Data sources
        • 配置数据源
        • 创建仪表板-1
        • 创建仪表板-2
        • 创建仪表板-3
        • 查看仪表板
        • 结束
  • 但是! 虽然集成起来,很方便,但是这也只能大体的看一下 jvm 当前的各项指标而已。如果说:某个时刻,I/O 突然拉高,我想知道是哪一个方法导致的?哪一个线程导致的?使用 普罗米修斯+拉格法纳 就很困难了

Prometheus 的安装

代码中添加依赖

<!--        普罗米修斯 监控软件--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>io.micrometer</groupId><artifactId>micrometer-registry-prometheus</artifactId></dependency>

还需要在 配置文件中添加一点配置:

management:endpoints:web:exposure:include: "*"  # 开放所有端点

然后就可以启动项目,访问 xxxxxxxxxxx/actuator/prometheus 这个地址了
如果看到下面这样的文字, 这一步就完成了
在这里插入图片描述
但是这里有两个问题

  1. 数据看不懂,很抽象,要是有个可视化的界面就好了,配上饼图等各种图最好了
  2. 必须手动点击刷新按钮才能看到最新的数据

所以就有了下面的 内容

下载 Prometheus zip包

官网很慢,这里我推荐使用国内的镜像

https://mirrors.tuna.tsinghua.edu.cn/github-release/prometheus/prometheus/

下载 windows amd64 的zip 包 下载之后修改一下 目录里面自带的 yml 文件

scrape_configs:- job_name: 'spring-boot'metrics_path: '/actuator/prometheus'static_configs:- targets: ['localhost:8080']

然后在文件地址栏里面输入 cmd 然后按回车并输入:

.\prometheus.exe --config.file=prometheus.yml

不要关控制台,接着在浏览器中访问:

http://localhost:9090/query

看到下面的展示就算成功
在这里插入图片描述

Grafana 的安装

  1. https://pan.baidu.com/s/1lBBixtqEddfwh_ARpiqHbw 提取码:p9db 获取安装包
  2. 解压之后 进入到 bin 目录下
  3. 依旧是cmd里面输入 .\grafana-server.exe
  4. 访问 localhost:3000端口
  5. 默认的账号密码是 admin /admin 如果不对,那么就执行下一步
  6. 重置账号密码的命令是:grafana-cli admin reset-admin-password admin (注意,此时 grafana-server 服务是没有关闭的,是一个新的 cmd 窗口执行这个命令)
  7. 使用 admin/admin 登录之后,会让你改密码

连接 普罗米修斯

在 格拉法纳 的界面找到 Data sources

在这里插入图片描述

配置数据源

在这里插入图片描述

创建仪表板-1

在这里插入图片描述

创建仪表板-2

在这里插入图片描述

创建仪表板-3

在这里插入图片描述

查看仪表板

在这里插入图片描述

结束

在这里插入图片描述

但是! 虽然集成起来,很方便,但是这也只能大体的看一下 jvm 当前的各项指标而已。如果说:某个时刻,I/O 突然拉高,我想知道是哪一个方法导致的?哪一个线程导致的?使用 普罗米修斯+拉格法纳 就很困难了

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

相关文章:

  • 《Redis集群故障转移与自动恢复》
  • Myqsl建立库表练习
  • 零基础渗透测试全程记录(打靶)——Prime
  • linux远程部署dify和mac本地部署dify
  • java python
  • c#联合Halcon进行OCR字符识别(含halcon-25.05 百度网盘)
  • Docker 101:面向初学者的综合教程
  • Go 语言中的结构体、切片与映射:构建高效数据模型的基石
  • 五、Nginx、RabbitMQ和Redis在Linux中的安装和部署
  • Homebrew 入门教程(2025 年最新版)
  • docker-compose搭建 redis 集群
  • ETCD的简介和使用
  • 通用同步/异步收发器USART串口
  • Qwen-OCR:开源OCR技术的演进与全面分析
  • 嵌入式学习(day25)文件IO:open read/write close
  • Baumer高防护相机如何通过YoloV8深度学习模型实现木板表面缺陷的检测识别(C#代码UI界面版)
  • iOS混淆工具有哪些?团队协作视角下的分工与防护方案
  • Unity DOTS(一):ECS 初探:大规模实体管理与高性能
  • 鸿蒙下载图片保存到相册,截取某个组件保存到相册
  • 数据库常用操作
  • Linux 可执行程序核心知识笔记:ELF、加载、虚拟地址与动态库
  • 鸿蒙本地与云端数据双向同步实战:从原理到可运行 Demo 的全流程指南
  • Web学习笔记5
  • Linux环境gitlab多种部署方式及具体使用
  • 深入理解二维数组创建与使用
  • 使用正则中的sub实现获取我们匹配的字符串,然后追加指定字符
  • Linux图形化登录界面不显示root
  • SQL Server增加对UTF-8的支持
  • C语言(03)——斐波那契数列的理解和运用(超详细版)
  • 编程与数学 03-003 计算机操作系统 19_操作系统性能优化(二):内存与I/O性能优化