ツイスト(およびTACファイル)を介して起動されたツイストベースのサーバーが正常に起動されたかどうかを確認するための信頼できる方法が必要です。一部のネットワークオプションが正しく設定されていないため、失敗する可能性があります。ツイストログにアクセスできないため(/ dev / nullに記録されるため、ツイストされたログクラッターが生成される必要がないため)、サーバーがラップするlaunch-script内で正常に起動されたかどうかを確認する必要があります。ツイストコール。
launch-scriptは、次のようなBashスクリプトです。
#!/usr/bin/bash
twistd \
--pidfile "myservice.pid" \
--logfile "/dev/null" \
--python \
myservice.tac
ネットで見つけたのは、psなどを使ったハックだけです。しかし、私はそのようなアプローチは信頼できないと思うので、好きではありません。
では、Twistedの内部にアクセスして、現在実行中のすべてのTwistedアプリケーションを取得する方法があるかどうかを考えていますか?そうすれば、現在実行中のアプリに、Twistedアプリケーションの名前(TACファイルで名前を付けたとおり)を照会して開始できます。
ツイスト実行可能ファイルを使用せずに、この質問への回答が提供するように、ツイストコンテンツを含むPythonベースの起動スクリプトを実装することも考えていますが、それがステータスの取得に役立つかどうかはわかりません実行するサーバー。
だから私の質問はただです:twisted-loggingが無効になっているときに、twistedで起動されたTwisted Serverが正常に起動されたかどうかを判断するための信頼できる醜い方法はありますか?