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.1.tar.gz
(10.4 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.1.tar.gz.
File metadata
- Download URL: lupin_logger-0.5.1.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ab2f66ef390f1426da1f35b51e2750b87debb7ca6bc8582ceecf76d22f3146e5
|
|
| MD5 |
1a0c3055d74a795f2f6ec2b913bb7f8a
|
|
| BLAKE2b-256 |
ec004fca7f833e8083838d97e4326d7502511f813cea98a4e10d2c812f9a670f
|
File details
Details for the file lupin_logger-0.5.1-py3-none-any.whl.
File metadata
- Download URL: lupin_logger-0.5.1-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d0e05f3ab02f0bc1953926cce7d24a67c0df52889a6654967794d43332d8d94b
|
|
| MD5 |
2792b24ba7e18969764351f604bdb269
|
|
| BLAKE2b-256 |
20761bd0ec13ac0a008e6678a12835a50d1485e8d7c8868b95061341a73efc57
|