学习笔记-JVM监控平台搭建

SpringBoot Actuator

1 引入依赖

xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

2 开启配置

bash 复制代码
# 暴露所有的监控点【含Prometheus】
management.endpoints.web.exposure.include: *
# 定义Actuator访问路径
management.endpoints.web.base-path: /actuator
# 开启endpoint 关闭服务功能
management.endpoint.shutdown.enabled: true

3 访问
http://127.0.0.1:8888/actuator

4 提供的信息如下表

路径 描述 默认开启
/beans 显示容器的全部的Bean,以及它们的关系 Y
/env 获取全部环境属性 Y
/env/{name} 根据名称获取特定的环境属性值 Y
/health 显示健康检查信息 Y
/info 显示设置好的应用信息 Y
/mappings 显示所有的@RequestMapping信息 Y
/metrics 显示应用的度量信息 Y
/scheduledtasks 显示任务调度信息 Y
/httptrace 显示Http Trace信息 Y
/caches 显示应用中的缓存 Y
/conditions 显示配置条件的匹配情况 Y
/configprops 显示@ConfigurationProperties的信息 Y
/loggers 显示并更新日志配置 Y
/shutdown 关闭应用程序 N
/threaddump 执行ThreadDump Y
/headdump 返回HeadDump文件,格式为HPROF Y
/prometheus 返回可供Prometheus抓取的信息 Y

Micrometer

Spring Boot 2.0以上,使用了micrometer作为底层的度量工具,micrometer是监控度量的门面,它能支持按照各种格式来暴露数据,其中就有Prometheus。

1 引入依赖

xml 复制代码
<dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

这个依赖的作用就是会开启一个endpoint,输出兼容Prometheus exporter的结果,方便Prometheus来采集。

2 进行配置

bash 复制代码
server.port: 8888
spring.application.name: deom-lesson-one
# 暴露/actuator/prometheus,如果配置了* ,则可以不配置这一行
management.endpoints.web.exposure.include: prometheus
# 暴露的数据中添加application label
management.metrics.tags.application: ${spring.application.name}

3 访问

可以看到我们已经有了prometheus的数据
http://127.0.0.1:8888/actuator/prometheus

整合Grafana

我们将上面准备好的应用部署到服务上然后对prometheus做如下配置:

yml 复制代码
- job_name: 'jvm_demo'
  metrics_path: '/actuator/prometheus'
  static_configs:
  - targets: ['10.0.4.5:8888']

然后访问地址:http://ip:9090/targets 看到up状态说明我们刚刚jvm这个节点可以用了。

然后我们新建一个数据源:

填prometheus地址:ip:9090

然后我们加载一个模板:

12856


下面你就可以得到一个有点炫酷的界面,来实时的监控服务堆内存的情况。

相关推荐
LuH1124几秒前
【论文阅读笔记】Learning to sample
论文阅读·笔记·图形渲染·点云
兔C5 分钟前
微信小程序的轮播图学习报告
学习·微信小程序·小程序
海海不掉头发13 分钟前
苍穹外卖-day05redis 缓存的学习
学习·缓存
小木_.1 小时前
【Python 图片下载器】一款专门为爬虫制作的图片下载器,多线程下载,速度快,支持续传/图片缩放/图片压缩/图片转换
爬虫·python·学习·分享·批量下载·图片下载器
一棵开花的树,枝芽无限靠近你1 小时前
【PPTist】组件结构设计、主题切换
前端·笔记·学习·编辑器
犬余2 小时前
设计模式之桥接模式:抽象与实现之间的分离艺术
笔记·学习·设计模式·桥接模式
Mitch3112 小时前
【漏洞复现】CVE-2021-45788 SQL Injection
sql·web安全·docker·prometheus·metersphere
啊瞑3 小时前
学习记录:配置mybatisplus的分页查询插件,mybatis-plus-jsqlparser 依赖
学习
码到成龚3 小时前
SQL server学习09-数据库编程(上)
数据库·学习
数据爬坡ing3 小时前
小白考研历程:跌跌撞撞,起起伏伏,五个月备战历程!!!
大数据·笔记·考研·数据分析