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.0.tar.gz (94.0 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.0-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for setlogging-0.3.0.tar.gz
Algorithm Hash digest
SHA256 0540d086e3abb0f6435f217fa0388bb2b41628233412c940f4c33ddf4b9478f3
MD5 ca29c1b0f8b3908bcefa4fba94dc99a7
BLAKE2b-256 48b906af45d39f821115eb8f76052ef14057223fcf0c97168cf036edd9fddea9

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for setlogging-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c3fde7d35085fb2e7adb2df5b1dd91c9b88585f56e1860b34e2ea3b9738f0f2b
MD5 00528e6cbf5b45af58e683afa0064493
BLAKE2b-256 13c9554ba01f6a30845bb9de106faf152849fc8b27097a461315e70a8cf2eb41

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