\

Pythonでは、ログファイルが一定のサイズに達したときに新しいログファイルを作成することができます。これを「ログローテーション」と呼びます。

PythonのloggingモジュールにはRotatingFileHandlerというクラスがあり、これを使用することでログローテーションを実現することができます。

以下に、Pythonでログローテーションを行う基本的なコードを示します。

import logging
import logging.handlers

# ロガーを取得
logger = logging.getLogger(__name__)

# ログ出力レベルの設定
logger.setLevel(logging.DEBUG)

# ローテーションの設定
handler = logging.handlers.RotatingFileHandler(
    filename='app.log',
    maxBytes=2000,
    backupCount=3
)

# ロガーに追加
logger.addHandler(handler)

# ログ出力
for num in range(30):
    logger.debug('debug:{}'.format(str(num)))

このコードでは、RotatingFileHandlerを使用してログファイルapp.logを作成し、そのサイズが2000バイトを超えたときに新しいログファイルを作成します。また、backupCount=3と設定することで、古いログファイルは最新の3つだけが保存され、それ以前のものは自動的に削除されます。

このように、Pythonのloggingモジュールを使用することで、ログファイルのサイズに基づいて自動的にログローテーションを行うことができます。

投稿者 admin

コメントを残す

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