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 ハンドラーは実行されません。代わりに、クライアントが再接続プロセスを開始します。