python而True循环最终以静默方式结束,如何保持运行?

时间:2014-04-04 05:52:30

标签: python linux bash loops

我有一个

while True:
   poll_some_data_from_a_server_and_save_it_to_a_file()
   time.sleep(5)

环。它运行很长一段时间,但最终只是停止没有错误。我使用

在AWS上运行它
python file.py > logfile &

并且在日志文件中没有提示发生了什么,在一段时间之后,在htop中只缺少python进程。我怎样才能调试发生的事情并让它运行更长时间?

谢谢!

2 个答案:

答案 0 :(得分:0)

尝试在后台运行该过程的nohup:

nohup python file.py > logfile &

输出将记录在名为nohup.out

的文件中

答案 1 :(得分:-2)

您可以创建一个无限循环,如:

While 1:
    try:
        data = poll_some_data_from_a_server_and_save_it_to_a_file()
        with open("FileName.txt", "a") as f:
        for n in data:
            f.write(n + "\n")
        f.close()
    except IOError as e:
        print e

如果出现问题,它会尝试将它在poll中找到的每个项目写入文件,它将被捕获并打印到屏幕上。