Manage episode 520215318 series 3674688
In this episode of On Rails, Robby is joined by Kayla Reopelle, a lead software engineer at New Relic, where she works on both the Ruby Agent and OpenTelemetry RubyGems. They explore what observability means for Rails developers—not just as a debugging tool, but as a way to build clearer, more reliable systems. Kayla explains OpenTelemetry's vendor-agnostic approach to instrumentation and shares practical ways to experiment with traces, metrics, and logs in both production and local development.
GitHub: https://github.com/kaylareopelle
🧰 Tools & Libraries Mentioned
ActiveSupport::Notifications: Rails’ pub/sub API used for instrumentation.
AppSignal: Rails-friendly APM and error tracking.
AWS X-Ray: Distributed tracing for AWS services.
Datadog: Full-stack observability platform.
Elastics Profiling Spec: Donated profiling format for OpenTelemetry.
Grafana: Open-source dashboards and visualization.
Honeybadger : Error monitoring for Ruby apps.
Jaeger: Distributed tracing system (CNCF).
New Relic Ruby Agent: APM agent for Ruby and Rails.
ObservableGauge (OTel Metrics): Async gauge for snapshots like queue size.
OpenTelemetry Collector: Pipeline for receiving and exporting telemetry data.
OpenTelemetry Logger Bridge: Sends Ruby logger output to OTEL.
OpenTelemetry Ruby: Vendor-agnostic telemetry for Ruby.
OpenTelemetry Ruby SIG: Community group maintaining OTEL Ruby.
Prometheus: Metrics collection and storage.
Rack Middleware: Web middleware stack used in many Rails instrumentations.
Rails Structured Logging / Event Reporter: Structured logs built into Rails.
On Rails is a podcast focused on real-world technical decision-making, exploring how teams are scaling, architecting, and solving complex challenges with Rails.
On Rails is brought to you by The Rails Foundation, and hosted by Robby Russell of Planet Argon, a consultancy that helps teams modernize their Ruby on Rails applications.
Chapters
1. Intro and welcome to Kayla from New Relic (00:00:00)
2. What keeps Kayla "On Rails" and working in observability (00:01:12)
3. Defining observability: unknown unknowns vs known unknowns (00:06:14)
4. Signs your system might be trying to tell you something (00:08:08)
5. What is OpenTelemetry for Ruby developers (00:11:17)
6. Where Ruby fits in the broader OpenTelemetry project (00:13:42)
7. Using OpenTelemetry locally while developing features (00:20:40)
8. How ActiveSupport notifications power Rails observability (00:24:13)
9. Open source tools like Jaeger and Prometheus for local visibility (00:28:42)
10. Testing instrumentation itself and CI monitoring (00:30:58)
11. Using feature flags to control data collection (00:38:17)
12. Making sense of background jobs with metrics (00:49:43)
13. Capturing logs in context with traces and spans (00:53:50)
14. Book recommendations and getting involved with OpenTelemetry (01:00:09)
9 episodes