共通分散キュー : コンフィグレーション : 配信の 失敗
このページでは、メッセージ配信の失敗に関するパラメータを定義します。 再配信の制限の指定、メッセージ有効期限ポリシーの選択、配信できない メッセージや期限切れのメッセージのエラー送り先の指定などがあります。
共通分散送り先 (UDD) では、現在の UDD と同じサブデプロイメント (たとえば対象) を共有する別のコンフィグレーション済み UDD をエラー送り先とする必要があります。エラー送り先がコンフィグレーションされていない場合、期限切れのメッセージや配信できないメッセージは削除されます。
コンフィグレーション オプション
名前 説明 再配信遅延のオーバーライド コンシューマや接続ファクトリによって指定された再配信遅延に関わりなく、ロールバックまたは回復されたメッセージが再配信されるまでの遅延 (ミリ秒単位)。再配信されたキュー メッセージは元の送り先に返され、再配信されたトピック メッセージは元のサブスクリプションに返されます。デフォルト値 (-1) は、コンシューマや接続ファクトリによって指定された再配信遅延の設定を送り先がオーバーライドしないことを示します。
注意 : この属性は動的にコンフィグレーションできますが、新しく配信されるメッセージにのみ適用され、すでに保存されているメッセージには影響しません。
注意 : RedeliveryDelay オーバーライドの変更は、将来のロールバックおよび回復にのみ影響し、すでに発生したロールバックおよび回復には影響しません。
MBean 属性 (アプリケーション モジュールには適用しない) :
DeliveryParamsOverridesBean.RedeliveryDelay
最小値:
-1
最大値:
9223372036854775807
再配信の制限 メッセージがエラー送り先に移動する前に再配信を試行できる回数。この設定は、メッセージの送信側で設定された再配信の上限をオーバーライドします。再配信の上限がコンフィグレーションされているものの、エラー送り先がコンフィグレーションされていない場合、永続および非永続メッセージは、再配信の上限に達すると、単純にドロップ (削除) されます。
デフォルト値 (-1) は、メッセージ送信側の再配信の上限設定を送り先でオーバーライドしないことを指定します。
注意 : WebLogic Server では、メッセージの配信試行回数 (1 回目の試行を 1 とし、その後 2、3、... と続く) を指定する JMSXDeliveryCount メッセージ プロパティがサポートされています。配信回数の保持に最善を尽くすため、配信回数はサーバの再起動後も 1 にリセットされません。
この属性は動的にコンフィグレーション可能ですが、変更内容は、これから受信するメッセージにのみ影響し、すでに送信されているメッセージは、元の再配信の上限を引き続き使用します。
MBean 属性 (アプリケーション モジュールには適用しない) :
DeliveryFailureParamsBean.RedeliveryLimit
最小値:
-1
最大値:
2147483647
有効期限ポリシー 送り先で期限切れメッセージに遭遇したときに使用するメッセージの有効期限ポリシー。有効な有効期限ポリシーは以下のとおりです。
[なし] - [破棄] ポリシーと同じ。期限切れのメッセージは単に送り先から削除されます。
[破棄] - メッセージング システムから期限切れのメッセージを削除します。削除はログに記録されず、メッセージは別の場所にリダイレクトされません。指定の送り先に値を定義しない場合 (つまり、[なし])、期限切れのメッセージは破棄されます。
[ログ] - 期限切れのメッセージをシステムから削除し、メッセージがシステムから削除されたことを示すエントリをサーバ ログ ファイルに書き込みます。ログに書き込まれる実際の情報は、[有効期限ロギング ポリシー] で定義します。
[リダイレクト] - 期限切れのメッセージを現在の位置から、送り先に定義されているエラー送り先へ移動します。メッセージの本体とすべてのプロパティは保持されます。また、次の例外を除きメッセージのヘッダ フィールドもすべて保持されます。
メッセージの送り先はエラー送り先になります。
エラー送り先に関連するプロパティのオーバーライドは、すべてリダイレクト対象のメッセージに適用されます。
[生存時間のオーバーライド] の値がエラー送り先に設定されていない場合、メッセージは新しい有効期限の値 0 を受け取ります (つまり、再び期限切れになりません)。
送り先に有効なエラー送り先が定義されていない場合、[リダイレクト] ポリシーは使用できません。また、[リダイレクト] ポリシーを使用している送り先に対して、エラー送り先を削除することはできません。
注意 :最大メッセージ割り当ては、新しいメッセージが送信される場合にのみ強制されます。[リダイレクト] ポリシーによりメッセージが移動される場合、これは無視されます。
MBean 属性 (アプリケーション モジュールには適用しない) :
DeliveryFailureParamsBean.ExpirationPolicy
有効期限ロギング情報 [有効期限ポリシー] が [ログ] に設定されている場合に、メッセージに関するどのような情報を記録するかを定義するポリシー。有効なロギング ポリシーの値は以下のとおりです。
- %header%
- すべての JMS ヘッダ フィールドがログに記録されます。
- %properties%
- すべてのユーザ定義プロパティがログに記録されます。
- JMSDeliveryTime
- この WebLogic JMS 固有の拡張ヘッダ フィールドがログに記録されます。
- JMSRedeliveryLimit
- この WebLogic JMS 固有の拡張ヘッダ フィールドがログに記録されます。
- foo
- すべての有効な JMS ヘッダ フィールドまたはユーザ定義プロパティがログに記録されます。
複数の値を指定する場合は、値をカンマ区切りのリストとして入力します。
%header%
と%properties%
の値では、大文字と小文字は区別されません。たとえば、すべての JMS ヘッダ フィールドとユーザ プロパティを指定する場合は、"%header%,%properties%"
という値にします。ただし、個々の JMS ヘッダ フィールドおよびユーザ定義プロパティの列挙値では、大文字と小文字が区別されます。個別の JMS ヘッダ フィールドのみを列挙するには、"%header, name, address, city, state, zip"
と指定します。注意 :
JMSMessageID
フィールドは常にログに書き込まれ、無効にはできません。したがって、[有効期限ロギング ポリシー] が未定義 (つまり null) であるか、または空の文字列として定義されている場合は、ログ ファイルへの出力にはメッセージのJMSMessageID
のみが含まれます。MBean 属性 (アプリケーション モジュールには適用しない) :
DeliveryFailureParamsBean.ExpirationLoggingPolicy
エラー送り先 期限切れになった、または再配信の制限に達したメッセージの対象エラー送り先の名前。エラー送り先がコンフィグレーションされていない場合、メッセージはそのまま破棄されます。メッセージが期限切れになっている、または再配信の制限に達していて [有効期限ポリシー] が [リダイレクト] に設定されている場合、メッセージは指定された [エラー送り先] に移動します。
スタンドアロンの送り先の場合、エラー送り先は、そのエラー送り先が定義されている送り先と同じ JMS サーバに対象指定される別のスタンドアロンの送り先である必要があります。共通分散送り先 (UDD) の場合、エラー送り先は、現在の UDD と同じサブデプロイメント (つまり対象) を共有する別の UDD である必要があります。
この属性は動的にコンフィグレーションできますが、新しく配信されるメッセージにのみ適用され、すでに保存されているメッセージには影響しません。
MBean 属性 (アプリケーション モジュールには適用しない) :
DeliveryFailureParamsBean.ErrorDestination