Releases: open-telemetry/opentelemetry-js
Releases · open-telemetry/opentelemetry-js
experimental/v0.56.0
0.56.0
💥 Breaking Change
- feat(otlp-exporter-base)!: collapse base classes into one #5031 @pichlermarc
OTLPExporterNodeBasehas been removed in favor of a platform-agnostic implementation (OTLPExporterBase)OTLPExporterBrowserBasehas been removed in favor of a platform-agnostic implementation (OTLPExporterBase)ExportServiceErrorwas intended for internal use and has been dropped from exportsvalidateAndNormalizeHeaderswas intended for internal use and has been dropped from exportsOTLPExporterBaseall properties are now private, the constructor now takes anIOTLPExportDelegate, the type parameter for config type has been dropped.- This type is scheduled for removal in a future version of this package, please treat all exporters as
SpanExporter,PushMetricExporterorLogRecordExporter, based on their respective type.
- This type is scheduled for removal in a future version of this package, please treat all exporters as
- feat(otlp-grpc-exporter-base)!: collapse base classes into one #5031 @pichlermarc
OTLPGRPCExporterNodeBasehas been removed in favor of a platform-agnostic implementation (OTLPExporterBasefrom@opentelemetry/otlp-exporter-base)
- feat(otlp-transformer)!: accept
ResourceMetricsin serializers instead ofResourceMetrics[]- (user-facing):
ProtobufMetricsSerializernow only acceptsResourceMetricsinstead ofResourceMetrics[]to align withPushMetricExporterrequirements - (user-facing):
JsonMetricsSerializernow only acceptsResourceMetricsinstead ofResourceMetrics[]to align withPushMetricExporterrequirements
- (user-facing):
🚀 (Enhancement)
- feat(otlp-exporter-base): handle OTLP partial success #5183 @pichlermarc
- feat(otlp-exporter-base): internally accept a http header provider function only #5179 @pichlermarc
- refactor(otlp-exporter-base): don't create blob before sending xhr #5193 @pichlermarc
- improves compatibility with some unsupported runtimes
- feat(otlp-exporter-base): add http response body to exporter error #5204 @pichlermarc
🐛 (Bug Fix)
- fix(otlp-exporter-*): de-confuse Nuxt build tooling by not using 'export *' in comments #5227 @pichlermarc
🏠 (Internal)
- chore(otlp-exporter-*-grpc): clean up tests #5196 @pichlermarc
- chore(otlp-exporter-*-http): clean up tests #5196 @pichlermarc
- chore(otlp-exporter-*-proto): clean up tests #5196 @pichlermarc
semconv/v1.28.0
v1.28.0
1.28.0
🚀 (Enhancement)
-
feat(sdk-metrics, sdk-trace): add
mergeResourceWithDefaultsflag, which allows opting-out of resources getting merged with the default resource #4617- default:
true(no change in behavior) - note:
falsewill become the default behavior in the next major version in order to comply with specification requirements
- default:
-
feat(sdk-trace-base): add
spanProcessorsproperty inTracerConfiginterface. #5138 @david-luna
🐛 (Bug Fix)
- fix(sdk-metrics): await exports in
PeriodicExportingMetricReaderwhen async resource attributes have not yet settled #5119 @pichlermarc - fix(sdk-trace): performance.now() may return the same value for consecutive calls #5150 @dyladan
- fix(sdk-trace-base): pass BatchSpanProcessor#forceFlush() errors on visibilitychange/pagehide to globalErrorHandler #5143 @pichlermarc
- fixes a bug where switching browser tabs with a failing exporter would cause an unhandled error
experimental/v0.55.0
0.55.0
💥 Breaking Change
- feat(instrumentation-http)!: reduce public API surface by removing exports and making protected methods private #5124 @pichlermarc
- (user-facing) the following exports were intended for internal use only and have been removed without replacement
- extractHostnameAndPort
- getAbsoluteUrl
- getIncomingRequestAttributes
- getIncomingRequestAttributesOnResponse
- getIncomingRequestMetricAttributes
- getIncomingRequestMetricAttributesOnResponse
- getOutgoingRequestAttributes
- getOutgoingRequestAttributesOnResponse
- getOutgoingRequestMetricAttributes
- getOutgoingRequestMetricAttributesOnResponse
- getRequestInfo
- headerCapture
- isCompressed
- isValidOptionsType
- parseResponseStatus
- satisfiesPattern
- setAttributesFromHttpKind
- setRequestContentLengthAttribute
- setResponseContentLengthAttribute
- setSpanWithError
- RequestSignature
- RequestFunction
- ParsedRequestOptions
- IgnoreMatcher
- Https
- HttpRequestArgs
- HttpCallbackOptional
- HttpCallback
- Http
- GetFunction
- Func
- Err
- (user-facing) the following exports were intended for internal use only and have been removed without replacement
🚀 (Enhancement)
- feat(sdk-node, sdk-logs): add
mergeResourceWithDefaultsflag, which allows opting-out of resources getting merged with the default resource #4617- default:
true - note:
falsewill become the default behavior in a future iteration in order to comply with specification requirements
- default:
- feat(instrumentation): Track request body size in XHR and Fetch instrumentations #4706 @MustafaHaddara
🐛 (Bug Fix)
- fix(instrumentation-http): Fix the
OTEL_SEMCONV_STABILITY_OPT_INvariable check. Usingofinstead ofin#5137 - fix(instrumentation-http): drop url.parse in favor of URL constructor #5091 @pichlermarc
- fixes a bug where using cyrillic characters in a client request string URL would throw an exception, whereas an un-instrumented client would accept the same input without throwing an exception
- fix(otlp-exporter-base): fix unhandled error when writing to destroyed http request #5163 @pichlermarc
experimental/v0.54.2
0.54.2
🐛 (Bug Fix)
- fix(instrumentation): Fix wrapping ESM files with absolute path #5094 @serkan-ozal
experimental/v0.54.1
v1.27.0
1.27.0
🚀 (Enhancement)
- feat: add processors for adding session.id attribute to spans and logs #4972
🐛 (Bug Fix)
- fix(sdk-trace-base): avoid keeping non-string
status.messageonSpan#setStatus()#4999 @pichlermarc - fix(sdk-metrics): Add missing catch and handle error in promise of
PeriodicExportingMetricReader#5006 @jj22ee - fix(opentelemetry-core): confusing log extract of composite propagator #5017 @rv2673
- fix(propagator-aws-xray-*): move propagators back to contrib repository #4966 @pichlermarc
- The specification prohibits hosting these packages in the core repository
@opentelemetry/propagator-aws-xrayis now located in open-telemetry/opentelemetry-js-contrib@opentelemetry/propagator-aws-xray-lambdais now located in open-telemetry/opentelemetry-js-contrib
🏠 (Internal)
- deps: set
@opentelemetry/apidependency min version to 1.3.0 inexamples,experimental/packages,integration-testsandselenium-tests
#4992 - refactor(sdk-metrics): replace
MetricsAttributeswithAttributes#5021 @david-luna - refactor(instrumentation-http): replace
SpanAttributesandMetricsAttributeswithAttributes#5023 @david-luna - chore(exporter-zipkin): remove usages of Span constructor #5030 @david-luna
- test(instrumentation-http): remove usages of
new Spanin tests #5035 @david-luna
experimental/v0.54.0
0.54.0
💥 Breaking Change
- feat(exporter--otlp-)!: rewrite exporter config logic for testability #4971 @pichlermarc
- (user-facing)
getDefaultUrlwas intended for internal use has been removed from all exporters - (user-facing)
getUrlFromConfigwas intended for internal use and has been removed from all exporters - (user-facing)
hostnamewas intended for internal use and has been removed from all exporters - (user-facing)
urlwas intended for internal use and has been removed from all exporters - (user-facing)
timeoutMilliswas intended for internal use and has been removed from all exporters - (user-facing)
onInitwas intended for internal use and has been removed from all exporters - (user-facing) OTLP exporter config
headerstype changed fromPartial<Record<string, unknown>>toRecord<string, string>
- (user-facing)
- feat(otlp-exporter-base)!: do not export functions that are intended for internal use #4971 @pichlermarc
- Drops the following functions and types that were intended for internal use from the package exports:
parseHeadersappendResourcePathToUrlappendResourcePathToUrlIfNeededconfigureExporterTimeoutinvalidTimeout
- Drops the following functions and types that were intended for internal use from the package exports:
- feat(instrumentation-http)!: remove long deprecated options #5085 @pichlermarc
ignoreIncomingPathshas been removed, use the more versatileignoreIncomingRequestHookinstead.ignoreOutgoingUrlshas been removed, use the more versatileignoreOutgoingRequestHookinstead.isIgnoredutility function was intended for internal use and has been removed without replacement.
🚀 (Enhancement)
- feat(api-logs): Add delegating no-op logger provider #4861 @hectorhdzg
- feat(instrumentation-http): Add support for Semantic Conventions 1.27+ #4940 #4978 #5026 @dyladan
- Applies to client and server spans and metrics
- Generate spans and metrics compliant with Semantic Conventions 1.27+ when
OTEL_SEMCONV_STABILITY_OPT_INcontainshttporhttp/dup - Generate spans and metrics backwards compatible with previous attributes when
OTEL_SEMCONV_STABILITY_OPT_INcontainshttp/dupor DOES NOT containhttp
🐛 (Bug Fix)
- fix(sampler-jaeger-remote): fixes an issue where package could emit unhandled promise rejections @Just-Sieb
- fix(otlp-grpc-exporter-base): default compression to
'none'if env varsOTEL_EXPORTER_OTLP_TRACES_COMPRESSIONandOTEL_EXPORTER_OTLP_COMPRESSIONare falsy @sjvans - fix(sdk-events): remove devDependencies to old
@opentelemetry/[email protected],@opentelemetry/[email protected]packages #5013 @pichlermarc - fix(sdk-logs): remove devDependencies to old
@opentelemetry/[email protected]#5013 @pichlermarc - fix(sdk-logs): align LogRecord#setAttribute type with types from
@opentelemetry/[email protected]#5013 @pichlermarc - fix(exporter--otlp-): fixes a bug where signal-specific environment variables would not be applied and the trace-specific one was used instead #4971 @pichlermarc
- Fixes:
OTEL_EXPORTER_OTLP_METRICS_COMPRESSIONOTEL_EXPORTER_OTLP_LOGS_COMPRESSIONOTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATEOTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATEOTEL_EXPORTER_OTLP_METRICS_CLIENT_KEYOTEL_EXPORTER_OTLP_LOGS_CLIENT_KEYOTEL_EXPORTER_OTLP_METRICS_INSECUREOTEL_EXPORTER_OTLP_LOGS_INSECURE
- Fixes:
- fix(sdk-node): use warn instead of error on unknown OTEL_NODE_RESOURCE_DETECTORS values #5034
- fix(exporter-logs-otlp-proto): Use correct config type in Node constructor
- fix(instrumentation-http): Fix instrumentation of
http.get,http.request,https.get, andhttps.requestwhen used from ESM code and imported via theimport defaultExport from 'http'style. #5024 @trentm
🏠 (Internal)
-
refactor(exporter-prometheus): replace
MetricAttributesandMetricAttributeValueswithAttributesandAttributeValues#4993 -
refactor(browser-detector): replace
ResourceAttributeswithAttributes#5004 -
refactor(sdk-logs): replace
ResourceAttributeswithAttributes#5005 @david-luna
v1.26.0
1.26.0
🚀 (Enhancement)
- feat: include instrumentation scope info in console span and log record exporters #4848 @blumamir
- feat(semconv): update semantic conventions to 1.27 (from 1.7.0) #4690 @dyladan
- Exported names have changed to
ATTR_{name}for attributes (e.g.ATTR_HTTP_REQUEST_METHOD),{name}_VALUE_{value}for enumeration values (e.g.HTTP_REQUEST_METHOD_VALUE_POST), andMETRIC_{name}for metrics. Exported names from previous versions are deprecated. - Import
@opentelemetry/semantic-conventionsfor stable semantic conventions. Import@opentelemetry/semantic-conventions/incubatingfor all semantic conventions, stable and unstable. - Note: Semantic conventions are now versioned separately from other stable artifacts, to correspond to the version of semantic conventions they provide. Changes will be in a separate changelog.
- Exported names have changed to
🐛 (Bug Fix)
- fix(sdk-node): avoid spurious diag errors for unknown OTEL_NODE_RESOURCE_DETECTORS values #4879 @trentm
- deps(opentelemetry-instrumentation): Bump
shimmertypes to 1.2.0 #4865 @lforst - fix(instrumentation): Fix optional property types #4833 @alecmev
- fix(sdk-metrics): fix(sdk-metrics): use inclusive upper bounds in histogram #4829
🏠 (Internal)
- refactor: Simplify the code for the
getEnvfunction #4799 @danstarns - refactor: remove "export *" in favor of explicit named exports #4880 @robbkidd
- Packages updated:
- opentelemetry-context-zone
- opentelemetry-core
- opentelemetry-exporter-jaeger
- opentelemetry-exporter-zipkin
- opentelemetry-propagator-b3
- opentelemetry-propagator-jaeger
- opentelemetry-sdk-trace-base
- opentelemetry-sdk-trace-node
- opentelemetry-sdk-trace-web
- propagator-aws-xray
- sdk-metrics
- Packages updated:
- deps(sdk-metrics): remove unused lodash.merge dependency #4905 @pichlermarc
semconv/v1.27.0
1.27.0
- Version bump only
- Note: This package will now be versioned according to the version of semantic conventions being provided.