场景
链路追踪
随着微服务分布式系统变得日趋复杂,越来越多的组件开始走向分布式化,如分布式服务、分布式数据库、分布式缓存等,使得后台服务构成了一种复杂的分布式网络。在服务能力提升的同时,复杂的网络结构也使问题定位更加困难。在一个请求在经过诸多服务过程中,出现了某一个调用失败的情况,查询具体的异常由哪一个服务引起的就变得十分抓狂,问题定位和处理效率是也会非常低。
分布式链路追踪就是将一次分布式请求还原成调用链路,将一次分布式请求的调用情况集中展示,比如各个服务节点上的耗时、请求具体到达哪台机器上、每个服务节点的请求状态等等。
若依微服务版手把手教你本地搭建环境并运行前后端项目:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/109363303
在上面搭建起来微服务的架构之后,怎样实现链路追踪。
skywalking
SkyWalking是一个可观测性分析平台(Observability Analysis Platform 简称OAP)和应用性能管理系统(Application Performance Management 简称 APM)。提供分布式链路追踪,服务网格(Service Mesh)遥测分析,度量(Metric)聚合和可视化一体化解决方案。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
skywalking下载地址
http://skywalking.apache.org/downloads/
选择apm下载
这里是Windows版本,点击Distribution下的合适版本
这里点击8.4.0下的tar包下载,下载后解压找到bin目录下,在Windows下双击startup.bat直接启动
会启动两个项目,一个是收集器,一个是web项目
打开浏览器访问
可以看到启动成功
然后使用IDEA打开微服务项目,在每个服务的启动类中配置vm
这里以网关为例,在VM options下面添加如下内容
-javaagent:D:\Software\apache-skywalking-apm-es7-8.4.0\apache-skywalking-apm-bin-es7\agent\skywalking-agent.jar
-Dskywalking.agent.service_name=ruoyi-gateway
-Dskywalking.collector.backend_service=localhost:11800
注意:
javaagent 是配置skywalking-agent.jar的地址
service_name 是配置需要监控的服务名
backend_service 是收集器服务的地址
这里在网关服务下进行了vm配置,其他需要做链路追踪的服务下的启动类也要配置。
然后启动各个服务的启动类
就可以在拓扑图中看到链路追踪了,然后调用下某个接口,那么这个接口所需的服务就会在追踪中被显示
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/136385.html