OpenTelemetry - CNCF/opentelemetry-go: Release v0.3.0

Name: opentelemetry-go

Owner: OpenTelemetry - CNCF

Release: Release v0.3.0

Released: 2020-03-21

License: Apache-2.0

Release Assets:

This is a first official beta release, which provides almost fully complete metrics, tracing, and context propagation functionality. There is still a possibility of breaking changes.

Added

  • Add Observer metric instrument. (#474)
  • Add global Propagators functionality to enable deferred initialization for propagators registered before the first Meter SDK is installed. (#494)
  • Simplified export setup pipeline for the jaeger exporter to match other exporters. (#459)
  • The zipkin trace exporter. (#495)
  • The OTLP exporter to export metric and trace telemetry to the OpenTelemetry collector. (#497) (#544) (#545)
  • The StatusMessage field was add to the trace Span. (#524)
  • Context propagation in OpenTracing bridge in terms of OpenTelemetry context propagation. (#525)
  • The Resource type was added to the SDK. (#528)
  • The global API now supports a Tracer and Meter function as shortcuts to getting a global *Provider and calling these methods directly. (#538)
  • The metric API now defines a generic MeterImpl interface to support general purpose Meter construction. Additionally, SyncImpl and AsyncImpl are added to support general purpose instrument construction. (#560)
  • A metric Kind is added to represent the MeasureKind, ObserverKind, and CounterKind. (#560)
  • Scripts to better automate the release process. (#576)

Changed

  • Default to to use AlwaysSampler instead of ProbabilitySampler to match OpenTelemetry specification. (#506)
  • Renamed AlwaysSampleSampler to AlwaysOnSampler in the trace API. (#511)
  • Renamed NeverSampleSampler to AlwaysOffSampler in the trace API. (#511)
  • The Status field of the Span was changed to StatusCode to disambiguate with the added StatusMessage. (#524)
  • Updated the trace Sampler interface conform to the OpenTelemetry specification. (#531)
  • Rename metric API Options to Config. (#541)
  • Rename metric Counter aggregator to be Sum. (#541)
  • Unify metric options into Option from instrument specific options. (#541)
  • The trace API's TraceProvider now support Resources. (#545)
  • Correct error in zipkin module name. (#548)
  • The jaeger trace exporter now supports Resources. (#551)
  • Metric SDK now supports Resources. The WithResource option was added to configure a Resource on creation and the Resource method was added to the metric Descriptor to return the associated Resource. (#552)
  • Replace ErrNoLastValue and ErrEmptyDataSet by ErrNoData in the metric SDK. (#557)
  • The stdout trace exporter now supports Resources. (#558)
  • The metric Descriptor is now included at the API instead of the SDK. (#560)
  • Replace Ordered with an iterator in export.Labels. (#567)

Removed

  • The vendor specific Stackdriver. It is now hosted on 3rd party vendor infrastructure. (#452)
  • The Unregister method for metric observers as it is not in the OpenTelemetry specification. (#560)
  • GetDescriptor from the metric SDK. (#575)
  • The Gauge instrument from the metric API. (#537)

Fixed

  • Make histogram aggregator checkpoint consistent. (#438)
  • Update README with import instructions and how to build and test. (#505)
  • The default label encoding was updated to be unique. (#508)
  • Use NewRoot in the othttp plugin for public endpoints. (#513)
  • Fix data race in BatchedSpanProcessor. (#518)
  • Skip test-386 for Mac OS 10.15.x (Catalina and upwards). #521
  • Use a variable-size array to represent ordered labels in maps. (#523)
  • Update the OTLP protobuf and update changed import path. (#532)
  • Use StateLocker implementation in MinMaxSumCount. (#546)
  • Eliminate goroutine leak in histogram stress test. (#547)
  • Update OTLP exporter with latest protobuf. (#550)
  • Add filters to the othttp plugin. (#556)
  • Provide an implementation of the Header* filters that do not depend on Go 1.14. (#565)
  • Encode labels once during checkpoint. The checkpoint function is executed in a single thread so we can do the encoding lazily before passing the encoded version of labels to the exporter. This is a cheap and quick way to avoid encoding the labels on every collection interval. (#572)
  • Run coverage over all packages in COVERAGE_MOD_DIR. (#573)

Changes since v0.2.3

a1c243965e9985555a40f3df50475b8e078fb1e0 Prepare for releasing v0.3.0 (#578) a15e507b2ec10eab06a9181be420b7b50da99246 Scripts for releasing. (#576) 7623fc544a8db03860760dab7c9a832c0ec09ce9 Remove GetDescriptor (#575) c95360fc068594ac113400de10763f3e9a833b80 Run coverage over all packages beneath COVERAGE_MOD_DIR (#573) cc756f6a8d56b72e81b28b409d6b45ed157ab46d Encode labels once during checkpoint (#572) f7df68b68bddf90e76a06c6e650ee16c92bcbf28 Add support for Resources in the SDK (#552) a01f63bec42d3c8ca0a278739fe5b5770879cf39 Replace Ordered with an iterator in export.Labels. (#567) d8682c199942b011759cba287f89b9f05b69f0d7 Refactor the SDK helpers, create MeterImpl (#560) e0406dd3eb7aa826aba19287e8a14ca016bf8578 Provide an implementation of the Header* filters that does not depend on go1.14 (#565) 80b720a7714a48b65842b87f928f30da0f4d906f update stdout trace with resource. (#558) 435c39aab4b5ef925374c1f22bc1c3125d649e79 Update OTLP exporter with latest proto (#550) 74a528520b786ba153e8cbea8c6dd0a0ce7ab6dc update jaeger exporter to translate resources to tags. (#551) 2ef25ea5708fa2584c522986ee291419dcc64a0d Add filters for othttp plugin (#556) 217a97d9b6ef84b2b24984f948c752cc3b249e4a Replace ErrNoLastValue and ErrEmptyDataSet by ErrNoData (#557) 6ada85adbabf097d11de10b8bb1f5675f3d1ade3 (resource_zipkin, go_114) add resource option to Provider. (#545) 638b865c907fc0f5fe8b06fc037bc5467d6343cc Update Sampler descriptions (#511) cba1664b46f70568c4bb7eb00c4c23aa68d3bb32 Add metrics support to the OTLP exporter (#544) fcc4aca8c78d0ef20bc756f89680acf9eee616c9 Fix typo in module name (#548) 86807837502f529b58491dcc83e7c26c937f4169 Use StateLocker in MinMaxSumCount (#546) 46ac03036008811b003400f10ab47352afcd4b32 Eliminate goroutine leak in histogram stress test (#547) 2ccddfe82aebc9b427b78262ab59331a6a206cdc Update README with import instructions and how to build / test (#505) 23e65ac79d35c7559904ed84d4cb7ecea50f10ef Remove metric options; rename "counter" aggregator to "sum" (#541) d9210f567639d6b7d826b1b1694985192aa7fd6c Zipkin exporter (#495) 4047c0877ad5995a699493453b8338f020e446fe Introduce metric constructor errors, MeterMust wrapper (#529) 288821cd22b2e5d587d034ad98b80dc6bd55ded4 Make histogram aggregator checkpoint consistent (#438) ae9033e01f603eeaa692694cfebe7fbae6150c7c Use a variable-size array to represent ordered labels in maps (#523) 85751428a3dd5ff2fdc1959bab0251e1dbe9a2e8 add shorter version for global providers (#538) 9674c81cb7ae48d990c8d951dc64cb8e088529f0 Drop the gauge instrument (#537) fe0099fb3d961e48899357caa30ecd0bed327791 [tracing] add simplified export pipeline setup for Jaeger (#459) 8cddf30cb271465b13ed7b309f9ae08cd0fea819 Context propagation in opentracing bridge (#525) 7a1cbbc1910e84b250aaf3a5b8f0dc6780a449cb Update Samplers to conform to Spec (#531) af5428829bf7ef411c71bfcd6e59f63b97e21768 Update OTLP protos, fix imports (#532) 1ff0f2a26a1a73114aa786b43e4db61c4f8beb59 add resource type. (#528) 3bf3927eb55df9cbbbc32a33f01058037be7b67b Add status message parameter (#524) 58502781977c5ec10cfb4cf32b779ac770f21f69 opentelemetry collector trace exporter (#497) 9459629d213a634f43399f70589677e215ba3739 Remove the StackDriver trace exporter (#452) 43db6ec76f363192eddd75bdca8fce75a3ad286f Propose putting isobel to emeritus :( (#526) 79de90a31305151698d8136ae2848b1c01371160 fix data race in BatchedSpanProcessor (#518) 161556aab8b24d578724f3386631ccef0f1a1906 Update provider to use AlwaysSampler instead of ProbabilitySampler (#506) 20ecc389196c92cefcebaa713e852c2058a7ce78 skip test-386 for Mac OS 10.15.x (Catalina and upwards). (#521) a202f161005bf092fd23265b1577e7f8fee155d2 Add observer metric (#474) 547d584da87ce7e004941d72a0a165dad92db59d Add global propagators (#494) 6769330394f78192df01cb59299e9e0f2e5e977b use NewRoot() standard code. (#513) 148c9ce5baf8195cd6d07cb018ced34ae25895a5 Make the default label encoding unique (#508)

To top