Releases: open-telemetry/opentelemetry-go
Release v0.2.2
Added
HTTPSupplier
interface in the propagation API to specify methods to retrieve and store a single value for a key to be associated with a carrier. (#467)HTTPExtractor
interface in the propagation API to extract information from anHTTPSupplier
into a context. (#467)HTTPInjector
interface in the propagation API to inject information into anHTTPSupplier.
(#467)Config
and configuringOption
to the propagator API. (#467)Propagators
interface in the propagation API to contain the set of injectors and extractors for all supported carrier formats. (#467)HTTPPropagator
interface in the propagation API to inject and extract from anHTTPSupplier.
(#467)WithInjectors
andWithExtractors
functions to the propagator API to configure injectors and extractors to use. (#467)ExtractHTTP
andInjectHTTP
functions to apply configured HTTP extractors and injectors to a passed context. (#467)- Histogram aggregator. (#433)
DefaultPropagator
function and have it returntrace.TraceContext
as the default context propagator. (#456)AlwaysParentSample
sampler to the trace API. (#455)WithNewRoot
option function to the trace API to specify the created span should be considered a root span. (#451)
Changed
- Renamed
WithMap
toContextWithMap
in the correlation package. (#481) - Renamed
FromContext
toMapFromContext
in the correlation package. (#481) - Move correlation context propagation to correlation package. (#479)
- Do not default to putting remote span context into links. (#480)
- Propagators extrac
Tracer.WithSpan
updated to acceptStartOptions
. (#472)- Renamed
MetricKind
toKind
to not stutter in the type usage. (#432) - Renamed the
export
package tometric
to match directory structure. (#432) - Rename the
api/distributedcontext
package toapi/correlation
. (#444) - Rename the
api/propagators
package toapi/propagation
. (#444) - Move the propagators from the
propagators
package into thetrace
API package. (#444) - Update
Float64Gauge
,Int64Gauge
,Float64Counter
,Int64Counter
,Float64Measure
, andInt64Measure
metric methods to use value receivers instead of pointers. (#462) - Moved all dependencies of tools package to a tools directory. (#466)
Removed
Fixed
- Upgraded
github.com/golangci/golangci-lint
fromv1.21.0
tov1.23.6
intools/
. (#492) - Fix a possible nil-dereference crash (#478)
- Correct comments for
InstallNewPipeline
in the stdout exporter. (#483) - Correct comments for
InstallNewPipeline
in the dogstatsd exporter. (#484) - Correct comments for
InstallNewPipeline
in the prometheus exporter. (#482) - Initialize
onError
based onConfig
in prometheus exporter. (#486) - Correct module name in prometheus exporter README. (#475)
- Removed tracer name prefix from span names. (#430)
- Fix
aggregator_test.go
import package comment. (#431) - Improved detail in stdout exporter. (#436)
- Fix a dependency issue (generate target should depend on stringer, not lint target) in Makefile. (#442)
- Reorders the Makefile targets within
precommit
target so we generate files and build the code before doing linting, so we can get much nicer errors about syntax errors from the compiler. (#442) - Reword function documentation in gRPC plugin. (#446)
- Send the
span.kind
tag to Jaeger from the jaeger exporter. (#441) - Fix
metadataSupplier
in the jaeger exporter to overwrite the header if existing instead of appending to it. (#441) - Upgraded to Go 1.13 in CI. (#465)
- Correct opentelemetry.io URL in trace SDK documentation. (#464)
- Refactored reference counting logic in SDK determination of stale records. (#468)
- Add call to
runtime.Gosched
in instrumentacquireHandle
logic to not block the collector. (#469)
Changes since v0.2.1.1
8ebc7bb Name context functions consistently (#481)
a6b8058 Update tools (#492)
29cd0c0 Fix a possible nil-dereference crash (#478)
6b97bb0 Move correlation context propagation to correlation package (#479)
bfe569d exporter/metric/stdout: fix incorrect code format comments for InstallNewPipeline (#483)
bd74f31 exporter/metric/dogstatsd: fix incorrect code format comments for InstallNewPipeline (#484)
f9a5484 exporter/metric/prometheus: fix incorrect code format comments for InstallNewPipeline (#482)
84d0a2a prometheus exporter initialize on error based on config (#486)
f99337f Do not always put remote span context into links (#480)
cf7a4d9 Refactor propagators (#467)
c397451 exporter/metric/prometheus: fix wrong module in README.md (#475)
f0c70ff Add StartOptions to Tracer.WithSpan() (#472)
0f1771f Add @MrAlias as an approver (#471)
2584c3e Call Gosched if load an unmapped record (#469)
69df67d Refactor metric records logic (#468)
4818358 Move dependencies of tools package to a tools directory (#466)
cab6b28 Fix URL to opentelemetry.io (#464)
5d6654d Use latest version of golang 1.13 in CI (#465)
493e13f Update metric types to not use pointer receivers (#462)
942713a Replace span relationship with a potentially remote parent context (#451)
574463c Allow dropping items from correlations + docs + cleanups (#454)
6051c81 Add AlwaysParentSample sampler (#455)
32489dd make trace.TraceContext as default context propagator (#456)
8fcdf8b Send span.kind to jaeger and overwrite grpc metadata instead of using append (#441)
405a92a Misc fixes from PR 381 (#443)
6b4acf4 Reorganize propagation code (shrink PR 381) (#444)
437d9af Reword some function documentation in grpc plugin (#446)
7200bb9 finish adding krnowak to approvers (#445)
0278559 Some makefile fixes (#442)
20bb650 Improve detail in stdout exporter (#436)
2c460f0 Adds Histogram Aggregator (#433)
dcd0a10 Rename the sdk/export/metric package name (#432)
3a32a19 fix aggregator.go import package (#431)
2d5ba32 Remove Tracer name prefix for Span names (#430)
v0.2.1.1
Release v0.2.1
Added
- Global meter forwarding implementation.
This enables deferred initialization for metric instruments registered before the first Meter SDK is installed. (#392) - Global trace forwarding implementation.
This enables deferred initialization for tracers registered before the first Trace SDK is installed. (#406) - Standardize export pipeline creation in all exporters. (#395)
- A testing, organization, and comments for 64-bit field alignment. (#418)
- Script to tag all modules in the project. (#414)
Changed
- Renamed
propagation
package topropagators
. (#362) - Renamed
B3Propagator
propagator toB3
. (#362) - Renamed
TextFormatPropagator
propagator toTextFormat
. (#362) - Renamed
BinaryPropagator
propagator toBinary
. (#362) - Renamed
BinaryFormatPropagator
propagator toBinaryFormat
. (#362) - Renamed
NoopTextFormatPropagator
propagator toNoopTextFormat
. (#362) - Renamed
TraceContextPropagator
propagator toTraceContext
. (#362) - Renamed
SpanOption
toStartOption
in the trace API. (#369) - Renamed
StartOptions
toStartConfig
in the trace API. (#369) - Renamed
EndOptions
toEndConfig
in the trace API. (#369) Number
now has a pointer receiver for its methods. (#375)- Renamed
CurrentSpan
toSpanFromContext
in the trace API. (#379) - Renamed
SetCurrentSpan
toContextWithSpan
in the trace API. (#379) - Renamed
Message
in Event toName
in the trace API. (#389) - Prometheus exporter no longer aggregates metrics, instead it only exports them. (#385)
- Renamed
HandleImpl
toBoundInstrumentImpl
in the metric API. (#400) - Renamed
Float64CounterHandle
toFloat64CounterBoundInstrument
in the metric API. (#400) - Renamed
Int64CounterHandle
toInt64CounterBoundInstrument
in the metric API. (#400) - Renamed
Float64GaugeHandle
toFloat64GaugeBoundInstrument
in the metric API. (#400) - Renamed
Int64GaugeHandle
toInt64GaugeBoundInstrument
in the metric API. (#400) - Renamed
Float64MeasureHandle
toFloat64MeasureBoundInstrument
in the metric API. (#400) - Renamed
Int64MeasureHandle
toInt64MeasureBoundInstrument
in the metric API. (#400) - Renamed
Release
method for bound instruments in the metric API toUnbind
. (#400) - Renamed
AcquireHandle
method for bound instruments in the metric API toBind
. (#400) - Renamed the
File
option in the stdout exporter toWriter
. (#404) - Renamed all
Options
toConfig
for all metric exports where this wasn't already the case.
Fixed
- Aggregator import path corrected. (#421)
- Correct links in README. (#368)
- The README was updated to match latest code changes in its examples. (#374)
- Don't capitalize error statements. (#375)
- Fix ignored errors. (#375)
- Fix ambiguous variable naming. (#375)
- Removed unnecessary type casting. (#375)
- Use named parameters. (#375)
- Updated release schedule. (#378)
- Correct http-stackdriver example module name. (#394)
- Removed the
http.request
span inhttptrace
package. (#397) - Add comments in the metrics SDK (#399)
- Initialize checkpoint when creating ddsketch aggregator to prevent panic when merging into a empty one. (#402) (#403)
- Add documentation of compatible exporters in the README. (#405)
- Typo fix. (#408)
- Simplify span check logic in SDK tracer implementation. (#419)
Release v0.2.0
Added
Changed
- Rename
MaxSumCount
aggregation toMinMaxSumCount
and add theMin
interface for this aggregation. (#352) - Rename
GetMeter
toMeter
. (#357) - Rename
HTTPTraceContextPropagator
toTraceContextPropagator
. (#355) - Rename
HTTPB3Propagator
toB3Propagator
. (#355) - Rename
HTTPTraceContextPropagator
toTraceContextPropagator
. (#355) - Move
/global
package to/api/global
. (#356) - Rename
GetTracer
toTracer
. (#347)
Removed
SetAttribute
from theSpan
interface in the trace API. (#361)AddLink
from theSpan
interface in the trace API. (#349)Link
from theSpan
interface in the trace API. (#349)
Fixed
- Exclude example directories from coverage report. (#365)
- Lint make target now implements automatic fixes with
golangci-lint
before a second run to report the remaining issues. (#360) - Drop
GO111MODULE
environment variable in Makefile as Go 1.13 is the project specified minimum version and this is environment variable is not needed for that version of Go. (#359) - Run the race checker for all test. (#354)
- Redundant commands in the Makefile are removed. (#354)
- Split the
generate
andlint
targets of the Makefile. (#354) - Renames
circle-ci
target to more genericci
in Makefile. (#354) - Add example Prometheus binary to gitignore. (#358)
- Support negative numbers with the
MaxSumCount
. (#335) - Resolve race conditions in
push_test.go
identified in #339. (#340) - Use
/usr/bin/env bash
as a shebang in scripts rather than/bin/bash
. (#336) - Trace benchmark now tests both
AlwaysSample
andNeverSample
.
Previously it was testingAlwaysSample
twice. (#325) - Trace benchmark now uses a
[]byte
forTraceID
to fix failing test. (#325) - Added a trace benchmark to test variadic functions in
setAttribute
vssetAttributes
(#325) - The
defaultkeys
batcher was only using the encoded label set as its map key while building a checkpoint.
This allowed distinct label sets through, but any metrics sharing a label set could be overwritten or merged incorrectly.
This was corrected. (#333)
Changes since v0.1.2
d35ea75 go module update for release v0.2.0 (#366)
f0eb35b exclude example dirs from coverage test/report. (#365)
eb9fe13 Drop SetAttribute from Span (#361)
f25c84f Fix lint target (#360)
921ea03 Drop GO111MODULE environment variable (#359)
e6d7256 Simplify Makefile (#354)
77543cd Unary gRPC tracing example (#351)
fef504d Add Min() interface - rename MaxSumCount to MinMaxSumCount (#352)
5ec1f5c Add example prometheus binary to gitignore (#358)
a99f872 Span interface should only allow LinkedTo at creation. (#349)
3d78564 Prometheus exporter (#334)
1b08d82 Rename GetMeter() to Meter() (#357)
5f776db Remove "HTTP" from propagator names (#355)
13cd2ac move /global to /api/global (#356)
9a2484c Implement support for NonAbsolute Measurement MaxSumCount (#335)
0f052af Rename GetTracer to Tracer (#347)
059ca3e Removing pjanotti from owners (#342)
799a418 Fix race conditions in push_test.go (#340)
b9706b2 Dogstatsd metrics exporter (#326)
6b63281 Use /usr/bin/env bash rather than /bin/bash (#336)
2c437c9 fix benchmark error, with always/never sample and add benchmark setAttribute vs setAttributes (#325)
dfae2ac Fix the defaultkeys metrics batcher (#333)
Release v0.1.2
Fixed
- Optimized the
simplelru
map for attributes to reduce the number of allocations. (#328) - Removed unnecessary unslicing of parameters that are already a slice. (#324)
Changes since v0.1.1
9d1a0d5 go module update for release v0.1.2 (#330)
3495d74 specialize simplelru(span's lruMap) for attributes only (#328)
eb3b31e Unslice to simplify (#324)
Release v0.1.1
This release contains a Metrics SDK with stdout exporter and supports basic aggregations such as counter, gauges, array, maxsumcount, and ddsketch.
Added
- Metrics stdout export pipeline. (#265)
- Array aggregation for raw measure metrics. (#282)
- The core.Value now have a
MarshalJSON
method. (#281)
Removed
WithService
,WithResources
, andWithComponent
methods of tracers. (#314)- Prefix slash in
Tracer.Start()
for the Jaeger example. (#292)
Changed
- Allocation in LabelSet construction to reduce GC overhead. (#318)
trace.WithAttributes
to append values instead of replacing (#315)- Use a formula for tolerance in sampling tests. (#298)
- Move export types into trace and metric-specific sub-directories. (#289)
SpanKind
back to being based on anint
type. (#288)
Fixed
- URL to OpenTelemetry website in README. (#323)
- Name of othttp default tracer. (#321)
ExportSpans
for the stackdriver exporter now handlesnil
context. (#294)- CI modules cache to correctly restore/save from/to the cache. (#316)
- Fix metric SDK race condition between
LoadOrStore
and the assignmentrec.recorder = i.meter.exporter.AggregatorFor(rec)
. (#293) - README now reflects the new code structure introduced with these changes. (#291)
- Make the basic example work. (#279)
Changes since v0.1.0
90ba74e Fix url to website in readme (#323)
9878f3b Metrics stdout export pipeline (#265)
c3d5b7b remove empty package (#322)
64eaee8 fix typo in othttp handler (#321)
ee87858 Avoid one memory allocation in LabelSet construction (#318)
9d19d82 Clear NoopTracer implementation and improve Tracer argument names (#314)
1fd93b2 change trace.WithAttributes to append values instead of replacing (#315)
a228baf exporter(stackdriver): fix ExportSpans when ctx is not nil (#294)
f403198 propose additional CODEOWNERS (#313)
b6ada23 Fix CI modules cache (#316)
2950978 Remove myself from CODEOWNERS (#308)
769a03a Use a formula for tolerance in sampling tests (#298)
2546646 Fix metric SDK race condition (#293)
68bd627 Move export types into trace and metric-specific subdirs (#289)
17439d8 [example/jaeger] Remove prefix slash in Tracer.Start() (#292)
2ac5725 update README for v0.1.0 (#291)
1bfa1aa Change SpanKind type an integer type (#288)
9040d82 Add array aggregation for raw measure metrics, improve testing (#282)
6b48fce example/basic: make basic example work (#279)
881e51f Add MarshalJSON for core.Value (#281)
Release v0.1.0
Alpha Release v0.1.0
This is the first release of open-telemetry go library.
It contains api and sdk for trace and meter.
Added
- Initial OpenTelemetry trace and metric API prototypes.
- Initial OpenTelemetry trace, metric, and export SDK packages.
- A wireframe bridge to support compatibility with OpenTracing.
- Example code for a basic, http-stackdriver, http, jaeger, and named tracer setup.
- Exporters for Jaeger, Stackdriver, and stdout.
- Propagators for binary, B3, and trace-context protocols.
- Project information and guidelines in the form of a README and CONTRIBUTING.
- Tools to build the project and a Makefile to automate the process.
- Apache-2.0 license.
- CircleCI build CI manifest files.
- CODEOWNERS file to track owners of this project.