我增加了每5秒打印一次文本的程序。对于主管服务,当我读取输出日志时,有时会出现如下所示的中断。哪里有问题?
我登录到supervisorctrl,在这种模式下,I:tail test_s和我有时会在报告中中断,如下面的I 15:06所示,暂停一下
...您在15-02-52使用监督程序运行测试程序.干得好,达瑞克:)。kupa4 ...您在15-02-57使用监督程序运行测试程序.干得好,达瑞克:)。kupa4
..。您在15-03-02运行使用主管的测试程序.干得好达瑞克:)
我的程序
#!/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发布于 2019-11-16 14:03:02
听起来你的输出被缓冲了。你试过禁用缓冲吗?
您可以通过在您的PYTHONUNBUFFERED文件中设置supervisord.conf环境变量来做到这一点,如下所示:
[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.pyhttps://stackoverflow.com/questions/58891444
复制相似问题