本文介紹springboot使用螞蟻金服sofa-lookout配合prometheus進行監控。
1.sofa-lookout介紹
上一篇已經介紹使用prometheus進行暴露springboot的一些指標進行監控,傳送門,這一篇介紹如何使用sofa-lookout配合prometheus。
sofa-lookout是螞蟻金服開源的一款解決系統的度量和監控問題的輕量級中間件服務。它提供的服務包括:metrics 的埋點、收集、加工、存儲與查詢等。
正如介紹的,sofa-lookout提供了一些常用的監控指標,比如jvm線程,jvm類加載,jvm內存,jvm垃圾回收,機器文件系統信息和機器信息。在1.5.0版本之后默認也提供了一些linux操作系統的信息。具體可以查看:https://www.sofastack.tech/sofa-lookout/docs/client-ext-metrics
2.springboot使用sofa-lookout
2.1 配置依賴
新建項目,在項目中加入sofa依賴,完整pom如下所示。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
<?xml version= "1.0" encoding= "utf-8" ?> <project xmlns= "http://maven.apache.org/pom/4.0.0" xmlns:xsi= "http://www.w3.org/2001/xmlschema-instance" xsi:schemalocation= "http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > <modelversion> 4.0 . 0 </modelversion> <parent> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-parent</artifactid> <version> 2.1 . 3 .release</version> <relativepath/> <!-- lookup parent from repository --> </parent> <groupid>com.dalaoyang</groupid> <artifactid>springboot2_sofa_lookout</artifactid> <version> 0.0 . 1 -snapshot</version> <name>springboot2_sofa_lookout</name> <description>springboot2_sofa_lookout</description> <properties> <java.version> 1.8 </java.version> </properties> <dependencies> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-web</artifactid> </dependency> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-test</artifactid> <scope>test</scope> </dependency> <dependency> <groupid>com.alipay.sofa.lookout</groupid> <artifactid>lookout-sofa-boot-starter</artifactid> <version> 1.5 . 2 </version> </dependency> <dependency> <groupid>com.alipay.sofa.lookout</groupid> <artifactid>lookout-reg-prometheus</artifactid> <version> 1.5 . 2 </version> </dependency> </dependencies> <build> <plugins> <plugin> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-maven-plugin</artifactid> </plugin> </plugins> </build> </project> |
2.2 配置sofa-lookout端口
這里需要配置一個sofa-lookout的端口,生產環境使用的話一定要查看這個端口是不是被占用了。配置如下,這里配置的端口是8081。
1
2
|
spring.application.name=springboot2_sofa_lookout com.alipay.sofa.lookout.prometheus-exporter-server-port= 8081 |
其實到這里,springboot項目已經配置完成了,當然還可以自定義一些指標,這里不做介紹。
3.prometheus配置
prometheus需要配置一下剛剛sofa-lookout的端口,如下:
1
2
3
4
|
- job_name: 'springboot2_sofa_lookout' scrape_interval: 5s static_configs: - targets: [ 'localhost:8081' ] |
4.grafana
這里也可以將prometheus展示給grafana,我也查詢了很多,但是貌似目前grafana還沒有默認推薦的dashboard,大家可以根據情況自行構建,當然,如果有好的也希望可以推薦一下。
5.測試
啟動springboot應用,控制臺如下所示。
看到紅框部分就是啟動成功了。接下來查看prometheus界面,如下。
這里grafana在看一下grafana界面,如圖。
6.源碼
源碼地址:https://gitee.com/dalaoyang/springboot_learn/tree/master/springboot2_sofa_lookout
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:https://segmentfault.com/a/1190000018472643