2014-06-10 3 views
0

여러 모듈을 통해 파이썬 '로깅'을 사용하여 모든 내용을 텍스트 파일 1 개에 어떻게 기록 할 수 있습니까?여러 모듈을 통한 로깅

Main.py :

import logging 
logging.basicConfig(format='localhost - - [%(asctime)s] %(message)s', level=logging.DEBUG) 
log_handler = logging.handlers.RotatingFileHandler('debug.out', maxBytes=2048576) 


log = logging.getLogger('logger') 
log.addHandler(log_handler) 

import test 

Test.py는 :

import logging 

log = logging.getLogger('logger') 
log.error('test') 

debug.out은 빈 유지됩니다. 로깅 문서를 읽은 후에도 다음에 무엇을 시도해야할지 모르겠습니다.

편집 : 위의 코드로 수정.

답변

1

올바른 로깅 수준 (ERROR 이상 수준의 모든 메시지를 가져 오려면 ERROR 이상)을 설정하고 모든 메시지를 파일에 기록하는 처리기를 추가하십시오. 자세한 내용은 https://docs.python.org/2/howto/logging-cookbook.html을 참조하십시오.

+0

작동하지 않습니다. 위의 코드를 확인하십시오. – cpb2

+1

코드가 잘못되었습니다. Test.py에서는'log = logging.getLogger (__ name __)'을 사용하십시오. 그리고 Main.py에서'log = logging.getLogger (__ name __)'로 얻은 로그 객체를 설정해야합니다. 또한이 로깅 객체에 핸들러를 추가하십시오. 그런 다음'log.error (msg)'와'log.debug (msg)'를 사용하십시오. https://docs.python.org/2/howto/logging-cookbook.html의 '여러 모듈에서 로깅 사용하기'섹션의 예제를 따르십시오. –