適切なキープアライブ オプションを使用してクライアント接続を管理する nodejs に GRPC サーバーがあります。
ケーブルを切断すると、次のログに示されているように、サーバーはクライアントに到達できなくなったことを正しく検出します。
E0129 17:05:32.252261922 5591 chttp2_transport.cc:2838] ipv4:127.0.0.1:47520: Keepalive watchdog fired. Closing transport.
I0129 17:05:32.252320289 5591 connectivity_state.cc:147] SET: 0x47dd758 server_transport: READY --> SHUTDOWN [close_transport]
イベント/コールバック/インターセプターを通じてこの情報を取得する方法が見つかりません。
これのために何かが存在しますか?
それ以外の場合、高レベルのコードが検出できない場合、サーバー側でこのキープアライブを使用するのは何ですか?
アップデート
答えの悲しい真実にもかかわらず、
回避策を見つけました
クライアント側のストリーミングを使用し、サーバー側でキープアライブ オプションを設定します。この場合、接続の問題が発生すると、キープアライブがそれを検出し、ストリーミング コールがコールの「終了」イベントをトリガーします。