Skip to main content

Python logging formatter that prefix multiline log message and trackebacks.

Project description

Python logging formatter that prefix multiline log message and trackebacks. Makes the logs more readable, both for tracebacks and for multiline log messages.

  • Free software: BSD license

Benchmarking

Benchmark against pythons built in formatter logging.Formatter. The benchmark is done using pytest-benchmark, and the below results is from a run on a faily new MacBook Pro, using Python 2.7.

One should note that we are using StringIO as stream output, so we should expect the results to be even closer with more production alike setup, for example writing to disc.

python-redis-lock flow diagram

Installation

pip install multiline-log-formatter

Usage

Add this to dictConfig:

'formatters': {
    'default': {
        '()': 'multiline_formatter.formatter.MultilineMessagesFormatter',
        'format': '[%(levelname)s] %(message)s'
    },
},

And log messages will look like this:

[ERROR] LOGGING_MESSAGE ... (49564:MainThread)
... (49564:MainThread) : Traceback (most recent call last):
... (49564:MainThread) :   File "/Users/plauri/work/opensource/python-multiline-log-formatter/tests/test_multiline_formatter.py", line 112, in test_exception
... (49564:MainThread) :     raise Exception('EXCEPTION_MESSAGE')
... (49564:MainThread) : Exception: EXCEPTION_MESSAGE

And if you don’t like the default, you can customize it by extending MultilineMessagesFormatter and set multiline_marker. You can also change multiline_fmt, but assure you include %(message)s in the formating string.

Documentation

https://python-multiline-log-formatter.readthedocs.org/

Development

To run the all tests run:

tox

Other

This project sceleton is generated by ionelmc’s pylibrary cookiecutter.

Changelog

0.1.8 (2016-01-15)

  • First release on PyPI.

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

multiline-log-formatter-0.1.8.tar.gz (306.6 kB view details)

Uploaded Source

Built Distribution

multiline_log_formatter-0.1.8-py2.py3-none-any.whl (5.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file multiline-log-formatter-0.1.8.tar.gz.

File metadata

File hashes

Hashes for multiline-log-formatter-0.1.8.tar.gz
Algorithm Hash digest
SHA256 0889b13f6079d62fa8952f33f65c364ce0a37be5f202dc9ea3d20df137ab2151
MD5 cafcca8176e60236e12fd19301ea286e
BLAKE2b-256 fd781d2b3b2223782764437a0aba6edb82e63f0fe1fb3bdbada97a7890c798ee

See more details on using hashes here.

File details

Details for the file multiline_log_formatter-0.1.8-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for multiline_log_formatter-0.1.8-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 b0fc09278ffa79b25a036af7974bd5b42c31b1a9a09d11076245cae36048fd75
MD5 c9e40db2e0c944b5ae709f1da4f98bf4
BLAKE2b-256 54d39b4c66cb433963afead0528d8fc62b5c454ae0786c4bedad7a2882b981f9

See more details on using hashes here.

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