Skip to content

object-oriented python logging

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.txt
Notifications You must be signed in to change notification settings

jamesabel/balsa

balsa (logging utility)

Simple to use package that sets up Python logging. With just a few lines of code get well formatted logging to the console, log file, popup windows and exception services.

Here is a short Presentation on Balsa.

Installation

pip install balsa

Major Features

  • Simple to use. Add full-featured Python logging in just a few lines of code.
  • Sane default log levels. Single verbose flag. (All levels can be overridden if desired.)
  • Both console (stdout) and GUI (popup window) support.
  • Log file support. Uses appdirs for log file paths.
  • Structured logging via yasf.sf() (optional - you can still use simple strings).
  • Sentry support. Just provide your Sentry DSN.
  • Informative log message formatting (or you can change it if you like).
  • ISO 8601 timestamp format (with fractional seconds).
  • Cross platform (Windows, Linux, MacOS). Pure Python.
  • Multiprocessing support.
  • AWS CloudWatch logs support. Structured logs enable CloudWatch Logs Insights.

Simple Example

from balsa import get_logger, Balsa

application_name = 'example'

log = get_logger(application_name)


def main():
    balsa = Balsa(application_name, 'james abel')
    balsa.init_logger()
    log.error('my error example')

This will yield output of this form:

2021-10-24T10:49:04.150790-07:00 - example - balsa_simple_example.py - 12 - main - ERROR - my error example

Where did the name come from?

Balsa lumber is very soft and light, with a coarse, open grain. The Balsa package is light weight, malleable, and open source.

About

object-oriented python logging

Topics

Resources

License

MIT, MIT licenses found

Licenses found

MIT
LICENSE
MIT
LICENSE.txt

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •