Release v0.16.0
Added
- Add the
ReadOnlySpan
andReadWriteSpan
interfaces to provide better control for accessing span data. (#1360) NewGRPCDriver
function returns aProtocolDriver
that maintains a single gRPC connection to the collector. (#1369)- Added documentation about the project's versioning policy. (#1388)
- Added
NewSplitDriver
for OTLP exporter that allows sending traces and metrics to different endpoints. (#1418) - Added codeql worfklow to GitHub Actions (#1428)
- Added Gosec workflow to GitHub Actions (#1429)
- Add new HTTP driver for OTLP exporter in
exporters/otlp/otlphttp
. Currently it only supports the binary protobuf payloads. (#1420)
Changed
- Rename
internal/testing
tointernal/internaltest
. (#1449) - Rename
export.SpanData
toexport.SpanSnapshot
and use it only for exporting spans. (#1360) - Store the parent's full
SpanContext
rather than just its span ID in thespan
struct. (#1360) - Improve span duration accuracy. (#1360)
- Migrated CI/CD from CircleCI to GitHub Actions (#1382)
- Remove duplicate checkout from GitHub Actions workflow (#1407)
- Metric
array
aggregator renamedexact
to match itsaggregation.Kind
(#1412) - Metric
exact
aggregator includes per-point timestamps (#1412) - Metric stdout exporter uses MinMaxSumCount aggregator for ValueRecorder instruments (#1412)
NewExporter
fromexporters/otlp
now takes aProtocolDriver
as a parameter. (#1369)- Many OTLP Exporter options became gRPC ProtocolDriver options. (#1369)
- Unify endpoint API that related to OTel exporter. (#1401)
- Optimize metric histogram aggregator to re-use its slice of buckets. (#1435)
- Metric aggregator Count() and histogram Bucket.Counts are consistently
uint64
. (1430) SamplingResult
now passed aTracestate
from the parentSpanContext
(#1432)- Moved gRPC driver for OTLP exporter to
exporters/otlp/otlpgrpc
. (#1420) - The
TraceContext
propagator now correctly propagatesTraceState
through theSpanContext
. (#1447) - Metric Push and Pull Controller components are combined into a single "basic" Controller:
WithExporter()
andStart()
to configure Push behaviorStart()
is optional; useCollect()
andForEach()
for Pull behaviorStart()
andStop()
accept Context. (#1378)
Removed
- Remove
errUninitializedSpan
as its only usage is now obsolete. (#1360) - Remove Metric export functionality related to quantiles and summary data points: this is not specified (#1412)
- Remove DDSketch metric aggregator; our intention is to re-introduce this as an option of the histogram aggregator after new OTLP histogram data types are released (#1412)
Fixed
BatchSpanProcessor.Shutdown()
will now shutdown underlyingexport.SpanExporter
. (#1443)
Raw changes made between v0.15.0 and v0.16.0
0aadfb2 Prepare release v0.16.0 (#1464)
207587b Metric histogram aggregator: Swap in SynchronizedMove to avoid allocations (#1435)
c29c6fd Shutdown underlying span exporter while shutting down BatchSpanProcessor (#1443)
dfece3d Combine the Push and Pull metric controllers (#1378)
74deedd Handle tracestate in TraceContext propagator (#1447)
49f699d Remove Quantile aggregation, DDSketch aggregator; add Exact timestamps (#1412)
9c94941 Rename internal/testing to internal/internaltest (#1449)
8d80981 Move gRPC driver to a subpackage and add an HTTP driver (#1420)
9332af1 Bump github.com/golangci/golangci-lint in /internal/tools (#1445)
5ed96e9 Update exporters/otlp Readme.md (#1441)
bc9cb5e Switch CircleCI badge to GitHub Actions (#1440)
716ad08 Remove CircleCI config (#1439)
0682db1 Adding Security Workflows to GitHub Actions (2/2): gosec workflow (#1429)
11f732b Adding Security Workflows to GitHub Actions (1/2): codeql workflow (#1428)
40f1c00 Add Tracestate into the SamplingResult struct (#1432)
db06c8d Flush metric events before shutdown in collector example (#1438)
f6f458e Fix golint issue caused by typo in trace.go (#1436)
fe9d1f7 Use uint64 Count consistently in metric aggregation (#1430)
3a337d0 Bump github.com/golangci/golangci-lint in /internal/tools (#1433)
1e4c832 cleanup: drop the removed examples in gitignore (#1427)
5c9221c Unify endpoint API that related to OTel exporter (#1401)
045c3ff Build scripts: Replace mapfile with read loop for old bash versions (#1425)
2def8c3 Add Versioning Documentation (#1388)
6bcd108 Bump github.com/itchyny/gojq from 0.11.2 to 0.12.0 in /internal/tools (#1424)
38e76ef Add a split protocol driver for otlp exporter (#1418)
439cd31 Add TraceState to SpanContext in API (#1340)
3521526 Split connection management away from exporter (#1369)
add9d93 Bump github.com/prometheus/client_golang from 1.8.0 to 1.9.0 in /exporters/metric/prometheus (#1414)
93d426a Add @dashpole as a project Approver (#1410)
6fe20ef Fix small typo (#1409)
b22d0d7 Mention the getting started guide (#1406)
3fb80fb Fix duplicate checkout action in GitHub workflow (#1407)
2051927 Correct CI workflow syntax (#1403)
f11a86f Fix typo in comment (#1402)
bdf87a7 Migrate CircleCI ci.yml workflow to GitHub Actions (#1382)
4e59dd1 Bump google.golang.org/grpc from 1.32.0 to 1.34.0 in /example/otel-collector (#1400)
83513f7 Bump google.golang.org/api from 0.32.0 to 0.36.0 in /exporters/trace/jaeger (#1398)
a354fc4 Bump github.com/prometheus/client_golang from 1.7.1 to 1.8.0 in /exporters/metric/prometheus (#1397)
3528e42 Bump google.golang.org/grpc from 1.32.0 to 1.34.0 in /exporters/otlp (#1396)
af114ba Call otel.Handle with non-nil errors (#1384)
c3c4273 Add RO/RW span interfaces (#1360)