PythonでログをJSON形式で出力する方法について説明します。この記事では、logging
とpython-json-logger
というライブラリを使用して、ログをJSON形式で出力する方法を紹介します。
まず、python-json-logger
をインストールします。以下のコマンドでインストールできます。
pip install python-json-logger
次に、logging
とpythonjsonlogger
をインポートし、ロガーを設定します。以下にそのコードを示します。
import logging
from pythonjsonlogger import jsonlogger
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)
h = logging.StreamHandler()
h.setLevel(logging.DEBUG)
json_fmt = jsonlogger.JsonFormatter(fmt='%(asctime)s %(levelname)s %(name)s %(message)s', json_ensure_ascii=False)
h.setFormatter(json_fmt)
logger.addHandler(h)
このコードでは、jsonlogger.JsonFormatter
を使用してログのフォーマットを設定しています。json_ensure_ascii=False
を設定することで、メッセージがASCIIエンコードされるのを防ぎます。
以上がPythonでログをJSON形式で出力する基本的な方法です。この方法を使用すれば、ログの解析や集計などを効率的に行うことができます。