module Aspecto::Opentelemetry

Aspecto Opentelemetry Distro

Constants

VERSION

Public Instance Methods

configure() { |configurator| ... } click to toggle source
# File lib/aspecto/opentelemetry.rb, line 17
def configure
  configurator = Configurator.new
  yield configurator if block_given?

  OpenTelemetry::SDK.configure do |c|
    c.service_name = configurator.service_name
    c.resource = Aspecto::Opentelemetry::Resource::Detectors::Aspecto.detect
    c.use_all "OpenTelemetry::Instrumentation::ActionPack" => { enable_recognize_route: true }

    c.add_span_processor(
      OpenTelemetry::SDK::Trace::Export::BatchSpanProcessor.new(
        OpenTelemetry::Exporter::OTLP::Exporter.new(endpoint: "https://otelcol.aspecto.io/v1/trace", headers: {
                                                      "Authorization" => configurator.aspecto_auth
                                                    })
      )
    )
  end
end