Releases: open-telemetry/opentelemetry-go
Releases · open-telemetry/opentelemetry-go
Release v1.11.1/v0.33.0
Added
- The Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheus
registers 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 theWithRegisterer
option. (#3239) - Added the
WithAggregationSelector
option to thego.opentelemetry.io/otel/exporters/prometheus
package to change the defaultAggregationSelector
used. (#3341) - The Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheus
converts theResource
associated with metric exports into atarget_info
metric. (#3285)
Changed
- The
"go.opentelemetry.io/otel/exporters/prometheus".New
function 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_ATTRIBUTES
environment variable are decoded. (#2963) - The
baggage.NewMember
function decodes thevalue
parameter instead of directly using it. This fixes the implementation to be compliant with the W3C specification. (#3226) - Slice attributes of the
attribute
package are now comparable based on their value, not instance. (#3108 #3252) - The
Shutdown
andForceFlush
methods of the"go.opentelemetry.io/otel/sdk/trace".TraceProvider
no longer return an error when no processor is registered. (#3268) - The Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheus
cumulatively sums histogram buckets. (#3281) - The sum of each histogram data point is now uniquely exported by the
go.opentelemetry.io/otel/exporters/otlpmetric
exporters. (#3284, #3293) - Recorded values for asynchronous counters (
Counter
andUpDownCounter
) are interpreted as exact, not incremental, sum values by the metric SDK. (#3350, #3278) UpDownCounters
are now correctly output as Prometheus gauges in thego.opentelemetry.io/otel/exporters/prometheus
exporter. (#3358)- The Prometheus exporter in
go.opentelemetry.io/otel/exporters/prometheus
no 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 registered
warning currently emitted on startup. (#3291 #3342) - The
go.opentelemetry.io/otel/exporters/prometheus
exporter now correctly adds_total
suffixes to counter metrics. (#3360) - The
go.opentelemetry.io/otel/exporters/prometheus
exporter 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/otlptracegrpc
andgo.opentelemetry.io/otel/exporters/otlptrace/otlptracehttp
). (#3261)
Changed
span.SetStatus
has been updated such that calls that lower the status are now no-ops. (#3214)- Upgrade
golang.org/x/sys/unix
fromv0.0.0-20210423185535-09eb48e85fd7
tov0.0.0-20220919091848-fb04ddd9f9c8
.
This addresses GO-2022-0493. (#3235)
Release v0.32.2 -- Metric SDK (Alpha)
Added
- Added an example of using metric views to customize instruments. (#3177)
- Add default User-Agent header to OTLP exporter requests (
go.opentelemetry.io/otel/exporters/otlpmetric/otlpmetricgrpc
andgo.opentelemetry.io/otel/exporters/otlpmetric/otlpmetrichttp
). (#3261)
Changed
- Flush pending measurements with the
PeriodicReader
in thego.opentelemetry.io/otel/sdk/metric
whenForceFlush
orShutdown
are called. (#3220) - Update histogram default bounds to match the requirements of the latest specification. (#3222)
Fixed
- Use default view if instrument does not match any registered view of a reader. (#3224, #3237)
- Return the same instrument every time a user makes the exact same instrument creation call. (#3229, #3251)
- Return the existing instrument when a view transforms a creation call to match an existing instrument. (#3240, #3251)
- Log a warning when a conflicting instrument (e.g. description, unit, data-type) is created instead of returning an error. (#3251)
- The OpenCensus bridge no longer sends empty batches of metrics. (#3263)
Release v0.32.1 -- Metric SDK (Alpha)
Changed
- The Prometheus exporter sanitizes OpenTelemetry instrument names when exporting. Invalid characters are replaced with
_
. (#3212)
Added
- The metric portion of the OpenCensus bridge (
go.opentelemetry.io/otel/bridge/opencensus
) has been reintroduced. (#3192) - The OpenCensus bridge example (
go.opentelemetry.io/otel/example/opencensus
) has been reintroduced. (#3206)
Fixed
Release v0.32.0 -- Metric SDK (Alpha)
Changed
- The metric SDK in
go.opentelemetry.io/otel/sdk/metric
is completely refactored to comply with the OpenTelemetry specification. Please see the package documentation for how the new SDK is initialized and configured. (#3175)
Removed
- The metric portion of the OpenCensus bridge (
go.opentelemetry.io/otel/bridge/opencensus
) has been removed. A new bridge compliant with the revised metric SDK will be added back in a future release. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/aggregator/aggregatortest
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/aggregator/histogram
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/aggregator/lastvalue
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/aggregator/sum
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/aggregator
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/controller/basic
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/controller/controllertest
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/controller/time
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/export/aggregation
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/export
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/metrictest
package is removed. A replacement package that supports the new metric SDK will be added back in a future release. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/number
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/processor/basic
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/processor/processortest
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/processor/reducer
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/registry
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/sdkapi
package is removed, see the new metric SDK. (#3175) - The
go.opentelemetry.io/otel/sdk/metric/selector/simple
package is removed, see the new metric SDK. (#3175) - The
"go.opentelemetry.io/otel/sdk/metric".ErrUninitializedInstrument
variable was removed. (#3175) - The
"go.opentelemetry.io/otel/sdk/metric".ErrBadInstrument
variable was removed. (#3175) - The
"go.opentelemetry.io/otel/sdk/metric".Accumulator
type was removed, see theMeterProvider
in the new metric SDK. (#3175) - The
"go.opentelemetry.io/otel/sdk/metric".NewAccumulator
function was removed, seeNewMeterProvider
in the new metric SDK. (#3175) - The deprecated
"go.opentelemetry.io/otel/sdk/metric".AtomicFieldOffsets
function was removed. (#3175)
Release v1.10.0
Added
- Support Go 1.19. (#3077)
Include compatibility testing and document support. (#3077) - Support the OTLP ExportTracePartialSuccess response; these are passed to the registered error handler. (#3106)
- Upgrade go.opentelemetry.io/proto/otlp from v0.18.0 to v0.19.0 (#3107)
Changed
- Fix misidentification of OpenTelemetry
SpanKind
in OpenTracing bridge (go.opentelemetry.io/otel/bridge/opentracing
). (#3096) - Attempting to start a span with a nil
context
will no longer cause a panic. (#3110) - All exporters will be shutdown even if one reports an error (#3091)
- Ensure valid UTF-8 when truncating over-length attribute values. (#3156)
Release v1.9.0/v0.0.3
Added
- Add support for Schema Files format 1.1.x (metric "split" transform) with the new
go.opentelemetry.io/otel/schema/v1.1
package. (#2999) - Add the
go.opentelemetry.io/otel/semconv/v1.11.0
package.
The package contains semantic conventions from thev1.11.0
version of the OpenTelemetry specification. (#3009) - Add the
go.opentelemetry.io/otel/semconv/v1.12.0
package.
The package contains semantic conventions from thev1.12.0
version of the OpenTelemetry specification. (#3010) - Add the
http.method
attribute to HTTP server metric from allgo.opentelemetry.io/otel/semconv/*
packages. (#3018)
Fixed
- Invalid warning for context setup being deferred in
go.opentelemetry.io/otel/bridge/opentracing
package. (#3029)
Release v1.8.0/v0.31.0
1.8.0/0.31.0 - 2022-07-08
Added
- Add support for
opentracing.TextMap
format in theInject
andExtract
methods
of the"go.opentelemetry.io/otel/bridge/opentracing".BridgeTracer
type. (#2911)
Changed
- The
crosslink
make target has been updated to use thego.opentelemetry.io/build-tools/crosslink
package. (#2886) - In the
go.opentelemetry.io/otel/sdk/instrumentation
package renameLibrary
toScope
and aliasLibrary
asScope
(#2976) - Move metric no-op implementation form
nonrecording
tometric
package. (#2866)
Removed
- Support for go1.16. Support is now only for go1.17 and go1.18 (#2917)
Deprecated
- The
Library
struct in thego.opentelemetry.io/otel/sdk/instrumentation
package is deprecated.
Use the equivalentScope
struct instead. (#2977) - The
ReadOnlySpan.InstrumentationLibrary
method from thego.opentelemetry.io/otel/sdk/trace
package is deprecated.
Use the equivalentReadOnlySpan.InstrumentationScope
method instead. (#2977)
Release v1.7.0/v0.30.0
Added
- Add the
go.opentelemetry.io/otel/semconv/v1.8.0
package.
The package contains semantic conventions from thev1.8.0
version of the OpenTelemetry specification. (#2763) - Add the
go.opentelemetry.io/otel/semconv/v1.9.0
package.
The package contains semantic conventions from thev1.9.0
version of the OpenTelemetry specification. (#2792) - Add the
go.opentelemetry.io/otel/semconv/v1.10.0
package.
The package contains semantic conventions from thev1.10.0
version of the OpenTelemetry specification. (#2842) - Added an in-memory exporter to metrictest to aid testing with a full SDK. (#2776)
Fixed
- Globally delegated instruments are unwrapped before delegating asynchronous callbacks. (#2784)
- Remove import of
testing
package in non-tests builds of thego.opentelemetry.io/otel
package. (#2786)
Changed
- The
WithLabelEncoder
option from thego.opentelemetry.io/otel/exporters/stdout/stdoutmetric
package is renamed toWithAttributeEncoder
. (#2790) - The
LabelFilterSelector
interface fromgo.opentelemetry.io/otel/sdk/metric/processor/reducer
is renamed toAttributeFilterSelector
.
The method included in the renamed interface also changed fromLabelFilterFor
toAttributeFilterFor
. (#2790) - The
Metadata.Labels
method from thego.opentelemetry.io/otel/sdk/metric/export
package is renamed toMetadata.Attributes
.
Consequentially, theRecord
type from the same package also has had the embedded method renamed. (#2790)
Deprecated
- The
Iterator.Label
method in thego.opentelemetry.io/otel/attribute
package is deprecated.
Use the equivalentIterator.Attribute
method instead. (#2790) - The
Iterator.IndexedLabel
method in thego.opentelemetry.io/otel/attribute
package is deprecated.
Use the equivalentIterator.IndexedAttribute
method instead. (#2790) - The
MergeIterator.Label
method in thego.opentelemetry.io/otel/attribute
package is deprecated.
Use the equivalentMergeIterator.Attribute
method instead. (#2790)
Removed
Release metric/v0.29.0
0.29.0 - 2022-04-11
Added
- The metrics global package was added back into several test files. (#2764)
- The
Meter
function is added back to thego.opentelemetry.io/otel/metric/global
package.
This function is a convenience function equivalent to callingglobal.MeterProvider().Meter(...)
. (#2750)
Removed
- Removed module the
go.opentelemetry.io/otel/sdk/export/metric
.
Use thego.opentelemetry.io/otel/sdk/metric
module instead. (#2720)
Changed
- Don't panic anymore when setting a global MeterProvider to itself. (#2749)
- Upgrade
go.opentelemetry.io/proto/otlp
ingo.opentelemetry.io/otel/exporters/otlp/otlpmetric
fromv0.12.1
tov0.15.0
.
This replaces the use of the now deprecatedInstrumentationLibrary
andInstrumentationLibraryMetrics
types and fields in the proto library with the equivalentInstrumentationScope
andScopeMetrics
. (#2748)