opentelemetry

Configures .NET 10 OTEL metric and trace collection with named sources.

Updated Apr 27, 2026
One-click install
npx skills add https://github.com/shahdanish/vibepos --skill opentelemetry-shahdanish
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: opentelemetry
Source: https://github.com/shahdanish/vibepos/tree/main/skills/opentelemetry
Command: npx skills add https://github.com/shahdanish/vibepos --skill opentelemetry-shahdanish

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

OpenTelemetry setup removes the guesswork in production by giving you standardized distributed tracing, metrics, and logging so you can diagnose performance issues and understand request flows across services.

Core Features & Use Cases

  • Unified observability setup: Configure traces, metrics, and logs through a single OpenTelemetry registration and export them using OTLP for any compatible backend.
  • Distributed tracing with ActivitySource: Produce spans with consistent names and attributes for end-to-end diagnostics across async code paths.
  • Low-overhead custom metrics with IMeterFactory: Create counters, histograms, gauges, and up/down counters safely via IMeterFactory to prevent leaks and ensure correct lifetimes.
  • Practical operations controls: Use OTEL_* environment variables for endpoint routing and service naming without redeploying code.
  • Use cases: Service-to-service tracing, custom business metrics (orders created/duration/queue depth), and local debugging with Aspire Dashboard before pointing to a production collector.

Quick Start

Configure OpenTelemetry in your .NET 10 application with traces, metrics, and logging exported via OTLP to your collector by setting OTEL_EXPORTER_OTLP_ENDPOINT and enabling the appropriate OpenTelemetry integrations.

Frequently Asked Questions about opentelemetry

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

FAQPage Schema
How do I set up OpenTelemetry tracing, metrics, and logging in a .NET 10 app?

Enable OpenTelemetry distributed tracing, metrics, and logging in .NET 10 via a single AddOpenTelemetry registration. Export telemetry via OTLP to any compatible backend by setting OTEL_EXPORTER_OTLP_ENDPOINT and configuring the necessary SDK integrations.

How does distributed tracing work with ActivitySource in .NET?

Distributed tracing with ActivitySource produces spans with consistent names and attributes for end-to-end diagnostics across async code paths. It uses null-safe activity tagging to ensure consistent trace data without throwing exceptions during instrumentation.

Can I use IMeterFactory to create custom metrics in .NET 10?

Yes, you use IMeterFactory to create low-overhead custom metrics like counters, histograms, and gauges. Using IMeterFactory prevents meter leaks and ensures correct lifetimes while enforcing low-cardinality metric dimensions for reliable querying.

Does OpenTelemetry instrumentation work with the Aspire Dashboard for local debugging?

Yes, OpenTelemetry integrates with Aspire Dashboard for local debugging. You can visualize traces, metrics, and logs locally before pointing your OTLP exporter to a production collector by simply changing the OTEL_* environment variables.

What is the best way to configure OTLP endpoint routing without redeploying code?

Use OTEL_* environment variables to configure OTLP endpoint routing and service naming dynamically. This operational control allows you to redirect telemetry exports and rename services without needing to recompile or redeploy your application code.

Why should I enforce low-cardinality metric dimensions when exporting OTLP metrics?

Enforcing low-cardinality metric dimensions prevents unbounded time-series growth and high storage costs in your backend. The OpenTelemetry setup ensures safe metric creation via IMeterFactory while maintaining consistent dimensions for reliable performance monitoring.