LoginSignup
4
6

More than 3 years have passed since last update.

Pythonのloggingモジュールの使い方

Posted at

pythonのlogginモジュールの設定を一元管理し、以下のように、日時、ログを書き出したファイル名、 ログレベル(debug, info, error, ...), 出力メッセージと、一貫したフォーマットで出力させる方法を記載します。

2020-01-15 16:54:52,751 [logTest.py:9] INFO     メッセージです。

※ とりあえず、使うことができれば良い人向けです。(ログをローカルに吐き出すなどの処理に関しては説明していません。)
Git: k-washi
python ver: 3.6.8

ログの設定

logConf.pyファイルで、formatやログレベルを管理します。

utils/logConf.py
import logging

format="%(asctime)s [%(filename)s:%(lineno)d] %(levelname)-8s %(message)s"

logging.basicConfig(level=logging.DEBUG, format=format)

 ログの処理

ログ処理を行うファイルで、

  1. logConf.pyまでパスを通す
  2. nameで使用するファイルにおけるロガーを設定

を行います。
そして、logger.nfoやlogger.errorによりロギングできます。

import os
import sys

sys.path.append(os.path.join(os.path.dirname(__file__), '..'))

from utils.logConf import logging
logger = logging.getLogger(__name__)

logger.info("メッセージです。")
logger.error("エラーです。")

"""
2020-01-15 16:54:52,751 [logTest.py:9] INFO     メッセージです。
2020-01-15 16:54:52,751 [logTest.py:10] ERROR    エラーです。
"""

まとめ

以上で、簡単なロギング処理が可能となりました。
もし、追加でログのファイル出力等を行う場合、logConf.pyファイルを変更していけば、追加機能も簡単に追加できます。

4
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
6