主管有日志中断



我向主管服务添加了每5秒打印一次文本的程序,当我读取输出日志时,有时会出现如下中断。哪里有问题?

我登录到supervisorctrl,在此模式下,我:tail test_s我有时会在报告中出现中断,比如现在我15:06,暂停

。。。您可以在15-02-52使用Supervisor运行测试程序。干得好Darek:(。kupa4。。。您可以在15-02-57使用Supervisor运行测试程序。好的job Darek:(。kupa4

您可以在15-03-02使用Supervisor运行测试程序。干得好Darek:(

我的程序

#!/usr/bin/env python3.6
from datetime import datetime
import time
import sys

while True:
print(f"You run test program using Supervisor at {datetime.now().strftime('%H-%M-%S')}.")
print("Good job Darek :).")
print("...")
time.sleep(5)

他在监管者中的配置

[program:test_s]
command=/home/darek/PycharmProjects/Small_programs/shell_scripts/test/test_s.py
autostart=true
autorestart=true
stderr_logfile=/var/log/test_s.err.log
stdout_logfile=/var/log/test_s.out.log

听起来您的输出正在被缓冲。你试过禁用缓冲吗?

您可以在supervisord.conf文件中设置PYTHONUNBUFFERED环境变量,如下所示:

[program:test_s]
environment=PYTHONUNBUFFERED=1
command=/home/darek/PycharmProjects/Small_programs/shell_scripts/test/test_s.py
autostart=true
autorestart=true
stderr_logfile=/var/log/test_s.err.log
stdout_logfile=/var/log/test_s.out.log

或者,您可以运行带有-u标志的脚本。

编辑:如果你想使用-u标志,你可以修改你的supervisord.conf,如下所示:

command=python3 -u /home/darek/PycharmProjects/Small_programs/shell_scripts/test/test_s.py

最新更新