当我像这样运行我扭曲的应用程序时:
twistd --pidfile ./twistd.pid -l $HOME/logs/my_application.log -oy service.tac我发现它不记录通过python日志记录系统发送的任何内容。我注意到扭曲的日志中有一个"PythonLoggingObserver“,但是它将扭曲的日志重定向到日志记录模块。
我想弄清楚如何让所有日志(不管日志模块)转到在twistd上使用"-l“命令指定的日志文件。我怀疑我的日志正在写入守护进程的stdout。
下面是如何在.tac文件中初始化python日志记录:
import logging
LOG_LEVEL = logging.DEBUG
logger = logging.getLogger(module_name)
logger.setLevel(LOG_LEVEL)
logging.basicConfig(level=LOG_LEVEL)发布于 2015-05-02 10:37:46
使用twisted.python.log.logfile添加流处理程序。例如:
>>> from sys import stdout
>>> from logging import StreamHandler, getLogger
>>> from twisted.python.log import startLogging, logfile
>>> observer = startLogging(stdout, setStdout=False)
2015-05-02 06:34:39-0400 [-] Log opened.
>>> getLogger().addHandler(StreamHandler(stream=logfile))
>>> getLogger().log(100, "Hello")
2015-05-02 06:36:26-0400 [-] Hello
>>> https://stackoverflow.com/questions/29996482
复制相似问题