Spring Boot 自帶監(jiān)控功能 Actuator,可以幫助實現(xiàn)對程序內部運行情況監(jiān)控,比如監(jiān)控狀況、Bean加載情況、環(huán)境變量、日志信息、線程信息等。這一節(jié)結合 Prometheus 、Grafana 來更加直觀的展示這些信息。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供蒙自網站建設、蒙自做網站、蒙自網站設計、蒙自網站制作等企業(yè)網站建設、網頁設計與制作、蒙自企業(yè)網站模板建站服務,十載蒙自做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。
服務名 | 地址 | 端口 |
---|---|---|
Prometheus | 172.16.2.101 | 9090 |
Grafana | 172.16.2.101 | 3000 |
Spring Boot Demo | 172.16.2.204 | 8080 |
創(chuàng)建用于測試的 Spring Boot 項目,主要代碼如下。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
management:
endpoints:
web:
exposure:
include: '*'
endpoint:
health:
show-details: always
metrics:
tags:
application: actuator-demo
@SpringBootApplication
@RestController
public class SpringbootActuatorPrometheusDemoApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootActuatorPrometheusDemoApplication.class, args);
}
@RequestMapping(value = "/hello")
public String sayHello() {
for (int i = 1 ; i <= 10 ; i++) {
Thread t = new Thread(() -> {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
} , "HelloThread - " + i);
t.start();
}
return "ok";
}
/**
@Bean
MeterRegistryCustomizer<MeterRegistry> metricsCommonTags() {
return registry -> registry.config().commonTags("application", "springboot-actuator-prometheus-demo");
}
*/
}
在 prometheus.yml 中添加針對該 Spring Boot 應用 的監(jiān)控 job
- job_name: 'actuator-demo'
metrics_path: '/prometheus'
static_configs:
- targets: ['172.16.2.204:8080']
運行 Prometheus 和 Grafana:
docker start prometheus grafana
訪問 Prometheus UI http://172.16.2.101:9090 ,查看 targets ,可以看到 job 處于 UP 狀態(tài),說明配置成功了。
Grafana UI http://172.16.2.101:3000,通過Grafana的 +圖標導入(Import) JVM (Micrometer) dashboard:
查看JVM (Micormeter) dashboard:
可以看到應用的 JVM 的 堆棧、 線程、 IO 等等信息。
https://github.com/gf-huanchupk/SpringBootLearning/tree/master/springboot-actuator-prometheus
https://micrometer.io/docs/registry/prometheus
https://prometheus.io/docs/prometheus
標題名稱:SpringBootActuator整合Prometheus
網頁網址:http://www.muchs.cn/article36/ijsssg.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站營銷、關鍵詞優(yōu)化、Google、手機網站建設、、網站收錄
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)