Added
- The
WithInt64Callback
option togo.opentelemetry.io/otel/metric/instrument
. This options is used to configureint64
Observer callbacks during their creation. (#3507) - The
WithFloat64Callback
option togo.opentelemetry.io/otel/metric/instrument
. This options is used to configurefloat64
Observer callbacks during their creation. (#3507) - The
Producer
interface andReader.RegisterProducer(Producer)
togo.opentelemetry.io/otel/sdk/metric
. These additions are used to enable external metric Producers. (#3524) - The
Callback
function type togo.opentelemetry.io/otel/metric
. This new named function type is registered with aMeter
. (#3564) - The
go.opentelemetry.io/otel/semconv/v1.13.0
package. The package contains semantic conventions from thev1.13.0
version of the OpenTelemetry specification. (#3499)- The
EndUserAttributesFromHTTPRequest
function ingo.opentelemetry.io/otel/semconv/v1.12.0
is merged intoClientRequest
andServerRequest
ingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv
. - The
HTTPAttributesFromHTTPStatusCode
function ingo.opentelemetry.io/otel/semconv/v1.12.0
is merged intoClientResponse
ingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv
. - The
HTTPClientAttributesFromHTTPRequest
function ingo.opentelemetry.io/otel/semconv/v1.12.0
is replaced byClientRequest
ingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv
. - The
HTTPServerAttributesFromHTTPRequest
function ingo.opentelemetry.io/otel/semconv/v1.12.0
is replaced byServerRequest
ingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv
. - The
HTTPServerMetricAttributesFromHTTPRequest
function ingo.opentelemetry.io/otel/semconv/v1.12.0
is replaced byServerRequest
ingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv
. - The
NetAttributesFromHTTPRequest
function ingo.opentelemetry.io/otel/semconv/v1.12.0
is split intoTransport
ingo.opentelemetry.io/otel/semconv/v1.13.0/netconv
andClientRequest
orServerRequest
ingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv
. - The
SpanStatusFromHTTPStatusCode
function ingo.opentelemetry.io/otel/semconv/v1.12.0
is replaced byClientStatus
ingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv
. - The
SpanStatusFromHTTPStatusCodeAndSpanKind
function ingo.opentelemetry.io/otel/semconv/v1.12.0
is split intoClientStatus
andServerStatus
ingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv
. - The
Client
function is included ingo.opentelemetry.io/otel/semconv/v1.13.0/netconv
to generate attributes for anet.Conn
. - The
Server
function is included ingo.opentelemetry.io/otel/semconv/v1.13.0/netconv
to generate attributes for anet.Listener
.
- The
- The
go.opentelemetry.io/otel/semconv/v1.14.0
package. The package contains semantic conventions from thev1.14.0
version of the OpenTelemetry specification. (#3566) - The
go.opentelemetry.io/otel/semconv/v1.15.0
package. The package contains semantic conventions from thev1.15.0
version of the OpenTelemetry specification. (#3578) - The
go.opentelemetry.io/otel/semconv/v1.16.0
package. The package contains semantic conventions from thev1.16.0
version of the OpenTelemetry specification. (#3579) - Metric instruments to
go.opentelemetry.io/otel/metric/instrument
. These instruments are use as replacements of the depreactedgo.opentelemetry.io/otel/metric/instrument/{asyncfloat64,asyncint64,syncfloat64,syncint64}
packages.(#3575, #3586)Float64ObservableCounter
replaces theasyncfloat64.Counter
Float64ObservableUpDownCounter
replaces theasyncfloat64.UpDownCounter
Float64ObservableGauge
replaces theasyncfloat64.Gauge
Int64ObservableCounter
replaces theasyncint64.Counter
Int64ObservableUpDownCounter
replaces theasyncint64.UpDownCounter
Int64ObservableGauge
replaces theasyncint64.Gauge
Float64Counter
replaces thesyncfloat64.Counter
Float64UpDownCounter
replaces thesyncfloat64.UpDownCounter
Float64Histogram
replaces thesyncfloat64.Histogram
Int64Counter
replaces thesyncint64.Counter
Int64UpDownCounter
replaces thesyncint64.UpDownCounter
Int64Histogram
replaces thesyncint64.Histogram
NewTracerProvider
togo.opentelemetry.io/otel/bridge/opentracing
. This is used to createWrapperTracer
instances from aTracerProvider
. (#3116)- The
Extrema
type togo.opentelemetry.io/otel/sdk/metric/metricdata
. This type is used to represent min/max values and still be able to distinguish unset and zero values. (#3487) - The
go.opentelemetry.io/otel/semconv/v1.17.0
package. The package contains semantic conventions from thev1.17.0
version of the OpenTelemetry specification. (#3599)
Changed
- Jaeger and Zipkin exporter use
github.com/go-logr/logr
as the logging interface, and add theWithLogr
option. (#3497, #3500) - Instrument configuration in
go.opentelemetry.io/otel/metric/instrument
is split into specific options and confguration based on the instrument type. (#3507)- Use the added
Int64Option
type to configure instruments fromgo.opentelemetry.io/otel/metric/instrument/syncint64
. - Use the added
Float64Option
type to configure instruments fromgo.opentelemetry.io/otel/metric/instrument/syncfloat64
. - Use the added
Int64ObserverOption
type to configure instruments fromgo.opentelemetry.io/otel/metric/instrument/asyncint64
. - Use the added
Float64ObserverOption
type to configure instruments fromgo.opentelemetry.io/otel/metric/instrument/asyncfloat64
.
- Use the added
- Return a
Registration
from theRegisterCallback
method of aMeter
in thego.opentelemetry.io/otel/metric
package. ThisRegistration
can be used to unregister callbacks. (#3522) - Global error handler uses an atomic value instead of a mutex. (#3543)
- Add
NewMetricProducer
togo.opentelemetry.io/otel/bridge/opencensus
, which can be used to pass OpenCensus metrics to an OpenTelemetry Reader. (#3541) - Global logger uses an atomic value instead of a mutex. (#3545)
- The
Shutdown
method of the"go.opentelemetry.io/otel/sdk/trace".TracerProvider
releases all computational resources when called the first time. (#3551) - The
Sampler
returned fromTraceIDRatioBased
go.opentelemetry.io/otel/sdk/trace
now uses the rightmost bits for sampling decisions. This fixes random sampling when using ID generators likexray.IDGenerator
and increasing parity with other language implementations. (#3557) - Errors from
go.opentelemetry.io/otel/exporters/otlp/otlptrace
exporters are wrapped in erros identifying their signal name. Existing users of the exporters attempting to identify specific errors will need to useerrors.Unwrap()
to get the underlying error. (#3516) - Exporters from
go.opentelemetry.io/otel/exporters/otlp
will print the final retryable error message when attempts to retry time out. (#3514) - The instrument kind names in
go.opentelemetry.io/otel/sdk/metric
are updated to match the API. (#3562)InstrumentKindSyncCounter
is renamed toInstrumentKindCounter
InstrumentKindSyncUpDownCounter
is renamed toInstrumentKindUpDownCounter
InstrumentKindSyncHistogram
is renamed toInstrumentKindHistogram
InstrumentKindAsyncCounter
is renamed toInstrumentKindObservableCounter
InstrumentKindAsyncUpDownCounter
is renamed toInstrumentKindObservableUpDownCounter
InstrumentKindAsyncGauge
is renamed toInstrumentKindObservableGauge
- The
RegisterCallback
method of theMeter
ingo.opentelemetry.io/otel/metric
changed.- The named
Callback
replaces the inline function parameter. (#3564) Callback
is required to return an error. (#3576)Callback
accepts the addedObserver
parameter added. This new parameter is used byCallback
implementations to observe values for asynchronous instruments instead of calling theObserve
method of the instrument directly. (#3584)- The slice of
instrument.Asynchronous
is now passed as a variadic argument. (#3587)
- The named
- The exporter from
go.opentelemetry.io/otel/exporters/zipkin
is updated to use thev1.16.0
version of semantic conventions. This means it no longer uses the removednet.peer.ip
orhttp.host
attributes to determine the remote endpoint. Instead it uses thenet.sock.peer
attributes. (#3581) - The
Min
andMax
fields of theHistogramDataPoint
ingo.opentelemetry.io/otel/sdk/metric/metricdata
are now defined with the addedExtrema
type instead of a*float64
. (#3487)
Fixed
- Asynchronous instruments that use sum aggregators and attribute filters correctly add values from equivalent attribute sets that have been filtered. (#3439, #3549)
- The
RegisterCallback
method of theMeter
fromgo.opentelemetry.io/otel/sdk/metric
only registers a callback for instruments created by that meter. Trying to register a callback with instruments from a different meter will result in an error being returned. (#3584)
Deprecated
- The
NewMetricExporter
ingo.opentelemetry.io/otel/bridge/opencensus
is deprecated. UseNewMetricProducer
instead. (#3541) - The
go.opentelemetry.io/otel/metric/instrument/asyncfloat64
package is deprecated. Use the instruments fromgo.opentelemetry.io/otel/metric/instrument
instead. (#3575) - The
go.opentelemetry.io/otel/metric/instrument/asyncint64
package is deprecated. Use the instruments fromgo.opentelemetry.io/otel/metric/instrument
instead. (#3575) - The
go.opentelemetry.io/otel/metric/instrument/syncfloat64
package is deprecated. Use the instruments fromgo.opentelemetry.io/otel/metric/instrument
instead. (#3575) - The
go.opentelemetry.io/otel/metric/instrument/syncint64
package is deprecated. Use the instruments fromgo.opentelemetry.io/otel/metric/instrument
instead. (#3575) - The
NewWrappedTracerProvider
ingo.opentelemetry.io/otel/bridge/opentracing
is now deprecated. UseNewTracerProvider
instead. (#3116)
Removed
- The deprecated
go.opentelemetry.io/otel/sdk/metric/view
package is removed. (#3520) - The
InstrumentProvider
fromgo.opentelemetry.io/otel/sdk/metric/asyncint64
is removed. Use the new creation methods of theMeter
ingo.opentelemetry.io/otel/sdk/metric
instead. (#3530)- The
Counter
method is replaced byMeter.Int64ObservableCounter
- The
UpDownCounter
method is replaced byMeter.Int64ObservableUpDownCounter
- The
Gauge
method is replaced byMeter.Int64ObservableGauge
- The
- The
InstrumentProvider
fromgo.opentelemetry.io/otel/sdk/metric/asyncfloat64
is removed. Use the new creation methods of theMeter
ingo.opentelemetry.io/otel/sdk/metric
instead. (#3530)- The
Counter
method is replaced byMeter.Float64ObservableCounter
- The
UpDownCounter
method is replaced byMeter.Float64ObservableUpDownCounter
- The
Gauge
method is replaced byMeter.Float64ObservableGauge
- The
- The
InstrumentProvider
fromgo.opentelemetry.io/otel/sdk/metric/syncint64
is removed. Use the new creation methods of theMeter
ingo.opentelemetry.io/otel/sdk/metric
instead. (#3530)- The
Counter
method is replaced byMeter.Int64Counter
- The
UpDownCounter
method is replaced byMeter.Int64UpDownCounter
- The
Histogram
method is replaced byMeter.Int64Histogram
- The
- The
InstrumentProvider
fromgo.opentelemetry.io/otel/sdk/metric/syncfloat64
is removed. Use the new creation methods of theMeter
ingo.opentelemetry.io/otel/sdk/metric
instead. (#3530)- The
Counter
method is replaced byMeter.Float64Counter
- The
UpDownCounter
method is replaced byMeter.Float64UpDownCounter
- The
Histogram
method is replaced byMeter.Float64Histogram
- The