All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
This project adheres to Semantic Versioning.
1.11.1 - 2022-10-05
- Updates required for tests to pass with go-1.19.x. #300
- Print the metric name responsible for empty attributes #298
1.11.0 - 2022-09-12
🛑 [BREAKING] The set of builtin, automatic metrics instrumentation
libraries configured by the Launcher is new and improved in this
release. To configure the behavior in Launcher versions 1.10.x and
prior, use WithMetricsBuiltinLibraries("all:prestable")
or set
LS_METRICS_BUILTIN_LIBRARIES=all:prestable
.
- Add
WithMetricsBuiltinsEnabled()
option and environment variableLS_METRICS_BUILTINS_ENABLED
, which defaults to true. #265 - New replacement for go-contrib instrumentation/runtime added as lightstep/instrumentation/runtime. #267
- New "cputime" instrumentation package combines several related timing metrics, process.cpu.time, process.uptime, and process.runtime.go.gc.cpu.time #269
- New replacement for go-contrib instrumentation/host added as lightstep/instrumentation/host; same code but removes process metrics #268
- When metrics builtin libraries are enabled, the
WithMetricsBuiltinLibraries()
option and environment variableLS_METRICS_BUILTIN_LIBRARIES
control which libraries are enabled. By default, the libraries in./lightstep/instrumentation
are selected as stable builtin instrumentation. To configure the former-default builtin libraries (i.e., runtime and host) useWithMetricsBuiltinLibraries("all:prestable")
or setLS_METRICS_BUILTIN_LIBRARIES=all:prestable
. #274
- Update to OTel-Go 1.10.0. #284
- Avoid repetitive calls to
otel.Handle()
with error conditions caused by out-of-range metrics input values, including NaN, Inf, and in some cases negative values. These will be handled no more than once per 30 seconds per condition. #272
1.10.1 - 2022-08-29
- Revert the default change of temporality to "cumulative" from #258.
New users are recommended to configure
WithMetricExporterTemporalityPreference("stateless")
temporality preference if possible. #261
1.10.0 - 2022-08-28
This version was retracted because of the change of temporality preference.
- Partial error handling: avoid printing spurious messages when there is no error. #247
We have intentionally combined a number of potentially breaking changes into this release,
- 🛑 [BREAKING] Histogram instruments now select the explicit-boundary histogram for
the otel-go SDK, which is a breaking change for Lightstep users, but
as the Lightstep SDK is using exopnential histograms this is the
matching default which allows upgrade and downgrade between these
SDKs. Users who encounter errors related to histogram instruments
(e.g,.
process.runtime.go.gc.pause_ns
) please contact a Lightstep representative. #249 - Exponential histogram changes boundary inclusivity from lower-inclusive to upper-inclusive. This is defined as a non-breaking change because implementations have not required exactness. With this change, exact powers-of-two are treated as exact special cases. #254
- Lightstep metrics SDK is enabled by default. We are now confident in this SDK even as we have discovered new issues with the old one. #258
- 🛑 [BREAKING] Stateless temporality preference is used by default; Counter and Histogram instruments will begin reporting with delta temporality. To avoid repeated breakage. This is especially important for exponential histogram data quality. #258
1.9.0 - 2022-08-04
- Update to OpenTelemetry 1.9.0
- Exponential histogram correctly counts the zero-bucket when increment > 1 #238
1.8.1 - 2022-07-28
- Optimize the synchronous instrument fast path #226
- Exponential histogram package is externally-usable #222
- Add an example for stand-alone use of Lightstep metrics SDK #219
1.8.0 - 2022-07-13
- Update OpenTelemetry dependencies to OTel-Go version 1.8.0 #216
- OTLP version 0.18.0: includes Min/Max support for exponential histogram #215
sync.Map
replaced withsync.RWLock
and plain map (saves 3 allocations) #206
- Race condition possible with multiple exporters fixed #205
1.7.0 - 2022-06-30
- Introduces the "Lightstep Metrics SDK" option, an alternative to the OpenTelemetry-Go
community SDK. This SDK features experimental features listed below: #196
- Lightstep Metrics SDK: Exponential histogram on-by-default, no explicit-boundary Histogram
- Lightstep Metrics SDK: Support for MinMaxSumCount aggregation (via a 0-bucket Histogram)
- Lightstep Metrics SDK: Support for synchronous Gauge instrument (configured via API hints)
- New in both Metrics SDKs: Support for "stateless" temporality preference
- New in both Metrics SDKs: Recognize & print Lightstep's metric validation error details.
We are skipping version 1.6.x so that otel-launcher-go
major and minor versions match the opentelemetry-go
repository.
1.5.2 - 2022-05-12
WithResourceAttributes()
fixed, had been non-functional #165
1.5.1 - 2022-03-24
- tag
github.com/lightstep/otel-launcher-go/pipelines
and update go.mod for launcher
1.5.0 - 2022-03-18
- use semconv package instead of collector package (#69)
- update OpenTelemetry SDK dependencies to 1.5.0
- update OpenTelemetry metrics to 0.27.0 (#114)
- Allow Developer Mode For Go Lightstep (#60)
1.0.0 - 2021-09-22
- Update OpenTelemetry tracing dependencies to 1.0.0
1.0.0-RC3 - 2021-09-15
- Update OpenTelemetry tracing dependencies to 1.0.0-RC3
- Update OpenTelemetry metrics dependencies to 0.23.0
- Remove support for deprecated
OTEL_RESOURCE_LABELS
environment variable, as it has been replaced byOTEL_RESOURCE_ATTRIBUTES
upstream.
0.20.0 - 2021-05-10
- Update OpenTelemetry dependencies to 0.20.0
0.18.0 - 2021-03-16
- Update OpenTelemetry dependencies to 0.18.0
- Add support for
ottrace
propagator
0.16.1 - 2021-02-01
- Enable gzip compression by default
- Update OpenTelemetry dependencies to 0.16.0
0.15.0 - 2020-12-15
- Update OpenTelemetry dependencies to 0.15.0
- Added context param for NewExporter as required by OpenTelemetry 0.15.0
0.14.1 - 2020-11-24
- Update default value for metrics exporter endpoint (#38)
0.14.0 - 2020-11-23
- Update configuration for baggage propagator from
"cc"
to"baggage"
(#30)
- Add support for
tracecontext
propagator (#32) - Adding LS_METRICS_ENABLED env variable to control host/runtime metrics (#34)
- Update OpenTelemetry dependencies to 0.13.0 (#26)
- Use BatchSpanProcessor instead of SimpleSpanProcessor (#24)
- Add host.name tag based on os.Hostname (#19)
- Update OpenTelemetry dependencies to 0.11.0
- Add a metrics exporter
- update envconfig package
- Update OpenTelemetry dependencies to 0.10.0
- Initial release