Spring Cloud Alibaba 服务链路追踪Skywalking

·  阅读 352
Spring Cloud Alibaba 服务链路追踪Skywalking

一、前言

SkyWalking针对的是微服务和分布式服务,包括现在的容器化。在这样的环境中,应用间依赖关系复杂多变,无论是设计、开发还是运维团队,都不具备对系统实际关系和运行情况的理解能力。主流大型企业的内部系统都有几十个子系统,其中有上百个服务和上千个实例在运行,理解这套系统的依赖关系是SkyWalking要解决的第一大问题。

Skywalking创始人是中国人吴晟,他是Apache软件基金会第一位中国董事。

GitHub地址:github.com/apache/skyw…

二、安装运行

# 下载源码
git clone https://github.com/apache/skywalking.git

cd skywalking/

# 切换分支
git checkout v8.5.0

git submodule init

# 这里容易超时,注意检查,可以多试几次
git submodule update

# maven编译 windows
mvnw clean package -DskipTests

# maven编译 mac
./mvnw clean package -DskipTests
复制代码

编译时间比较长(运气不好要半个小时),请耐心等待。所有打出来的包都在目录/dist 下

解压/dist/apache-skywalking-apm-bin.tar.gz

# 运行
sh startup.sh
复制代码

访问:http://localhost:8080/

三、使用

SkyWalking的使用是无代码侵入的,而这种无侵入是基于Java的JavaAgent技术。

JavaAgent在字节码文件生成Class对象之前对字节码文件进行修改。

使用方法就是添加-javaagent:xxx.jar。如java -javaagent:xxx.jar -jar test.jar

# 添加JavaAgent
-javaagent:${absolute path}/skywalking-agent.jar

# 后面传入服务名称参数
-Dskywalking.agent.service_name=serviceName
复制代码

Idea中 添加JavaAgent:

-javaagent:/Users/liulihu/workplace/development/blog/tools/apache-skywalking-apm-bin/agent/skywalking-agent.jar -Dskywalking.agent.service_name=consumer-service
复制代码

QQ20210529-220039@2x.png

然后进行多次请求(有时候要等一两分钟才能同步过来),可以在监控台看到监控信息。

QQ20210529-224917@2x.png

QQ20210529-232426@2x.png

QQ20210529-232305@2x.png

四、结语

这里这是先尝个鲜,后续有时间再详细说一下JavaAgent原理和Skywalking的实际使用。

源码地址:github.com/tigerleeli/…

同步微信公众号:小虎哥的技术博客

wx_qrcode_1.jpg

分类:
后端
标签:
分类:
后端
标签:
收藏成功!
已添加到「」, 点击更改