Pythonのlogging
モジュールは、プログラムの動作を記録・報告するための非常に強力なツールです。このモジュールは、ログメッセージの生成(Logger)とログメッセージの出力(Handler)の2つの主要な部分で構成されています。
Logger
Loggerは、アプリケーションの任意の場所からログメッセージを作成するためのインターフェースを提供します。Loggerは階層的に構成されており、ルートLoggerから始まります。Loggerは、ログメッセージがどのレベル(DEBUG, INFO, WARNING, ERROR, CRITICAL)であるかを判断し、適切なHandlerにメッセージを送信します。
from logging import getLogger, INFO
logger = getLogger(__name__)
logger.setLevel(INFO)
Handler
Handlerは、ログメッセージを適切な場所(コンソール、ファイル、HTTPサーバーなど)に出力します。各Handlerは、ログメッセージがどのレベルであるかを判断し、適切なレベルのメッセージのみを出力します。
from logging import StreamHandler, FileHandler
ch = StreamHandler()
fh = FileHandler('log/test.log')
LoggerとHandlerの組み合わせにより、ログメッセージの生成と出力を柔軟に制御することが可能になります。これにより、アプリケーションの動作を詳細に記録し、問題の診断やデバッグを効率的に行うことができます。