监控可视化:Skywalking实时追踪服务链路
全链路追踪的作用
对请求源头到底层服务的调用链路中间的所有环节进行监控。
skywalking是什么
官方网站
skywalking是分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于容器(Docker、K8s、Mesos)架构而设计。
SkyWalking 是观察性分析平台和应用性能管理系统,提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。
SkyWalking 环境搭建部署
下载 SkyWalking
apache-skywalking-apm-10.0.1.tar.gz
https://www.apache.org/dyn/closer.cgi/skywalking/10.0.1/apache-skywalking-apm-10.0.1.tar.gz
skywalking的后端服务OAP+可视化UI
apache-skywalking-java-agent-9.3.0.tgz
https://www.apache.org/dyn/closer.cgi/skywalking/java-agent/9.3.0/apache-skywalking-java-agent-9.3.0.tgz
用于从微服务采集数据的探针
搭建SkyWalking OAP 服务
1)修改配置
先使用默认的H2数据库存储,不用修改config/application.yml配置
skywalking-web-ui服务会占用 8080 端口, 修改端口可以修改webapp/webapp.yml
2)windows下启动脚本bin/startup.bat
启动成功后会启动两个服务,一个是skywalking-oap-server,一个是skywalking-web-ui
访问UI界面,如果端口改为了18080,访问:http://localhost:18080/
微服务接入Skywalking agent探针
微服务配置jvm参数,接入skywalking
以订单服务为例,idea启动配置中配置skywalking agent
账户服务,库存服务同上
测试,用户下单,在skywalking UI界面查看是否有链路数据
常见问题: 没有查看到网关服务的数据
需要将agent包下的optional-plugins/apm-spring-cloud-gateway-4.x-plugin-9.3.0.jar 拷贝到plugins下
关于Skywalking更多的操作,会在Skywalking实战课程中讲解
小结
通过Skywalking可以实现微服务调用链路追踪