Skip to main content

A utility for logging events in Python projects

Project description

python-logging

The log_event function is a utility for logging events in Python projects. It provides a consistent and flexible way to log successes, errors, and other events, and supports multiple output options such as logging to a file or pushing the logs to Elasticsearch.

Features

  • Logs events with the following fields: message, function name, project name, version, and status (success or error).
  • Optionally logs error tracebacks in case of errors.
  • Supports logging to a file, with the option to specify the file name and log rotation settings.
  • Supports logging to Elasticsearch, with the option to specify the Elasticsearch host and port, and other connection settings.
  • Provides a generalized function that can be easily integrated into any Python project.

Installation

To install the log_event function, you will need to install the following dependencies:

  • logging: A built-in Python library for logging events.
  • traceback: A built-in Python library for printing stack traces in case of errors.
  • uuid: A built-in Python library for generating unique IDs.
  • elasticsearch: A third-party library for pushing logs to Elasticsearch.
  • You can install these dependencies by running the following command:
pip install -r requirements.txt

Usage

To use the log_event function, you will need to import it into your Python code and call it with the appropriate arguments. Here is an example of how to log a success event:

from log_event import log_event

log_event('success', "Test message", function_name='test_function', project_name='test_project', version='1.0.0')

This will log a success event with the message 'Test message', the function name 'test_function', the project name 'test_project', and the version '1.0.0'. To log an error event, you can pass the error argument with an Exception object:

from log_event import log_event

try:
    # Some code that may throw an exception
    raise Exception('Test error')
except Exception as e:
    log_event('error', "Test error", function_name='test_function', error=e, project_name='test_project', version='1.0.0')

This will log an error event with the message 'Test error', the function name 'test_function', the project name 'test_project', and the version '1.0.0'. The error traceback will also be logged.

To log to a file, you can pass the save_to_file argument with a value of True and the file_name argument with the desired file name:

from log_event import log_event

log_event('success', "Test message", function_name='test_function', project_name='test_project', version='1.0.0', save_to_file=True, file_name='test.txt')

This will log the event to the file 'test.txt'.

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

a8logging-1.0.5.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

a8logging-1.0.5-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file a8logging-1.0.5.tar.gz.

File metadata

  • Download URL: a8logging-1.0.5.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6

File hashes

Hashes for a8logging-1.0.5.tar.gz
Algorithm Hash digest
SHA256 c3aee08f7f6c76694b66af7237145a5d1bb775cb31dbe774736ddfd7f7f73ee7
MD5 0359e32739679886a2aba1d26177eb72
BLAKE2b-256 c0d0df01da492bed0283a587b45674a428da0b008face7496fce007eeb6b16ca

See more details on using hashes here.

File details

Details for the file a8logging-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: a8logging-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6

File hashes

Hashes for a8logging-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d44745912b5fd3ed244a6b706b47690ece5b00485dead9b4dbb38ece912375e7
MD5 916e4e284fc5463363d80643169d926f
BLAKE2b-256 b7f177452593e217cba89c6a2dac7c9ebf697128d4b0f0bdfa0de86d2bcd1500

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