在订单服务和产品服务的项目启动配置中,加上jvm参数,以探针方式启动2个服务应用

文章插图
启动后,我们可以通过skywalking自带的dashboard查看信息 。

文章插图
可以看到请求的链路情况,以及每个路径上的处理时间,总的响应时间等信息 。
还有一个目标就是,如何将链路跟我们实际的日志记录进行绑定,这样方便在某个链路出现问题时,我们可以针对这个具体的链路去查看具体问题原因 。
在demo中,我们通过logback记录日志,添加依赖

文章插图
目前很多的链路追踪组件都已经实现了与日志组件的集成,只需要引入依赖,即可完成将链路traceid对应写入到日志中 。

文章插图

文章插图
在代码中加入写日志的代码

文章插图
增加配置信息,以及logback-spring.xml文件

文章插图

文章插图
可以看到控制台日志中,记录的日志前面都加上了TID信息,也就是traceid 。
4.普元微服务平台的链路追踪应用上面的demo只是简单的验证了如何快速通过第三方组件实现微服务架构下的链路追踪功能,对于在实际项目应用中我们需要进行优化和整合,这章节中介绍我们普元微服务平台在链路追踪中的相关应用场景:
1. 系统拓扑结构
2. 应用运行时
3. 业务链路
4. 跟踪日志
5. 服务统计

文章插图
在链路追踪下,系统可以根据请求调用关系绘制去系统拓扑结构,通过系统拓扑结构你可以清楚知道当前系统下有多少微服务应用,微服务应用间是否有调用关系,每个服务的具体概况 。
由于微服务架构下,一个系统的微服务相对比较多,如果没有这个系统拓扑结构,后期对系统的情况,尤其是系统间的调用依赖关系跟踪也很困难 。

文章插图
应用运行时,通过收集统计相关调用请求信息,计算相关性能指标,帮助系统管理员运维人员快速了解系统的相关情况,主要是微服务应用实例的能力指标,比如平均响应时间、平均响应成功率等指标 。
由于普元微服务平台的架构特性,每一个服务对应多个应用实例组,因此在查看时可以选择具体实例组下的实例节点 。帮助我们了解应用节点的性能,以及慢节点情况 。

文章插图
业务链路,快速查看某个应用、甚至应用下某个具体的操作的完整链路调用情况,链路中每个过程处理的时间信息,每个链路上显示traceid信息,并提供快速复制功能,方便用户在跟踪日志中快速查看此次链路对应的日志信息 。
根据请求中的时间信息,在请求响应慢的时候追溯具体慢的操作 。

文章插图
链路调用的时序情况,通过不同颜色区分应用系统,可以查看具体调用的详细信息(组件、url、请求方式、异常信息等) 。

文章插图
链路日志,前面我们已经完成了请求完整链路的还原,不过这些信息还不能查出根本原因,对应异常发生的根本原因,我们有时还需要通过系统记录的日志文件进行查看,通过日志文件记录的错误信息进行排查根本原因 。
我们在查看日志文件时,也不是直接显示日志文件所有内容,而是通过以与链路对应的方式,显示每个链路环节中记录的日志信息,查看异常详细原因 。
另外,在跟踪日志模块,我们针对性的过滤筛选错误日志、事务日志等信息 。
推荐阅读
- 教你利用 PHP 实现微服务
- 中国电信|深圳成广东首个5G超高清视频通话城市:秒拨秒接通 比微信还方便
- Win10卸载Cortana微软小娜的方法
- 跟常用框架SpringSecurity比 微服务到底胜在哪?
- 掌握这5个微信营销技巧,你就不用再愁没客户了
- 如何运营好自己的微信公众号
- 微信公众号初期如何涨粉?
- 小程序注册流程,怎么注册微信小程序?
- JavaScript的宏任务和微任务
- 微软:用户安装第三方杀毒软件后将自动关闭Defender
