Skip to main content

Custom logger with colors on terminal and some useful decorators

Project description

MWK logger


PyPI
Custom logger with colors on terminal.
logger
And some useful decorators.
dec
dec_log


Installing package

pip install mwk-logger

Using logger

1. Get instance of mwk-logger

from mwk_logger import MwkLogger

log = MwkLogger(name='mwk',
                file='logger.log',
                stream_level='DEBUG',
                file_level='DEBUG',
                time=True)

keyword parameters:

  • name - name of the logger, by default = 'mwk',
  • file - path to file to log into, by default = 'mwk.log',
  • stream_level - logging level for terminal, by default = 'WARNING',
  • file_level - logging level for file, by default = None,
  • time - if timestamp should be added to terminal log, by default = False,

LEVELS: None - no logging or:
'DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'.
If both levels are set to None stream_level is changed to WARNING.
Timestamp is always added to file logs. One can set if timestamp will be added to terminal logs.

2. Logging

log.debug('This is a debug message.')
log.info('This is an info message.')
log.warning('This is a warning message.')
log.error('This is an error message!')
log.critical('This is a critical message!!!')
log.exception('This is an exception message!')

Using decorators

  1. @timer - print or log the runtime of the decorated function
  2. @f_sig - print or log the signature and the return value of the decorated function

1. Decorator with no arguments

Prints on screen.

from mwk_logger import timer, f_sig

@timer
@f_sig
def function(*args, **kwargs):
    # ... some function ...
    return 'something'

1. Decorator with arguments

Output is logged with provided logger with level = INFO.
!!! keyword logger is obligatory !!!

from mwk_logger import MwkLogger, timer, f_sig

log = MwkLogger()

@timer(logger=log)
@f_sig(logger=log)
def function(*args, **kwargs):
    # ... some function to be logged...
    return 'something'

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

mwk-logger-2.0.4.tar.gz (5.7 kB view hashes)

Uploaded Source

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