10.2. 接続およびプロトコルエラーの処理
以下の messaging_handler
メソッドを上書きすると、プロトコルレベルのエラーを処理できます。
-
on_transport_error(event)
-
on_connection_error(event)
-
on_session_error(event)
-
on_link_error(event)
これらのイベント処理関数は、イベント内の特定のオブジェクトにエラー状態が発生するたびに呼び出されます。エラーハンドラーを呼び出すと、適切なクローズハンドラーも呼び出されます。
注記
クローズハンドラーはエラー発生時に呼び出されるため、エラーハンドラー内でのみ処理する必要があります。リソースのクリーンアップは、近辺にあるハンドラーで管理できます。特定のオブジェクトに固有のエラー処理がない場合は、通常は、一般的な on_error
ハンドラーを使用してより具体的なハンドラーを用意しません。
注記
再接続が有効になっており、リモートサーバーが amqp:connection:forced
の条件で接続が切断されると、クライアントはこれをエラーとして処理しないため、on_connection_error
ハンドラーは実行されません。代わりに、クライアントが再接続プロセスを開始します。