クラス RepublishMessageRecoverer
java.lang.ObjectSE
org.springframework.amqp.rabbit.retry.RepublishMessageRecoverer
- 実装されたすべてのインターフェース:
MessageRecoverer
- 既知の直属サブクラス
RepublishMessageRecovererWithConfirms
メッセージヘッダー x-exception に格納された例外スタックトレースを使用して、復元されたメッセージを指定された交換に再発行する
MessageRecoverer
実装。 ルーティングキーが指定されていない場合、メッセージの元のルーティングキーに setErrorRoutingKeyPrefix(String)
(デフォルトの "error." ) がプレフィックスとして付けられ、名前で指定された交換にメッセージを発行するために使用されます。何も設定されていない場合は、テンプレートのデフォルトの交換に発行されます。
- 導入:
- 1.3
- 作成者:
- James Carr, Gary Russell, Artem Bilan
フィールドサマリー
フィールド修飾子と型フィールド説明static final int
protected final Expression
protected final Expression
protected final AmqpTemplate
protected final EvaluationContext
protected final Log
static final StringSE
static final StringSE
static final StringSE
static final StringSE
コンストラクターのサマリー
コンストラクターコンストラクター説明RepublishMessageRecoverer
(AmqpTemplate errorTemplate) 提供されたテンプレートを使用してインスタンスを作成します。RepublishMessageRecoverer
(AmqpTemplate errorTemplate, StringSE errorExchange) 提供されたプロパティでインスタンスを作成します。RepublishMessageRecoverer
(AmqpTemplate errorTemplate, StringSE errorExchange, StringSE errorRoutingKey) 提供されたプロパティでインスタンスを作成します。RepublishMessageRecoverer
(AmqpTemplate errorTemplate, Expression errorExchange, Expression errorRoutingKey) 提供されたプロパティでインスタンスを作成します。メソッドのサマリー
修飾子と型メソッド説明additionalHeaders
(Message message, ThrowableSE cause) サブクラスは、このメソッドをオーバーライドして、再発行されたメッセージにヘッダーを追加できます。protected void
メッセージを送信します。errorRoutingKeyPrefix
(StringSE errorRoutingKeyPrefix) 送信 ルーティングキーにプレフィックスを適用します。これは、元のメッセージルーティングキーのプレフィックスになります (コンストラクターで明示的なルーティングキーが指定されていない場合。それ以外の場合は無視されます)。frameMaxHeadroom
(int headroom) スタックトレースヘッダーの切り捨てを考慮するときに、ネゴシエートされた frame_max を削減する量を設定します。protected MessageDeliveryMode
protected StringSE
protected StringSE
getStackTraceAsString
(ThrowableSE cause) スタックトレースの文字列表現を作成します。protected StringSE
prefixedOriginalRoutingKey
(Message message) このメソッドのデフォルトの動作は、受信したルーティングキーをroutingKeyPrefix
に追加することです。void
recover
(Message message, ThrowableSE cause) 消費されましたがすべての再試行に失敗したメッセージのコールバック。void
setDeliveryMode
(MessageDeliveryMode deliveryMode) メッセージにMessageDeliveryMode
が設定されていない場合は、再発行するメッセージに設定するMessageDeliveryMode
を指定します。void
setErrorRoutingKeyPrefix
(StringSE errorRoutingKeyPrefix)
フィールドの詳細
X_EXCEPTION_STACKTRACE
- 関連事項:
X_EXCEPTION_MESSAGE
- 関連事項:
X_ORIGINAL_EXCHANGE
- 関連事項:
X_ORIGINAL_ROUTING_KEY
- 関連事項:
DEFAULT_FRAME_MAX_HEADROOM
public static final int DEFAULT_FRAME_MAX_HEADROOM- 関連事項:
logger
errorTemplate
errorRoutingKeyExpression
errorExchangeNameExpression
evaluationContext
コンストラクターの詳細
RepublishMessageRecoverer
提供されたテンプレートを使用してインスタンスを作成します。- パラメーター:
errorTemplate
- テンプレート。
RepublishMessageRecoverer
提供されたプロパティでインスタンスを作成します。- パラメーター:
errorTemplate
- テンプレート。errorExchange
- 交換。
RepublishMessageRecoverer
public RepublishMessageRecoverer(AmqpTemplate errorTemplate, @Nullable StringSE errorExchange, @Nullable StringSE errorRoutingKey) 指定されたプロパティでインスタンスを作成します。交換キーまたはルーティングキーが null の場合、テンプレートのデフォルトが使用されます。- パラメーター:
errorTemplate
- テンプレート。errorExchange
- 交換。errorRoutingKey
- ルーティングキー。
RepublishMessageRecoverer
public RepublishMessageRecoverer(AmqpTemplate errorTemplate, @Nullable Expression errorExchange, @Nullable Expression errorRoutingKey) 指定されたプロパティでインスタンスを作成します。交換キーまたはルーティングキーが null と評価された場合、テンプレートのデフォルトが使用されます。- パラメーター:
errorTemplate
- テンプレート。errorExchange
- メッセージに対して評価される交換式。errorRoutingKey
- メッセージに対して評価されるルーティングキー。
メソッドの詳細
errorRoutingKeyPrefix
送信 ルーティングキーにプレフィックスを適用します。これは、元のメッセージルーティングキーのプレフィックスになります (コンストラクターで明示的なルーティングキーが指定されていない場合は無視されます。それ以外の場合は無視されます。プレフィックスを付けない場合は、空の文字列 ("") を使用します)。- パラメーター:
errorRoutingKeyPrefix
- プレフィックス (デフォルトは "error." )。- 戻り値:
- this。
frameMaxHeadroom
スタックトレースヘッダーの切り捨てを考慮するときに、ネゴシエートされた frame_max を削減する量を設定します。デフォルトは 20000 です。- パラメーター:
headroom
- ヘッドルーム- 戻り値:
- this。
- 導入:
- 2.0.5
setErrorRoutingKeyPrefix
- パラメーター:
errorRoutingKeyPrefix
- プレフィックス (デフォルトは "error." )。- 関連事項:
getErrorRoutingKeyPrefix
setDeliveryMode
メッセージにMessageDeliveryMode
が設定されていない場合は、再発行するメッセージに設定するMessageDeliveryMode
を指定します。- パラメーター:
deliveryMode
- メッセージに設定する配信モード。- 導入:
- 2.0
getDeliveryMode
recover
インターフェースからコピーされた説明:MessageRecoverer
消費されましたがすべての再試行に失敗したメッセージのコールバック。- 次で指定:
- インターフェース
MessageRecoverer
のrecover
- パラメーター:
message
- 回復へのメッセージcause
- エラーの原因
doSend
メッセージを送信します。- パラメーター:
exchange
- テンプレートのデフォルトを使用する場合は exchange または null。routingKey
- ルーティングキー。message
- メッセージ。- 導入:
- 2.3.3
additionalHeaders
サブクラスは、このメソッドをオーバーライドして、再発行されたメッセージにヘッダーを追加できます。- パラメーター:
message
- 失敗したメッセージ。cause
- 原因。- 戻り値:
- 追加する追加ヘッダーの
Map
SE。
prefixedOriginalRoutingKey
このメソッドのデフォルトの動作は、受信したルーティングキーをroutingKeyPrefix
に追加することです。これは、ルーティングキーが null の場合にのみ呼び出されます。- パラメーター:
message
- メッセージ。- 戻り値:
- ルーティングキー。
getStackTraceAsString
スタックトレースの文字列表現を作成します。- パラメーター:
cause
- スローアブル。- 戻り値:
- 文字列。
- 導入:
- 2.4.8