WSGI アプリケーションのプロファイリングにミドルウェアを使用しようとしています。このミドルウェアはplop、モジュールに依存する Python 用の低オーバーヘッド プロファイラーである which を使用しsignalます。
このミドルウェアを使用する Django アプリを実行すると、./manage.py runserver --forkedミドルウェアは期待どおりに動作します。ただし、同じ Django アプリが apache で実行されている場合mod_wsgi、意図したとおりに動作しません。
mod_wsgiインスタンスは and で構成されておりWSGIRestrictSignal Off、WSGIDaemonProcess example processes=5 threads=1Django アプリを実行すると、次のエラーが発生します。
ValueError: signal only works in main thread
--forkedこれは、フラグなしで開発サーバーを実行した場合に発生するのと同じエラーです。スレッド数が1なので、Apacheで発生するはずはないと思います。
これを修正するにはどうすればよいですか?