Skip to main content

A simple, easy to use python logging framework that builds on top of the built-in logger module

Project description

LogTale - A python logging framework

A simple, easy to use logging framework that builds on top of the built-in logger module.

PyPI - Version GitHub release (with filter)

Installation

pip install logtale

Usage

Simple Usage:

import logtale.logtale as tale


def main():
    logtale = tale.LogTale("example", "./example.toml")
    logger = logtale.logger(__name__)

    logger.debug("test - debug")
    logger.info("test - info")
    logger.warning("test - warning")
    logger.error("test - error")
    logger.critical("test - critical")

if __name__ == "__main__":
    main()

Prepend/Postpend text to the log message:

logger.addFilter(filter.LogAppendFilter(prepend_text="ExamplePrepend"))
logger.addFilter(filter.LogAppendFilter(postpend_text="ExamplePostpend"))

Configuration File

Create a configuration file for logging settings using the templates/config_template.toml file as a template.

[output.colors]
# Set the colors associated with each debug level.
# Colors are only applied for logs printed to the console.
# The logging color feature can be enabled/disabled in '[output.console]' section.
DEBUG = '\033[1;36m'
INFO = '\033[1;38m'
WARNING = '\033[1;33m'
ERROR = '\033[1;35m'
CRITICAL = '\033[1;31m'

[output.file]
enable = true # enable/disable logging to a .log file (default=true)
level = "DEBUG" # the base log level for logging to a file (default=DEBUG)
path = "logs/" # the directory to create log files in (default=logs/)
format = "(%(asctime)s)[%(name)s][%(levelname)s]::%(message)s" # the log message format to use for file logging
name = "example.log" # the naming scheme of the log file, by default it's '<project_name>_<version>_<timestamp>.log'

[output.console]
enable = true # enable/disable logging to the console (default=true)
level = "DEBUG" # the base log level for logging to the console (default=DEBUG)
format = "[%(levelname)s]::%(message)s" # the log message format to use for console logging
use_colors = true # enable/disable the use of colors for log levels. colors can be customized in '[output.colors]' section.

Examples

Check the examples directory for example scripts and configuration files.

# ./examples/example.py
import logtale.logtale as tale
import logtale.filter as filter


def main():
    logtale = tale.LogTale("example", "./example.toml")
    logger = logtale.logger(__name__)
    logger.addFilter(filter.LogAppendFilter(prepend_text="ExamplePrepend"))

    logger.debug("test - debug")
    logger.info("test - info")
    logger.warning("test - warning")
    logger.error("test - error")
    logger.critical("test - critical")

if __name__ == "__main__":
    main()

Example log console output

example console output image

Example log file output

example file output image

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

logtale-0.0.11.tar.gz (109.7 kB view details)

Uploaded Source

Built Distribution

logtale-0.0.11-py3-none-any.whl (17.5 kB view details)

Uploaded Python 3

File details

Details for the file logtale-0.0.11.tar.gz.

File metadata

  • Download URL: logtale-0.0.11.tar.gz
  • Upload date:
  • Size: 109.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for logtale-0.0.11.tar.gz
Algorithm Hash digest
SHA256 51221993ac8697b11f5a4b90a4a14b202191e082a2bc2fbdf4be4bbf01a6a5cc
MD5 eff209d1be34602cd69d4ce9cc55a386
BLAKE2b-256 ff8e53011433da82267e64e4d4d6b327fb5034ba4e3c3952dfd5bb7adc4f25e6

See more details on using hashes here.

File details

Details for the file logtale-0.0.11-py3-none-any.whl.

File metadata

  • Download URL: logtale-0.0.11-py3-none-any.whl
  • Upload date:
  • Size: 17.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for logtale-0.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 f95e5e9a74822cbe256dd803920063eeaa553ea9b68ed641860e1ca4b300c5cd
MD5 799aa094771a7f42b33f7f6a4f6816d5
BLAKE2b-256 0c764bbf621da0a87de7751090edf48ce10abc70a41a27a95fdd8a1a3bfbd08c

See more details on using hashes here.

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