SpringBoot使用SOFA-Lookout監控

dalaoyang發表於2019-03-17

本文介紹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如下所示。

``` <?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"> 4.0.0 org.springframework.boot spring-boot-starter-parent 2.1.3.RELEASE com.dalaoyang springboot2_sofa_lookout 0.0.1-SNAPSHOT springboot2_sofa_lookout springboot2_sofa_lookout

<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>

```

2.2 配置SOFA-Lookout埠

這裡需要配置一個SOFA-Lookout的埠,生產環境使用的話一定要檢視這個埠是不是被佔用了。配置如下,這裡配置的埠是8081。

spring.application.name=springboot2_sofa_lookout com.alipay.sofa.lookout.prometheus-exporter-server-port=8081

其實到這裡,SpringBoot專案已經配置完成了,當然還可以自定義一些指標,這裡不做介紹。

3.Prometheus配置

Prometheus需要配置一下剛剛SOFA-Lookout的埠,如下:

- job_name: 'springboot2_sofa_lookout' scrape_interval: 5s static_configs: - targets: ['localhost:8081']

4.Grafana

這裡也可以將Prometheus展示給Grafana,我也查詢了很多,但是貌似目前Grafana還沒有預設推薦的Dashboard,大家可以根據情況自行構建,當然,如果有好的也希望可以推薦一下。

5.測試

啟動SpringBoot應用,控制檯如下所示。

image

看到紅框部分就是啟動成功了。接下來檢視Prometheus介面,如下。

image

這裡Grafana在看一下Grafana介面,如圖。

image

6.原始碼

原始碼地址:https://gitee.com/dalaoyang/springboot_learn/tree/master/springboot2_sofa_lookout

相關文章