クラス DeadLetterPublishingRecoverer
java.lang.ObjectSE
org.springframework.kafka.listener.KafkaExceptionLogLevelAware
org.springframework.kafka.listener.ExceptionClassifier
org.springframework.kafka.listener.DeadLetterPublishingRecoverer
- 実装されたすべてのインターフェース:
BiConsumerSE<org.apache.kafka.clients.consumer.ConsumerRecord<?,
、?>, ExceptionSE> ConsumerAwareRecordRecoverer
、ConsumerRecordRecoverer
public class DeadLetterPublishingRecoverer
extends ExceptionClassifier
implements ConsumerAwareRecordRecoverer
失敗したレコードをデッドレタートピックに公開する
ConsumerRecordRecoverer
。- 導入:
- 2.2
- 作成者:
- Gary Russell, Tomaz Fernandes
ネストされたクラスのサマリー
ネストされたクラス修飾子と型クラス説明static interface
これを使用して、出力レコードの例外ヘッダーの作成を完全に制御するカスタム実装を提供します。static class
生成されたレコードに追加されるヘッダーの名前のコンテナークラス。static class
通常の動作であるヘッダーに追加されるのではなく、このヘッダーが既存のヘッダーをこの名前に置き換える必要があることを示すHeader
。フィールドサマリー
フィールドコンストラクターのサマリー
コンストラクターコンストラクター説明DeadLetterPublishingRecoverer
(FunctionSE<org.apache.kafka.clients.producer.ProducerRecord<?, ?>, KafkaOperations<?, ?>> templateResolver, boolean transactional, BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.TopicPartition> destinationResolver) 失敗したコンシューマーレコードと例外を受け取り、KafkaOperations
と、このインスタンスからの公開がトランザクションであるかどうかに関するフラグを返すテンプレート解決関数を使用してインスタンスを作成します。DeadLetterPublishingRecoverer
(FunctionSE<org.apache.kafka.clients.producer.ProducerRecord<?, ?>, KafkaOperations<?, ?>> templateResolver, BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.TopicPartition> destinationResolver) 失敗したコンシューマーレコードと例外を受け取り、KafkaOperations
と、このインスタンスからの公開がトランザクションであるかどうかに関するフラグを返すテンプレート解決関数を使用してインスタンスを作成します。DeadLetterPublishingRecoverer
(MapSE<ClassSE<?>, KafkaOperations<? extends ObjectSE, ? extends ObjectSE>> templates) 提供されたテンプレートと、失敗したレコードの元のトピック( ".DLT" が付加された)に基づいて TopicPartition を返すデフォルトの宛先解決関数と、失敗したレコードと同じパーティションを使用してインスタンスを作成します。DeadLetterPublishingRecoverer
(MapSE<ClassSE<?>, KafkaOperations<? extends ObjectSE, ? extends ObjectSE>> templates, BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.TopicPartition> destinationResolver) 提供されたテンプレートと宛先解決関数を使用してインスタンスを作成します。このインスタンスは、失敗したコンシューマーレコードと例外を受け取り、TopicPartition
を返します。DeadLetterPublishingRecoverer
(KafkaOperations<? extends ObjectSE, ? extends ObjectSE> template) 提供されたテンプレートと、失敗したレコードの元のトピック( ".DLT" が付加された)に基づいて TopicPartition を返すデフォルトの宛先解決関数、および失敗したレコードと同じパーティションを使用してインスタンスを作成します。DeadLetterPublishingRecoverer
(KafkaOperations<? extends ObjectSE, ? extends ObjectSE> template, BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.TopicPartition> destinationResolver) 提供されたテンプレートと宛先解決関数を使用してインスタンスを作成します。このインスタンスは、失敗したコンシューマーレコードと例外を受け取り、TopicPartition
を返します。メソッドのサマリー
修飾子と型メソッド説明void
accept
(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, org.apache.kafka.clients.consumer.Consumer<?, ?> consumer, ExceptionSE exception) レコードを回復します。void
addHeadersFunction
(BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.header.Headers> headersFunction) 公開されたレコードに追加する追加のヘッダーを取得するために呼び出される関数を追加します。createProducerRecord
(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, org.apache.kafka.common.TopicPartition topicPartition, org.apache.kafka.common.header.Headers headers, byte[] key, byte[] value) サブクラスはこのメソッドをオーバーライドして、DLQ に送信するプロデューサーレコードをカスタマイズできます。protected DurationSE
determineSendTimeout
(KafkaOperations<?, ?> template) テンプレートのプロデューサーファクトリとsetWaitForSendResultTimeout(Duration)
に基づいて送信タイムアウトを決定します。void
ヘッダー名のヘッダー包含ビットをクリアします。非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。3.0.9 以降 - 代わりにサプライヤーを提供してください。protected long
Kafka プロデューサーの前にタイムアウトにならないようにするために、プロデューサー構成delivery.timeout.ms
プロパティに追加するミリ秒数。void
ヘッダー名のヘッダー包含ビットを設定します。protected boolean
true の場合、送信結果を待ち、失敗した場合は例外をスローします。protected boolean
公開をトランザクションで実行する必要がある場合は True。protected void
publish
(org.apache.kafka.clients.producer.ProducerRecord<ObjectSE, ObjectSE> outRecord, KafkaOperations<ObjectSE, ObjectSE> kafkaTemplate, org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> inRecord) 送信結果のログ記録以上のものが必要な場合は、これをオーバーライドします。protected void
send
(org.apache.kafka.clients.producer.ProducerRecord<ObjectSE, ObjectSE> outRecord, KafkaOperations<ObjectSE, ObjectSE> kafkaTemplate, org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> inRecord) レコードを送信します。void
setAppendOriginalHeaders
(boolean appendOriginalHeaders) 現在の「元の」ヘッダー(トピック、パーティションなど)がすでに存在する場合、追加したくない場合は、false に設定します。void
DeadLetterPublishingRecoverer.ExceptionHeadersCreator
実装を設定して、出力レコードの例外ヘッダーの設定を完全に引き継ぎます。void
setFailIfSendResultIsError
(boolean failIfSendResultIsError) true に設定すると、送信結果の待機が有効になり、失敗した場合は例外がスローされます。void
void
setHeadersFunction
(BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.header.Headers> headersFunction) 公開されたレコードに追加する追加のヘッダーを取得するために呼び出される関数を設定します。void
setLogRecoveryRecord
(boolean logRecoveryRecord) リカバリレコードと例外をログに記録する場合は、true に設定します。void
setPartitionInfoTimeout
(DurationSE partitionInfoTimeout) 検証時にパーティション情報を待つ時間。void
setRetainExceptionHeader
(boolean retainExceptionHeader) Java 直列化DeserializationException
ヘッダーを保持するには、true に設定します。void
setSkipSameTopicFatalExceptions
(boolean skipSameTopicFatalExceptions) このクラスの分類によって例外が致命的である場合でも、レコードを同じトピックに転送する場合は、false に設定します。void
setStripPreviousExceptionHeaders
(boolean stripPreviousExceptionHeaders) 以前の例外ヘッダーと現在の例外のヘッダーを保持するには、false に設定します。void
setThrowIfNoDestinationReturned
(boolean throwIfNoDestinationReturned) 宛先リゾルバー関数が null TopicPartition を返した場合に例外をスローするには、true に設定します。void
setTimeoutBuffer
(long buffer) Kafka プロデューサーの前にタイムアウトにならないように、プロデューサー構成delivery.timeout.ms
プロパティに追加するミリ秒数を設定します。void
setVerifyPartition
(boolean verifyPartition) false に設定すると、パーティションの検証が無効になります。void
setWaitForSendResultTimeout
(DurationSE waitForSendResultTimeout) メッセージの送信を待つ最小時間を設定します。protected void
verifySendResult
(KafkaOperations<ObjectSE, ObjectSE> kafkaTemplate, org.apache.kafka.clients.producer.ProducerRecord<ObjectSE, ObjectSE> outRecord, CompletableFutureSE<SendResult<ObjectSE, ObjectSE>> sendResult, org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> inRecord) 送信先が完了するのを待ちます。クラス org.springframework.kafka.listener.ExceptionClassifier から継承されたメソッド
addNotRetryableExceptions, addRetryableExceptions, defaultFalse, defaultFalse, defaultFatalExceptionsList, getClassifier, notRetryable, removeClassification, setClassifications
クラス org.springframework.kafka.listener.KafkaExceptionLogLevelAware から継承されたメソッド
getLogLevel, setLogLevel
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース java.util.function.BiConsumerSE から継承されたメソッド
andThenSE
インターフェース org.springframework.kafka.listener.ConsumerAwareRecordRecoverer から継承されたメソッド
accept
フィールドの詳細
logger
コンストラクターの詳細
DeadLetterPublishingRecoverer
public DeadLetterPublishingRecoverer(KafkaOperations<? extends ObjectSE, ? extends ObjectSE> template) 提供されたテンプレートと、失敗したレコードの元のトピック( ".DLT" が付加された)に基づいて TopicPartition を返すデフォルトの宛先解決関数、および失敗したレコードと同じパーティションを使用してインスタンスを作成します。デッドレタートピックには、少なくとも元のトピックと同じ数のパーティションが必要です。- パラメーター:
template
- 公開に使用するKafkaOperations
。
DeadLetterPublishingRecoverer
public DeadLetterPublishingRecoverer(KafkaOperations<? extends ObjectSE, ? extends ObjectSE> template, BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.TopicPartition> destinationResolver) 提供されたテンプレートと宛先解決関数を使用してインスタンスを作成します。このインスタンスは、失敗したコンシューマーレコードと例外を受け取り、TopicPartition
を返します。TopicPartition
のパーティションが 0 未満の場合、トピックに公開するときにパーティションは設定されません。- パラメーター:
template
- 公開に使用するKafkaOperations
。destinationResolver
- 解決機能。
DeadLetterPublishingRecoverer
public DeadLetterPublishingRecoverer(MapSE<ClassSE<?>, KafkaOperations<? extends ObjectSE, ? extends ObjectSE>> templates) 提供されたテンプレートと、失敗したレコードの元のトピック ( ".DLT" が追加された) に基づいて TopicPartition を返すデフォルトの宛先解決関数と、失敗したレコードと同じパーティションを使用してインスタンスを作成します。配信不能トピックには、少なくとも元のトピックと同じ数のパーティションが必要です。テンプレートマップキーは、クラスと、対応するテンプレートがその型のオブジェクト (プロデューサーレコード値) に使用する値です。複数のテンプレートがある場合は、マップが順番にトラバースされるように、LinkedHashMap
SE をお勧めします。null 値を持つレコードを送信するには、Void
SE クラスをキーとしてテンプレートを追加します。それ以外の場合は、マップ値反復子の最初のテンプレートが使用されます。- パラメーター:
templates
- 公開に使用するKafkaOperations
。
DeadLetterPublishingRecoverer
public DeadLetterPublishingRecoverer(MapSE<ClassSE<?>, KafkaOperations<? extends ObjectSE, ? extends ObjectSE>> templates, BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.TopicPartition> destinationResolver) 提供されたテンプレートと宛先解決関数を使用して、失敗したコンシューマーレコードと例外を受け取り、TopicPartition
を返すインスタンスを作成します。TopicPartition
のパーティションが 0 未満の場合、トピックへのパブリッシュ時にパーティションは設定されません。テンプレートマップキーは、クラスと、対応するテンプレートがその型のオブジェクト (プロデューサーレコード値) に使用する値です。複数のテンプレートがある場合は、マップが順番にトラバースされるように、LinkedHashMap
SE をお勧めします。null 値を持つレコードを送信するには、Void
SE クラスをキーとしてテンプレートを追加します。それ以外の場合は、マップ値反復子の最初のテンプレートが使用されます。- パラメーター:
templates
- 公開に使用するKafkaOperations
。destinationResolver
- 解決機能。
DeadLetterPublishingRecoverer
public DeadLetterPublishingRecoverer(FunctionSE<org.apache.kafka.clients.producer.ProducerRecord<?, ?>, KafkaOperations<?, ?>> templateResolver, BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.TopicPartition> destinationResolver) 失敗したコンシューマーレコードと例外を受け取り、KafkaOperations
と、このインスタンスからの公開がトランザクションであるかどうかに関するフラグを返すテンプレート解決関数を使用してインスタンスを作成します。同様に機能するが、代わりにTopicPartition
を返す宛先解決関数も受け取ります。TopicPartition
のパーティションが 0 未満の場合、トピックに公開するときにパーティションは設定されません。- パラメーター:
templateResolver
- 公開に使用するKafkaOperations
をリゾルバーする関数。destinationResolver
- 解決機能。- 導入:
- 3.0.9
DeadLetterPublishingRecoverer
public DeadLetterPublishingRecoverer(FunctionSE<org.apache.kafka.clients.producer.ProducerRecord<?, ?>, KafkaOperations<?, ?>> templateResolver, boolean transactional, BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.TopicPartition> destinationResolver) 失敗したコンシューマーレコードと例外を受け取り、KafkaOperations
と、このインスタンスからの公開がトランザクションであるかどうかに関するフラグを返すテンプレート解決関数を使用してインスタンスを作成します。同様に機能するが、代わりにTopicPartition
を返す宛先解決関数も受け取ります。TopicPartition
のパーティションが 0 未満の場合、トピックに公開するときにパーティションは設定されません。- パラメーター:
templateResolver
- 公開に使用するKafkaOperations
をリゾルバーする関数。transactional
- このインスタンスによる公開がトランザクションである必要があるかどうかdestinationResolver
- 解決機能。- 導入:
- 2.7
メソッドの詳細
setRetainExceptionHeader
public void setRetainExceptionHeader(boolean retainExceptionHeader) Java 直列化DeserializationException
ヘッダーを保持するには、true に設定します。デフォルトでは、このようなヘッダーは、キーと値の両方の逆直列化例外が発生しない限り、公開されたレコードから削除されます。発生した場合、DLT_ * ヘッダーは値の例外から作成され、キーの例外ヘッダーが保持されます。- パラメーター:
retainExceptionHeader
- 保持するために真- 導入:
- 2.5
setHeadersFunction
public void setHeadersFunction(BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.header.Headers> headersFunction) 公開されたレコードに追加する追加ヘッダーを取得するために呼び出される関数を設定します。返されたHeader
がDeadLetterPublishingRecoverer.SingleRecordHeader
のインスタンスである場合、そのヘッダーは、新しい値として追加されるのではなく、その名前の既存のヘッダーを置き換えます。- パラメーター:
headersFunction
- ヘッダー機能。- 導入:
- 2.5.4
- 関連事項:
setVerifyPartition
public void setVerifyPartition(boolean verifyPartition) false に設定すると、パーティションの検証が無効になります。true の場合、リゾルバーによって返されるパーティションが実際に存在することを確認します。そうでない場合は、ProducerRecord.partition()
を null に設定して、プロデューサーが宛先パーティションを判別できるようにします。- パラメーター:
verifyPartition
- 無効にする場合は false。- 導入:
- 2.7
- 関連事項:
setPartitionInfoTimeout
検証時にパーティション情報を待つ時間。デフォルトは 5 秒です。- パラメーター:
partitionInfoTimeout
- タイムアウト。- 導入:
- 2.7
- 関連事項:
setAppendOriginalHeaders
public void setAppendOriginalHeaders(boolean appendOriginalHeaders) 現在の「元の」ヘッダー(トピック、パーティションなど)がすでに存在する場合、追加したくない場合は、false に設定します。false の場合、最初の「元の」ヘッダーのみが保持されます。- パラメーター:
appendOriginalHeaders
- 置き換えないように false に設定します。- 導入:
- 2.7.9
setThrowIfNoDestinationReturned
public void setThrowIfNoDestinationReturned(boolean throwIfNoDestinationReturned) 宛先リゾルバー関数が null TopicPartition を返した場合に例外をスローするには、true に設定します。- パラメーター:
throwIfNoDestinationReturned
- 有効にする場合は true。- 導入:
- 2.7
setFailIfSendResultIsError
public void setFailIfSendResultIsError(boolean failIfSendResultIsError) true に設定すると、送信結果の待機が有効になり、失敗した場合は例外がスローされます。結果を待つために、waitForSendResultTimeout で指定されたミリ秒を待ちます。- パラメーター:
failIfSendResultIsError
- 有効にする場合は true。- 導入:
- 2.7
- 関連事項:
isFailIfSendResultIsError
protected boolean isFailIfSendResultIsError()true の場合、送信結果を待ち、失敗した場合は例外をスローします。結果の waitForSendResultTimeout で指定されたミリ秒を待機します。- 戻り値:
- 待つのは本当です。
- 導入:
- 2.7.14
- 関連事項:
setWaitForSendResultTimeout
メッセージの送信を待つ最小時間を設定します。デフォルトは、プロデューサー構成delivery.timeout.ms
とsetTimeoutBuffer(long)
です。- パラメーター:
waitForSendResultTimeout
- タイムアウト。- 導入:
- 2.7
- 関連事項:
setTimeoutBuffer
public void setTimeoutBuffer(long buffer) Kafka プロデューサーの前にタイムアウトにならないように、プロデューサー構成delivery.timeout.ms
プロパティに追加するミリ秒数を設定します。デフォルトは 5000 です。- パラメーター:
buffer
- バッファ。- 導入:
- 2.7
- 関連事項:
getTimeoutBuffer
protected long getTimeoutBuffer()Kafka プロデューサーの前にタイムアウトにならないようにするために、プロデューサー構成delivery.timeout.ms
プロパティに追加するミリ秒数。- 戻り値:
- バッファ。
- 導入:
- 2.7.14
setStripPreviousExceptionHeaders
public void setStripPreviousExceptionHeaders(boolean stripPreviousExceptionHeaders) 以前の例外ヘッダーと現在の例外のヘッダーを保持するには、false に設定します。デフォルトは true です。これは、現在のヘッダーのみが保持されることを意味します。false に設定すると、レコードが何度も再発行されるときにレコードサイズが大きくなる可能性があります。- パラメーター:
stripPreviousExceptionHeaders
- すべてを保持するには false。- 導入:
- 2.7.9
setSkipSameTopicFatalExceptions
public void setSkipSameTopicFatalExceptions(boolean skipSameTopicFatalExceptions) このクラスの分類によって例外が致命的である場合でも、レコードを同じトピックに転送する場合は、false に設定します。このシナリオを別のレイヤーで処理します。- パラメーター:
skipSameTopicFatalExceptions
- このシナリオで転送する場合は false。
setLogRecoveryRecord
public void setLogRecoveryRecord(boolean logRecoveryRecord) リカバリレコードと例外をログに記録する場合は、true に設定します。- パラメーター:
logRecoveryRecord
- ログレコードと例外の場合は true。- 導入:
- 3.1
setExceptionHeadersCreator
public void setExceptionHeadersCreator(DeadLetterPublishingRecoverer.ExceptionHeadersCreator headersCreator) DeadLetterPublishingRecoverer.ExceptionHeadersCreator
実装を設定して、出力レコードの例外ヘッダーの設定を完全に引き継ぎます。デフォルトで設定されているすべてのヘッダーを無効にします。- パラメーター:
headersCreator
- クリエイター。- 導入:
- 2.8.4
isTransactional
protected boolean isTransactional()公開をトランザクションで実行する必要がある場合は True。- 戻り値:
- トランザクションの場合は true。
- 導入:
- 2.7.14
excludeHeader
ヘッダー名のヘッダー包含ビットをクリアします。- パラメーター:
headers
- クリアするヘッダー。- 導入:
- 2.8.4
includeHeader
ヘッダー名のヘッダー包含ビットを設定します。- パラメーター:
headers
- 設定するヘッダー。- 導入:
- 2.8.4
addHeadersFunction
public void addHeadersFunction(BiFunctionSE<org.apache.kafka.clients.consumer.ConsumerRecord<?, ?>, ExceptionSE, org.apache.kafka.common.header.Headers> headersFunction) 公開されたレコードに追加する追加のヘッダーを取得するために呼び出される関数を追加します。関数は、追加された順序で、関数がsetHeadersFunction(BiFunction)
に渡された後に呼び出されます。返されたHeader
がDeadLetterPublishingRecoverer.SingleRecordHeader
のインスタンスである場合、そのヘッダーは、新しい値として追加されるのではなく、その名前の既存のヘッダーを置き換えます。- パラメーター:
headersFunction
- ヘッダー機能。- 導入:
- 2.8.4
- 関連事項:
accept
public void accept(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, @Nullable org.apache.kafka.clients.consumer.Consumer<?, ?> consumer, ExceptionSE exception) インターフェースからコピーされた説明:ConsumerAwareRecordRecoverer
レコードを回復します。- 次で指定:
- インターフェース
ConsumerAwareRecordRecoverer
のaccept
- パラメーター:
record
- レコード。consumer
- コンシューマー。exception
- 例外。
send
protected void send(org.apache.kafka.clients.producer.ProducerRecord<ObjectSE, ObjectSE> outRecord, KafkaOperations<ObjectSE, ObjectSE> kafkaTemplate, org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> inRecord) レコードを送信します。- パラメーター:
outRecord
- レコード。kafkaTemplate
- テンプレート。inRecord
- コンシューマー記録。- 導入:
- 2.7
createProducerRecord
protected org.apache.kafka.clients.producer.ProducerRecord<ObjectSE,ObjectSE> createProducerRecord(org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> record, org.apache.kafka.common.TopicPartition topicPartition, org.apache.kafka.common.header.Headers headers, @Nullable byte[] key, @Nullable byte[] value) サブクラスはこのメソッドをオーバーライドして、DLQ に送信するプロデューサーレコードをカスタマイズできます。デフォルトの実装では、コンシューマーレコードからキーと値をコピーし、ヘッダーを追加するだけです。タイムスタンプが設定されていません(元のタイムスタンプはヘッダーの 1 つにあります)。重要:TopicPartition
のパーティションが 0 未満の場合、ProducerRecord
では null に設定する必要があります。- パラメーター:
record
- 失敗した記録topicPartition
- 宛先リゾルバーによって返されるTopicPartition
。headers
- ヘッダー - 元のレコードヘッダーと DLT ヘッダー。key
- コンシューマーレコードキーの代わりに使用するキー。value
- コンシューマーレコード値の代わりに使用する値。- 戻り値:
- 送信するプロデューサーレコード。
- 関連事項:
publish
protected void publish(org.apache.kafka.clients.producer.ProducerRecord<ObjectSE, ObjectSE> outRecord, KafkaOperations<ObjectSE, ObjectSE> kafkaTemplate, org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> inRecord) 送信結果のログ記録以上のものが必要な場合は、これをオーバーライドします。- パラメーター:
outRecord
- 送信するレコード。kafkaTemplate
- テンプレート。inRecord
- コンシューマー記録。- 導入:
- 2.2.5
verifySendResult
protected void verifySendResult(KafkaOperations<ObjectSE, ObjectSE> kafkaTemplate, org.apache.kafka.clients.producer.ProducerRecord<ObjectSE, ObjectSE> outRecord, @Nullable CompletableFutureSE<SendResult<ObjectSE, ObjectSE>> sendResult, org.apache.kafka.clients.consumer.ConsumerRecord<?, ?> inRecord) 送信先が完了するのを待ちます。- パラメーター:
kafkaTemplate
- レコードの送信に使用されるテンプレート。outRecord
- レコード。sendResult
- 未来。inRecord
- 元のコンシューマー記録。
determineSendTimeout
テンプレートのプロデューサーファクトリとsetWaitForSendResultTimeout(Duration)
に基づいて送信タイムアウトを決定します。- パラメーター:
template
- テンプレート。- 戻り値:
- タイムアウト。
- 導入:
- 2.7.14
getHeaderNames
@Nullable @DeprecatedSE(since="3.0.9", forRemoval=true) protected DeadLetterPublishingRecoverer.HeaderNames getHeaderNames()非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。3.0.9 以降 - 代わりにサプライヤーを提供してください。送信されたレコードで異なるヘッダー名を使用する場合は、これをオーバーライドします。- 戻り値:
- ヘッダー名。
- 導入:
- 2.7
- 関連事項:
setHeaderNamesSupplier
- パラメーター:
supplier
- サプライヤー。- 導入:
- 3.0.9