Correlation Tracing
Implement distributed tracing with correlation IDs, trace propagation, and span tracking across m…
by aj-geddes · MIT
The skill
Implement distributed tracing with correlation IDs, trace propagation, and span tracking across microservices. Use when debugging distributed systems, monitoring request flows, or implementing observability.
Correlation & Distributed Tracing
Table of Contents
Overview
Implement correlation IDs and distributed tracing to track requests across multiple services and understand system behavior.
When to Use
- Microservices architectures
- Debugging distributed systems
- Performance monitoring
- Request flow visualization
- Error tracking across services
- Dependency analysis
- Latency optimization
Quick Start
Minimal working example:
import express from "express";
import { v4 as uuidv4 } from "uuid";
// Async local storage for context
import { AsyncLocalStorage } from "async_hooks";
const traceContext = new AsyncLocalStorage<Map<string, any>>();
interface TraceContext {
traceId: string;
spanId: string;
parentSpanId?: string;
serviceName: string;
}
function correlationMiddleware(serviceName: string) {
return (
req: express.Request,
res: express.Response,
next: express.NextFunction,
) => {
// Extract or generate trace ID
const traceId = (req.headers["x-trace-id"] as string) || uuidv4();
const parentSpanId = req.headers["x-span-id"] as string;
const spanId = uuidv4();
// ... (see reference guides for full implementation)
Reference Guides
Detailed implementations in the references/ directory:
| Guide | Contents |
|---|---|
| Correlation ID Middleware (Express) | Correlation ID Middleware (Express) |
| OpenTelemetry Integration | OpenTelemetry Integration |
| Python Distributed Tracing | Python Distributed Tracing |
| Manual Trace Propagation | Manual Trace Propagation |
Best Practices
✅ DO
- Generate trace IDs at entry points
- Propagate trace context across services
- Include correlation IDs in logs
- Use structured logging
- Set appropriate span attributes
- Sample traces in high-traffic systems
- Monitor trace collection overhead
- Implement context propagation
❌ DON'T
- Skip trace propagation
- Log without correlation context
- Create too many spans
- Store sensitive data in spans
- Block on trace reporting
- Forget error tracking
Use this skill
Connect your agent to the Skill Store MCP server and ask for it by ref: aj-geddes/correlation-tracing-89653454837.
Details
- Publisher
- aj-geddes
- Category
- Software Development › DevOps & cloud
- License
- MIT
- Updated
- 2026-03-04
References
More from aj-geddes
- A/B Test Analysis Design and analyze A/B tests, calculate statistical significance, and determine sample sizes for…
- Access Control Rbac Implement Role-Based Access Control (RBAC), permissions management, and authorization policies.
- Accessibility Compliance Implement WCAG 2.1/2.2 accessibility standards, screen reader compatibility, keyboard navigation,…
- Accessibility Testing Test web applications for WCAG compliance and ensure usability for users with disabilities.