class Aws::Telemetry::OTelProvider
client = Aws::S3::Client.new(telemetry_provider: otel_provider)
otel_provider = Aws::Telemetry::OTelProvider.new
OpenTelemetry::SDK.configure
# configures the OpenTelemetry SDK with defaults<br><br>ENV ||= ‘console’
require ‘opentelemetry-sdk’
@example Exporting via console
more information.
See {opentelemetry.io/docs/languages/ruby/exporters here} for
OpenTelemetry supports many ways to export your telemetry data.
client = Aws::S3::Client.new(telemetry_provider: otel_provider)
otel_provider = Aws::Telemetry::OTelProvider.new
OpenTelemetry::SDK.configure
# sets up the OpenTelemetry SDK with their config defaults
require ‘opentelemetry-sdk’
@example Configuration
telemetry provider in the client config.
pass in an instance of a ‘Aws::Telemetry::OTelProvider` as the
To use this provider, require the `opentelemetry-sdk` gem and then,
OTelProvider allows to emit telemetry data based on OpenTelemetry.
def initialize
def initialize unless otel_loaded? raise ArgumentError, 'Requires the `opentelemetry-sdk` gem to use OTel Provider.' end super( tracer_provider: OTelTracerProvider.new, context_manager: OTelContextManager.new ) end
def otel_loaded?
def otel_loaded? if @use_otel.nil? @use_otel = begin require 'opentelemetry-sdk' true rescue LoadError, NameError false end end @use_otel end