```python import logging def init_logging_config(): logging.basicConfig( level=logging.DEBUG, format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", ) ``` Ref: https://docs.python.org/3/library/logging.html#logrecord-attributes ```python import logging import os def configure_logging(): level = os.getenv("LOG_LEVEL", "INFO") json_enabled = os.getenv("LOG_JSON", "0") == "1" if json_enabled: # Requires `python-json-logger` installed fmt = "%(asctime)s [%(levelname)s] %(name)s %(message)s" formatter = { "class": "pythonjsonlogger.jsonlogger.JsonFormatter", "format": fmt, } else: formatter = { "format": "%(asctime)s [%(levelname)s] %(name)s " "%(message)s", } config = { "version": 1, "disable_existing_loggers": False, "formatters": { "standard": formatter, }, "handlers": { "console": { "class": "logging.StreamHandler", "level": level, "formatter": "standard", "stream": "ext://sys.stdout", }, "file": { "class": "logging.handlers.RotatingFileHandler", "level": level, "formatter": "standard", "filename": os.getenv("LOG_FILE", "app.log"), "maxBytes": 5 * 1024 * 1024, "backupCount": 5, "encoding": "utf-8", }, }, "root": { "level": level, "handlers": ["console", "file"], }, } logging.config.dictConfig(config) ```