Confused About Python Loggin

Jannik Sundø j.sundo at cs.ucl.ac.uk
Fri Jul 31 07:41:49 EDT 2009


Hi all. I think I fixed this problem by setting fileLogger.propagate =  
0. Otherwise it will propagate up to the root logger, which outputs to  
stdout, as far as I can understand.


On 31 Jul 2009, at 01:17, Jannik Sundø wrote:

> Dear all, I am quite confused about the Python logging. I have read  
> and re-read the Python documentation for the Python logging module  
> and googled, but to no avail. I simply want one logger to log to a  
> file and another logger to log to the console. Neither should log  
> the other's messages. The code below causes fileLogger to log to  
> BOTH a file and the console, how come? It seems to me that a call  
> such as "consoleHandler = logging.StreamHandler()" affects other  
> loggers, which I do not want. Also, if I do not do  
> logging.basicConfig(level=logging.INFO) in one of the classes of my  
> application, the logging does not work. Any ideas how come?
>
> Thanks a lot for any help! :)
>
> fileHandler = logging.FileHandler('../../logs/log.txt')
> fileLogger = logging.getLogger('TESTHARNESSFILE')
> fileLogger.addHandler(fileHandler)
> fileLogger.setLevel(logging.INFO)
> consoleHandler = logging.StreamHandler()
> logger = logging.getLogger('TESTHARNESS')
> logger.addHandler(consoleHandler)
> logger.setLevel(logging.INFO)




More information about the Python-list mailing list