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
.lupinlog.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
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.2.0.dev0.tar.gz.
File metadata
- Download URL: lupin_logger-0.2.0.dev0.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a50104c3ff3aeb196f96119ec8029ec05d6a80ba314a3460225f4984e4f6452d
|
|
| MD5 |
21f4fd957a68194b76603c1e056d0b35
|
|
| BLAKE2b-256 |
27fd5afc594995a1aca3b8c6733b618f20ef5f889504ccbad94340401d4c1f39
|
File details
Details for the file lupin_logger-0.2.0.dev0-py3-none-any.whl.
File metadata
- Download URL: lupin_logger-0.2.0.dev0-py3-none-any.whl
- Upload date:
- Size: 6.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a58875ed35fde17a3a9a514ffb496984bddbad4c28755377a7493904a490b159
|
|
| MD5 |
28e3edba6a41874b97e884346f31a139
|
|
| BLAKE2b-256 |
e109c7f0c122bddf95472b646bdf93ee3c15f68f25604605b5ec524e3e436484
|