macwinnie-enhanced-logging
Batteries-included logging for Python applications.
What it is and what it does
macwinnie-enhanced-logging wraps Python's built-in logging module and structlog to provide a zero-boilerplate logging setup suitable for both development and production. It lets you configure logging once at application startup, then use a simple get_logger() call in any module to emit logs that are automatically routed through a unified handler. The package supports two output formats: human-friendly console logs (ideal for development) and structured JSON logs (ideal for log aggregation and observability platforms). It also provides context variables to attach fields like request IDs or job IDs to all logs within a scope, optional callsite information, and platform-specific text-to-speech for critical events.
The package's main dependency is structlog, which handles the structured logging layer while the standard logging module ensures that third-party libraries continue to work normally. Configuration is primarily environment-variable-driven, with sensible defaults that work out of the box. You can switch between human and JSON output, set log levels, enable UTC timestamps, and control optional features—all without touching code.
Use it for:
- Development environments where you want readable console logs with structured fields for debugging.
- Kubernetes and containerized deployments where JSON-formatted logs integrate with log aggregation stacks.
- Multi-module applications where you need request IDs or correlation IDs automatically attached to all logs within a scope.
- CI/CD pipelines or long-running batch jobs where text-to-speech alerts for errors can provide immediate feedback.
- Third-party library integration where you want consistent log formatting across your entire application.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a batteries-included logging setup combining Python's standard logging module with structlog to deliver both human-friendly console output and structured JSON logs for production environments.
Yes, if you need structured logging with minimal boilerplate and want to switch between human and JSON output via environment variables. Low install friction and active maintenance are positive signals. However, exercise caution: the package is extremely new (first release 2026-03-04), has zero repository stars, and its license status is unclear. Verify the license from the GitHub repository before use in commercial projects, and consider waiting for wider adoption before relying on it in production.
Install
macwinnie-enhanced-logging on PyPI
pip
pip install macwinnie-enhanced-logginguv
uv add macwinnie-enhanced-loggingpoetry
poetry add macwinnie-enhanced-loggingInstalling macwinnie-enhanced-logging
Before you install
Low install friction with a single runtime dependency. Active maintenance with recent commits as of 2026-03-06; however, the project is very new (first release 2026-03-04) with minimal adoption signals (0 repository stars), so long-term stability is unproven.
License in practice
License status is unclear—no SPDX identifier or license file is declared in the package metadata. Before adopting in a commercial or copyleft-sensitive project, verify the actual license terms from the GitHub repository.
Quickstart
pip install macwinnie-enhanced-logging
from macwinnie_enhanced_logging import configure_logging, get_logger
configure_logging()
log = get_logger(__name__)
log.info("startup", _fmt="Starting {app}…", app="demo")
Requires Python 3.12 or later.
Verify before relying
- Whether the package is suitable for production use given its very recent release date and zero repository stars.
- Actual license terms—the package metadata does not declare a license, so legal compliance must be verified directly from the repository.
- Whether context variables, callsite information, and text-to-speech features are production-ready or experimental.
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3.12) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — structlog |
| Maintenance | actively maintained — 161 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 119,483/month — #12,072 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: macwinnie_enhanced_logging-0.1.3-py3-none-any.whl
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
structlogstructlog is a structured logging library that…
permissive · top 1,000 on PyPI
TwiggyTwiggy is a structured logging library that…
permissive · top 15,000 on PyPI
django-structlogIntegrates structured logging into Django…
permissive · top 5,000 on PyPI
structlog-gcpConfigures structlog to output logs in Google…
unclear · top 15,000 on PyPI
opentelemetry-instrumentation-structlogIntegrates structlog logging with OpenTelemetry…
permissive · top 15,000 on PyPI
structlog-sentryBridges structlog and Sentry to automatically…
permissive · top 5,000 on PyPI
pytest-structlogProvides a pytest fixture for capturing and…
permissive · top 15,000 on PyPI
structlog-prettyAdds structlog processors that format log…
permissive · top 15,000 on PyPI
minilogMinilog wraps Python's standard logging module…
permissive · top 15,000 on PyPI
vmoduleAdds glog-style verbose logging levels to…
permissive · top 15,000 on PyPI