SyslogHandler を使ってログを記録していたのですが、Bad file descriptor
のエラーが表示されてはまってしまいました。

表示されたエラーは以下です。
Traceback (most recent call last):
File "/usr/lib/python3.8/logging/handlers.py", line 940, in emit
self.socket.sendto(msg, self.address)
OSError: [Errno 9] Bad file descriptor
アプリをマルチプロセスで動かしており、FastAPI ( +uvicorn) を使うとこのエラーが出るようになりました。
環境
- Python 3.8.10
対処方法
調べても原因がさっぱりわからなかったのですが、最終的に以下のページにたどり着きました。
どうやら Python の logging モジュールの不具合のようで、Python のバージョンを 3.11 まで上げると直りました。