首先,添加依賴以下依賴:java
<dependency>spring
<groupId\>org.springframework.boot</groupId\> <artifactId\>spring-boot-starter-actuator</artifactId\> </dependency\> <dependency\> <groupId\>io.prometheus</groupId\> <artifactId\>simpleclient\_spring\_boot</artifactId\> <version\>0.0.26</version\> </dependency\>複製代碼
而後,在啓動類Application.java
添加以下註解:docker
@SpringBootApplication
@EnablePrometheusEndpoint
@EnableSpringBootMetricsCollector
public class Application {app
public static void main(String\[\] args) { SpringApplication.run(Application.class, args); }
}複製代碼spring-boot
最後,配置默認的登陸帳號和密碼,在application.yml
中:lua
security:
user:spa
name: user password: pwd複製代碼
提示:不建議配置management.security.enabled: false
3d
啓動應用程序後,會看到以下一系列的Mappings
code
利用帳號密碼訪問http://localhost:8080/application/prometheus,能夠看到 Prometheus 格式的指標數據blog
首先,獲取 Prometheus 的 Docker 鏡像:
$ docker pull prom/prometheus複製代碼
而後,編寫配置文件prometheus.yml
:
global:
scrape_interval: 10s
scrape_timeout: 10s
evaluation_interval: 10m
scrape_configs:
scrape_interval: 5s
scrape_timeout: 5s
metrics_path: /application/prometheus
scheme: http
basic_auth:
username: user
password: pwd
static_configs:
接着,啓動 Prometheus :
$ docker run -d \
--name prometheus \
-p 9090:9090 \
-m 500M \
-v "$(pwd)/prometheus.yml":/prometheus.yml \
-v "$(pwd)/data":/data \
prom/prometheus \
-config.file=/prometheus.yml \
-log.level=info複製代碼
最後,訪問http://localhost:9090/targets, 檢查 Spring Boot 採集狀態是否正常。
首先,獲取 Grafana 的 Docker 鏡像:
$ docker pull grafana/grafana複製代碼
而後,啓動 Grafana:
$ docker run --name grafana -d -p 3000:3000 grafana/grafana複製代碼
接着,訪問http://localhost:3000/配置 Prometheus 數據源:
Grafana 登陸帳號 admin 密碼 admin
最後,配置單個指標的可視化監控面板:
提示,此處不能任意填寫,只能填已有的指標點,具體的能夠在 Prometheus 的首頁看到,即http://localhost:9090/graph
多配置幾個指標以後,便可有以下效果: