Module: OpenTelemetry
- Extended by:
- OpenTelemetry
- Included in:
- OpenTelemetry
- Defined in:
- lib/opentelemetry/error.rb,
lib/opentelemetry/trace.rb,
lib/opentelemetry/baggage.rb,
lib/opentelemetry/context.rb,
lib/opentelemetry/metrics.rb,
lib/opentelemetry/version.rb,
lib/opentelemetry/trace/link.rb,
lib/opentelemetry/trace/span.rb,
lib/opentelemetry/context/key.rb,
lib/opentelemetry/trace/status.rb,
lib/opentelemetry/trace/tracer.rb,
lib/opentelemetry/metrics/meter.rb,
lib/opentelemetry/baggage/builder.rb,
lib/opentelemetry/baggage/manager.rb,
lib/opentelemetry/instrumentation.rb,
lib/opentelemetry/metrics/handles.rb,
lib/opentelemetry/trace/span_kind.rb,
lib/opentelemetry/trace/tracestate.rb,
lib/opentelemetry/trace/propagation.rb,
lib/opentelemetry/trace/trace_flags.rb,
lib/opentelemetry/trace/span_context.rb,
lib/opentelemetry/baggage/propagation.rb,
lib/opentelemetry/context/propagation.rb,
lib/opentelemetry/metrics/instruments.rb,
lib/opentelemetry/instrumentation/base.rb,
lib/opentelemetry/trace/tracer_provider.rb,
lib/opentelemetry/metrics/meter_provider.rb,
lib/opentelemetry/instrumentation/registry.rb,
lib/opentelemetry/trace/util/http_to_status.rb,
lib/opentelemetry/context/propagation/propagator.rb,
lib/opentelemetry/trace/propagation/trace_context.rb,
lib/opentelemetry/baggage/propagation/context_keys.rb,
lib/opentelemetry/context/propagation/noop_injector.rb,
lib/opentelemetry/context/propagation/noop_extractor.rb,
lib/opentelemetry/context/propagation/rack_env_getter.rb,
lib/opentelemetry/context/propagation/text_map_getter.rb,
lib/opentelemetry/context/propagation/text_map_setter.rb,
lib/opentelemetry/baggage/propagation/text_map_injector.rb,
lib/opentelemetry/baggage/propagation/text_map_extractor.rb,
lib/opentelemetry/context/propagation/composite_propagator.rb,
lib/opentelemetry/trace/propagation/trace_context/trace_parent.rb,
lib/opentelemetry/trace/propagation/trace_context/text_map_injector.rb,
lib/opentelemetry/trace/propagation/trace_context/text_map_extractor.rb,
lib/opentelemetry.rb
Overview
OpenTelemetry is an open source observability framework, providing a general-purpose API, SDK, and related tools required for the instrumentation of cloud-native software, frameworks, and libraries.
The OpenTelemetry module provides global accessors for telemetry objects.
Defined Under Namespace
Modules: Baggage, Instrumentation, Metrics, Trace Classes: Context, Error
Constant Summary collapse
- VERSION =
Current OpenTelemetry version
'0.14.0'
Instance Attribute Summary collapse
-
#baggage ⇒ Object, Baggage::Manager
Registered baggage manager or a default no-op implementation of the manager.
-
#error_handler ⇒ Callable
Configured error handler or a default that logs the exception and message at ERROR level.
-
#logger ⇒ Object, Logger
Configured Logger or a default STDOUT Logger.
-
#meter_provider ⇒ Object, Metrics::MeterProvider
Registered meter provider or a default no-op implementation of the meter provider.
-
#propagation ⇒ Context::Propagation::Propagator
A propagator instance.
-
#tracer_provider ⇒ Object, Trace::TracerProvider
Registered tracer provider or a default no-op implementation of the tracer provider.
Instance Method Summary collapse
-
#handle_error(exception: nil, message: nil) ⇒ Object
Handles an error by calling the configured error_handler.
-
#instrumentation_registry ⇒ Instrumentation::Registry
Registry containing all known instrumentation.
Instance Attribute Details
#baggage ⇒ Object, Baggage::Manager
Returns registered baggage manager or a default no-op implementation of the manager.
68 69 70 |
# File 'lib/opentelemetry.rb', line 68 def baggage @baggage ||= Baggage::Manager.new end |
#error_handler ⇒ Callable
Returns configured error handler or a default that logs the exception and message at ERROR level.
35 36 37 |
# File 'lib/opentelemetry.rb', line 35 def error_handler @error_handler ||= ->(exception: nil, message: nil) { logger.error("OpenTelemetry error: #{[, exception&.].compact.join(' - ')}") } end |
#logger ⇒ Object, Logger
Returns configured Logger or a default STDOUT Logger.
29 30 31 |
# File 'lib/opentelemetry.rb', line 29 def logger @logger ||= Logger.new(STDOUT, level: ENV['OTEL_LOG_LEVEL'] || Logger::INFO) end |
#meter_provider ⇒ Object, Metrics::MeterProvider
Returns registered meter provider or a default no-op implementation of the meter provider.
55 56 57 |
# File 'lib/opentelemetry.rb', line 55 def meter_provider @meter_provider ||= Metrics::MeterProvider.new end |
#propagation ⇒ Context::Propagation::Propagator
Returns a propagator instance.
73 74 75 76 77 78 |
# File 'lib/opentelemetry.rb', line 73 def propagation @propagation ||= Context::Propagation::Propagator.new( Context::Propagation::NoopInjector.new, Context::Propagation::NoopExtractor.new ) end |
#tracer_provider ⇒ Object, Trace::TracerProvider
Returns registered tracer provider or a default no-op implementation of the tracer provider.
49 50 51 |
# File 'lib/opentelemetry.rb', line 49 def tracer_provider @tracer_provider ||= Trace::TracerProvider.new end |
Instance Method Details
#handle_error(exception: nil, message: nil) ⇒ Object
Handles an error by calling the configured error_handler.
43 44 45 |
# File 'lib/opentelemetry.rb', line 43 def handle_error(exception: nil, message: nil) error_handler.call(exception: exception, message: ) end |
#instrumentation_registry ⇒ Instrumentation::Registry
Returns registry containing all known instrumentation.
61 62 63 |
# File 'lib/opentelemetry.rb', line 61 def instrumentation_registry @instrumentation_registry ||= Instrumentation::Registry.new end |