LLM tracing for Ruby apps. Reports what your app asked the model, how long it took, what it cost in tokens, and which tools ran — to the ActiveAgents platform or any self-hosted ActiveAgent dashboard.
Configuration guide → the wiki
| Gem | Use it when |
|---|---|
activeagents-telemetry |
Shared core — wire format, configuration, delivery. Every adapter depends on it. |
activeagents-telemetry-ruby_llm |
Your app calls models through RubyLLM. |
Apps built on the ActiveAgent framework don't need an adapter — the framework reports telemetry on its own.
# Gemfile
gem "activeagents-telemetry-ruby_llm"# config/initializers/telemetry.rb
RubyLLM.configure do |config|
config.instrumenter = ActiveSupport::Notifications # RubyLLM 1.x; 2.x wires this up in Rails
end
ActiveAgents::Telemetry.configure do |config|
config.api_key = ENV["ACTIVEAGENTS_API_KEY"]
config.service_name = "my-app"
end
ActiveAgents::Telemetry::RubyLLM.subscribe!That's it. Every chat turn now reports as a trace.
One trace per conversation turn:
root SupportBot.respond 1,240ms OK
└─ llm llm.generate gpt-4o 2 rounds 1,180ms 42 tokens
└─ tool tool.search_docs 310ms OK
Tool arguments and results are never sent. Error messages are truncated and backtraces are never transmitted.
Point the endpoint at your mounted dashboard — same gems, same wire format:
config.endpoint = "https://your-app.example.com/active_agent/api/traces"bundle install
bundle exec rake test_all # core + every adapter
bundle exec rake build_all # build all gems into pkg/MIT — see LICENSE.txt.