如何选型微服务全链路日志?
在微服务icon应用中,一个请求会跨越多个服务节点,针对这种情况有如下需求:
1)把同一个请求在全部服务中的以上所有记录进行串联,最终实现一个树状的记录。
2)基于这些基础数据,提供查询统计功能。
如何选择合适的开源技术组件?
全链路数据格式 OpenTracing,是由开源组织 CNCF(Cloud Native Computing Foundation)进行维护的。OpenTracing通过提供一个与平台/厂商无关的API,使得开发人员能够更方便地添加或更换跟踪系统,这样即使之前引入的全链路日志不好用,以后想换掉也是非常方便的。
最小的业务代码侵入性,比较理想的解决方案是使用Javaicon的探针,通过字节码icon加强的方式进行埋点;收集日志的过程中,对业务应用的性能不能有较大的影响;最好 UI 界面功能比较丰富,方便分析诊断问题。
另外考虑到调用量比较大,记录的日志数据量也很大,这就要求存储这些日志的系统必须支持海量数据且保证查询高效。
根据以上问题剖析及性能测试结果分析,可以发现SkyWalking比较符合需求。
网友评论