【发布时间】:2020-01-09 15:26:41
【问题描述】:
我们有一个在 docker 上运行的应用程序;目前所有日志都被写入日志文件。我们想将日志移动到stdout。我们已经使用/dev/fd/1 将日志写入stdout,它正在工作。
应用 A 有以下日志:
nginx log
supervisor log
app-supervisor log
nginx 配置,变化如下:
access_log /dev/fd/1 main;
error_log /dev/fd/1 error;
在 supervisor 配置中,变化如下:
stdout_logfile=/dev/fd/1
样品主管:
[program:app]
command=/bin/bash -c "exec npm run start-generic"
directory=/app01
stdout_logfile=/dev/fd/1
stdout_logfile_maxbytes=0
autostart=true
autorestart=true
startretries=0
stopasgroup=true
[program:nginx]
command=/usr/sbin/nginx -g "daemon off;"
stdout_logfile=/dev/fd/1
stdout_logfile_maxbytes=0
现在的问题是所有日志都被写入stdout。我想区分这些日志(即在它们来自的每一行前面放置一些标识符)。
如下所示:
[app] .....app log line1...
[app] .....app log line2...
[nginx] ....nginx log line1...
[app] .....app log line3...
[nginx] ....nginx log line2...
【问题讨论】:
标签: docker stdout supervisord