Skip to main content

A flexible logging utility with JSON support and timezone awareness

Project description

Setlogging

Python PyPI version License: MIT

A flexible Python logging utility with JSON support and timezone awareness.

Author

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 app.log or app_json.log 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.3.2.tar.gz (94.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

setlogging-0.3.2-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

Details for the file setlogging-0.3.2.tar.gz.

File metadata

  • Download URL: setlogging-0.3.2.tar.gz
  • Upload date:
  • Size: 94.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for setlogging-0.3.2.tar.gz
Algorithm Hash digest
SHA256 66f19af3d8b86fac797c2ccf6ede033eaebf0e3d8cc7772c31df0032633ebe5b
MD5 5d3e288960f562f62cedc77a0db46c72
BLAKE2b-256 fed254ee3c69ea44fc22decab53e14fae03ebab4e3bcfb245f0d9b07c0813114

See more details on using hashes here.

File details

Details for the file setlogging-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: setlogging-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for setlogging-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4696bc322b5523afbabdeb95916110ad1888f2330f725ab887677e1058a5de6e
MD5 e86dc8923ecfe55d55aaf56f585c6655
BLAKE2b-256 615d4831e123b14ca0ac66e62c54025d95c80e588804e8c38df43227a4bbd828

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page