Releases: open-telemetry/opentelemetry-go
Release v1.15.1/v0.38.1
Release v1.15.0/v0.38.0
Added
- The
go.opentelemetry.io/otel/metric/embeddedpackage. (#3916) - The
Versionfunction togo.opentelemetry.io/otel/sdkto return the SDK version. (#3949) - Add a
WithNamespaceoption togo.opentelemetry.io/otel/exporters/prometheusto allow users to prefix metrics with a namespace. (#3970) - The following configuration types were added to
go.opentelemetry.io/otel/metric/instrumentto be used in the configuration of measurement methods. (#3971)- The
AddConfigused to hold configuration for addition measurementsNewAddConfigused to create a newAddConfigAddOptionused to configure anAddConfig
- The
RecordConfigused to hold configuration for recorded measurementsNewRecordConfigused to create a newRecordConfigRecordOptionused to configure aRecordConfig
- The
ObserveConfigused to hold configuration for observed measurementsNewObserveConfigused to create a newObserveConfigObserveOptionused to configure anObserveConfig
- The
WithAttributeSetandWithAttributesare added togo.opentelemetry.io/otel/metric/instrument. They return an option used during a measurement that defines the attribute Set associated with the measurement. (#3971)- The
Versionfunction togo.opentelemetry.io/otel/exporters/otlp/otlpmetricto return the OTLP metrics client version. (#3956) - The
Versionfunction togo.opentelemetry.io/otel/exporters/otlp/otlptraceto return the OTLP trace client version. (#3956)
Changed
- The
Extremaingo.opentelemetry.io/otel/sdk/metric/metricdatais redefined with a generic argument of[N int64 | float64]. (#3870) - Update all exported interfaces from
go.opentelemetry.io/otel/metricto embed their corresponding interface fromgo.opentelemetry.io/otel/metric/embedded. This adds an implementation requirement to set the interface default behavior for unimplemented methods. (#3916) - Move No-Op implementation from
go.opentelemetry.io/otel/metricinto its own packagego.opentelemetry.io/otel/metric/noop. (#3941)metric.NewNoopMeterProvideris replaced withnoop.NewMeterProvider
- Add all the methods from
"go.opentelemetry.io/otel/trace".SpanContexttobridgeSpanContextby embeddingotel.SpanContextinbridgeSpanContext. (#3966) - Wrap
UploadMetricserror ingo.opentelemetry.io/otel/exporters/otlp/otlpmetric/to improve error message when encountering generic grpc errors. (#3974) - The measurement methods for all instruments in
go.opentelemetry.io/otel/metric/instrumentaccept an option instead of the variadic"go.opentelemetry.io/otel/attribute".KeyValue. (#3971)- The
Int64Counter.Addmethod now accepts...AddOption - The
Float64Counter.Addmethod now accepts...AddOption - The
Int64UpDownCounter.Addmethod now accepts...AddOption - The
Float64UpDownCounter.Addmethod now accepts...AddOption - The
Int64Histogram.Recordmethod now accepts...RecordOption - The
Float64Histogram.Recordmethod now accepts...RecordOption - The
Int64Observer.Observemethod now accepts...ObserveOption - The
Float64Observer.Observemethod now accepts...ObserveOption
- The
- The
Observermethods ingo.opentelemetry.io/otel/metricaccept an option instead of the variadic"go.opentelemetry.io/otel/attribute".KeyValue. (#3971)- The
Observer.ObserveInt64method now accepts...ObserveOption - The
Observer.ObserveFloat64method now accepts...ObserveOption
- The
- Move global metric back to
go.opentelemetry.io/otel/metric/globalfromgo.opentelemetry.io/otel. (#3986)
Fixed
TracerProviderallows callingTracer()while it's shutting down. It used to deadlock. (#3924)- Use the SDK version for the Telemetry SDK resource detector in
go.opentelemetry.io/otel/sdk/resource. (#3949) - Fix a data race in
SpanProcessorreturned byNewSimpleSpanProcessoringo.opentelemetry.io/otel/sdk/trace. (#3951) - Automatically figure out the default aggregation with
aggregation.Default. (#3967)
Deprecated
- The
go.opentelemetry.io/otel/metric/instrumentpackage is deprecated. Use the equivalent types added togo.opentelemetry.io/otel/metricinstead. (#4018)
Release v1.15.0-rc.2/v0.38.0-rc.2
This is a release candidate for the v1.15.0/v0.38.0 release. That release will include the v1 release of the OpenTelemetry Go metric API and will provide stability guarantees of that API. See our versioning policy for more information about these stability guarantees.
Added
- The
WithHostIDoption togo.opentelemetry.io/otel/sdk/resource. (#3812) - The
WithoutTimestampsoption togo.opentelemetry.io/otel/exporters/stdout/stdoutmetricto sets all timestamps to zero. (#3828) - The new
Exemplartype is added togo.opentelemetry.io/otel/sdk/metric/metricdata. Both theDataPointandHistogramDataPointtypes from that package have a new field ofExemplarscontaining the sampled exemplars for their timeseries. (#3849) - Configuration for each metric instrument in
go.opentelemetry.io/otel/sdk/metric/instrument. (#3895) - The internal logging introduces a warning level verbosity equal to
V(1). (#3900)
Changed
- Optimize memory allocation when creation a new
SetusingNewSetorNewSetWithFilteredingo.opentelemetry.io/otel/attribute. (#3832) - Optimize memory allocation when creation new metric instruments in
go.opentelemetry.io/otel/sdk/metric. (#3832) - Avoid creating new objects on all calls to
WithDeferredSetupandSkipContextSetupin OpenTracing bridge. (#3833) - The
NewandDetectfunctions fromgo.opentelemetry.io/otel/sdk/resourcereturn errors that wrap underlying errors instead of just containing the underlying error strings. (#3844) - Both the
HistogramandHistogramDataPointare redefined with a generic argument of[N int64 | float64]ingo.opentelemetry.io/otel/sdk/metric/metricdata. (#3849) - The metric
Exportinterface fromgo.opentelemetry.io/otel/sdk/metricaccepts a*ResourceMetricsinstead ofResourceMetrics. (#3853) - Rename
AsynchronoustoObservableingo.opentelemetry.io/otel/metric/instrument. (#3892) - Rename
Int64ObserverOptiontoInt64ObservableOptioningo.opentelemetry.io/otel/metric/instrument. (#3895) - Rename
Float64ObserverOptiontoFloat64ObservableOptioningo.opentelemetry.io/otel/metric/instrument. (#3895) - The internal logging changes the verbosity level of info to
V(4), the verbosity level of debug toV(8). (#3900)
Fixed
TracerProviderconsistently doesn't allow to register aSpanProcessorafter shutdown. (#3845)
Removed
- The deprecated
go.opentelemetry.io/otel/metric/globalpackage is removed. (#3829) - The unneeded
Synchronousinterface ingo.opentelemetry.io/otel/metric/instrumentwas removed. (#3892) - The
Float64ObserverConfigandNewFloat64ObserverConfigingo.opentelemetry.io/otel/sdk/metric/instrument. Use the addedfloat64instrument configuration instead. (#3895) - The
Int64ObserverConfigandNewInt64ObserverConfigingo.opentelemetry.io/otel/sdk/metric/instrument. Use the addedint64instrument configuration instead. (#3895) - The
NewNoopMeterfunction ingo.opentelemetry.io/otel/metric, useNewMeterProvider().Meter("")instead. (#3893)
Release v1.15.0-rc.1/v0.38.0-rc.1
This is a release candidate for the v1.15.0/v0.38.0 release. That release will include the v1 release of the OpenTelemetry Go metric API and will provide stability guarantees of that API. See our versioning policy for more information about these stability guarantees.
This release drops the compatibility guarantee of Go 1.18.
Added
- Support global
MeterProvideringo.opentelemetry.io/otel. (#3818)- Use
Meterfor ametric.Meterfrom the globalmetric.MeterProvider. - Use
GetMeterProivderfor a globalmetric.MeterProvider. - Use
SetMeterProivderto set the globalmetric.MeterProvider.
- Use
Changed
- Dropped compatibility testing for Go 1.18. The project no longer guarantees support for this version of Go. (#3813)
Fixed
- Handle empty environment variable as it they were not set. (#3764)
Deprecated
- The
go.opentelemetry.io/otel/metric/globalpackage is deprecated. Usego.opentelemetry.io/otelinstead. (#3818)
Removed
- The deprecated
go.opentelemetry.io/otel/metric/unitpackage is removed. (#3814)
Release v1.14.0/v0.37.0/v0.0.4
Part of #3809
This release is the last to support Go 1.18.
The next release will require at least Go 1.19.
Added
- The
eventtype semantic conventions are added togo.opentelemetry.io/otel/semconv/v1.17.0. (#3697) - Support Go 1.20. (#3693)
- The
go.opentelemetry.io/otel/semconv/v1.18.0package.
The package contains semantic conventions from thev1.18.0version of the OpenTelemetry specification. (#3719)- The following
constrenames fromgo.opentelemetry.io/otel/semconv/v1.17.0are included:OtelScopeNameKey->OTelScopeNameKeyOtelScopeVersionKey->OTelScopeVersionKeyOtelLibraryNameKey->OTelLibraryNameKeyOtelLibraryVersionKey->OTelLibraryVersionKeyOtelStatusCodeKey->OTelStatusCodeKeyOtelStatusDescriptionKey->OTelStatusDescriptionKeyOtelStatusCodeOk->OTelStatusCodeOkOtelStatusCodeError->OTelStatusCodeError
- The following
funcrenames fromgo.opentelemetry.io/otel/semconv/v1.17.0are included:OtelScopeName->OTelScopeNameOtelScopeVersion->OTelScopeVersionOtelLibraryName->OTelLibraryNameOtelLibraryVersion->OTelLibraryVersionOtelStatusDescription->OTelStatusDescription
- The following
- A
IsSampledmethod is added to theSpanContextimplementation ingo.opentelemetry.io/otel/bridge/opentracingto expose the span sampled state.
See the README for more information. (#3570) - The
WithInstrumentationAttributesoption togo.opentelemetry.io/otel/metric. (#3738) - The
WithInstrumentationAttributesoption togo.opentelemetry.io/otel/trace. (#3739) - The following environment variables are supported by the periodic
Readeringo.opentelemetry.io/otel/sdk/metric. (#3763)OTEL_METRIC_EXPORT_INTERVALsets the time between collections and exports.OTEL_METRIC_EXPORT_TIMEOUTsets the timeout an export is attempted.
Changed
- Fall-back to
TextMapCarrierwhen it's notHttpHeaders ingo.opentelemetry.io/otel/bridge/opentracing. (#3679) - The
Collectmethod of the"go.opentelemetry.io/otel/sdk/metric".Readerinterface is updated to accept themetricdata.ResourceMetricsvalue the collection will be made into.
This change is made to enable memory reuse by SDK users. (#3732) - The
WithUnitoption ingo.opentelemetry.io/otel/sdk/metric/instrumentis updated to accept astringfor the unit value. (#3776)
Fixed
- Ensure
go.opentelemetry.io/oteldoes not use generics. (#3723, #3725) - Multi-reader
MeterProviders now export metrics for all readers, instead of just the first reader. (#3720, #3724) - Remove use of deprecated
"math/rand".Seedingo.opentelemetry.io/otel/example/prometheus. (#3733) - Do not silently drop unknown schema data with
Parseingo.opentelemetry.io/otel/schema/v1.1. (#3743) - Data race issue in OTLP exporter retry mechanism. (#3755, #3756)
- Wrapping empty errors when exporting in
go.opentelemetry.io/otel/sdk/metric. (#3698, #3772) - Incorrect "all" and "resource" definition for schema files in
go.opentelemetry.io/otel/schema/v1.1. (#3777)
Deprecated
- The
go.opentelemetry.io/otel/metric/unitpackage is deprecated.
Use the equivalent unit string instead. (#3776)- Use
"1"instead ofunit.Dimensionless - Use
"By"instead ofunit.Bytes - Use
"ms"instead ofunit.Milliseconds
- Use
Release v1.13.0/v0.36.0
1.13.0/0.36.0 2023-02-07
Added
- Attribute
KeyValuecreations functions togo.opentelemetry.io/otel/semconv/v1.17.0for all non-enum semantic conventions.
These functions ensure semantic convention type correctness. (#3675)
Fixed
- Removed the
http.targetattribute from being added byServerRequestin the following packages. (#3687)go.opentelemetry.io/otel/semconv/v1.13.0/httpconvgo.opentelemetry.io/otel/semconv/v1.14.0/httpconvgo.opentelemetry.io/otel/semconv/v1.15.0/httpconvgo.opentelemetry.io/otel/semconv/v1.16.0/httpconvgo.opentelemetry.io/otel/semconv/v1.17.0/httpconv
Removed
- The deprecated
go.opentelemetry.io/otel/metric/instrument/asyncfloat64package is removed. (#3631) - The deprecated
go.opentelemetry.io/otel/metric/instrument/asyncint64package is removed. (#3631) - The deprecated
go.opentelemetry.io/otel/metric/instrument/syncfloat64package is removed. (#3631) - The deprecated
go.opentelemetry.io/otel/metric/instrument/syncint64package is removed. (#3631)
Release v1.12.0/v0.35.0
Added
- The
WithInt64Callbackoption togo.opentelemetry.io/otel/metric/instrument. This options is used to configureint64Observer callbacks during their creation. (#3507) - The
WithFloat64Callbackoption togo.opentelemetry.io/otel/metric/instrument. This options is used to configurefloat64Observer callbacks during their creation. (#3507) - The
Producerinterface andReader.RegisterProducer(Producer)togo.opentelemetry.io/otel/sdk/metric. These additions are used to enable external metric Producers. (#3524) - The
Callbackfunction type togo.opentelemetry.io/otel/metric. This new named function type is registered with aMeter. (#3564) - The
go.opentelemetry.io/otel/semconv/v1.13.0package. The package contains semantic conventions from thev1.13.0version of the OpenTelemetry specification. (#3499)- The
EndUserAttributesFromHTTPRequestfunction ingo.opentelemetry.io/otel/semconv/v1.12.0is merged intoClientRequestandServerRequestingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv. - The
HTTPAttributesFromHTTPStatusCodefunction ingo.opentelemetry.io/otel/semconv/v1.12.0is merged intoClientResponseingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv. - The
HTTPClientAttributesFromHTTPRequestfunction ingo.opentelemetry.io/otel/semconv/v1.12.0is replaced byClientRequestingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv. - The
HTTPServerAttributesFromHTTPRequestfunction ingo.opentelemetry.io/otel/semconv/v1.12.0is replaced byServerRequestingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv. - The
HTTPServerMetricAttributesFromHTTPRequestfunction ingo.opentelemetry.io/otel/semconv/v1.12.0is replaced byServerRequestingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv. - The
NetAttributesFromHTTPRequestfunction ingo.opentelemetry.io/otel/semconv/v1.12.0is split intoTransportingo.opentelemetry.io/otel/semconv/v1.13.0/netconvandClientRequestorServerRequestingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv. - The
SpanStatusFromHTTPStatusCodefunction ingo.opentelemetry.io/otel/semconv/v1.12.0is replaced byClientStatusingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv. - The
SpanStatusFromHTTPStatusCodeAndSpanKindfunction ingo.opentelemetry.io/otel/semconv/v1.12.0is split intoClientStatusandServerStatusingo.opentelemetry.io/otel/semconv/v1.13.0/httpconv. - The
Clientfunction is included ingo.opentelemetry.io/otel/semconv/v1.13.0/netconvto generate attributes for anet.Conn. - The
Serverfunction is included ingo.opentelemetry.io/otel/semconv/v1.13.0/netconvto generate attributes for anet.Listener.
- The
- The
go.opentelemetry.io/otel/semconv/v1.14.0package. The package contains semantic conventions from thev1.14.0version of the OpenTelemetry specification. (#3566) - The
go.opentelemetry.io/otel/semconv/v1.15.0package. The package contains semantic conventions from thev1.15.0version of the OpenTelemetry specification. (#3578) - The
go.opentelemetry.io/otel/semconv/v1.16.0package. The package contains semantic conventions from thev1.16.0version 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)Float64ObservableCounterreplaces theasyncfloat64.CounterFloat64ObservableUpDownCounterreplaces theasyncfloat64.UpDownCounterFloat64ObservableGaugereplaces theasyncfloat64.GaugeInt64ObservableCounterreplaces theasyncint64.CounterInt64ObservableUpDownCounterreplaces theasyncint64.UpDownCounterInt64ObservableGaugereplaces theasyncint64.GaugeFloat64Counterreplaces thesyncfloat64.CounterFloat64UpDownCounterreplaces thesyncfloat64.UpDownCounterFloat64Histogramreplaces thesyncfloat64.HistogramInt64Counterreplaces thesyncint64.CounterInt64UpDownCounterreplaces thesyncint64.UpDownCounterInt64Histogramreplaces thesyncint64.Histogram
NewTracerProvidertogo.opentelemetry.io/otel/bridge/opentracing. This is used to createWrapperTracerinstances from aTracerProvider. (#3116)- The
Extrematype 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.0package. The package contains semantic conventions from thev1.17.0version of the OpenTelemetry specification. (#3599)
Changed
- Jaeger and Zipkin exporter use
github.com/go-logr/logras the logging interface, and add theWithLogroption. (#3497, #3500) - Instrument configuration in
go.opentelemetry.io/otel/metric/instrumentis split into specific options and confguration based on the instrument type. (#3507)- Use the added
Int64Optiontype to configure instruments fromgo.opentelemetry.io/otel/metric/instrument/syncint64. - Use the added
Float64Optiontype to configure instruments fromgo.opentelemetry.io/otel/metric/instrument/syncfloat64. - Use the added
Int64ObserverOptiontype to configure instruments fromgo.opentelemetry.io/otel/metric/instrument/asyncint64. - Use the added
Float64ObserverOptiontype to configure instruments fromgo.opentelemetry.io/otel/metric/instrument/asyncfloat64.
- Use the added
- Return a
Registrationfrom theRegisterCallbackmethod of aMeterin thego.opentelemetry.io/otel/metricpackage. ThisRegistrationcan be used to unregister callbacks. (#3522) - Global error handler uses an atomic value instead of a mutex. (#3543)
- Add
NewMetricProducertogo.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
Shutdownmethod of the"go.opentelemetry.io/otel/sdk/trace".TracerProviderreleases all computational resources when called the first time. (#3551) - The
Samplerreturned fromTraceIDRatioBasedgo.opentelemetry.io/otel/sdk/tracenow uses the rightmost bits for sampling decisions. This fixes random sampling when using ID generators likexray.IDGeneratorand increasing parity with other language implementations. (#3557) - Errors from
go.opentelemetry.io/otel/exporters/otlp/otlptraceexporters 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/otlpwill print the final retryable error message when attempts to retry time out. (#3514) - The instrument kind names in
go.opentelemetry.io/otel/sdk/metricare updated to match the API. (#3562)InstrumentKindSyncCounteris renamed toInstrumentKindCounterInstrumentKindSyncUpDownCounteris renamed toInstrumentKindUpDownCounterInstrumentKindSyncHistogramis renamed toInstrumentKindHistogramInstrumentKindAsyncCounteris renamed toInstrumentKindObservableCounterInstrumentKindAsyncUpDownCounteris renamed toInstrumentKindObservableUpDownCounterInstrumentKindAsyncGaugeis renamed toInstrumentKindObservableGauge
- The
RegisterCallbackmethod of theMeteringo.opentelemetry.io/otel/metricchanged.- The named
Callbackreplaces the inline function parameter. (#3564) Callbackis required to return an error. (#3576)Callbackaccepts the addedObserverparameter added. This new parameter is used byCallbackimplementations to observe values for asynchronous instruments instead of calling theObservemethod of the instrument directly. (#3584)- The slice of
instrument.Asynchronousis now passed as a variadic argument. (#3587)
- The named
- The exporter from
go.opentelemetry.io/otel/exporters/zipkinis updated to use thev1.16.0version of semantic conventions. This means it no longer uses the removednet.peer.iporhttp.hostattributes to determine the remote endpoint. Instead it uses thenet.sock.peerattributes. (#3581) - The
MinandMaxfields of theHistogramDataPointingo.opentelemetry.io/otel/sdk/metric/metricdataare now defined with the addedExtrematype 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
RegisterCallbackmethod of theMeterfromgo.opentelemetry.io/otel/sdk/metriconly 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
NewMetricExporteringo.opentelemetry.io/otel/bridge/opencensusis deprecated. UseNewMetricProducerinstead. (#3541) - The
go.opentelemetry.io/otel/metric/instrument/asyncfloat64package is deprecated. Use the instruments fromgo.opentelemetry.io/otel/metric/instrumentinstead. (#3575) - The
go.opentelemetry.io/otel/metric/instrument/asyncint64package is deprecated. Use the instruments fromgo.opentelemetry.io/otel/metric/instrumentinstead. (#3575) - The
go.opentelemetry.io/otel/metric/instrument/syncfloat64package is deprecated. Use the instruments fromgo.opentelemetry.io/otel/metric/instrumentinstead. (#3575) - The
go.opentelemetry.io/otel/metric/instrument/syncint64package is deprecated. Use the instruments fromgo.opentelemetry.io/otel/metric/instrumentinstead. (#3575) - The
NewWrappedTracerProviderin `go.opentelemetry.io/otel/bridge/opentr...
Release v1.11.2/0.34.0
Added
- The
WithViewOptionis added to thego.opentelemetry.io/otel/sdk/metricpackage.
This option is used to configure the view(s) aMeterProviderwill use for allReaders that are registered with it. (#3387) - Add Instrumentation Scope and Version as info metric and label in Prometheus exporter.
This can be disabled using theWithoutScopeInfo()option added to that package.(#3273, #3357) - OTLP exporters now recognize: (#3363)
OTEL_EXPORTER_OTLP_INSECUREOTEL_EXPORTER_OTLP_TRACES_INSECUREOTEL_EXPORTER_OTLP_METRICS_INSECUREOTEL_EXPORTER_OTLP_CLIENT_KEYOTEL_EXPORTER_OTLP_TRACES_CLIENT_KEYOTEL_EXPORTER_OTLP_METRICS_CLIENT_KEYOTEL_EXPORTER_OTLP_CLIENT_CERTIFICATEOTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATEOTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE
- The
Viewtype and relatedNewViewfunction to create a view according to the OpenTelemetry specification are added togo.opentelemetry.io/otel/sdk/metric.
These additions are replacements for theViewtype andNewfunction fromgo.opentelemetry.io/otel/sdk/metric/view. (#3459) - The
InstrumentandInstrumentKindtype are added togo.opentelemetry.io/otel/sdk/metric.
These additions are replacements for theInstrumentandInstrumentKindtypes fromgo.opentelemetry.io/otel/sdk/metric/view. (#3459) - The
Streamtype is added togo.opentelemetry.io/otel/sdk/metricto define a metric data stream a view will produce. (#3459) - The
AssertHasAttributesallows instrument authors to test that datapoints returned have appropriate attributes. (#3487)
Changed
- The
"go.opentelemetry.io/otel/sdk/metric".WithReaderoption no longer accepts views to associate with theReader.
Instead, views are now registered directly with theMeterProvidervia the newWithViewoption.
The views registered with theMeterProviderapply to allReaders. (#3387) - The
Temporality(view.InstrumentKind) metricdata.TemporalityandAggregation(view.InstrumentKind) aggregation.Aggregationmethods are added to the"go.opentelemetry.io/otel/sdk/metric".Exporterinterface. (#3260) - The
Temporality(view.InstrumentKind) metricdata.TemporalityandAggregation(view.InstrumentKind) aggregation.Aggregationmethods are added to the"go.opentelemetry.io/otel/exporters/otlp/otlpmetric".Clientinterface. (#3260) - The
WithTemporalitySelectorandWithAggregationSelectorReaderOptions have been changed toManualReaderOptions in thego.opentelemetry.io/otel/sdk/metricpackage. (#3260) - The periodic reader in the
go.opentelemetry.io/otel/sdk/metricpackage now uses the temporality and aggregation selectors from its configured exporter instead of accepting them as options. (#3260)
Fixed
- The
go.opentelemetry.io/otel/exporters/prometheusexporter fixes duplicated_totalsuffixes. (#3369) - Remove comparable requirement for
Readers. (#3387) - Cumulative metrics from the OpenCensus bridge (
go.opentelemetry.io/otel/bridge/opencensus) are defined as monotonic sums, instead of non-monotonic. (#3389) - Asynchronous counters (
CounterandUpDownCounter) from the metric SDK now produce delta sums when configured with delta temporality. (#3398) - Exported
Statuscodes in thego.opentelemetry.io/otel/exporters/zipkinexporter are now exported as all upper case values. (#3340) Aggregations fromgo.opentelemetry.io/otel/sdk/metricwith no data are not exported. (#3394, #3436)- Reenabled Attribute Filters in the Metric SDK. (#3396)
- Asynchronous callbacks are only called if they are registered with at least one instrument that does not use drop aggragation. (#3408)
- Do not report empty partial-success responses in the
go.opentelemetry.io/otel/exporters/otlpexporters. (#3438, #3432) - Handle partial success responses in
go.opentelemetry.io/otel/exporters/otlp/otlpmetricexporters. (#3162, #3440) - Prevent duplicate Prometheus description, unit, and type. (#3469)
- Prevents panic when using incorrect
attribute.Value.As[Type]Slice(). (#3489)
Removed
- The
go.opentelemetry.io/otel/exporters/otlp/otlpmetric.Clientinterface is removed. (#3486) - The
go.opentelemetry.io/otel/exporters/otlp/otlpmetric.Newfunction is removed. Use theotlpmetric[http|grpc].Newdirectly. (#3486)
Deprecated
- The
go.opentelemetry.io/otel/sdk/metric/viewpackage is deprecated.
UseInstrument,InstrumentKind,View, andNewViewingo.opentelemetry.io/otel/sdk/metricinstead. (#3476)
Release v1.11.1/v0.33.0
Added
- The Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheusregisters with a Prometheus registerer on creation. By default, it will register with the default Prometheus default registerer. A non-default registerer can be used by passing theWithRegistereroption. (#3239) - Added the
WithAggregationSelectoroption to thego.opentelemetry.io/otel/exporters/prometheuspackage to change the defaultAggregationSelectorused. (#3341) - The Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheusconverts theResourceassociated with metric exports into atarget_infometric. (#3285)
Changed
- The
"go.opentelemetry.io/otel/exporters/prometheus".Newfunction is updated to return an error. It will return an error if the exporter fails to register with Prometheus. (#3239)
Fixed
- The URL-encoded values from the
OTEL_RESOURCE_ATTRIBUTESenvironment variable are decoded. (#2963) - The
baggage.NewMemberfunction decodes thevalueparameter instead of directly using it. This fixes the implementation to be compliant with the W3C specification. (#3226) - Slice attributes of the
attributepackage are now comparable based on their value, not instance. (#3108 #3252) - The
ShutdownandForceFlushmethods of the"go.opentelemetry.io/otel/sdk/trace".TraceProviderno longer return an error when no processor is registered. (#3268) - The Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheuscumulatively sums histogram buckets. (#3281) - The sum of each histogram data point is now uniquely exported by the
go.opentelemetry.io/otel/exporters/otlpmetricexporters. (#3284, #3293) - Recorded values for asynchronous counters (
CounterandUpDownCounter) are interpreted as exact, not incremental, sum values by the metric SDK. (#3350, #3278) UpDownCountersare now correctly output as Prometheus gauges in thego.opentelemetry.io/otel/exporters/prometheusexporter. (#3358)- The Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheusno longer describes the metrics it will send to Prometheus on startup. Instead the exporter is defined as an "unchecked" collector for Prometheus. This fixes thereader is not registeredwarning currently emitted on startup. (#3291 #3342) - The
go.opentelemetry.io/otel/exporters/prometheusexporter now correctly adds_totalsuffixes to counter metrics. (#3360) - The
go.opentelemetry.io/otel/exporters/prometheusexporter now adds a unit suffix to metric names. This can be disabled using theWithoutUnits()option added to that package. (#3352)
Release v1.11.0/v0.32.3
Retracts the v0.32.2 version of go.opentelemetry.io/otel/exporters/otlpmetric/otlpmetricgrpc and go.opentelemetry.io/otel/exporters/otlpmetric/otlpmetrichttp given they include unresolvable dependencies.
Added
- Add default User-Agent header to OTLP exporter requests (
go.opentelemetry.io/otel/exporters/otlptrace/otlptracegrpcandgo.opentelemetry.io/otel/exporters/otlptrace/otlptracehttp). (#3261)
Changed
span.SetStatushas been updated such that calls that lower the status are now no-ops. (#3214)- Upgrade
golang.org/x/sys/unixfromv0.0.0-20210423185535-09eb48e85fd7tov0.0.0-20220919091848-fb04ddd9f9c8.
This addresses GO-2022-0493. (#3235)