Skip to main content

Inject logging handler for printing message in the format captured by pipeline

Project description

logging-pipeline

Python module to inject logging handler for printing message in the format captured by pipeline.

Install with:

pip install logging-pipeline

If logging is imported a handler is added to the root logger to print the error and warning messages in addition with a format recognized by the pipeline environment executing the script. If the script is executed outside a pipeline nothing is printed. Supported pipelines are:

  • Azure pipelines
  • GitHub actions
  • User defined by environment variables LOGGING_PIPELINE_WARNING_MESSAGE_FORMAT and LOGGING_PIPELINE_ERROR_MESSAGE_FORMAT. The value is used to configure the python logger with {}-format, see LogRecord attributes. E.g. LOGGING_PIPELINE_ERROR_MESSAGE_FORMAT="::%(filename)s:%(lineno)d::%(levelname)s::%(message)s::"

Compatibility

logging-pipeline uses a live-patching system to target the logging library and add a handler.

PyInstaller

The method used to automatically adding a logging handler relies on a .pth file script that python loads at startup. This method does not work when a python application is bundled into an executable with PyInstaller (or similar). If you want to use this tool in an application built with PyInstaller it will need to be manually enabled in your application. This can be done by adding the following line to the top of your main application script:

import logging_pipeline.wrapt_logging

This must be run before logging is imported.

Acknowledgements

The method of patching at runtime is built from the pip_system_certs module.

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

logging_pipeline-0.3.0.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

logging_pipeline-0.3.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file logging_pipeline-0.3.0.tar.gz.

File metadata

  • Download URL: logging_pipeline-0.3.0.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for logging_pipeline-0.3.0.tar.gz
Algorithm Hash digest
SHA256 8a304b87e368b0be4fbf2ef9b336486b98688de376156df524c09ed6985fd681
MD5 dd9fe415932a0338074ab131c8c7d778
BLAKE2b-256 d71c8376302252d8dec450e523a32d06a82aae1c3892e52351ac9b042d29d5fa

See more details on using hashes here.

File details

Details for the file logging_pipeline-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for logging_pipeline-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ce0775b1b1a60db1f38648ae5bbf6fccf575d5049cefa3207c50342424034515
MD5 5668632a9e5be5f478eb5eda4cf1f43a
BLAKE2b-256 ee141c7e12e63005ebc47b4383862014f8358278d96db48f49d39979092abba8

See more details on using hashes here.

Supported by

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