{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/11"}],"enrichment":{"capability":"py_zipkin provides context managers and decorators to instrument Python applications with Zipkin distributed tracing, sending span data to a central collector via pluggable transport handlers.","skillfed_tags":["distributed-tracing","observability","zipkin"],"use_cases":["Instrument a microservice to trace requests end-to-end across multiple services by propagating trace headers.","Add sampling-based tracing to high-throughput services to monitor latency and service dependencies without capturing every request.","Record custom span metadata (binary annotations) during request processing to track business logic or debug information.","Mark calls to non-instrumented external services with remote endpoint annotations so the trace graph shows the full call chain.","Implement firehose mode to capture 100% of spans for a subset of traffic and route them to a separate retention backend."],"what_it_does":"py_zipkin is a Python library that integrates Zipkin distributed tracing into your applications. It provides the zipkin_span context manager and decorator to wrap code blocks or functions, automatically creating and sending trace spans to a Zipkin collector. The library handles span creation, sampling, and context propagation across service boundaries.\n\nYou supply a transport handler (HTTP, Kafka, or custom) that encodes spans in thrift format and sends them to your Zipkin backend. py_zipkin manages the trace context using thread-local storage by default, with support for explicit Stack and SpanStorage instances in multithreaded or async environments. It also offers utilities to add binary annotations, mark remote service calls, and generate HTTP headers for propagating trace context to downstream services.","worth_installing":"Yes, if you are already running Zipkin and need Python instrumentation. The library is actively maintained, has low install friction, and provides a clean API for both simple and complex tracing scenarios. The Apache v2 license poses no restrictions. Consider it essential for microservice observability in a Zipkin-based infrastructure; not relevant if you use a different tracing backend (Jaeger, DataDog, etc.)."},"id":"py-zipkin","links":{"html":"https://skillfed.io/packages/py-zipkin","md":"https://skillfed.io/packages/py-zipkin.md","pypi":"https://pypi.org/project/py-zipkin/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2023-03-24","license_spdx":null,"license_treatment":"permissive","name":"py-zipkin","python_support":"supports_current","summary":"Library for using Zipkin in Python."},"popularity":{"monthly_downloads":484185,"position":6404,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.2.8"}
