tracing

Implement distributed tracing with OpenTelemetry spans and context propagation.

3|Updated Dec 30, 2025
One-click install
npx skills add https://github.com/guicheffer/devorch-cli --skill tracing-guicheffer
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tracing
Source: https://github.com/guicheffer/devorch-cli/tree/main/templates/skills/observability/tracing
Command: npx skills add https://github.com/guicheffer/devorch-cli --skill tracing-guicheffer

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides comprehensive tools and patterns for implementing distributed tracing in your application, enabling deep visibility into request flows, performance bottlenecks, and error sources across your system.

Core Features & Use Cases

  • Span Creation: Easily create spans for different operation types (instant events, async operations, manual control, long-running flows).
  • Context Propagation: Automatically injects vital attributes and cascades context through TracingProvider.
  • Cardinality Management: Enforces low cardinality for span names and provides guidance on attribute usage.
  • Error Handling: Robust error recording and status setting within spans.
  • Use Case: Debug a slow API request by tracing its entire lifecycle from the client to the backend, identifying which service or operation is causing the delay.

Quick Start

Use the tracing skill to create an event span for a user button click.

Frequently Asked Questions about tracing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement distributed tracing to debug slow API requests?

Distributed tracing instruments your code using OpenTelemetry spans to track the entire request lifecycle from client to backend, isolating the exact service or operation causing performance bottlenecks and delays.

How does context propagation work across asynchronous operations in OpenTelemetry?

Context propagation automatically injects vital attributes and cascades trace context through a TracingProvider, ensuring spans for asynchronous operations remain linked to the original request flow.

When do I need to manage cardinality for span names in a tracing backend?

Cardinality management is needed to prevent tracing backend performance degradation. Enforcing low cardinality for span names and carefully controlling attribute usage optimizes storage and query efficiency.

What is the best way to create spans for long-running user flows?

The best way to create spans for long-running user flows is using manual span control, which allows you to explicitly start and stop spans to accurately capture complex, extended operations.

Does this tracing approach support recording errors and setting status codes?

Yes, the tracing implementation includes robust error handling capabilities that allow you to record exceptions and set specific status codes directly within the OpenTelemetry spans.

How do I instrument an instant event like a user button click with OpenTelemetry?

You instrument an instant event by creating an event span for the user button click, capturing the immediate action without the need for manual start and end span controls.