Python日志记录,如何将信息写入2个单独的

时间:2017-06-08 07:17:42

标签: python logging

我正在尝试登录不同的StringIO。我希望每个记录器都会写入每个被实例化并赋予的StringIO。但这不起作用,只有第一个StringIO存储记录的信息。 关于我缺少什么的任何建议?

// returns part1/part2/part3
['part1/', '/part2', '/part3/'].map((s) => _.trim(s, '/')).join('/')

输出:

$('#modalId').modal({
    show:true,
}).css({
    'margin-top': function (){
        return window.gui.getTopWindow(window).scrollY;
    }
});

2 个答案:

答案 0 :(得分:1)

更改

log2.addHandler(stream_handler1)

log2.addHandler(stream_handler2)

整个代码:

import logging
from StringIO import StringIO
formatter = logging.Formatter('%(asctime)s %(name)-3s %(levelname)-4s %(message)s')

log_stream1 = StringIO()
log1 = logging.getLogger('a')
log1.setLevel(logging.DEBUG)
stream_handler1 = logging.StreamHandler(log_stream1)
stream_handler1.setLevel(logging.INFO)
stream_handler1.setFormatter(formatter)
log1.addHandler(stream_handler1)

log_stream2 = StringIO()
log2 = logging.getLogger('b')
log2.setLevel(logging.DEBUG)
stream_handler2 = logging.StreamHandler(log_stream2)
stream_handler2.setLevel(logging.INFO)
stream_handler2.setFormatter(formatter)
log2.addHandler(stream_handler2)

log1.info('log1')
log2.info('log2')

答案 1 :(得分:0)

你写了log2.addHandler(stream_handler1)。 你应该写log2.addHandler(stream_handler2)