Pythonのloggingモジュールを使用して、アプリケーションのイベントやエラーを追跡する方法
ログ出力のための標準ライブラリ「logging」モジュール。アプリケーション実行時に発生したデバッグ情報やエラー情報など、柔軟かつ設定可能なログ出力のための機能を提供する。
ロギングモジュールは主に以下のような重要なコンポーネントを含んでいます。
- Logger:ログ記録機能を作成し、ログ出力の情報量をログレベルにより制御できます。
- Handler:ログ出力を、ファイル、端末などの場所にどう出力するかを指定する。
- フォーマッタ:ログ出力を編集するために使用されており、出力内容やスタイルをカスタマイズ可能。
- ログフィルタリング条件を設定します。これによって、指定された条件を満たすログの出力かどうかを制御できます。
ロギングモジュールの使い方は次の通りです。
- ロギングをインポートします
- logging.getLogger()
- logger.setLevel()ネイティブな日本語言い換え
- logging.FileHandler()
- ロギング.StreamHandler()
- logging.Formatter()
- logger.addHandler()
- logger.デバッグ()
- logger.info()
- logger.warning()
以下に、loggingモジュールを使用する簡単な例を示します。
import logging
# 创建Logger对象
logger = logging.getLogger('my_logger')
logger.setLevel(logging.DEBUG)
# 创建Handler对象
file_handler = logging.FileHandler('log.txt')
console_handler = logging.StreamHandler()
# 创建Formatter对象
formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
# 设置Formatter对象
file_handler.setFormatter(formatter)
console_handler.setFormatter(formatter)
# 将Handler对象添加到Logger对象中
logger.addHandler(file_handler)
logger.addHandler(console_handler)
# 使用Logger对象打印日志
logger.debug('This is a debug message')
logger.info('This is an info message')
logger.warning('This is a warning message')
logger.error('This is an error message')
logger.critical('This is a critical message')
上記のステップに従うと、ログをファイルと端末に同時に出力し、指定された形式で出力できます。