Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

nicelog

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

nicelog

Nice colorful formatters for Python logging.

  • 0.3
  • PyPI
  • Socket score

Maintainers
1

Nice Log ########

.. image:: https://circleci.com/gh/rshk/nicelog.svg?&style=shield :target: https://circleci.com/gh/rshk/nicelog :alt: CircleCI build status

Provide formatters to nicely display colorful logging output on the console.

Fork this project on GitHub <https://github.com/rshk/nicelog>_

Right now, it contains only one formatter, coloring log lines depending on the log level and adding nice line prefixes containing logger name, but future plans are to add more formatters and allow better ways to customize them.

Installation

::

pip install nicelog

Quick usage

Since version 0.3, nicelog comes with a helper function to quickly set up logging for basic needs.

.. code-block:: python

from nicelog import setup_logging

setup_logging()

Or, if you want to include debug messages too:

.. code-block:: python

setup_logging(debug=True)

Advanced usage

.. code-block:: python

import logging
import sys

from nicelog.formatters import Colorful

# Setup a logger
logger = logging.getLogger('foo')
logger.setLevel(logging.DEBUG)

# Setup a handler, writing colorful output
# to the console
handler = logging.StreamHandler(sys.stderr)
handler.setFormatter(Colorful())
handler.setLevel(logging.DEBUG)
logger.addHandler(handler)

# Now log some messages..
logger.debug('Debug message')
logger.info('Info message')
logger.warning('Warning message')
logger.error('Error message')
logger.critical('Critical message')
try:
    raise ValueError('This is an exception')
except:
    logger.exception("An error occurred")

Example output

Here it is, in all its glory:

.. image:: .screenshots/nicelog-150408.png :alt: Screenshot

The output format can be further customized, eg. if you want to reduce colorfulness or verbosity.

Integrations

Django

I usually put something like this in my (local) settings:

.. code-block:: python

LOGGING['formatters']['standard'] = {
    '()': 'nicelog.formatters.Colorful',
    'show_date': True,
    'show_function': True,
    'show_filename': True,
    'message_inline': False,
}

Changelog

v0.2

  • More decoupling between "colorer" and "style"
  • Support for pretty tracebacks (colorful + code context + locals)
  • Added some tests
  • Python3 support via six

v0.1.9

  • Replaced strftime(3) conversion specifiers %F and %T aren't available on all platforms: replaced with long versions %Y-%m-%d and %H:%M:%S.

v0.1.8

  • Prevent failure in case the TERM environment variable is not set (PR #1)

v0.1.7

  • Added support for message_inline argument. If set to False, messages will be displayed on their own line (useful when enabling a lot of information)

v0.1.6

  • Added support for showing more information:

    • record date
    • file name / line number
    • module / function

v0.1.5

  • Added support for nicer colors in 256-color mode
  • Removed dependency from termcolor (now shipping better implementation)

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc