Distributed Tracing

SkillMonitoring & ops

Distributed tracing is a skill that helps you add tracing to microservices so you can follow a request as it moves between services. It uses Jaeger and Tempo to collect and store trace data. Use it when debugging microservices, analyzing request flows, or setting up observability for distributed systems.

Use Distributed Tracing in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Distributed Tracing and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the Distributed Tracing skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Have a microservices application that you want to trace.

Distributed TracingStart free

What your AI can do with it

  • Add distributed tracing to microservices with Jaeger and Tempo
  • Track requests across microservices to see the full path
  • Identify performance bottlenecks in request flows
  • Debug issues in distributed systems using trace data
  • Implement observability for microservices architectures

Getting started

  1. Have a microservices application that you want to trace.
  2. Install and configure Jaeger or Tempo as your tracing backend.
  3. Add tracing instrumentation to your services using the appropriate libraries.
  4. Configure your services to send trace data to the backend.
  5. Use the tracing UI to view traces and analyze request flows.

What this skill tells your AI

The instructions your AI receives, as published by wshobson/agents in plugins/observability-monitoring/skills/distributed-tracing/SKILL.md and read by ahel’s review.

Implement distributed tracing with Jaeger and Tempo for request flow visibility across microservices.

Purpose

Track requests across distributed systems to understand latency, dependencies, and failure points.

When to Use

  • Debug latency issues
  • Understand service dependencies
  • Identify bottlenecks
  • Trace error propagation
  • Analyze request paths

Detailed patterns and worked examples

Detailed pattern documentation lives in references/details.md. Read that file when the navigation tier above is insufficient.

Best Practices

  1. Sample appropriately (1-10% in production)
  2. Add meaningful tags (user_id, request_id)
  3. Propagate context across all service boundaries
  4. Log exceptions in spans
  5. Use consistent naming for operations
  6. Monitor tracing overhead (<1% CPU impact)
  7. Set up alerts for trace errors
  8. Implement distributed context (baggage)
  9. Use span events for important milestones
  10. Document instrumentation standards

Integration with Logging

Correlated Logs

import logging
from opentelemetry import trace

logger = logging.getLogger(__name__)

def process_request():
    span = trace.get_current_span()
    trace_id = span.get_span_context().trace_id

    logger.info(
        "Processing request",
        extra={"trace_id": format(trace_id, '032x')}
    )

Troubleshooting

No traces appearing:

  • Check collector endpoint
  • Verify network connectivity
  • Check sampling configuration
  • Review application logs

High latency overhead:

  • Reduce sampling rate
  • Use batch span processor
  • Check exporter configuration

Related Skills

  • prometheus-configuration - For metrics
  • grafana-dashboards - For visualization
  • slo-implementation - For latency SLOs

Signals

GitHub stars
40k
Forks
4k
Last commit
Sep 2026

Others that do the same job

Questions

What is distributed tracing?
Distributed tracing tracks a request as it moves through multiple services, showing the path and timing of each step. It helps you understand request flows and find where delays happen.
How does this skill help with debugging microservices?
It adds tracing to your services so you can see the full path of a request and identify which service or call is causing errors or slowness.
Which tracing backends are supported?
Jaeger and Tempo are supported.
Do I need to change my application code?
Yes, you need to add tracing instrumentation to your services so they generate and propagate trace data.
Can I use this for performance analysis?
Yes, it helps identify performance bottlenecks by showing how long each step in a request takes across services.
Advanced
Item type
skill
Key
distributed-tracing-wshobson
Source
github.com/wshobson/agents