Skip to main content

Configure Python's native logging module using pyproject.toml

Project description

🪵 logging518

PyPI version PyPI - Downloads Test Matrix

Use your pyproject.toml (or any other TOML file) to configure Python's native logging module

Usage

You can use logging518.config.fileConfig the same way you would use logging.config.fileConfig but instead of passing a ConfigParser-form file, you can pass in a TOML-form file.

import logging
import logging518.config  # instead of logging.config

logging518.config.fileConfig("pyproject.toml")
logger = logging.get_logger("project")

logger.info("Hello, log!")

Configure

logging518.config.fileConfig simply deserializes the TOML file you pass in (using tomli/tomlib) and passes the contents to logging.config.dictConfig.

logging518.config.fileConfig uses the tool table in your TOML file to look up the configuration. All logging config should be defined under tool.logging in the tool table.

[tool.logging]
version = 1
disable_existing_loggers = true

[tool.logging.loggers.project]
level = "WARNING"

[tool.logging.loggers.project.foo_module]
level = "DEBUG"

This config would be the same as:

import logging.config

LOGGING_CONFIG = {
    "version": 1,
    "disable_existing_loggers": True,
    "loggers": {
        "project": {
            "level": "WARNING"
        },
        "project.foo_module": {
            "level": "DEBUG"
        }
    }
}

logging.config.dictConfig(LOGGING_CONFIG)

More examples can be found in the 👩‍🍳 Cookbook

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

logging518-1.0.0.tar.gz (3.4 kB view hashes)

Uploaded Source

Built Distribution

logging518-1.0.0-py3-none-any.whl (3.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page