首页 > 解决方案 > Trace 和 Span 信息默认丢失 SeekToCurrentErrorHandler

问题描述

当消费者无法处理记录时,它会SeekToCurrentErrorHandler启动并完成其工作。

重试 10 次后,我可以看到一条日志行表明错误记录的退避已用尽,但是记录的记录现在没有标题。

在进一步检查中,我可以看到记录的所有重试都正确链接到整个跟踪,但是KafkaMessageListenerContainer$ListenerConsumer每次失败后的日志,然后是 的日志行SeekToCurrentErrorHandler,都无法识别跟踪。

我该如何解决这个问题?我是否应该将自定义错误处理程序传递给SeekToCurrentErrorHandler我自己的记录器以希望它能够感知跟踪?

缺少跟踪的日志行:

KafkaMessageListenerContainer$ListenerConsumer [ERROR] Error handler threw an exception
SeekToCurrentErrorHandler [ERROR] Backoff FixedBackOff{...} exhausted for ConsumerRecord(topic=..., ..., headers = RecordHeaders(headers = [], ...), ...)

为简洁起见,我已从上述日志行中删除了一些数据。

编辑:添加版本

spring-cloud-starter-sleuth: 2.2.4.RELEASE spring-kafka: 2.5.5.RELEASE

标签: spring-kafkaspring-cloud-sleuth

解决方案


推荐阅读