Skip to main content
Help improve PyPI by participating in a 5-minute user interface survey!

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.

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.

Release history Release notifications

This version
History Node

0.1.8

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
multiline_log_formatter-0.1.8-py2.py3-none-any.whl (5.5 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Jan 15, 2016
multiline-log-formatter-0.1.8.tar.gz (306.6 kB) Copy SHA256 hash SHA256 Source None Jan 15, 2016

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page