A StreamHandler wrapper that outputs messages to different streams based on logLevel
Project description
DoubleStreamHandler
A StreamHandler wrapper that outputs messages to different streams based on logLevel
Logging to the console is a nice feature to have, and Python's StreamHandler
is of great help. However, it can only output to one stream at a time, and by default it's stderr
.
This goes well with the default settings (level=WARNING
), but it isn't good when you decide to output INFO
messages as well.
This package prevents you from outputting non-error messages to stderr
as well as from having to juggle with your output streams.
Usage
import logging
from double_stream_handler import DoubleStreamHandler
# create logger
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
# create the handler
ch = DoubleStreamHandler()
# you can customize the logger by providing different streams and level, from which
# the stderr output will start
from io import StringIO
custom_out, custom_err = (StringIO(), StringIO())
ch = DoubleStreamHandler(err_level=25, streams=(custom_out, custom_err))
# set handler's level and add it to the logger
ch.setLevel(logging.INFO)
logger.addHandler(ch)
logger.debug("This is not printed")
logger.info("This is printed to stdout")
logger.error("This is printed to stderr")
Install
Requirements: Python 3.6 or higher
This package is hosted on PyPI, so you can install it with your package manager of choice
# for Pip
pip install double-stream-handler
# for Pipenv
pipenv install double-stream-handler
# for Poetry
poetry add double-stream-handler
# for Poetry
conda install double-stream-handler
Licence
BSD-3-Clause © 2021, Nikita Karamov
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file double-stream-handler-1.0.0.tar.gz
.
File metadata
- Download URL: double-stream-handler-1.0.0.tar.gz
- Upload date:
- Size: 3.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.6 CPython/3.9.5 Linux/5.4.0-1047-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93c3c8c096296caddb90c2bee0eabfcbea63dbc0fbaf30894554b36443703ce7 |
|
MD5 | d68c2f6c772d73f28473692a96129624 |
|
BLAKE2b-256 | 0c7b07f715572e9bfe5ddbf9928e1774688b1cd18b817bb6e4f97ab8e12f1d3f |
File details
Details for the file double_stream_handler-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: double_stream_handler-1.0.0-py3-none-any.whl
- Upload date:
- Size: 3.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.6 CPython/3.9.5 Linux/5.4.0-1047-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 37dad2bc3bd62a3cc13c7a110efda35344bbbce3a97c945d3b58fe708753fb81 |
|
MD5 | 141bd130692536f3a80ef76eb4d1959c |
|
BLAKE2b-256 | 43c53dbd1affc2533ad69766d8430a2ffae481a8ee2bb3a42b2103604f0c5935 |