首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >主管有日志中断

主管有日志中断
EN

Stack Overflow用户
提问于 2019-11-16 13:54:37
回答 1查看 273关注 0票数 0

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

我登录到supervisorctrl,在这种模式下,I:tail test_s和我有时会在报告中中断,如下面的I 15:06所示,暂停一下

...您在15-02-52使用监督程序运行测试程序.干得好,达瑞克:)。kupa4 ...您在15-02-57使用监督程序运行测试程序.干得好,达瑞克:)。kupa4

..。您在15-03-02运行使用主管的测试程序.干得好达瑞克:)

我的程序

代码语言:javascript
复制
#!/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)

他在主管中的配置

代码语言:javascript
复制
[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
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-16 14:03:02

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

您可以通过在您的PYTHONUNBUFFERED文件中设置supervisord.conf环境变量来做到这一点,如下所示:

代码语言:javascript
复制
[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,如下所示:

代码语言:javascript
复制
command=python3 -u /home/darek/PycharmProjects/Small_programs/shell_scripts/test/test_s.py
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58891444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档