Skip to content

Commit 63be656

Browse files
committed
1.0.6 Added stream to console handler + cleanup
- Added `stream` parameter to `add_console_handler` - Added some shield icons to README.md - Moved package version into `__init__.py`
1 parent 2549886 commit 63be656

File tree

4 files changed

+17
-4
lines changed

4 files changed

+17
-4
lines changed

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Python Log Helper
22

3+
[![PyPi Version](https://img.shields.io/pypi/v/privex-loghelper.svg)](https://pypi.org/project/privex-loghelper/)
4+
![License Button](https://img.shields.io/pypi/l/privex-loghelper) ![PyPI - Downloads](https://img.shields.io/pypi/dm/privex-loghelper)
5+
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/privex-loghelper)
6+
![GitHub last commit](https://img.shields.io/github/last-commit/Privex/python-loghelper)
7+
38
**Python Log Helper** is a small class designed to simplify the use of the built-in Python Logging Module.
49

510
It has no dependencies, and should be compatible with most versions of Python 2.x and 3.x (though we still recommend a minimum of 3.4).

privex/loghelper/LogHelper.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -228,24 +228,25 @@ def add_timed_file_handler(self, file_location, when='D', interval=1, backups=14
228228
log.addHandler(handler)
229229
return handler
230230

231-
def add_console_handler(self, level=None, formatter=None, logger=None):
231+
def add_console_handler(self, level=None, formatter=None, stream=sys.stdout, logger=None):
232232
# type: (int, logging.Formatter, logging.Logger) -> logging.StreamHandler
233233
"""
234234
Outputs logs matching the given `level` using `formatter` into standard output (console).
235235
236236
:param int level: Logging level for the handler, e.g. logging.INFO. Defaults to self.handler_level
237237
:param logging.Formatter formatter: For adjusting the logging format of this handler. Defaults to self.formatter.
238+
:param stream: The stream to output the messages to. Use ``sys.stderr`` for stderr printing. (default: ``sys.stdout``)
238239
:param logging.Logger logger: Optionally, specify a logger instance to add to, instead of self.log
239240
240241
:return logging.FileHandler: The newly generated instance of :py:class:`logging.FileHandler`
241242
"""
242243
log = self.log if logger is None else logger
243-
handler = logging.StreamHandler(sys.stdout)
244+
handler = logging.StreamHandler(stream)
244245
handler.setLevel(self.handler_level if level is None else level)
245246
handler.setFormatter(self.formatter if formatter is None else formatter)
246247
if logger is None:
247248
self.handlers.append(
248-
('console', dict(level=level,formatter=formatter),)
249+
('console', dict(level=level,formatter=formatter,stream=stream),)
249250
)
250251
log.addHandler(handler)
251252
return handler

privex/loghelper/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
from .LogHelper import LogHelper
22
name = 'loghelper'
3+
VERSION = '1.0.6'
4+
35
"""
46
Copyright 2018 Privex Inc.
57

setup.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,15 @@
2121
"""
2222

2323
from setuptools import setup, find_packages
24+
from privex.loghelper import VERSION
2425

2526
with open("README.md", "r") as fh:
2627
long_description = fh.read()
2728

2829
setup(
2930
name='privex_loghelper',
3031

31-
version='1.0.5',
32+
version=VERSION,
3233

3334
description='Small dependency-free class to make logging easier',
3435
long_description=long_description,
@@ -42,6 +43,10 @@
4243
packages=find_packages(),
4344
classifiers=[
4445
"Programming Language :: Python :: 3",
46+
"Programming Language :: Python :: 3.7",
47+
"Programming Language :: Python :: 3.6",
48+
"Programming Language :: Python :: 3.4",
49+
"Programming Language :: Python :: 2.7",
4550
"Programming Language :: Python :: 2",
4651
"License :: OSI Approved :: MIT License",
4752
"Operating System :: OS Independent",

0 commit comments

Comments
 (0)