Pythonでのロギング出力は、プログラムの動作を追跡するための重要な手段です。Pythonのlogging
モジュールを使用すると、エラーメッセージや情報メッセージをコンソールまたはファイルに出力することができます。
ロギングの基本
Pythonのlogging
モジュールは、ログメッセージを出力するための機能を提供します。以下に基本的な使用方法を示します。
import logging
# ロガーの作成
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
# ログメッセージの出力
logger.info('This is an info message')
このコードは、INFO
レベルのログメッセージをコンソールに出力します。
ログの出力先
logging
モジュールでは、ログメッセージの出力先を指定することができます。出力先は「ハンドラ」と呼ばれ、コンソール出力用のStreamHandler
やファイル出力用のFileHandler
などがあります。
import logging
# ロガーの作成
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
# ファイルハンドラの作成
handler = logging.FileHandler('app.log')
handler.setLevel(logging.INFO)
# ハンドラのロガーへの登録
logger.addHandler(handler)
# ログメッセージの出力
logger.info('This is an info message')
このコードは、INFO
レベルのログメッセージをapp.log
という名前のファイルに出力します。
ログメッセージのフォーマット
logging
モジュールでは、ログメッセージのフォーマットをカスタマイズすることができます。フォーマットはFormatter
クラスを使用して定義します。
import logging
# ロガーの作成
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
# フォーマッタの作成
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
# ファイルハンドラの作成
handler = logging.FileHandler('app.log')
handler.setLevel(logging.INFO)
handler.setFormatter(formatter) # フォーマッタの設定
# ハンドラのロガーへの登録
logger.addHandler(handler)
# ログメッセージの出力
logger.info('This is an info message')
このコードは、日付、ロガーの名前、ログレベル、メッセージを含むログメッセージをapp.log
という名前のファイルに出力します。
以上、Pythonでのロギング出力についての基本的な情報を提供しました。詳細な情報や使用例については、公式ドキュメンテーションやオンラインのチュートリアルを参照してください。