Pythonのロギングライブラリは、アプリケーションやライブラリのための柔軟なイベントロギングシステムを実装するための関数とクラスを提供します。Pythonのロギングオブジェクトは便利で強力で、標準ライブラリであり、ログを出力するための様々な機能を具備しています。
PythonのloggerにおけるLEVEL
Pythonのloggerでは以下の log.LEVEL
を設定することができます:
- CRITICAL
- ERROR
- WARNING
- INFO
- DEBUG
これらのレベルは特定の整数が割り当てられ、ログの重大度を示します。デフォルトではINFO以下は出力されません。
import logging
logging.critical('critical')
logging.error('error')
logging.warning('warning')
logging.info('info')
logging.debug('debug')
# CRITICAL:root:critical
# ERROR:root:error
# WARNING:root:warning
PythonのloggerのLEVELを変更する
PythonのloggerのLEVELは basicConfig
を使うことで変更することができます。
import logging
# LEVEL を DEBUG に変更
logging.basicConfig(level=logging.DEBUG)
logging.critical('critical')
logging.error('error')
logging.warning('warning')
logging.info('info')
logging.debug('debug')
# CRITICAL:root:critical
# ERROR:root:error
# WARNING:root:warning
# INFO:root:info
# DEBUG:root:debug
このように、その時々に応じて、LEVEL設定を変えることでユースケースに応じたlog出力を可能にします。
Pythonのloggerのフォーマット
Pythonのloggerではlog出力のフォーマットを自由に設定することができます。
import logging
logging.warning('log msg is {}'.format('hoge fuga'))
logging.warning('log msg %s %s' % ('was', 'hoge fuga'))
# log msg is hoge fuga
# log msg was hoge fuga
基本的には、PythonのString型を扱う形式で、 format
関数や %
による変数代入を使って書くことができます。
Pythonのloggerのファイル出力
実際のユースケースではlogをファイル出力することが多いでしょう。Pythonのloggerでは logging.basicConfig
の引数として、ファイルパスを指定することで対象のファイルにlogが出力されます。
import logging
# logファイルパスを指定する
logging.basicConfig(filename='./sample.log')
logging.warning('log msg sample')
以上、Pythonのロギングライブラリとそのログレベルについての基本的な使い方と設定方法について解説しました。この知識を活用して、より効果的なロギングを行いましょう。