本文介紹springboot使用螞蟻金服sofa-lookout配合prometheus進(jìn)行監(jiān)控。
1.sofa-lookout介紹
上一篇已經(jīng)介紹使用prometheus進(jìn)行暴露springboot的一些指標(biāo)進(jìn)行監(jiān)控,傳送門,這一篇介紹如何使用sofa-lookout配合prometheus。
sofa-lookout是螞蟻金服開源的一款解決系統(tǒng)的度量和監(jiān)控問題的輕量級(jí)中間件服務(wù)。它提供的服務(wù)包括:metrics 的埋點(diǎn)、收集、加工、存儲(chǔ)與查詢等。
正如介紹的,sofa-lookout提供了一些常用的監(jiān)控指標(biāo),比如jvm線程,jvm類加載,jvm內(nèi)存,jvm垃圾回收,機(jī)器文件系統(tǒng)信息和機(jī)器信息。在1.5.0版本之后默認(rèn)也提供了一些linux操作系統(tǒng)的信息。具體可以查看:https://www.sofastack.tech/sofa-lookout/docs/client-ext-metrics
2.springboot使用sofa-lookout
2.1 配置依賴
新建項(xiàng)目,在項(xiàng)目中加入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端口
這里需要配置一個(gè)sofa-lookout的端口,生產(chǎn)環(huán)境使用的話一定要查看這個(gè)端口是不是被占用了。配置如下,這里配置的端口是8081。
1
2
|
spring.application.name=springboot2_sofa_lookout com.alipay.sofa.lookout.prometheus-exporter-server-port= 8081 |
其實(shí)到這里,springboot項(xiàng)目已經(jīng)配置完成了,當(dāng)然還可以自定義一些指標(biāo),這里不做介紹。
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還沒有默認(rèn)推薦的dashboard,大家可以根據(jù)情況自行構(gòu)建,當(dāng)然,如果有好的也希望可以推薦一下。
5.測(cè)試
啟動(dòng)springboot應(yīng)用,控制臺(tái)如下所示。
看到紅框部分就是啟動(dòng)成功了。接下來(lái)查看prometheus界面,如下。
這里grafana在看一下grafana界面,如圖。
6.源碼
源碼地址:https://gitee.com/dalaoyang/springboot_learn/tree/master/springboot2_sofa_lookout
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。
原文鏈接:https://segmentfault.com/a/1190000018472643