摘自我球的docs文档,我没时间在CSDN上再写一份,见
前景提要
注意:官方提供的simpleclient_spring_boot这个starter在springboot2.0中不支持,官方issue:https://github.com/prometheus/client_java/issues/345
会报以下错误:
Caused by: java.lang.ClassNotFoundException: org.springframework.boot.actuate.endpoint.AbstractEndpoint
at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[na:1.8.0_201]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_201]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) ~[na:1.8.0_201]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_201]
相关的组件介绍:
正式开始
pom添加依赖:
<!-- Spring boot actuator to expose metrics endpoint -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- Micormeter core dependecy -->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-core</artifactId>
</dependency>
<!-- Micrometer Prometheus registry -->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
application.yml配置监控指标:
扫描二维码关注公众号,回复:
10663366 查看本文章
|
服务发现
该部分正在测试阶段,稍后开放,不影响用户当前使用
安全认证
--------该部分不需要,直接由NGINX层面完成-----------
以下是在项目中添加security安全依赖,也可以使用系统自己的安全认证
配置pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
配置application.xml
|
配置prometheus.xml
|
样例效果
grafana的dashboard json demo:
spring-boot-statistics_rev2.json
Prometheus监控效果:
参考链接:
https://docs.spring.io/spring-metrics/docs/current/public/prometheus
https://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-endpoints.html
https://prometheus.io/docs/prometheus/latest/configuration/configuration/
https://www.wqp0010.top/2018/12/27/SpringBoot2-0%E6%95%B4%E5%90%88Prometheus-Grafana/
https://segmentfault.com/a/1190000018642077
https://juejin.im/post/5aad3351f265da23994e4ce7
代码稍后给你们。。。