Skip to main content

A simple logger for Python

Project description

Logthon

A simple logger for Python

Getting Started

These instructions will install the logger to your machine.

Prerequisites

  • Python3
  • PIP3

Installation

pip3 install logthon

Usage

Import

Classic import

from logthon.logthon import Logthon as Logger

Logthon = Logger()

Save output on file

from logthon import Logthon as Logger

Logthon = Logger(save_log=True)

Save output on custom file

from logthon import Logthon as Logger

Logthon = Logger(save_log=True, filename='/path/to/file')

Define module name on log format

from logthon import Logthon as Logger

Logthon = Logger(module_name=__name__)  # or Logger(module_name='my.module.path')

# Example
Logthon.info('This is an info log')
# [2012-01-14 00:00:00] my.module.path - INFO: This is an info log

Info level

Logthon.info('This is an info log')
# [2012-01-14 00:00:00] INFO: This is an info log

Warn level

Logthon.warn('This is a warn log')
# [2012-01-14 00:00:00] WARN: This is a warn log

Error level

Logthon.error('This is an error log')
# [2012-01-14 00:00:00] ERROR: This is an error log

Success level

Logthon.success('This is a success log')
# [2012-01-14 00:00:00] SUCCESS: This is a success log

Critical level

Logthon.critical('This is a critical log')
# [2012-01-14 00:00:00] CRITICAL: This is a critical log

Debug level

Logthon.debug('This is a debug log')
# [2012-01-14 00:00:00] DEBUG: This is a debug log

Log and exit program with error code

You can log a message and exit the program defining optionally and error code.

# Default log level is CRITICAL
# Default error code is 1
Logthon.log_and_exit_with_code('This is a message')

Disable debug level log printing

logthon = Logthon(debug=False)
logthon.debug('This is a debug log')

# Nothing printed

If you want to define log level, you need to import level you want

from logthon.logthon import INFO_LEVEL
from logthon.logthon import WARN_LEVEL
from logthon.logthon import ERRO_LEVEL
from logthon.logthon import SUCC_LEVEL
from logthon.logthon import CRITICAL_LEVEL
from logthon.logthon import DEBUG_LEVEL

# e.g. we want to log with error level and exit
Logthon.log_and_exit_with_code('Log message', level=ERRO_LEVEL)

# e.g. we want to log with debug level and exit with code 5
Logthon.log_and_exit_with_code('Log message', level=DEBUG_LEVEL, error_code=5)

Log a prettified dictionary

You can log a message with a dictionary pretty printed

# Default log level is DEBUG 
Logthon.pretty_print('This is a message', {'key': 'word'})

If you want to define log level, you need to import level you want

from logthon.logthon import INFO_LEVEL
from logthon.logthon import WARN_LEVEL
from logthon.logthon import ERRO_LEVEL
from logthon.logthon import SUCC_LEVEL
from logthon.logthon import CRITICAL_LEVEL
from logthon.logthon import DEBUG_LEVEL

# e.g. we want to log with info level
Logthon.pretty_print('This is a message', {'key': 'word'}, level=INFO_LEVEL)

Contributing

Please read CONTRIBUTING.md for details on code of conduct, and the process for submitting pull requests.

License

This project is licensed under the GNU General Public License v3 (GPLv3), read LICENSE for details

Author

  • Giuseppe "mastrobirraio" Matranga - Initial work - Github

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for logthon, version 2.5.0
Filename, size File type Python version Upload date Hashes
Filename, size logthon-2.5.0-py3-none-any.whl (17.4 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size logthon-2.5.0.tar.gz (18.0 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page