/request-id-helper

request-id-helper is a helper to add request id in logger and context

Primary LanguagePythonApache License 2.0Apache-2.0

request-id-helper

CI codecov pypi downloads versions license

request-id-helper is a helper to add request id in logger and context.

Installation

request-id-helper is available on PyPI. Use pip to install:

$ pip install request-id-helper

Basic Usage

import logging
from request_id_helper import init_logger, set_request_id

logger = logging.getLogger(__name__)

LOGGING = {
    "version": 1,
    "disable_existing_loggers": 0,
    "formatters": {
        "default": {
            "()": "request_id_helper.RequestIdFormatter",
            "format": "[%(asctime)s] %(levelname)s [%(request_id)s] %(name)s | %(message)s",
            "datefmt": "%d/%b/%Y %H:%M:%S",
        }
    },
    "handlers": {
        "stdout": {
            "level": "INFO",
            "class": "logging.StreamHandler",
            "formatter": "default",
        },
    },
    "loggers": {
        "": {
            "handlers": ["stdout"],
            "propagate": True,
            "level": "INFO",
        },
    },
}


def main():
    init_logger(LOGGING)

    @set_request_id()
    def my_function() -> int:
        
        logger.info("Demo")

        return 10

    my_function()

if __name__ == "__main__":
    main()
    [17/Oct/2024 20:13:02] INFO [459cb386-5947-4eec-b3d8-266605f40444] __main__ | Demo

License

request-id-helper is developed and distributed under the Apache 2.0 license.

Reporting a Security Vulnerability

See our security policy.