skillfed

snakemake-interface-logger-plugins

Logger plugin interface for snakemake

snakemake-interface-logger-plugins v2.1.0 104.5K downloads/30d#12,748 on PyPI
License unclear Active released

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 on this page — 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

snakemake-interface-logger-plugins on PyPI

pip

pip install snakemake-interface-logger-plugins

uv

uv add snakemake-interface-logger-plugins

poetry

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 the current Python release (<4.0,>=3.11)
Install friction low — pure-Python wheel
Runtime dependencies 1 — snakemake-interface-common
Maintenance actively maintained — 86 days since the last release
First released
Downloads 104,514/month — #12,748 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: snakemake_interface_logger_plugins-2.1.0-py3-none-any.whl

Tags

snakemake logger plugin interfacesnakemake logging plugin developmentsnakemake custom log handlersnakemake plugin base classessnakemake logging frameworksnakemake log plugin skeleton
plugin-developmentsnakemake-ecosystem

More Application Frameworks packages

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

textual

Textual is a Python framework for building…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

mcp

Build and connect to Model Context Protocol…

permissive · top 1,000 on PyPI

Werkzeug

Werkzeug is a WSGI utility library providing…

permissive · top 1,000 on PyPI

snakemake-interface-executor-plugins

Provides a stable interface specification for…

permissive · top 15,000 on PyPI

snakemake-interface-scheduler-plugins

Provides a stable interface specification for…

unclear · top 15,000 on PyPI

snakemake-interface-report-plugins

Defines the interface contract that Snakemake…

unclear · top 15,000 on PyPI

snakemake-interface-storage-plugins

Provides a stable interface specification and…

unclear · top 5,000 on PyPI

snakemake-interface-common

Provides shared interfaces, utilities, and data…

unclear · top 5,000 on PyPI

snakemake-storage-plugin-s3

Enables Snakemake workflows to read from and…

permissive · top 15,000 on PyPI

flake8-logging

A Flake8 plugin that detects and flags common…

permissive · top 15,000 on PyPI

logmuse

Adds standard CLI logging options…

permissive · top 15,000 on PyPI

loguru

Loguru provides a pre-configured logger that…

permissive · top 1,000 on PyPI

snakemake

Snakemake is a workflow management system that…

permissive · top 15,000 on PyPI