无法从DLQ春天云流kafka中读取异常标头

问题描述 投票:0回答:1

使用Spring cloud Stream Kafka侦听器从kafka主题读取消息,并在将异常发送到配置属性的死信队列的情况下,将其发送给死信队列

spring.cloud.stream.kafka.bindings.input.consumer.enable-dlq=true
spring.cloud.stream.kafka.bindings.input.consumer.dlq-name=book_error

我能够将消息发送到DLQ。但是,当我尝试从DLQ中读取内容时,我可以根据错误消息采取措施。我无法读取标头中嵌入的异常。

@StreamListener("dlqChannel")
public void error(Message<?> message) {
    System.out.println("Handling ERROR: READING FROM DLQ");
    logger.info("header :" +message.getHeaders());
    logger.info("payload : " +message.getPayload());
    //return message;
}

标头有效载荷似乎具有无法识别的对象ID。如何解析错误并根据异常消息进行处理。下面是我尝试打印时得到的标题

header :{x-original-offset=[B@f82eb25, x-original-partition=[B@7a3b83c, deliveryAttempt=1, kafka_timestampType=CREATE_TIME, kafka_receivedMessageKey=null, kafka_receivedTopic=book_errors, kafka_offset=0, x-exception-message=[B@6dcc9872, x-exception-fqcn=[B@68079694, scst_nativeHeadersPresent=true, kafka_consumer=org.apache.kafka.clients.consumer.KafkaConsumer@70449372, x-original-topic=[B@6a3ca71e, x-original-timestamp-type=[B@63baad23, kafka_receivedPartitionId=0, contentType=application/json, x-original-timestamp=[B@37dd34f6, kafka_receivedTimestamp=1579990310188, kafka_groupId=bkerrgrp, x-exception-stacktrace=[B@6356ee7c}
spring-cloud-stream
1个回答
0
投票
使用
© www.soinside.com 2019 - 2024. All rights reserved.