美文网首页
EagleEye全链路追踪

EagleEye全链路追踪

作者: OPice | 来源:发表于2020-01-13 17:23 被阅读0次

    背景

      当下微服务盛行的阶段,系统之间服务的依赖和复杂性也逐步提高。所以要保证业务的正常运行和团队的SLA,就需要对线上问题的避免和快速定位。这时就体现日志的重要性,问题是日志如何记录,当一个服务被不停调用时,快速定位一个请求就变的很奢侈。包括用户的一次操作,微服务之间有可能进行数百次网络调用,如何定位哪些步骤慢。为了解决这样的问题,阿里的EagleEye出现了。

    实现

    • 原理
      前端请求到服务器时,EagleEye通过埋点的方式(Filter机制) 生成一个唯一的traceid,然后将traceid放在RpcContext上下文中,RpcContext 上下文会存储在ThreadLocal中。
      当有异步操作或者RPC调用时,获取当前ThreadLocal的上下文,将上下文中RPCId序号递增,然后将上下文作为下次请求的附件发送。

    • TraceID组成


      TraceID

    IP为本地IP对应的十六进制数,顺序号为一个自增的计数器,范围为1000~9999,标志位暂时没有使用。

    RpcID

    RPCId用链路调用顺序来递增。

    阿里云相似产品:Tracing Analysis
    效果图:

    image.png

    相关文章

      网友评论

          本文标题:EagleEye全链路追踪

          本文链接:https://www.haomeiwen.com/subject/dfajnctx.html