私は Django アプリケーションを開発しており、ログを毎日ローテーションするカスタム ハンドラーが必要です。TimedRotatingFileHandler (悪名高い「真夜中」の混乱) に苦労しました。
ハンドラーは、現在のシステム日付に基づいてログ ファイルをローテーションする必要があります。つまり、毎日の新しいログ ファイルです。どうすればいいですか?
私にとって最善の解決策は、ログファイル名を日付で作成することだと思います。私はこれをやった。
'handlers': {
'default': {
'level':'DEBUG',
'class':'logging.FileHandler',
'filename': '/path/debug_' + date.today().strftime('%d%m%Y') + '.log',
'formatter':'standard',
},
}
Python >= 2.6 を使用する POSIX プラットフォームを使用している場合は、外部ログ ローテータ (例: logrotate
) をWatchedFileHandler
.