spring cloud 分布式链路追踪的方法
一篇讲了微服务之间的调用spring cloud eureka 微服务之间的调用 微服务之间进行调用 那么如果我负责一个模块 别人负责另一个模块 我调用了他的方法 测试那边却报了错 那是我的问题还是他的问题 这个时候大家应该就能想到日志可以解决这个问题 如何使用日志呢 先在配置文件中加 logging: path: D:logspoppy-mall #日志的存放地址 最好再加个项目名的文件夹 可以更容易的区分 level: org.poppy.mall: info #日志的级别 org.poppy.mall 是你的包名 然后就可以在你想添加日志的类中写上 public static Logger logger =LoggerFactory.getLogger(类名.class); 之后就在你想加日志的地方加上 logger.info("日志信息") 运行后会自动在你写的日志存放的地址加入日志文件 (它会自动生成文件夹) 查看一下内容 是这个样子的 这样就解决了排错的问题 那么新问题又来了 如果我调用了几万次这个方法 我怎么才能找得到我这个服务调用的到底是那次请求的另一个微服务? 这时候就用到了分布式链路追踪 先引入依赖 想要追踪那个项目 都要在里面加入这个依赖 compile group: 'org.springframework.cloud',name: 'spring-cloud-starter-sleuth' 之后再运行 查看日志 发现是这个样子 可以发现多出来一串编码 它有什么用呢 粉色框的编码 它代表的是在同一次请求中 编码就相同 红色框的代码 代表的是在同一服务中 它会相同 这样就解决了我们的问题 我们只要找到报错的一次请求 复制粉色框内的编码 到另一个服务的日志中进行查找 就能找到 这就是分布式链路跟踪 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。 您可能感兴趣的文章:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- java栈数据结构的LinkedList实现
- java – 返回节点集或XML片段(非简单数据类型)的
- java-将List.of用于具有单个元素而不是Collectio
- java – 将Bounded Generic Parameter理解为构造
- Java中while(x = false)和while(!x)之间有什么区
- java – 如何确定Swing鼠标事件发生在哪个监视器
- java – log4j.properties在wildfly上无法正常工
- java – 为什么void方法在模拟对象上获得NullPoi
- java – 将对象添加到“?扩展“通用集合的类型
- SpringBoot 集成Kaptcha实现验证码功能实例详解