A flexible logging utility with JSON support and timezone awareness
Project description
Setlogging
A flexible Python logging utility with JSON support and timezone awareness.
Author
- Name: Jie Yan
- Contact: kiki3890528@gmail.com
Features
- JSON and plain text log formats
- Log file rotation with size limits
- Console output options
- Timezone-aware logging
- Customizable formatting
- Type-safe configuration
Installation
pip install setlogging
Usage
from setlogging import get_logger
# Basic logging
logger = get_logger()
logger.info("Basic log message")
# JSON logging with indentation
logger = get_logger(json_format=True, indent=2)
logger.info("Structured logging")
# Custom file and rotation
logger = get_logger(
log_file="/tmp/app.log",
max_size_mb=10, # 10MB
backup_count=5
)
# Disable console output
logger = get_logger(console_output=False)
logger.info("This will not be printed to the console")
Project Structure
setlogging/
├── src/
│ └── setlogging/
│ ├── __init__.py
│ └── logger.py
├── tests/
│ ├── __init__.py
│ └── test_logger.py
├── pyproject.toml
├── README.md
└── LICENSE
Configuration Options
| Option | Type | Default | Description |
|---|---|---|---|
log_level |
int | DEBUG |
Logging level |
log_file |
str | application.log or application_log.json |
Log file path |
max_size_mb |
int | 25 |
Max file size in MB before rotation |
backup_count |
int | 7 |
Number of backup files |
console_output |
bool | True |
Enable console logging |
log_format |
str | None |
Custom log format string |
date_format |
str | None |
Custom date format string |
json_format |
bool | False |
Enable JSON formatting |
indent |
int | None |
JSON indentation level |
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
setlogging-0.1.0.tar.gz
(6.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 setlogging-0.1.0.tar.gz.
File metadata
- Download URL: setlogging-0.1.0.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d6dcfcdc8d56062c04b77543361193db7f0a4cdb63274a0f4f16fa5536b103e
|
|
| MD5 |
708dc8ae73316d16296ea060ca4c53fe
|
|
| BLAKE2b-256 |
45c777657010c5eb339247e4eb359632eb1e733129b463754f5cb7a64cee0f23
|
File details
Details for the file setlogging-0.1.0-py3-none-any.whl.
File metadata
- Download URL: setlogging-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a1040eaafe6f034880030247e5eef2dc1b604bd09cdb63776531743e62d238e
|
|
| MD5 |
6ebf8f13d26fe82682415a6632252cda
|
|
| BLAKE2b-256 |
fde7f1ce2f3c6ed7b57b1e70d62f4773e65d2c9e4cf0faffefda3278fc235e25
|