EventProcessorClient.OnProcessingErrorAsync メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
イベント プロセッサ インフラストラクチャの操作内で予期しない例外が発生したときに必要なタスクを実行します。
protected override System.Threading.Tasks.Task OnProcessingErrorAsync (Exception exception, Azure.Messaging.EventHubs.Primitives.EventProcessorPartition partition, string operationDescription, System.Threading.CancellationToken cancellationToken);
override this.OnProcessingErrorAsync : Exception * Azure.Messaging.EventHubs.Primitives.EventProcessorPartition * string * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Protected Overrides Function OnProcessingErrorAsync (exception As Exception, partition As EventProcessorPartition, operationDescription As String, cancellationToken As CancellationToken) As Task
パラメーター
- exception
- Exception
イベント プロセッサの操作中に発生した例外。
- partition
- EventProcessorPartition
エラーに関連付けられているパーティションのコンテキスト (存在する場合)。それ以外の場合は null
。 これは、エラーが発生した時点に応じて、 の EventProcessorPartitionメンバーに対してのみ初期化できます。
- operationDescription
- String
例外が発生した操作の短いテキストによる説明。は情報提供のみを目的としています。
- cancellationToken
- CancellationToken
CancellationToken処理を取り消す要求を通知する インスタンス。 これは、プロセッサがシャットダウンするときに発生する可能性が最も高いです。
戻り値
注釈
このエラー ハンドラーは、イベント プロセッサ自体で例外が発生したときに呼び出されます。これは、プロセッサの操作に重要ではないイベントやその他のオーバーライドや拡張ポイントを処理するために実装されたコード内の例外に対しては呼び出されません。 イベント プロセッサは、例外から回復し、処理を続行するためにあらゆる努力をします。 回復できない例外が発生した場合、プロセッサは処理していたすべてのパーティションの所有権を失い、作業を再配布しようとします。
このメソッドに表示される例外は、致命的または致命的ではない可能性があります。プロセッサは例外が致命的かどうか、またはその状態が破損したかどうかを正確に予測できない可能性があるため、このメソッドは、処理を終了するか再起動するかを決定する必要があります。 このメソッドは、プロセッサ インスタンスで Stop を呼び出し、必要に応じてプロセッサで Start を呼び出すことによって実行できます。
運用環境のシナリオでは、このエラー ハンドラーによって行われた観察、パーティションの処理を初期化するときに呼び出されるメソッド、およびパーティションの処理が停止したときに呼び出されるメソッドを考慮して決定することをお勧めします。 多くの開発者は、この決定にも監視プラットフォームからのデータを含めます。
イベント処理と同様に、エラー ハンドラーのコードで例外が発生した場合、イベント プロセッサはバブル処理を許可し、どのような方法でも処理を試みません。 開発者は、例外シナリオを考慮し、必要に応じて try/catch ブロックやその他の手段を使用してそれらに対して保護することを強くお勧めします。
適用対象
Azure SDK for .NET