python – 检查是否已成功启动使用twistd启动的Twisted Server
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 检查是否已成功启动使用twistd启动的Twisted Server,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1598字,纯文字阅读大概需要3分钟。
内容图文
我需要一种可靠的方法来检查通过twistd(和TAC文件)启动的基于Twisted的服务器是否已成功启动.它可能会失败,因为某些网络选项设置错误.由于我无法访问扭曲的日志(因为它记录到/ dev / null,因为我不需要log-clutter扭曲产生),我需要找出服务器是否在包含扭曲的启动脚本中成功启动-呼叫.
launch-script是一个像这样的Bash脚本:
#!/usr/bin/bash
twistd --pidfile "myservice.pid" --logfile "/dev/null" --python myservice.tac
我在网上找到的都是hacks using ps or stuff like that.但我不喜欢这样的方法,因为我觉得它不可靠.
所以我在考虑是否有办法访问Twisted的内部,并获得所有当前正在运行的Twisted应用程序?这样我就可以在当前运行的应用程序中查询我的Twisted应用程序的名称(正如我在TAC文件中命名的那样)来启动.
我也在考虑不使用twistd可执行文件,而是实现基于Python的启动脚本,其中包含了扭曲的内容,如the answer to this question provides,但我不知道这是否有助于我获取服务器的运行状态.
所以我的问题就是:是否有一种可靠的非丑陋的方式来判断Twisted Server启动时是否已成功启动了twistd,并禁用了twistd-logging?
解决方法:
您明确指定了PID文件. twistd会将其PID写入该文件.您可以检查系统以查看是否存在具有该PID的进程.
您还可以使用自定义日志观察器重新启用日志记录,该日志观察器仅记录您的启动事件并丢弃所有其他日志消息.然后,您可以查看启动事件的日志.
另一种可能性是在您的应用程序中添加另一个服务器,该服务器公开您提到的内部.然后尝试连接到该服务器并四处查看您想要查看的内容(只是服务器正在运行的事实似乎是一个很好的迹象表明该过程正常启动).如果您将其设为沙井服务器,那么您就可以评估任意Python代码,从而可以检查所需流程中的任何状态.
您也可以让您的应用程序代码写出一个明确指示成功启动的额外状态文件.确保在启动应用程序之前将其删除,并且您将获得成功与失败的良好指标.
内容总结
以上是互联网集市为您收集整理的python – 检查是否已成功启动使用twistd启动的Twisted Server全部内容,希望文章能够帮你解决python – 检查是否已成功启动使用twistd启动的Twisted Server所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。