distributed-tracing — Claude Code skill: what it does, install
This skill sets up distributed tracing with Jaeger and Tempo. Use it to inspect request paths and find latency or failure points across microservices.
/plugin marketplace add wshobson/agents
/plugin install observability-monitoring@claude-code-workflowsWhat distributed-tracing does
The skill helps trace a request across microservices and inspect service dependencies, latency, failure points, and error propagation. It is intended for debugging latency issues, analyzing request paths, and adding observability to distributed systems.
Its guidance covers sampling, meaningful span tags, context propagation across service boundaries, exception logging, consistent operation names, baggage, span events, and trace-error alerts. It also includes a correlated-logging example using opentelemetry and a formatted trace_id.
Before troubleshooting, check the collector endpoint, network connectivity, sampling configuration, and application logs. Detailed patterns are kept in references/details.md. Install it when you need request-level visibility across services; a single-service project has less use for it.
What it helps with
- trace a request across microservices
- locate latency bottlenecks between services
- follow error propagation through a request path
- correlate application logs with a span using
trace_id
Example prompts for the agent
- Set up distributed tracing with Jaeger and Tempo for this project.
- Trace the request path across the microservices and identify the bottleneck.
- Investigate why no traces appear by checking the collector endpoint and sampling configuration.
How to install distributed-tracing
1Plugin marketplace
/plugin marketplace add wshobson/agents/plugin install observability-monitoring@claude-code-workflowsThis installs the whole observability-monitoring plugin with all its skills
2Skills CLI (Vercel)
npx skills add wshobson/agents --skill distributed-tracing -a claude-code3Manually: put the files in place
~/.claude/skills/distributed-tracing/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/distributed-tracing/
1Skills CLI (Vercel)
npx skills add wshobson/agents --skill distributed-tracing -a codex2Manually: put the files in place
.agents/skills/distributed-tracing/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add wshobson/agents --skill distributed-tracing -a cursor2Manually: put the files in place
.cursor/skills/distributed-tracing/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install wshobson/agents distributed-tracing2Manually: put the files in place
.github/skills/distributed-tracing/SKILL.mdPlatform CLI
gemini skills install https://github.com/wshobson/agents --path plugins/observability-monitoring/skills/distributed-tracingManually: put the files in place
.devin/skills/distributed-tracing/SKILL.mdThe legacy .windsurf/skills/ path still works
Claude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set213
The whole set →Similar
Questions about distributed-tracing
How do I install distributed-tracing in Claude Code?
Run npx skills add wshobson/agents --skill distributed-tracing -a claude-code. The skill file is placed at ~/.claude/skills/distributed-tracing/SKILL.md.
What does distributed-tracing do?
It guides the implementation of distributed tracing with Jaeger and Tempo. The skill helps inspect service dependencies, request paths, latency, and failure points.
What should I check when no traces appear?
Check the collector endpoint, network connectivity, sampling configuration, and application logs.
Source text
SKILL.md · MIT
---
name: distributed-tracing
description: Implement distributed tracing with Jaeger and Tempo to track requests across microservices and identify performance bottlenecks. Use when debugging microservices, analyzing request flows, or implementing observability for distributed systems.
---
# Distributed Tracing
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
```python
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
© Seth Hobson · MIT · wshobson/agents