こんにちは。
本日はPythonメモです。
概要
タイトルの通り。
loggingモジュールを使用して
ログの出力、ファイルへの出力メモです。
サンプルコード
logging.XXX を使用して出力を行う
import logging logging.debug('DEBUGログです。') logging.info('INFOログです。') logging.warning('WARNINGログです。') logging.error('ERRORログです。') logging.critical('CRITICALログです。')
出力結果は以下です。
デフォルトのログレベルはWARNINGとなっています。
WARNING:root:WARNINGログです。 ERROR:root:ERRORログです。 CRITICAL:root:CRITICALログです。
logging.log を使用して出力を行う
import logging logging.log(logging.DEBUG, 'DEBUGログです。') logging.log(logging.INFO, 'INFOログです。') logging.log(logging.WARNING, 'WARNINGログです。') logging.log(logging.ERROR, 'ERRORログです。') logging.log(logging.CRITICAL, 'CRITICALログです。')
出力結果は以下です。
先程と同様、デフォルトのログレベルはWARNINGとなっています。
WARNING:root:WARNINGログです。 ERROR:root:ERRORログです。 CRITICAL:root:CRITICALログです。
logging.basicConfig を使用してログの設定を調整
logging.basicConfigを使用して、
ログレベルと出力するフォーマットを指定しています。
import logging logging.basicConfig( level=logging.DEBUG, format='%(asctime)s [%(levelname)s] %(message)s' ) logging.log(logging.DEBUG, 'DEBUGログです。') logging.log(logging.INFO, 'INFOログです。') logging.log(logging.WARNING, 'WARNINGログです。') logging.log(logging.ERROR, 'ERRORログです。') logging.log(logging.CRITICAL, 'CRITICALログです。')
出力結果は以下です。
2023-07-23 15:03:02,615 [DEBUG] DEBUGログです。 2023-07-23 15:03:02,616 [INFO] INFOログです。 2023-07-23 15:03:02,616 [WARNING] WARNINGログです。 2023-07-23 15:03:02,616 [ERROR] ERRORログです。 2023-07-23 15:03:02,616 [CRITICAL] CRITICALログです。
ログをファイルへ出力する
import logging logging.basicConfig( filename='sample.log', level=logging.DEBUG, format='%(asctime)s [%(levelname)s] %(message)s' ) logging.log(logging.DEBUG, 'DEBUGログです。') logging.log(logging.INFO, 'INFOログです。') logging.log(logging.WARNING, 'WARNINGログです。') logging.log(logging.ERROR, 'ERRORログです。') logging.log(logging.CRITICAL, 'CRITICALログです。')
ファイルへの出力結果は以下です。
2023-07-23 15:10:46,534 [DEBUG] DEBUGログです。 2023-07-23 15:10:46,547 [INFO] INFOログです。 2023-07-23 15:10:46,547 [WARNING] WARNINGログです。 2023-07-23 15:10:46,547 [ERROR] ERRORログです。 2023-07-23 15:10:46,547 [CRITICAL] CRITICALログです。
以上です。