2017-09-14 99 views
0

所以在我的系统中,监控程序捕获标准错误和标准输出到这些文件:如何更改由主管启动的进程的stdout和stderr日志位置?

[email protected]:/var/log/supervisor# ls -l 
total 24 
-rw------- 1 root root 18136 Sep 14 03:35 gunicorn-stderr---supervisor-VVVsL1.log 
-rw------- 1 root root  0 Sep 14 03:35 gunicorn-stdout---supervisor-lllimW.log 
-rw------- 1 root root  0 Sep 14 03:35 nginx-stderr---supervisor-HNIPIA.log 
-rw------- 1 root root  0 Sep 14 03:35 nginx-stdout---supervisor-2jDN7t.log 
-rw-r--r-- 1 root root 1256 Sep 14 03:35 supervisord.log 

但我想改变gunicorn的输出和错误日志文件的位置在/ var /日志/ gunicorn和固定的文件名用于监控目的。

这是我在配置文件中做了:

[program:gunicorn] 
stdout_capture_maxbytes=50MB 
stderr_capture_maxbytes=50MB 
stdout = /var/log/gunicorn/gunicorn-stdout.log 
stderr = /var/log/gunicorn/gunicorn-stderr.log 
command=/usr/bin/gunicorn -w 2 server:app 

然而,它没有采取任何影响的。我错过了配置中的任何东西吗?

回答

0

更改stdoutstderrstdout_logfilestderr_logfile这应该可以解决您的问题。

您还可以在主配置中更改childlogdir以使所有子日志都出现在另一个目录中。如果您正在使用自动日志模式,日志文件名将自动生成到指定的childlogdir中,而无需设置stdout_logfile

为了使您的更改反映你需要要么重新启动主管服务:

service supervisord restart

重新加载配置supervisorctl reload并更新运行的配置处理supervisorctl update

关于此的文档可以在这里找到http://supervisord.org/logging.html#child-process-logs

相关问题