【问题标题】:Run python script as a service on Windows with an interface使用接口在 Windows 上将 python 脚本作为服务运行
【发布时间】:2021-11-17 04:22:00
【问题描述】:

我有一个问题,我认为我已经有了解决方案。我唯一需要知道的是一点知识和一个粗略的方向。

我的问题:一个脚本通过 PyCharm 在服务器上运行。当服务器重新启动时,由于更新或类似原因,我需要重新启动 PyCharm 并启动脚本。我没有得到任何关于进程已停止的信息。此外,如果不通过远程桌面登录并启动 PyCharm,脚本将不会再次启动。

解决方案:将脚本作为服务启动并编写另一个脚本来检查进程是否正在运行。

思路 我的问题是,通过将脚本作为服务运行,我将失去我的 IDE(我的 PyCharm 界面)。然后将我与脚本交互的方式移动到我的两个日志文件中。我怎么知道脚本是否仍在运行?如果发生错误会发生什么,这不是由我的日志记录设置处理的。如果引发异常怎么办?会打印到日志文件吗?

我很难脱离界面并在控制台中做所有事情。然后我依赖于日志文件。这对我来说很新鲜。

我认为如果我将脚本作为服务启动,它就会变成一个黑盒。

注意事项:我阅读了本指南here,了解如何设置 Windows 服务并设置日志记录。 如何在不丢失信息的情况下将脚本作为服务运行?

【问题讨论】:

  • 这能回答你的问题吗? enter link description here
  • @Pawankumar:问题是,用 windows 启动 PyCharm 没有多大意义。如果我不登录服务器,它不会触发自动启动。所以在我看来,最好将脚本作为服务启动。即使我不登录服务器,脚本也会随着服务器启动。
  • 可能有一种方法可以做你想做的事,但我强烈建议你不要害怕在没有 PyCharm 的情况下运行你的脚本。你现在的设置很奇怪。我对 Windows 了解不多,但我相信您可以找到一种简单的方法来记录异常,通知您错误等等(我个人使用电报发送来通知我有关崩溃的信息)。这是你最终想要学习的东西。那么为什么不现在开始呢?

标签: python server pycharm


【解决方案1】:

当我问这个问题时,我想我已经有了答案。因此,无需编写服务器/客户端接口,我就必须使用我的日志文件。感谢在 cmets 中的指导。

【讨论】:

    猜你喜欢
    • 2010-09-07
    • 2016-05-17
    • 2014-07-17
    • 2017-08-01
    • 1970-01-01
    • 2013-05-01
    • 1970-01-01
    • 2013-03-30
    相关资源
    最近更新 更多