一点背景:
我们有大约10 个 Spring Boot 微服务,它们通过 kafka 相互通信。每个微服务的日志都会发送到 Kibana,如果出现任何错误,我们必须对 Kibana 日志进行筛选。
好消息是:在任何流程开始时,我们的一个微服务都会生成一个 message-id,并作为消息传输的一部分(通过 kafka 发生)传播给所有其他微服务,因此我们可以搜索日志中的 message-id,我们可以看到该流在我们所有微服务中的足迹。
不好的部分:必须筛选大量日志才能基本了解事情发生的位置和原因。
现在的问题:
所以我想知道我们是否可以实现一些分布式跟踪,也许通过 Zipkin(或其他一些开放式跟踪框架)可以使用我们的生态系统已经产生的消息 ID,而不是生成一个新的?
感谢您的时间 :)