--- id: snakemake-interface-logger-plugins version: "2.1.0" license: unclear license_treatment: unclear maintenance: active --- # snakemake-interface-logger-plugins — Logger plugin interface for snakemake License: unclear · Maintenance: active · Downloads: 104.5K/mo ## What it is and what it does This package defines the contract between Snakemake and its logger plugins. It provides base classes and settings interfaces that plugin developers must implement to create custom logging handlers compatible with Snakemake workflows. The package specifies how plugins receive log records, configure themselves via CLI options, and declare their capabilities (stream writing, file writing, filtering, formatting, DAG access). Plugins built against this interface are registered by package naming convention (snakemake-logger-plugin-*) and activated via Snakemake's --logger CLI option. The interface handles the setup lifecycle—instantiating settings from CLI arguments, initializing the handler with common settings, and attaching default filters or formatters when the plugin doesn't provide its own. Developers override __post_init__() for setup and emit() to process log records that carry contextual event information. Use it for: - Define custom log handler base classes for Snakemake plugins to inherit from and implement - Create plugin settings classes that map CLI arguments to logger configuration options - Build specialized logging handlers that write to streams, files, or external systems - Implement filtering and formatting logic for workflow-specific log event processing - Access workflow DAG information through the rulegraph property for advanced logging ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Provides a stable interface specification for building logger plugins that integrate with Snakemake's logging system. Yes, if you are developing a Snakemake logger plugin. This is a required dependency for plugin authors and provides the stable interface contract needed to build compatible handlers. Not relevant for end users running Snakemake workflows unless you need custom logging behavior. ## Install pip install snakemake-interface-logger-plugins uv add snakemake-interface-logger-plugins poetry add snakemake-interface-logger-plugins ## Installing snakemake-interface-logger-plugins Before you install: Low install friction with a single runtime dependency (snakemake-interface-common). Actively maintained with recent releases. Quickstart: from snakemake_interface_logger_plugins.base import LogHandlerBase from snakemake_interface_logger_plugins.settings import LogHandlerSettingsBase class LogHandler(LogHandlerBase): def emit(self, record): pass Requires Python 3.11 or later (3.11 <= version < 4.0) Verify before relying: - Whether the package includes automated testing utilities or only interface definitions - Compatibility guarantees between plugin versions and Snakemake versions - Whether documentation covers debugging or troubleshooting plugin development ## Package facts - License: not declared (unclear) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 104.5K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags snakemake logger plugin interface, snakemake logging plugin development, snakemake custom log handler, snakemake plugin base classes, snakemake logging framework, snakemake log plugin skeleton, plugin-development, snakemake-ecosystem [View on SkillFed](https://skillfed.io/packages/snakemake-interface-logger-plugins) · [View on PyPI](https://pypi.org/project/snakemake-interface-logger-plugins/)