Class KafkaUtils
java.lang.Object
org.springframework.kafka.support.KafkaUtils
Utility methods.
- Since:
- 2.2
- Author:
- Gary Russell
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final booleanTrue if micrometer is on the class path. -
Method Summary
Modifier and TypeMethodDescriptionstatic voidClear the group id for the consumer bound to this thread.static DurationdetermineSendTimeout(Map<String, Object> producerProps, long buffer, long min) Return the timeout to use when sending records.static Stringformat(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record) Format theConsumerRecordfor logging; defaulttopic-partition@offset.static Stringformat(org.apache.kafka.clients.producer.ProducerRecord<?, ?> record) static StringGet the group id for the consumer bound to this thread.static booleanReturn true if the method return type isMessageorCollection<Message<?>>.static voidsetConsumerGroupId(String groupId) Set the group id for the consumer bound to this thread.static voidsetConsumerRecordFormatter(Function<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, String> formatter) Set a formatter for loggingConsumerRecords.static voidsetLogOnlyMetadata(boolean onlyMeta) Set to true to only log record metadata.static voidsetProducerRecordFormatter(Function<org.apache.kafka.clients.producer.ProducerRecord<?, ?>, String> formatter) Set a formatter for loggingProducerRecords.
-
Field Details
-
MICROMETER_PRESENT
public static final boolean MICROMETER_PRESENTTrue if micrometer is on the class path.
-
-
Method Details
-
returnTypeMessageOrCollectionOf
Return true if the method return type isMessageorCollection<Message<?>>.- Parameters:
method- the method.- Returns:
- true if it returns message(s).
-
setConsumerGroupId
Set the group id for the consumer bound to this thread.- Parameters:
groupId- the group id.- Since:
- 2.3
-
getConsumerGroupId
Get the group id for the consumer bound to this thread.- Returns:
- the group id.
- Since:
- 2.3
-
clearConsumerGroupId
public static void clearConsumerGroupId()Clear the group id for the consumer bound to this thread.- Since:
- 2.3
-
determineSendTimeout
public static Duration determineSendTimeout(Map<String, Object> producerProps, long buffer, long min) Return the timeout to use when sending records. If theProducerConfig.DELIVERY_TIMEOUT_MS_CONFIGis not configured, or is not a number or a String that can be parsed as a long, theProducerConfigdefault value (plus the buffer) is used.- Parameters:
producerProps- the producer properties.buffer- a buffer to add to the configuredProducerConfig.DELIVERY_TIMEOUT_MS_CONFIGto prevent timing out before the Kafka producer.min- a minimum value to apply after adding the buffer to the configured timeout.- Returns:
- the timeout to use.
- Since:
- 2.7
-
setLogOnlyMetadata
public static void setLogOnlyMetadata(boolean onlyMeta) Set to true to only log record metadata.- Parameters:
onlyMeta- true to only log record metadata.- Since:
- 2.7.12
- See Also:
-
#recordToString(ConsumerRecord)
-
setConsumerRecordFormatter
public static void setConsumerRecordFormatter(Function<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, String> formatter) Set a formatter for loggingConsumerRecords.- Parameters:
formatter- a function to format the record as a String- Since:
- 2.7.12
-
setProducerRecordFormatter
public static void setProducerRecordFormatter(Function<org.apache.kafka.clients.producer.ProducerRecord<?, ?>, String> formatter) Set a formatter for loggingProducerRecords.- Parameters:
formatter- a function to format the record as a String- Since:
- 2.7.12
-
format
Format theConsumerRecordfor logging; defaulttopic-partition@offset.- Parameters:
record- the record to format.- Returns:
- the formatted String.
- Since:
- 2.7.12
-
format
- Parameters:
record- the record to format.- Returns:
- the formatted String.
- Since:
- 2.7.12
-