Closed weilandia closed 3 months ago
Further, here's some of the weirdness we're considering to get to the interface we want:
# frozen_string_literal: true
require "traceloop/sdk"
class TraceloopClient
include Singleton
attr_accessor :conn, :spanner
def initialize
self.conn = Traceloop::SDK::Traceloop.new
self.spanner = conn.instance_variable_get(:@tracer)
end
def self.trace(name)
instance.spanner.in_span(name) do |span|
tracer = Traceloop::SDK::Traceloop::Tracer.new(span)
yield(tracer)
end
end
end
Fixed with #8
Here's a jenky half baked solution we're using in the context of our own
Llm::Chat::Gemini::ChatResponse
: