otel-ruby
Skill125 starsChanged 4 months agoApache-2.0View on GitHub
OpenTelemetry in Ruby — SDK setup, manual tracing, experimental metrics and logs, Bundler integration, contrib instrumentation for Rails/Rack/Sinatra/Sidekiq and other gems, propagation, performance, and upgrades. Use when adding, reviewing, configuring, or troubleshooting OpenTelemetry in a Ruby or Rails service. Triggers on "setup otel in ruby", "ruby telemetry", "Rails OpenTelemetry", "OpenTelemetry::SDK.configure", "opentelemetry-instrumentation-all", "Ruby tracing", "Rack otel", "Sidekiq otel", or any Ruby-related OTel question.
In this repository19 other files it gives its agents.
- AGENTS.mdAGENTS.md
- otel-browserSkill
- otel-collector-builderSkill
- otel-collectorSkill
- otel-declarative-configSkill
- otel-dotnetSkill
- otel-goSkill
- otel-javaSkill
- otel-jsSkill
- otel-ottlSkill
- otel-profilesSkill
- otel-pythonSkill
- otel-sdk-versionsSkill
- otel-semantic-conventionsSkill
- otel-span-events-to-logs-migrationSkill
- otel-telemetry-emissionsSkill
- otel-telemetrygenSkill
- otel-upgradeSkill
- otel-weaverSkill
The file
Files
OpenTelemetry in Ruby
Entry point for OpenTelemetry mechanics in Ruby applications. Load only the reference that matches the task; each reference is self-contained.
References
| File | Use when |
references/setup.md | Installing gems, configuring OpenTelemetry::SDK.configure, selecting OTLP exporters, setting resources and environment variables, and handling process shutdown. |
references/api.md | Writing manual traces, metrics, or logs; managing context and propagation; testing emitted telemetry. |
references/instrumentation-libraries.md | Selecting and configuring contrib instrumentation for Rails, Rack, Sinatra, HTTP clients, databases, jobs, messaging, and other gems. |
references/performance.md | Tuning sampling, batching, cardinality, forked-process behavior, exporters, and lifecycle handling. |
references/breaking-changes.md | Reviewing Ruby/runtime compatibility, independently versioned gems, experimental signal changes, and core/contrib upgrades. |
Signal stability matters
Tracing uses the stable opentelemetry-api and opentelemetry-sdk gems. Ruby metrics and logs are
separate 0.x API, SDK, and exporter gems and remain experimental. Do not assume a tracing gem's
version exists for metrics, logs, semantic conventions, exporters, or contrib instrumentation.
Resolve each gem independently with Bundler, inspect its changelog, and keep the resulting
Gemfile.lock change under review.
Released snapshot verified 2026-10-25: tracing API 1.11.1, tracing SDK 1.13.1, trace OTLP
exporter 0.37.0; metrics API 0.10.0, SDK 0.22.0, OTLP exporter 0.15.0; logs API 0.7.0, SDK
0.8.1, OTLP exporter 0.7.0; experimental declarative-config gem opentelemetry-config 0.2.0
(targets schema v1.0.0-rc.3; owner: the
otel-declarative-config parsers table). Treat this as an audit anchor, not
a version-alignment rule; use the lookups below for newer releases.
Sources of truth
| Fact | Fetch |
| Latest core releases and per-gem tags | gh api repos/open-telemetry/opentelemetry-ruby/releases --paginate |
| Latest contrib instrumentation releases | gh api repos/open-telemetry/opentelemetry-ruby-contrib/releases --paginate |
| Released and locked gem dependencies | gem specification <gem> dependencies --remote --yaml; inspect Gemfile.lock for the locked dependency set |
| Core implementation and changelogs | open-telemetry/opentelemetry-ruby |
| Contrib catalog, compatibility, and per-gem options | open-telemetry/opentelemetry-ruby-contrib |
| Ruby language docs | OpenTelemetry Ruby documentation |
Cross-references
- SDK version selection across languages:
otel-sdk-versionsskill. - Semantic convention names and stability:
otel-semantic-conventionsskill. - OTLP receiver/export validation:
otel-collectorandotel-telemetrygenskills.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

