乐趣区

SpringBoot使用SOFA-Lookout监控

本文介绍 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”>
<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。
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 应用,控制台如下所示。

看到红框部分就是启动成功了。接下来查看 Prometheus 界面,如下。

这里 Grafana 在看一下 Grafana 界面,如图。

6. 源码
源码地址:https://gitee.com/dalaoyang/springboot_learn/tree/master/springboot2_sofa_lookout

本文作者:dalaoyang 阅读原文
本文为云栖社区原创内容,未经允许不得转载。

退出移动版