Simplify handling NPE thrown on empty message sequence number header

This commit is contained in:
Massimiliano Mirelli
2023-03-02 10:17:22 +02:00
parent 97d2a01675
commit c6e7829a2a

View File

@@ -211,16 +211,14 @@ public class OpTimeTrackKafkaConsumer extends OpTimeTrackKafkaClient {
private void checkAndUpdateMessageErrorCounter(ConsumerRecord<String, String> record) {
Header msg_seq_number_header = record.headers().lastHeader(PulsarAdapterUtil.MSG_SEQUENCE_NUMBER);
if (msg_seq_number_header == null) {
logger.warn("Message sequence number header is null, skipping e2e message error metrics generation.");
} else {
String msgSeqIdStr = new String(msg_seq_number_header.value());
String msgSeqIdStr = msg_seq_number_header != null ? new String(msg_seq_number_header.value()) : StringUtils.EMPTY;
if (!StringUtils.isBlank(msgSeqIdStr)) {
long sequenceNumber = Long.parseLong(msgSeqIdStr);
ReceivedMessageSequenceTracker receivedMessageSequenceTracker =
receivedMessageSequenceTrackerForTopic.apply(record.topic());
receivedMessageSequenceTracker.sequenceNumberReceived(sequenceNumber);
}
} else {
logger.warn("Message sequence number header is null, skipping e2e message error metrics generation.");
}
}