Custom file logging system for Python applications
Project description
LogKontrol
LogKontrol is a Python library designed to provide flexible and configurable logging capabilities across different modules of a Python application. It supports file and console logging, with easy customization through a YAML configuration file.
Features
- File logging: with automatic file creation
- Configurable: logging levels and message formats
- Versatile: Support for logging plain messages, variable states, function calls, and JSON content
- Debugging: Optional console output for immediate debugging
Installation
To install LogKontrol, run the following command:
pip install logkontrol
You can also clone this repository and install it directly from the source:
git clone https://github.com/voidfemme/logkontrol.git
cd logkontrol
pip install .
Usage
Here's a quick example to get you started with LogKontrol:
from logkontrol import LogKonfig, log_message
# Initialize the logging system
log_konfig = LogKonfig()
log_konfig.init_logging()
# Log a simple message
log_message('general', 'Hello, world!')
Configuration
LogKontrol is highly customizable through a simple YAML configuration file. Here's an example configuration:
log_file_paths:
general: 'logs/general.log'
errors: 'logs/errors.log'
debug: 'logs/debug.log'
log_format: '[{timestamp}] [{level}] {message}'
timestamp_format: '%Y-%m-%d %H:%M:%S'
log_level: 'INFO'
console_output: True
Or, specify a different configuration file during initialization:
log_konfig.init_logging(config_file_path='path/to/your/config.yaml')
To add your own logging categories, simply add a new entry under 'log_file_paths' in the YAML file. For example, to add an audit trail log, you might add:
audit: 'logs/audit.log'
This allows you to tailor the logging system to suit the needs of your application with minimal effort.
Contributing
Contributions are welcome! Please fork the repository and open a pull request with your improvements.
License
LogKontrol by voidfemme is marked with CC0 1.0 Universal 💖 LICENSE file for details.
Philosophy
LogKontrol is released into the public domain as a reflection of my belief in the principle of "From each according to their ability, to each according to their needs." I believe that software should be a collective effort, where individuals contribute their skills and knowledge for the benefit of the community as a whole.
By dedicating this library to the public domain, I aim to ensure that it remains freely available to anyone who needs it, without barriers or restrictions. I encourage users to utilize, modify, and distribute LogKontrol according to their needs, and I welcome contributions from those who have the ability to improve and enhance the library.
My goal is to foster a spirit of collaboration, mutual aid, and shared ownership in the software development community. I believe that by working together and pooling our resources, we can create tools and technologies that serve the common good and promote a more equitable and inclusive society.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file logkontrol-0.2.2.tar.gz.
File metadata
- Download URL: logkontrol-0.2.2.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
661554d41c02788e69a8d10fa0b48efc3e1d0d737098a379fc537bb010a2e9c4
|
|
| MD5 |
c90c79920d2d14ac5b5b5d819b96e899
|
|
| BLAKE2b-256 |
8a2e208479f9b50abbe55cc1e3b2b040683e5aea5820a53979766c002009d320
|
File details
Details for the file logkontrol-0.2.2-py3-none-any.whl.
File metadata
- Download URL: logkontrol-0.2.2-py3-none-any.whl
- Upload date:
- Size: 6.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
857443b164d4b8dd98f5f86998fee6f4b067ab01ddffbd715ec35fa16583b0ec
|
|
| MD5 |
282f1e4f356a3f025c3c904caf4abe87
|
|
| BLAKE2b-256 |
e98221efec82b38ecb73092a891b535c920d9d281e16fdf4602df2ddf29e2382
|