Python logging library


Keywords
logging, logs, pretty
License
MIT
Install
pip install spylogger==1.1.1

Documentation

spylogger

Generic python logging library.

Documentation: https://github.com/devstuff-io/spylogger

Installation

basic loggers

This installs spylogger only and will load the loggers with no external dependency requirements.

pip install spylogger

pretty loggers

This installs spylogger, pygments, and pygments-json and loads the basic loggers along with pretty loggers.

pip install spylogger[pretty]

Configuration

Environment Variables

Name Description Default
SPY_LOG_LOGGER

The configured logger name. Available loggers:

  • json-flat (Default)
  • json
  • json-clean
  • json-src-key
  • pretty
  • pretty-no-meta
  • ugly
json-flat
SPY_LOG_LEVEL The python log level. See the docs WARNING
SPY_SHOW_META Flag for showing the __meta output. True
SPY_JSON_LOG_KEYS

A list of log record keys to put in the __meta section of the log message.

Available Keys:

  • args
  • created
  • exc_info
  • exc_text
  • filename
  • funcName
  • levelname
  • levelno
  • lineno
  • module
  • msecs
  • msg
  • name
  • pathname
  • process
  • processName
  • relativeCreated
  • thread
  • threadName

See the python docs

  • args
  • funcName
  • levelname
  • lineno
  • module
  • pathname
  • process
  • threadName

Pretty Formatter Styles

See the pygments documentation

Environment Variables

Name Default
SPY_LOG_FORMATTER_DEBUG autumn
SPY_LOG_FORMATTER_INFO monokai
SPY_LOG_FORMATTER_WARNING fruity
SPY_LOG_FORMATTER_ERROR default
SPY_LOG_FORMATTER_CRITICAL vs

Available styles

python -c "from pygments.styles import get_all_styles;print list(get_all_styles())"

Usage

from spylogger import get_logger

# get_logger(name=SPY_LOG_LOGGER, log_level=SPY_LOG_LEVEL)
logger = get_logger()

logger.info({'string': 'test Pretty info message.', 'int': 42, 'bool': True})

More examples are in example.py

Authors

See contributors section on GitHub.