2009-07-22 4 views
2

나는 매일 실행하는 프로세스가 있습니다. 그것은 파이썬 로깅을 사용합니다. 파일 이름에 현재 날짜를 포함하는 파일에 쓸 파이썬 로깅 모듈을 어떻게 구성합니까?파이썬 로깅 파일에 현재 날짜 포함하기

매일 아침 TimedRotatingFileHandler가 프로세스를 다시 시작하기 때문에 TimedRotatingFileHandler가 작동하지 않습니다. 프로젝트가 더 크므로 로깅 구성 파일에 로그인하는 데 필요한 코드를 유지하는 데 관심이 있습니다. http://docs.python.org/library/logging.html#logging.handlers.TimedRotatingFileHandler

답변

0

당신은 TimedRotatingFileHandler에 관심이있을 수 있습니다. 예 :

import logging 
import logging.handlers 

LOG_FILENAME = '/tmp/log' 

# Set up a specific logger with our desired output level 
log = logging.getLogger(__name__) 
log.setLevel(logging.DEBUG) 
handler = logging.handlers.TimedRotatingFileHandler(LOG_FILENAME, when='D') 
log.addHandler(handler) 

그러나 이것은 프로그램이 하루 이상 실행될 때만 작동합니다. 스크립트가 cron 작업에서 매일 시작되는 경우 시간 소인을 포함하도록 로그 처리기에 전달하는 파일 이름을 수동으로 형식화하는 것이 좋습니다.