Releases: open-telemetry/opentelemetry-js
Releases · open-telemetry/opentelemetry-js
v1.24.1
1.24.1
🐛 (Bug Fix)
- fix(core): align inconsistent behavior of
getEnv()
andgetEnvWithoutDefaults()
when aprocess
polyfill is used #4648 @pichlermarcgetEnvWithoutDefaults()
would useprocess.env
if it was defined when running in a browser, whilegetEnv()
would always use_globalThis
. Now both use_globalThis
when running in a browser.
- fix(resources): prevent circular import (resource -> detector -> resource -> ...) #4653 @pichlermarc
- fixes a circular import warning which would appear in rollup when bundling
@opentelemetry/resources
- fixes a circular import warning which would appear in rollup when bundling
- fix(exporter-metrics-otlp-grpc): add explicit otlp-exporter-base dependency to exporter-metrics-otlp-grpc #4678 @AkselAllas
Experimental v0.51.1
0.51.1
🐛 (Bug Fix)
- fix(instrumentation): update import-in-the-middle to 1.7.4
v1.24.0
1.24.0
🚀 (Enhancement)
- feat(sdk-trace-base): log resource attributes in ConsoleSpanExporter #4605 @pichlermarc
- feat(propagator-aws-xray): moved AWS Xray propagator from contrib 4603 @martinkuba
- feat(resources): new experimental detector ServiceInstanceIdDetectorSync that sets the value for
service.instance.id
as random UUID. #4608 @maryliag
🐛 (Bug Fix)
Experimental v0.51.0
0.51.0
💥 Breaking Change
- feat(sdk-node)!: remove long deprecated methods in favor of constructor options #4606 @pichlermarc
NodeSDK.configureTracerProvider()
, please use constructor options insteadNodeSDK.configureMeterProvider()
, please use constructor options insteadNodeSDK.configureLoggerProvider()
, please use constructor options insteadNodeSDK.addResource()
, please use constructor options insteadNodeSDK.detectResources()
, this is not necessary anymore, resources are now auto-detected onNodeSDK.start()
if the constructor optionautoDetectResources
is unset,undefined
ortrue
.
- feat(instrumentation): add patch and unpatch diag log messages #4641
- Instrumentations should not log patch and unpatch messages to diag channel.
- feat!(instrumentation): remove moduleExports generic type from instrumentation registration #4598 @blumamir
- breaking for instrumentation authors that depend on
InstrumentationBase
InstrumentationNodeModuleDefinition
InstrumentationNodeModuleFile
- breaking for instrumentation authors that depend on
🚀 (Enhancement)
- refactor(instrumentation-grpc): move to use SEMATTRS #4633
- feat(otlp-transformer): consolidate scope/resource creation in transformer #4600
- feat(sdk-logs): print message when attributes are dropped due to attribute count limit #4614 @HyunnoH
- feat(sdk-node): add usage for the detector ServiceInstanceIdDetectorSync. #4626 @maryliag
- The resource detector can be added to default resource detector list by adding the value
serviceinstance
to the list of resource detectors on the environment variableOTEL_NODE_RESOURCE_DETECTORS
, e.gOTEL_NODE_RESOURCE_DETECTORS=env,host,os,serviceinstance
- The value can be overwritten by
- merging a resource containing the
service.instance.id
attribute - using another resource detector which writes
service.instance.id
- merging a resource containing the
- The resource detector can be added to default resource detector list by adding the value
🐛 (Bug Fix)
- fix(otlp-grpc-exporter-base): avoid TypeError on exporter shutdown #4612 @pichlermarc
- fix(instrumentation): Don't use
require
to loadpackage.json
files #4593 @timfish
v1.23.0
1.23.0
🚀 (Enhancement)
- perf(sdk-trace-base): do not allocate arrays if resource has no pending async attributes #4576 @Samuron
- feat(sdk-metrics): added experimental synchronous gauge to SDK #4565 @clintonb
- this change will become user-facing in an upcoming release
🐛 (Bug Fix)
- fix(sdk-metrics): increase the depth of the output to the console such that objects in the metric are printed fully to the console #4522 @JacksonWeber
Experimental v0.50.0
0.50.0
💥 Breaking Change
- fix(exporter-*-otlp-grpc)!: lazy load gRPC to improve compatibility with
@opentelemetry/instrumenation-grpc
#4432 @pichlermarc- Fixes a bug where requiring the gRPC exporter before enabling the instrumentation from
@opentelemetry/instrumentation-grpc
would lead to missing telemetry - Breaking changes, removes several functions and properties that were used internally and were not intended for end-users
getServiceClientType()
- this returned a static enum value that would denote the export type (
SPAN
,METRICS
,LOGS
)
- this returned a static enum value that would denote the export type (
getServiceProtoPath()
- this returned a static enum value that would correspond to the gRPC service path
metadata
- was used internally to access metadata, but as a side effect allowed end-users to modify metadata on runtime.
serviceClient
- was used internally to keep track of the service client used by the exporter, as a side effect it allowed end-users to modify the gRPC service client that was used
compression
- was used internally to keep track of the compression to use but was unintentionally exposed to the users. It allowed to read and write the value, writing, however, would have no effect.
- Fixes a bug where requiring the gRPC exporter before enabling the instrumentation from
- feat(api-events)!: removed domain from the Events API #4569 @martinkuba
- fix(api-events)!: renamed EventEmitter to EventLogger in the Events API #4569 @martinkuba
- feat(api-logs)!: changed LogRecord body data type to AnyValue and AnyValueMap types #4575 @martinkuba
🚀 (Enhancement)
- feat(instrumentation-xhr): optionally ignore network events #4571 @MustafaHaddara
- refactor(instrumentation-http): use exported strings for semconv #4573 @JamieDanielson
- perf(instrumentation-http): remove obvious temp allocations #4576 @Samuron
- feat(sdk-node): add
HostDetector
as default resource detector #4566 @maryliag - feat(api-events): added data field to the Event interface #4575 @martinkuba
🐛 (Bug Fix)
- fix(exporter--otlp-): use parseHeaders() to ensure header-values are not 'undefined' #4540
- Fixes a bug where passing
undefined
as a header value would crash the end-user app after the export timeout elapsed.
- Fixes a bug where passing
- fix(sdk-logs): ensure default resource attributes are used as fallbacks when a resource is passed to LoggerProvider.
📚 (Refine Doc)
- docs(instrumentation-http): document semantic conventions and attributes in use. #4587 @JamieDanielson
v1.22.0
1.22.0
🚀 (Enhancement)
- feat(sdk-metrics): allow single bucket histograms #4456 @pichlermarc
- feat(context-zone-peer-dep, context-zone): support zone.js 0.13.x, 0.14.x #4469 @pichlermarc
- chore: Semantic Conventions export individual strings 4185 @MSNev
🐛 (Bug Fix)
- fix(sdk-metrics): handle zero bucket counts in exponential histogram merge #4459 @mwear
- fix(sdk-metrics): ignore
NaN
value recordings in Histograms #4455 @pichlermarc- fixes a bug where recording
NaN
on a histogram would result in the sum of bucket count values not matching the overall count
- fixes a bug where recording
- fix(sdk-metrics): allow single bucket histograms #4456 @pichlermarc
- fixes a bug where
Meter.createHistogram()
with the adviceexplicitBucketBoundaries: []
would throw
- fixes a bug where
- fix(context-zone-peer-dep, context-zone): support zone.js 0.13.x, 0.14.x #4469 @pichlermarc
- fixes a bug where old versions of
zone.js
affected by angular/angular#53507 would be pulled in
- fixes a bug where old versions of
📚 (Refine Doc)
- docs: shorten readme sections #4460 @legendecas
Experimental v0.49.1
0.49.1
🐛 (Bug Fix)
- fix(instrumentation): don't add
@opentelemetry/api-logs
as apeerDependency
#4515 @pichlermarc
Experimental v0.49.0
0.49.0
💥 Breaking Change
- fix(otlp-exporter-base)!: remove unload event from OTLPExporterBrowserBase #4438 @eldavojohn
- Reason: The 'unload' event prevents sites from taking advantage of Google's backward/forward cache and will be deprecated. It is now up to the consuming site to implement these shutdown events.
- This breaking change affects users under this scenario:
- A user extends the exporter and overrides the shutdown function, and does something which is usually called by the unload listener
- We remove the unload event listener
- That user's overridden shutdown function no longer gets called
🚀 (Enhancement)
- feat(instrumentation): allow LoggerProvider to be specified in Instrumentations #4314 @hectorhdzg
- feat(instrumentation): add getModuleDefinitions() to InstrumentationBase #4475 @pichlermarc
- feat(exporter-metrics-otlp-http): add option to set the exporter aggregation preference #4409 @AkselAllas
- feat(node-sdk): add spanProcessors option #4454 @naseemkullah
🐛 (Bug Fix)
- fix(sdk-node): allow using samplers when the exporter is defined in the environment #4394 @JacksonWeber
- fix(instrumentation): normalize paths for internal files in scoped packages #4467 @pichlermarc
- Fixes a bug where, on Windows, internal files on scoped packages would not be instrumented.
- fix(otlp-transformer): only use BigInt inside hrTimeToNanos() #4484 @pichlermarc
- fix(instrumentation-fetch): do not enable in Node.js; clarify in docs this instr is for web fetch only #4498 @trentm
API v1.8.0
API v1.8.0
🚀 (Enhancement)
🐛 (Bug Fix)
- fix(api): fix unreachable @opentelemetry/api/experimental entry #4446 @legendecas