【发布时间】:2012-07-08 16:06:53
【问题描述】:
supervisorctl tail从哪里获取某个进程的日志信息?如何获得完整的日志?
【问题讨论】:
标签: python logging supervisord
supervisorctl tail从哪里获取某个进程的日志信息?如何获得完整的日志?
【问题讨论】:
标签: python logging supervisord
来自命令行帮助 (supervisorctl help tail):
所以默认情况下,tail 命令尾随进程标准输出。如果您需要获取完整的日志,stdout_logfile option of the [program:x] section 会确定存储的位置;还有一个stderr_logfile 选项。
如果该选项未设置或设置为AUTO,则在进程启动时将创建一个日志文件,但在 supervisord 重新启动时会清除该日志文件。该文件在the [supervisord] childlogdir option 设置的目录中创建(默认为您平台的TMP directory),并具有<program-name>-<stdout|stderr>---<supervisor-identifier>-<6-random-characters>.log 形式的生成文件名,例如varnish-stdout---supervisor-AqY52e.log.
因此,如果您想访问整个标准输出日志,您至少需要将childlogdir 选项设置为固定目录,以免您必须搜索正确的临时目录。
【讨论】: