Spring Cloud 微服务系列文章,点击上方合集↑
1. 简介
SkyWalking是一个针对分布式系统的应用程序性能监视工具和分析平台,它是基于「Java Agent探针」的技术,对服务进行监控和追踪,具有「零侵入性」特点。
SkyWalking对运行中的服务进行实时监控,收集系统的调用链、方法调用路径等关键数据指标。
官网地址:https://skywalking.apache.org
2. 下载安装
可以直接下载二进制包或通过源码编译打包。
2.1 直接下载(推荐)
官网下载地址:https://skywalking.apache.org/downloads/

-
这里下载9.1.0的版本(高版本的需要Java11以上版本才行)。
官网下载很慢,网盘下载(推荐):「apache-skywalking-apm-9.1.0.tar.gz」来自UC网盘分享https://drive.uc.cn/s/49ef857d0e944
2.2 编译安装
通过maven命令编译源码,生成可以运行的二进制包。
# 下载源码
git clone https://github.com/apache/skywalking.git
# 进入目录
cd skywalking
# 切换分支
git checkout v9.1.0
git submodule init
# 这里容易超时,注意检查,可以多试几次
git submodule update
# maven打包
mvn clean package -DskipTests
编译后的包都在目录/dist下。
3. 运行服务
3.1 修改端口号
将默认8080
端口修改为8050
(8080
端口经常被占用)。
配置文件的路径:apache-skywalking-apm-bin/webapp/webapp.yml
cd webapp
vim webapp.yml
3.2 启动服务
在apache-skywalking-apm-bin/bin
路径下执行如下命令:
# mac/Linux
sh startup.sh
# windows
startup.bat
3.3 访问
浏览器访问:http://localhost:8050/ ,出现如下界面说明启动成功。
4. 下载java探针
官网下载地址:https://skywalking.apache.org/downloads/

-
下载8.16.0版本。
官网下载很慢,网盘下载(推荐):「skywalking-agent-8.16.0.zip」来自UC网盘分享https://drive.uc.cn/s/bd79d9556c314
5. 使用探针
5.1 运行jar包时使用探针
Java运行jar包的命令如下:
java -jar myapp.jar
我们加上如下参数,-javaagent
指定探针的位置。
java -javaagent:/路径/skywalking-agent.jar
-Dskywalking.agent.service_name=serviceName
-Dskywalking.collector.backend_service=localhost:11800
-jar myapp.jar
-
-javaagent:/路径/skywalking-agent.jar
指定探针的位置 -
-Dskywalking.agent.service_name=serviceName
指定服务名称 -
Dskywalking.collector.backend_service=localhost:11800
指定收集器地址
5.2 IntelliJ IDEA 上使用探针
IntelliJ IDEA启动应用的时候加上VM参数



输入如下:
-javaagent:/路径/skywalking-8.5.0/agent/skywalking-agent.jar
-Dskywalking.agent.service_name=gateway-service
-Dskywalking.collector.backend_service=localhost:11800
-
-javaagent:/路径/skywalking-agent.jar
指定探针的位置 -
-Dskywalking.agent.service_name=serviceName
指定服务名称 -
Dskywalking.collector.backend_service=localhost:11800
指定收集器地址
在IntelliJ IDEA中对我们之前的gateway-service
、provider-service
、consumer-service
三个服务加上探针。
1)gateway-service
skywalking agent 默认不支持 gateway,需要将optional-plugins
目录下的gateway相关的插件(jar包)复制到plugins
目录下。(网盘下载的我已经放好了)。


-javaagent:/路径/agent/skywalking-agent.jar
-Dskywalking.agent.service_name=gateway-service
-Dskywalking.collector.backend_service=localhost:11800
2)provider-service
-javaagent:/路径/agent/skywalking-agent.jar
-Dskywalking.agent.service_name=provider-service
-Dskywalking.collector.backend_service=localhost:11800
3)consumer-service
-javaagent:/路径/agent/skywalking-agent.jar
-Dskywalking.agent.service_name=consumer-service
-Dskywalking.collector.backend_service=localhost:11800
注意不同的服务对应的-Dskywalking.agent.service_name
不一样。
6. 服务监控和链路查看
浏览器访问接口: http://localhost:10000/consumer-service/consumer/test?name=zhangsan
多访问几次接口,然后在后台查看监控结果。后台地址:http://localhost:8050/
6.1 查看服务
gateway-service
、provider-service
、consumer-service
三个服务。
6.2 查看拓扑图
User
->gateway-service
->provider-service
->consumer-service
6.3 查看请求链路
7. 总结
SkyWalking是一个针对分布式系统的应用程序性能监视工具和分析平台。它利用Java Agent探针技术来监控和追踪服务,同时具备零侵入性的特点。通过实时监控和收集关键数据指标,SkyWalking帮助用户快速定位性能瓶颈和异常情况,为分布式系统提供全面的监控和管理服务。

Spring Cloud 微服务系列 完整的代码在仓库的sourcecode/spring-cloud-demo
目录下。
gitee(推荐):https://gitee.com/cunzaizhe/xiaohuge-blog
github:https://github.com/tigerleeli/xiaohuge-blog
关注微信公众号:“小虎哥的技术博客”,让我们一起成为更优秀的程序员❤️!
原文始发于微信公众号(小虎哥的技术博客):Skywalking 服务监控和链路追踪
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/169768.html