立冬时节知多少
今天立冬,周末两天在家继续研究了下Skywalking,感觉这个组件还是很不错的,无论是设计思想还是架构设计,都能从中受到启发和帮助,建议感兴趣的小伙伴可以看看,当然,如果不感兴趣还是不要深入研究了,比较费头发😂。
文中的架构是:
ASP.NETCore+SpringBoot+ES+Mysql+Redis+Rabbit
本文就把研究的成功图展示一下吧,就好像是一个目录一样,先看看是不是感兴趣,详细的安装过程、原理内容和看板参数分析以后慢慢铺开来说。
官方地址:https://github.com/apache/skywalking
欢迎加星🎉
仪表盘
仪表盘分为五部分,分别是:
APM、Database、Istio、SelfObservability、WebBrowser。
其中Istio和SelfObservability暂时还没看到具体的效果,待以后补充。
APM
APM同时包括四个部分,分别是:
Global、Service、Instance、Endpoint
主要是对服务端进行性能监控,各种参数指标数不胜数。
仪表盘-APM-Global
仪表盘-APM-Service
仪表盘-APM-Instance
仪表盘-APM-Endpoint
Database
这里暂时的是数据库相关的数据,如果有多个连接实例,会都展示出来。
仪表盘-Database
Web Browser
除了对服务端监控,Skywalking对前端也有一定的监控,通过Skywalking-Client-js组件来操作,我的项目的VUE,其他的都可以,官方文档上都有介绍。
包括两个部分:
Web App、Pages两个指标,和服务端效果类似。
仪表盘-Browser-Pages
拓扑图
除了图表展示,官方还提供了更直观详细的拓扑图,显示了整个应用是如何运行并关联起来的。
拓扑图
从vue前端到访问网关,然后请求一个后端服务,比如我们的ancba-user,而user服务又会通过Feign连接ancba-blog服务等多个关联服务,还会连接数据库、Redis、Rabbit等等等等,只要是服务连接,这里都会展示。
链路追踪
每次请求就是一个链路,通过TranceId进行管理,然后探针将一段段的Span发送数据到中心,然后计算,最后展示在平台,所以一个详细的链路追踪对我们调试很有必要,就是上面拓扑图的接口层面的展示:
追踪
可以看到,如果有错误,会显示一个红点提示。
点击链路中任意一个Span,会看到具体的请求情况、错误信息、数据库连接字符串、Redis请求信息等等等等,自己可以看看哟。
日志
在链路中可以查看日志,前端的日志会统一展示到日志栏目里,选择日志类别,可以看到具体的内容:
日志记录
未完待续
主要功能就是上面展示的了,当然还有很多其他的,比如如何配置告警信息,如何设置性能剖析,使用那种持久化工具。
最后,咱们用一张动图来结束分享吧:
Skywalking 流转图