LupinDental logger
Project description
Lupin Logger
A custom logging system for LupinDental with colored console output and structured JSON logging.
Features
- Colored console output with visual formatting based on log level
- Structured JSON logs saved to
.lupinlogs.jsonlfiles - Custom attributes with automatic type-based coloring
- Custom NOTICE level (between INFO and WARNING)
- Automatic organization of logs by date
- Full traceability with timestamp, application, origin, and location
Installation from PYPI
pip install lupin_logger
Deployment on PYPI
- Add the version to pyproject.toml
version = "0.1.0"
-
Go to GitLab Tags
- Click on New tag
- Select the main branch if it is a final tag and click on Create tag.
- Select the current branch if it is a test or development tag.
Quick Start
from lupin_logger import get_logger
# Create a logger
logger = get_logger(name="my_module", app="my_application")
# Basic logs
logger.info("Application started")
logger.debug("Debug information")
logger.warning("Warning!")
logger.error("An error occurred")
logger.critical("Critical error")
# Custom NOTICE level
logger.notice("Important operation succeeded")
Logging with Attributes
Attributes allow you to add structured data to your logs:
# Simple attributes
logger.info("File processed", {"filename": "data.csv", "rows": 1500})
# With different types (automatic coloring)
logger.info("Process completed", {
"duration": 3.14, # float → yellow
"success": True, # bool → white
"files_count": 42, # int → yellow
"output_path": Path("/tmp/out") # Path → cyan
})
# Exception logging
try:
result = 1 / 0
except Exception:
logger.exception("Division by zero", {"operation": "calculate"})
Log Levels
| Level | Usage | Console Color |
|---|---|---|
| DEBUG | Detailed debugging information | Blue |
| INFO | General information | White |
| NOTICE | Important successful events | Green |
| WARNING | Warnings | Yellow |
| ERROR | Non-critical errors | Red |
| CRITICAL | Critical errors requiring attention | Magenta |
Log Directory Configuration
By default, logs are saved to:
- Linux/macOS:
~/LupinDentalData/logs/ - Windows:
C:/Users/<USERNAME>/LupinDentalData/logs/
Custom Directory
logger = get_logger(
name="my_module",
app="my_app",
log_directory="/custom/path/logs"
)
Development
Requirements
- Python >= 3.11
Development Installation
git clone https://gitlab.com/lupindental/arsene/rd-utilities/lupin_logger.git
cd lupin_logger
pip install -e .
License
MIT - LupinDental
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
lupin_logger-0.5.0.tar.gz
(10.6 kB
view details)
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 lupin_logger-0.5.0.tar.gz.
File metadata
- Download URL: lupin_logger-0.5.0.tar.gz
- Upload date:
- Size: 10.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
467ceff57e47b203c1925d8dbb796ebfe1153630e8a3e4ba7c04b77786781a3c
|
|
| MD5 |
4465f2a5594a5fd42ee5daa9b7b9bdc1
|
|
| BLAKE2b-256 |
04a4b50e9504fa78f4e37e62e3798f0e2474ac0aa2b8d8853a09e0afb4ba197c
|
File details
Details for the file lupin_logger-0.5.0-py3-none-any.whl.
File metadata
- Download URL: lupin_logger-0.5.0-py3-none-any.whl
- Upload date:
- Size: 8.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1551856d24d44ba439c5b918c71c7387effdb56414e042017f0f37fc792d61d4
|
|
| MD5 |
6e21c6230af50045c08ae9ccdba00ebe
|
|
| BLAKE2b-256 |
266f60d800d1c26ae05cd56c81154951e9e4758dfbec02def2e7c8791791c533
|