python里的logging怎么写多个文件?

python里的logging怎么写多个文件?

俺想把不同的信息,在同一个程序里写到不同的log文件里。
比如
当条件a,写到a.log里
当条件b,写到b.log里
你使用2个Logger对象不就行了
求简单的sample code...
w1=file('test1.txt','a')
w2=file('test2.txt','a')
i=0
if i<1000:
    w1.write(str(i)+'\n')
else:
    w2.write(str(i)+'\n')
w1.close()
w2.close()
请lz参看:
http://www.python.org/doc/current/lib/multiple-destinations.html
3楼的你根本没看清楚lz的问题啊,呵呵
把文件绑定到logger可以basicConfig的实现。
楼上的,俺看了这段,不过比较苯,还是没明白怎么搞,他这里是写一个到文件,一个到console.
basicConfig只有一个地方可以设置filename

[Copy to clipboard] [ - ]
CODE:
import logging


logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s %(levelname)s %(message)s',
                    filename='myapp.log',
                    filemode='a')
log1=logging.getLogger('lo')
log1.debug('A debug message')
log1.info('Some information')
log1.warning('A shot across the bows')

我怎么在上述代码里加入类似log2.info('log2')的语句,把信息写到myapp2.log里?


[Copy to clipboard] [ - ]
CODE:
import logging

log1 = logging.getLogger('area1')
log2 = logging.getLogger('area2')

fs = '%(asctime)s %(levelname)s %(message)s'
dfs = '%m-%d %H:%M'
fmt = logging.Formatter(fs, dfs)

hdlr1 = logging.FileHandler('1.log', 'a')
hdlr1.setFormatter(fmt)
log1.addHandler(hdlr1)
log1.setLevel(logging.DEBUG)

hdlr2 = logging.FileHandler('2.log', 'a')
hdlr2.setFormatter(fmt)
log2.addHandler(hdlr2)
log2.setLevel(logging.DEBUG)
        
log1.debug('A debug message')
log1.info('Some information')
log1.warning('A shot across the bows')

log2.debug('A debug message2')
log2.info('Some information2')
log2.warning('A shot across the bows2')

谢谢!俺好好学习一下。