structlog-python
structlog
Overview
structlog adds structured, context-rich logging to Python. Instead of format strings, you pass key-value pairs that render as JSON (production) or colored console lines (development). Bound loggers and contextvars carry context such as a request ID across function calls, and the standard-library integration routes logs from other libraries through the same pipeline. Install with pip install structlog; release 26.1 needs Python 3.10 or newer (3.8 and 3.9 support was removed).
Instructions
Step 1: Configuration
Call this once at startup. Logs from structlog and from plain logging loggers (database drivers, SDKs) end up in the same renderer: foreign_pre_chain runs the shared processors on standard-library records, and remove_processors_meta strips structlog's internal keys before rendering.
# logging_config.py: structlog setup
import logging
import sys
import structlog