pm2-可以在全局日志中看到“ sys.stdout”,而不是python.exe

时间:2018-11-14 15:18:25

标签: python node.js pm2

所以我才发现pm2,我特别喜欢它,它在出现错误或其他类似问题时会真正重新启动。

但是我也读到可以用它运行python,但是我确实发现了一个问题,在我看来,它似乎不使用Python的全局日志

图片

enter image description here

那我怎么打印?

我使用的是我称为utils.py的自定义打印图片,

类记录器:

def __init__(self):
    colorama.init()

@staticmethod
def __timestamp():
    timestamp = str(datetime.now().strftime("[%H:%M:%S.%f")[:-3]+"]")
    return timestamp

def log(self, text):
    sys.stdout.write("{}{} {}".format(self.__timestamp(), '[Profile-' + multiprocessing.current_process().name.replace("Process-", "").replace("MainThread", "MAIN") + ']', text))
    sys.stdout.write("\n")
    sys.stdout.flush()

并且您会看到它包含标准输出。

现在的问题是,每当我尝试在案例logger.log(“ testing”)中调用该函数时,它都不会在pm2的全局日志中打印出来,而是创建一个新的python.exe并执行而不是我不希望的程序。所以我在这里问如何使它通过pm2而不是它自己的python.exe运行?

0 个答案:

没有答案