美文网首页架构,微服务,分布式
Dubbo根据扩展接口实现分布式调用追踪

Dubbo根据扩展接口实现分布式调用追踪

作者: 任嘉平生愿 | 来源:发表于2019-03-28 15:48 被阅读17次

    dubbo基于调用拦截扩展实现分布式调用追踪 - GAMELOFT9----读万卷书,行万里路,知行合一 - CSDN博客

    思路:根据dubbo扩展的filter将每次调用链路服务生成的uuid放在日志中,根据id跟踪服务

    步骤

    1.扩展filter

    <dubbo:provider filter="traceid"/>

    2.绑定实现类

    traceid=com.gameloft9.demo.filter.TraceDubboFilter

    3.实现Filter 的invoke方法

    RpcContext context = RpcContext.getContext();

    TraceUtil.putTraceInto(context);

    TraceUtil.getTraceFrom(context);

    4.TraceUtil生成UUID和置值

    String traceId = generateTraceId();

    setTraceId(traceId);

    5.将traceid绑定到logback中的MDC

    %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%.15thread] [%X{trace_id}] %logger{36} - %.-4096msg%n

    6.消费端调用时加日志

    log.info("测试结果:{}",res);

    相关文章

      网友评论

        本文标题:Dubbo根据扩展接口实现分布式调用追踪

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