如何在python脚本(进程)中记录错误

2024-04-23 19:24:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要在python脚本中记录作为进程运行的错误。你知道吗

我的当前代码:

import ips
import sys
import time
import logging
import os
import string
import json
import multiprocessing
import MySQLdb as mdb

from daemon import Daemon


logging.basicConfig(format = u'%(levelname)-8s [%(asctime)s] %(message)s', level = logging.INFO, filename = u'/var/log/info.log')


class MyDaemon(Daemon):
    def run(self):        
        print 'the script was run'
        logging.info("the script was run")

        while True:

            [My code Here]

            time.sleep(10)


if __name__ == "__main__":
    daemon = MyDaemon('/var/run/pid.pid')
    if len(sys.argv) > 1:
        if 'start' == sys.argv[1]:
            daemon.start()
        elif 'stop' == sys.argv[1]:
            daemon.stop()
        elif 'restart' == sys.argv[1]:
            daemon.restart()
        else:
            print "Unknown command"
            sys.exit(2)
        sys.exit(0)
    else:
        print "usage: %s start|stop|restart" % sys.argv[0]
        sys.exit(2)

有时我的进程关闭,但我没有看到错误报告。如果进程关闭,如何查看错误报告?你知道吗


Tags: runimportiftime进程loggingsysexit
1条回答
网友
1楼 · 发布于 2024-04-23 19:24:53

使用日志模块捕获异常。E、 g.:

import logging

except serial.SerialException as e:
      logging.debug("Could not open serial port: {}".format(com_port, e))

我不知道你的代码,你在循环中输入,但我可以建议你在程序中使用maybe returns。如果它因为某个特定的原因而破裂,那么你会得到一些提示。这也可以记录下来。 在python中,可以很容易地返回几个参数。我不知道,你为什么不使用这些功能。你知道吗

相关问题 更多 >