Documentation
¶
Overview ¶
Package opentelemetry is the root of a pure-Go (CGO=0), MRI-faithful reimplementation of Ruby's opentelemetry-api and opentelemetry-sdk gems, focused on distributed tracing.
It mirrors the top-level OpenTelemetry Ruby module — the global tracer provider and text-map propagator — while the sub-packages mirror the rest of the surface:
- trace: OpenTelemetry::Trace — tracers, spans, span context, kind, status.
- context: OpenTelemetry::Context — the immutable execution context.
- baggage: OpenTelemetry::Baggage — propagated key/value pairs.
- propagation: OpenTelemetry::Context::Propagation — W3C TraceContext and Baggage inject/extract.
- sdk/trace: OpenTelemetry::SDK::Trace — the configurable TracerProvider, span processors (simple + batch), samplers and the in-memory exporter seam.
The tracing model itself is not reimplemented: every type is a Ruby-faithful facade over the OpenTelemetry Go SDK (go.opentelemetry.io/otel and go.opentelemetry.io/otel/sdk), so the real, well-tested Go implementation does the recording, sampling, batching and W3C serialization while callers use the method names and semantics of opentelemetry-ruby. Everything runs in-process with no network: the exporter is an injectable seam and an InMemorySpanExporter is provided for tests and embedding.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Propagation ¶
func Propagation() propagation.TextMapPropagator
Propagation mirrors OpenTelemetry.propagation — the registered global text-map propagator.
func SetPropagation ¶
func SetPropagation(p propagation.TextMapPropagator)
SetPropagation mirrors OpenTelemetry.propagation= — it installs the global propagator.
func SetTracerProvider ¶
func SetTracerProvider(tp trace.TracerProvider)
SetTracerProvider mirrors OpenTelemetry.tracer_provider= — it installs the global provider (typically an SDK TracerProvider).
func Tracer ¶
Tracer mirrors OpenTelemetry.tracer_provider.tracer(name, version) — a convenience that fetches a tracer from the global provider.
func TracerProvider ¶
func TracerProvider() trace.TracerProvider
TracerProvider mirrors OpenTelemetry.tracer_provider — the registered global provider, defaulting to a no-op provider until the SDK is installed.
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package baggage mirrors Ruby's OpenTelemetry::Baggage — the propagated set of key/value pairs that ride alongside a trace.
|
Package baggage mirrors Ruby's OpenTelemetry::Baggage — the propagated set of key/value pairs that ride alongside a trace. |
|
Package context mirrors Ruby's OpenTelemetry::Context — the immutable, key/value execution context that carries the current span, baggage and any user values across API boundaries.
|
Package context mirrors Ruby's OpenTelemetry::Context — the immutable, key/value execution context that carries the current span, baggage and any user values across API boundaries. |
|
Package propagation mirrors Ruby's OpenTelemetry::Context::Propagation — the injection and extraction of cross-process context over carriers such as HTTP headers.
|
Package propagation mirrors Ruby's OpenTelemetry::Context::Propagation — the injection and extraction of cross-process context over carriers such as HTTP headers. |
|
sdk
|
|
|
trace
Package sdktrace mirrors Ruby's OpenTelemetry::SDK::Trace — the configurable tracing implementation from the opentelemetry-sdk gem.
|
Package sdktrace mirrors Ruby's OpenTelemetry::SDK::Trace — the configurable tracing implementation from the opentelemetry-sdk gem. |
|
Package trace mirrors Ruby's OpenTelemetry::Trace API — the tracing surface (tracers, spans, span context, kind, status) exposed by the opentelemetry-api gem.
|
Package trace mirrors Ruby's OpenTelemetry::Trace API — the tracing surface (tracers, spans, span context, kind, status) exposed by the opentelemetry-api gem. |
