使用docker收集nginx容器日志

一般情况下,使用docker容器启动的任务中程序的logger机制都支持 console 输出,直接输出到docker的console中或者使用宿主机的目录挂载重定向到特定文件中,使用ELK搜集日志。 但是对于部分开源的服务,例如nginx,日志的输出目录是在 nginx.conf 中指定:

user  nginx;
worker_processes  4;
error_log  /var/log/nginx/error.log;
http {
    access_log  /var/log/nginx/access.log  main;
......

可以通过以下两种方式完成输出到console的输出:

ln -sf /dev/stdout /var/log/nginx/access.log
ln -sf /dev/stderr /var/log/nginx/error.log

或者:

user  nginx;
worker_processes  4;
error_log  /dev/stderr;
http {
    access_log  /dev/stdout  main;
...

发表评论

电子邮件地址不会被公开。 必填项已用*标注