--- id: logistro version: "2.0.1" license: MIT License Copyright (c) 2025 GeoPozo Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in… (full text in the JSON record) license_treatment: permissive maintenance: aging --- # logistro — Simple wrapper over logging for a couple basic features License: permissive · Maintenance: aging · Downloads: 5.2M/mo ## What it is and what it does logistro is a thin wrapper around Python's logging module that adds sensible defaults and a debug2 log level for verbose output. It provides getLogger() to initialize loggers with built-in configuration, getPipeLogger() to capture subprocess stderr directly into the logging system, and CLI flags to control logging behavior at runtime. The package supports both human-readable and JSON-structured output formats and is designed to be thread-safe. The main use case is reducing boilerplate when setting up logging in Python applications, especially those that spawn subprocesses or need to switch between output formats. It has no external runtime dependencies, making it lightweight to add to any project. Use it for: - Set up thread-safe logging with sensible defaults in a new Python application without manual basicConfig() calls - Capture stderr from subprocess.Popen() calls and route them through the standard logging system - Switch between human-readable and JSON-structured log output via CLI flags in production deployments - Add a debug2 level for verbose diagnostic output when investigating issues in development - Integrate logging configuration into argparse-based CLI tools via logistro.parser ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. logistro wraps Python's standard logging module to provide sensible defaults, a debug2 level for verbose output, and a getPipeLogger() function for capturing subprocess stderr into the logging system. Yes, if you want to reduce logging boilerplate and need subprocess stderr capture or structured/human format switching. The package is lightweight with no dependencies and permissively licensed. Aging maintenance status is not a blocker for a stable logging wrapper, but verify debug2 level integration with your existing handlers meets your needs. ## Install pip install logistro uv add logistro poetry add logistro ## Installing logistro Before you install: Low install friction with no runtime dependencies. Maintenance status is aging—last commit 2025-11-12, though the package is relatively new (first release 2024-12-27) and continues to receive updates. License in practice: MIT License permits unrestricted use, modification, and distribution with minimal restrictions, making it suitable for any project type. Quickstart: import logistro logger = logistro.getLogger(__name__) logger.debug2('verbose output') logger.info('standard info') # For subprocesses: pipe, logger = logistro.getPipeLogger(__name__+"-subprocess") import subprocess subprocess.Popen(['command'], stderr=pipe) Requires Python 3.8 or later Verify before relying: - Whether debug2 level integrates seamlessly with third-party logging handlers expecting standard Python log levels - Performance characteristics in high-throughput logging scenarios ## Package facts - License: MIT License Copyright (c) 2025 GeoPozo Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in… (full text in the JSON record) (permissive) - Python support: supports_current - Install friction: low - Maintenance: aging - Downloads: 5.2M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags logging wrapper with defaults, debug2 log level, subprocess stderr logging, thread-safe logging setup, structured and human log formats, CLI logging configuration, simple logging configuration, logging, subprocess-integration, structured-logging [View on SkillFed](https://skillfed.io/packages/logistro) · [View on PyPI](https://pypi.org/project/logistro/)