0
이 스 니펫은 ERROR 레벨 이상을 콘솔에 넣고 DEBUG 이상을 로그 파일에 넣는 로깅 필터를 만듭니다. 내가 알아낼 수없는 것은 동일한 로그 파일에 쓰기 위해 여러 가지 모듈에서 해당 구성을 다시 사용하는 방법이지만 이름은이며 메시지를 생성 한 모듈을 올바르게 나타냅니다.파이썬 모듈간에 로깅 설정 재사용
미리 감사드립니다.
import logging
default_formatter = logging.Formatter(
"%(asctime)s:%(name)s:%(levelname)s:%(message)s")
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.ERROR)
console_handler.setFormatter(default_formatter)
file_handler = logging.FileHandler("error.log", "a")
file_handler.setLevel(logging.DEBUG)
file_handler.setFormatter(default_formatter)
noralog = logging.getLogger(__name__)
noralog.setLevel(logging.DEBUG)
noralog.addHandler(console_handler)
noralog.addHandler(file_handler)
noralog.debug('PUT ME ONLY IN THE FILE')
noralog.error('STREAM AND FILE')