OpenTelemetry has emerged as the standard for application instrumentation, unifying previously fragmented tracing and metrics approaches. By instrumenting once with OpenTelemetry, applications can export telemetry to any compatible backend without code changes.
Instrumentation Approaches
Auto-instrumentation automatically captures telemetry from common frameworks and libraries with minimal code changes. Manual instrumentation provides fine-grained control over what gets captured. Most applications combine both—auto-instrumentation for standard operations, manual instrumentation for business-specific metrics.
- Start with auto-instrumentation for quick wins capturing HTTP, database, and messaging telemetry
- Add custom spans for business operations worth individual tracking
- Define semantic conventions ensuring consistent attribute naming across services
- Configure sampling strategies balancing observability with overhead
- Use baggage propagation for request-scoped context across services
Backend Selection
OpenTelemetry exports to numerous backends—Jaeger, Zipkin, Datadog, New Relic, Grafana, and more. Evaluate backends on query capabilities, retention policies, and cost. The collector architecture enables processing telemetry before export, supporting filtering, transformation, and multi-destination routing.