使主管日志记录到文件和标准输出

时间:2018-08-21 18:04:15

标签: docker supervisord

我有一个运行ping命令的docker容器。此过程由超级用户管理,这是我的配置文件:

[supervisord]
nodaemon=true

[program:ping]
command=ping 1.1.1.1
autostart=true
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/ping.out.log

stdout中的ping 1.1.1.1被保存到/var/log/ping.out.log

我也希望将其发送到/dev/stdout,以便可以在控制台中查看日志。

我这样做的不可靠方法是运行第二个过程来tail -f日志文件。所以我的配置文件看起来像这样:

[supervisord]
nodaemon=true

[program:ping]
command=ping 1.1.1.1
autostart=true
autorestart=true
redirect_stderr=true
stdout_logfile=/var/log/ping.out.log

[program:ping-log]
command=tail -f /var/log/ping.out.log
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
redirect_stderr=true

问题是,这种“ hacky”方法行吗?还是有更好的方法来做到这一点? 我希望能够运行docker log <container id>来获取日志

0 个答案:

没有答案