我使用FileHandler将tornado访问日志写入文件,但是同样的日志输出到stdout。
from tornado.options import define, options
options.logging = None
options.parse_command_line()
access_log = logging.getLogger('tornado.access')
access_log.setLevel(logging.INFO)
handler = logging.FileHandler(log_path)
access_log.addHandler(handler)
// stdout::
INFO:tornado.access:200 GET / (ip) 0.93ms
它写入日志文件,但我不知道为什么它也输出到stdout。
答案 0 :(得分:0)
Python的日志记录框架基于记录器的层次结构。记录到tornado.access
的任何内容也默认传播到根记录器(默认情况下会转到stderr)。如果您不希望访问日志重复,请设置propagate
属性:
access_log.propagate = False