Spring Cloud Alibaba 2.X 简易集成 Skywalking 实现微服务链路追踪


1 摘要

为什么要做链路追踪?当微服务的数量庞大、微服务之间相互调用复杂的时候,就需要做链路追踪,这样就能够理清服务调用关系、快速定位问题。对于微服务数量较少(<10个),则可以不做链路追踪。本文将介绍基于 Spring Cloud Alibaba 2.2 集成 Skywalking 实现微服务链路追踪。

Skywalking 官网: https://skywalking.apache.org

2 Skywalking 所需条件

  • JDK 8+
  • MySQL/Elasticsearch (如果需要持久化的话)
  • 服务器内存 2G +

3 下载 Skywalking

下载地址: https://skywalking.apache.org/downloads

skywalking-1-1

3 服务配置与说明

Skywalking 包含两个服务,一个是 OAP 服务,提供后台数据处理,还有一个是 UI 服务,提供管理后台界面

启动脚本路径:

${skywalkingPath}/bin/

Skywalking OAP 服务配置:

${skywalkingPath}/config/application.yml
storage:
  selector: ${SW_STORAGE:h2}

这里可选择存储类型,支持 h2/MySQL/Elasticsearch

为快速搭建环境,这里暂时先使用默认的 h2 作为存储方式

OAP 服务使用的端口为 1180012800

web UI 服务配置:

${skywalkingPath}/webapp/webapp.yml
server:
  port: 8080

UI 服务的端口为 8080,可根据需要调整

执行启动脚本即可启动服务

4 与 SpringBoot 项目集成

在 Springboot 启动脚本中指定 Skywalking Agent 参数

简易启动脚本示例:

startup.sh

# !/bin/sh
# Springboot 启动脚本

## 路径
TARGET_PAR_PATH=/opt/springboot/springboot-skywalking-demo.jar
SKYWALKING_JAR_PATH=/usr/skywalking/agent/skywalking-agent.jar

## JVM
JAVA_OPT="-server -Xms256m -Xmx256m -Xmn512m -XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=256m"
JAVA_OPT="${JAVA_OPT} -XX:-OmitStackTraceInFastThrow"

## SkyWalking Agent配置
export SW_AGENT_NAME=springboot-skywalking-demo 
export SW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800 
export SW_AGENT_SPAN_LIMIT=2000
export JAVA_AGENT=-javaagent:${SKYWALKING_JAR_PATH}
## 启动命令
nohup java ${JAVA_OPT} ${JAVA_AGENT} -jar ${TARGET_PAR_PATH} >/dev/null 2>&1 & 

IDEA 开发工具中集成:

配置 Springboot application 启动参数 VM options:

-javaagent:D:\develop\software\apache-skywalking-apm-bin-es7\agent\skywalking-agent.jar
-DSW_AGENT_NAME=springboot-skywalking-demo
-DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800 

skywalking-2-1

5 控制台使用说明

启动 Skywalking 项目之后,即可从浏览器中打开控制台界面

Skywalking 控制台地址:

http://127.0.0.1:8080

Skywalking 控制台主界面:

skywalking-3-1

注意事项:

当发生微服务请求之后,才能够在控制台显示监控信息

右上角需要手动设置自动刷新

右下角可选择显示的时间维度

控制台其他界面

skywalking-4-1

skywalking-5-1

至此,Spring Cloud 简易集成 Skywalking 已经实现

6 推荐参考资料

微服务链路追踪组件 Skywalking 实战

Skywalking Quick Start 官方文档

7 Github 源码

Gtihub 源码地址 : https://github.com/Flying9001/springBootDemo

个人公众号:404Code,分享半个互联网人的技术与思考,感兴趣的可以关注.
404Code

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值