\

Pythonのloggingモジュールは、ログの出力や処理に便利なツールです。特に、ログファイルのローテーション(回転)は、ファイルが大きくなりすぎて解析が難しくなるのを防ぐために重要な機能です。

ローテーションとは

ログのローテーションとは、新しい空のログファイルで追記を再開することを指します。これは、ログファイルが大きくなりすぎて解析が難しくなるのを防ぐための重要な機能です。

Pythonでのログローテーション

Pythonのloggingモジュールでは、RotatingFileHandlerTimedRotatingFileHandlerを使用してログファイルのローテーションを行うことができます。

以下に、TimedRotatingFileHandlerを使用して日次でログファイルをローテートするサンプルコードを示します。

import logging
from logging.handlers import TimedRotatingFileHandler

# ログエントリのフォーマットを設定
formatter = logging.Formatter('%(asctime)s %(name)s %(levelname)s %(message)s')

# ハンドラを作成
handler = TimedRotatingFileHandler('/path/to/logfile.log',  when='midnight', backupCount=10)
handler.setFormatter(formatter)

# ロガーを作成
logger = logging.getLogger(__name__)
logger.addHandler(handler)
logger.setLevel(logging.DEBUG)

このコードでは、TimedRotatingFileHandlerを使用して、ログファイルを毎日真夜中にローテートします。また、backupCount=10により、過去10日分のログファイルを保持します。

以上がPythonでログファイルを日次でローテートする方法になります。この機能を活用することで、ログ管理をより効率的に行うことができます。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です