Skip to content

Releases: open-telemetry/opentelemetry-js

semconv/v1.32.0

10 Apr 17:03
dac7291
Compare
Choose a tag to compare

1.32.0

🚀 Features

  • feat: update semantic conventions to v1.32.0 #5603 @trentm
    • Semantic Conventions v1.32.0: changelog | latest docs
    • @opentelemetry/semantic-conventions (stable) changes: none
    • @opentelemetry/semantic-conventions/incubating (unstable) changes: 2 newly deprecated exports, 65 added exports

Unstable changes in v1.32.0

2 newly deprecated exports
ATTR_FEATURE_FLAG_EVALUATION_REASON // feature_flag.evaluation.reason: Replaced by `feature_flag.result.reason`.
ATTR_FEATURE_FLAG_VARIANT           // feature_flag.variant: Replaced by `feature_flag.result.variant`.
65 added exports
METRIC_CPYTHON_GC_COLLECTED_OBJECTS                         // cpython.gc.collected_objects
METRIC_CPYTHON_GC_COLLECTIONS                               // cpython.gc.collections
METRIC_CPYTHON_GC_UNCOLLECTABLE_OBJECTS                     // cpython.gc.uncollectable_objects

METRIC_OTEL_SDK_EXPORTER_LOG_EXPORTED                       // otel.sdk.exporter.log.exported
METRIC_OTEL_SDK_EXPORTER_LOG_INFLIGHT                       // otel.sdk.exporter.log.inflight
METRIC_OTEL_SDK_LOG_CREATED                                 // otel.sdk.log.created
METRIC_OTEL_SDK_PROCESSOR_LOG_PROCESSED                     // otel.sdk.processor.log.processed
METRIC_OTEL_SDK_PROCESSOR_LOG_QUEUE_CAPACITY                // otel.sdk.processor.log.queue.capacity
METRIC_OTEL_SDK_PROCESSOR_LOG_QUEUE_SIZE                    // otel.sdk.processor.log.queue.size

ATTR_APP_INSTALLATION_ID                                    // app.installation.id

ATTR_CPYTHON_GC_GENERATION                                  // cpython.gc.generation
  CPYTHON_GC_GENERATION_VALUE_GENERATION_0                    // 0
  CPYTHON_GC_GENERATION_VALUE_GENERATION_1                    // 1
  CPYTHON_GC_GENERATION_VALUE_GENERATION_2                    // 2

ATTR_DB_STORED_PROCEDURE_NAME                               // db.stored_procedure.name

ATTR_ERROR_MESSAGE                                          // error.message

ATTR_FEATURE_FLAG_RESULT_REASON                             // feature_flag.result.reason
  FEATURE_FLAG_RESULT_REASON_VALUE_CACHED                     // "cached"
  FEATURE_FLAG_RESULT_REASON_VALUE_DEFAULT                    // "default"
  FEATURE_FLAG_RESULT_REASON_VALUE_DISABLED                   // "disabled"
  FEATURE_FLAG_RESULT_REASON_VALUE_ERROR                      // "error"
  FEATURE_FLAG_RESULT_REASON_VALUE_SPLIT                      // "split"
  FEATURE_FLAG_RESULT_REASON_VALUE_STALE                      // "stale"
  FEATURE_FLAG_RESULT_REASON_VALUE_STATIC                     // "static"
  FEATURE_FLAG_RESULT_REASON_VALUE_TARGETING_MATCH            // "targeting_match"
  FEATURE_FLAG_RESULT_REASON_VALUE_UNKNOWN                    // "unknown"
ATTR_FEATURE_FLAG_RESULT_VARIANT                            // feature_flag.result.variant

ATTR_GCP_APPHUB_APPLICATION_CONTAINER                       // gcp.apphub.application.container
ATTR_GCP_APPHUB_APPLICATION_ID                              // gcp.apphub.application.id
ATTR_GCP_APPHUB_APPLICATION_LOCATION                        // gcp.apphub.application.location
ATTR_GCP_APPHUB_SERVICE_CRITICALITY_TYPE                    // gcp.apphub.service.criticality_type
  GCP_APPHUB_SERVICE_CRITICALITY_TYPE_VALUE_HIGH              // "HIGH"
  GCP_APPHUB_SERVICE_CRITICALITY_TYPE_VALUE_LOW               // "LOW"
  GCP_APPHUB_SERVICE_CRITICALITY_TYPE_VALUE_MEDIUM            // "MEDIUM"
  GCP_APPHUB_SERVICE_CRITICALITY_TYPE_VALUE_MISSION_CRITICAL  // "MISSION_CRITICAL"
ATTR_GCP_APPHUB_SERVICE_ENVIRONMENT_TYPE                    // gcp.apphub.service.environment_type
  GCP_APPHUB_SERVICE_ENVIRONMENT_TYPE_VALUE_DEVELOPMENT       // "DEVELOPMENT"
  GCP_APPHUB_SERVICE_ENVIRONMENT_TYPE_VALUE_PRODUCTION        // "PRODUCTION"
  GCP_APPHUB_SERVICE_ENVIRONMENT_TYPE_VALUE_STAGING           // "STAGING"
  GCP_APPHUB_SERVICE_ENVIRONMENT_TYPE_VALUE_TEST              // "TEST"
ATTR_GCP_APPHUB_SERVICE_ID                                  // gcp.apphub.service.id
ATTR_GCP_APPHUB_WORKLOAD_CRITICALITY_TYPE                   // gcp.apphub.workload.criticality_type
  GCP_APPHUB_WORKLOAD_CRITICALITY_TYPE_VALUE_HIGH             // "HIGH"
  GCP_APPHUB_WORKLOAD_CRITICALITY_TYPE_VALUE_LOW              // "LOW"
  GCP_APPHUB_WORKLOAD_CRITICALITY_TYPE_VALUE_MEDIUM           // "MEDIUM"
  GCP_APPHUB_WORKLOAD_CRITICALITY_TYPE_VALUE_MISSION_CRITICAL // "MISSION_CRITICAL"
ATTR_GCP_APPHUB_WORKLOAD_ENVIRONMENT_TYPE                   // gcp.apphub.workload.environment_type
  GCP_APPHUB_WORKLOAD_ENVIRONMENT_TYPE_VALUE_DEVELOPMENT      // "DEVELOPMENT"
  GCP_APPHUB_WORKLOAD_ENVIRONMENT_TYPE_VALUE_PRODUCTION       // "PRODUCTION"
  GCP_APPHUB_WORKLOAD_ENVIRONMENT_TYPE_VALUE_STAGING          // "STAGING"
  GCP_APPHUB_WORKLOAD_ENVIRONMENT_TYPE_VALUE_TEST             // "TEST"
ATTR_GCP_APPHUB_WORKLOAD_ID                                 // gcp.apphub.workload.id

OTEL_COMPONENT_TYPE_VALUE_BATCHING_LOG_PROCESSOR            // "batching_log_processor"
OTEL_COMPONENT_TYPE_VALUE_OTLP_GRPC_LOG_EXPORTER            // "otlp_grpc_log_exporter"
OTEL_COMPONENT_TYPE_VALUE_OTLP_HTTP_JSON_LOG_EXPORTER       // "otlp_http_json_log_exporter"
OTEL_COMPONENT_TYPE_VALUE_OTLP_HTTP_LOG_EXPORTER            // "otlp_http_log_exporter"
OTEL_COMPONENT_TYPE_VALUE_SIMPLE_LOG_PROCESSOR              // "simple_log_processor"

PROFILE_FRAME_TYPE_VALUE_GO                                 // "go"
PROFILE_FRAME_TYPE_VALUE_RUST                               // "rust"

ATTR_VCS_OWNER_NAME                                         // vcs.owner.name
ATTR_VCS_PROVIDER_NAME                                      // vcs.provider.name
  VCS_PROVIDER_NAME_VALUE_BITBUCKET                           // "bitbucket"
  VCS_PROVIDER_NAME_VALUE_GITHUB                              // "github"
  VCS_PROVIDER_NAME_VALUE_GITLAB                              // "gitlab"
  VCS_PROVIDER_NAME_VALUE_GITTEA                              // "gittea"

semconv/v1.31.0

09 Apr 20:05
141c054
Compare
Choose a tag to compare

1.31.0

🚀 Features

  • feat: update semantic conventions to v1.31.0
    • Semantic Conventions v1.31.0: changelog | latest docs
    • @opentelemetry/semantic-conventions (stable) changes: none
    • @opentelemetry/semantic-conventions/incubating (unstable) changes: 8 newly deprecated exports, 1 newly undeprecated export, 63 added exports

Unstable changes in v1.31.0

8 newly deprecated exports
METRIC_K8S_REPLICATION_CONTROLLER_AVAILABLE_PODS // k8s.replication_controller.available_pods: Replaced by `k8s.replicationcontroller.available_pods`.
METRIC_K8S_REPLICATION_CONTROLLER_DESIRED_PODS   // k8s.replication_controller.desired_pods: Replaced by `k8s.replicationcontroller.desired_pods`.
METRIC_SYSTEM_CPU_FREQUENCY                      // system.cpu.frequency: Replaced by `cpu.frequency`.
METRIC_SYSTEM_CPU_TIME                           // system.cpu.time: Replaced by `cpu.time`.
METRIC_SYSTEM_CPU_UTILIZATION                    // system.cpu.utilization: Replaced by `cpu.utilization`.
ATTR_CODE_FILEPATH                               // code.filepath: Replaced by `code.file.path`
ATTR_CODE_NAMESPACE                              // code.namespace: Value should be included in `code.function.name` which is expected to be a fully-qualified name.
ATTR_GEN_AI_OPENAI_REQUEST_RESPONSE_FORMAT       // gen_ai.openai.request.response_format: Replaced by `gen_ai.output.type`.
1 newly undeprecated export
ATTR_ENDUSER_ID // enduser.id
63 added exports
METRIC_CPU_FREQUENCY                                   // cpu.frequency
METRIC_CPU_TIME                                        // cpu.time
METRIC_CPU_UTILIZATION                                 // cpu.utilization

METRIC_HW_HOST_AMBIENT_TEMPERATURE                     // hw.host.ambient_temperature
METRIC_HW_HOST_ENERGY                                  // hw.host.energy
METRIC_HW_HOST_HEATING_MARGIN                          // hw.host.heating_margin
METRIC_HW_HOST_POWER                                   // hw.host.power

METRIC_K8S_REPLICATIONCONTROLLER_AVAILABLE_PODS        // k8s.replicationcontroller.available_pods
METRIC_K8S_REPLICATIONCONTROLLER_DESIRED_PODS          // k8s.replicationcontroller.desired_pods

METRIC_OTEL_SDK_EXPORTER_SPAN_EXPORTED_COUNT           // otel.sdk.exporter.span.exported.count
METRIC_OTEL_SDK_EXPORTER_SPAN_INFLIGHT_COUNT           // otel.sdk.exporter.span.inflight.count
METRIC_OTEL_SDK_PROCESSOR_SPAN_PROCESSED_COUNT         // otel.sdk.processor.span.processed.count
METRIC_OTEL_SDK_PROCESSOR_SPAN_QUEUE_CAPACITY          // otel.sdk.processor.span.queue.capacity
METRIC_OTEL_SDK_PROCESSOR_SPAN_QUEUE_SIZE              // otel.sdk.processor.span.queue.size
METRIC_OTEL_SDK_SPAN_ENDED_COUNT                       // otel.sdk.span.ended.count
METRIC_OTEL_SDK_SPAN_LIVE_COUNT                        // otel.sdk.span.live.count

ATTR_ANDROID_APP_STATE                                 // android.app.state
  ANDROID_APP_STATE_VALUE_BACKGROUND                     // "background"
  ANDROID_APP_STATE_VALUE_CREATED                        // "created"
  ANDROID_APP_STATE_VALUE_FOREGROUND                     // "foreground"

ATTR_CICD_PIPELINE_RUN_URL_FULL                        // cicd.pipeline.run.url.full

ATTR_CPU_LOGICAL_NUMBER                                // cpu.logical_number

ATTR_ENDUSER_PSEUDO_ID                                 // enduser.pseudo.id

ATTR_GEN_AI_AGENT_DESCRIPTION                          // gen_ai.agent.description
ATTR_GEN_AI_AGENT_ID                                   // gen_ai.agent.id
ATTR_GEN_AI_AGENT_NAME                                 // gen_ai.agent.name
GEN_AI_OPERATION_NAME_VALUE_CREATE_AGENT               // "create_agent"
GEN_AI_OPERATION_NAME_VALUE_EXECUTE_TOOL               // "execute_tool"
ATTR_GEN_AI_OUTPUT_TYPE                                // gen_ai.output.type
  GEN_AI_OUTPUT_TYPE_VALUE_IMAGE                         // "image"
  GEN_AI_OUTPUT_TYPE_VALUE_JSON                          // "json"
  GEN_AI_OUTPUT_TYPE_VALUE_SPEECH                        // "speech"
  GEN_AI_OUTPUT_TYPE_VALUE_TEXT                          // "text"
ATTR_GEN_AI_REQUEST_CHOICE_COUNT                       // gen_ai.request.choice.count
GEN_AI_TOKEN_TYPE_VALUE_OUTPUT                         // "output"
ATTR_GEN_AI_TOOL_CALL_ID                               // gen_ai.tool.call.id
ATTR_GEN_AI_TOOL_NAME                                  // gen_ai.tool.name
ATTR_GEN_AI_TOOL_TYPE                                  // gen_ai.tool.type

ATTR_IOS_APP_STATE                                     // ios.app.state
  IOS_APP_STATE_VALUE_ACTIVE                             // "active"
  IOS_APP_STATE_VALUE_BACKGROUND                         // "background"
  IOS_APP_STATE_VALUE_FOREGROUND                         // "foreground"
  IOS_APP_STATE_VALUE_INACTIVE                           // "inactive"
  IOS_APP_STATE_VALUE_TERMINATE                          // "terminate"

ATTR_K8S_HPA_NAME                                      // k8s.hpa.name
ATTR_K8S_HPA_UID                                       // k8s.hpa.uid
ATTR_K8S_REPLICATIONCONTROLLER_NAME                    // k8s.replicationcontroller.name
ATTR_K8S_REPLICATIONCONTROLLER_UID                     // k8s.replicationcontroller.uid
ATTR_K8S_RESOURCEQUOTA_NAME                            // k8s.resourcequota.name
ATTR_K8S_RESOURCEQUOTA_UID                             // k8s.resourcequota.uid

ATTR_OTEL_COMPONENT_NAME                               // otel.component.name
ATTR_OTEL_COMPONENT_TYPE                               // otel.component.type
  OTEL_COMPONENT_TYPE_VALUE_BATCHING_SPAN_PROCESSOR      // "batching_span_processor"
  OTEL_COMPONENT_TYPE_VALUE_OTLP_GRPC_SPAN_EXPORTER      // "otlp_grpc_span_exporter"
  OTEL_COMPONENT_TYPE_VALUE_OTLP_HTTP_JSON_SPAN_EXPORTER // "otlp_http_json_span_exporter"
  OTEL_COMPONENT_TYPE_VALUE_OTLP_HTTP_SPAN_EXPORTER      // "otlp_http_span_exporter"
  OTEL_COMPONENT_TYPE_VALUE_SIMPLE_SPAN_PROCESSOR        // "simple_span_processor"
ATTR_OTEL_SPAN_SAMPLING_RESULT                         // otel.span.sampling_result
  OTEL_SPAN_SAMPLING_RESULT_VALUE_DROP                   // "DROP"
  OTEL_SPAN_SAMPLING_RESULT_VALUE_RECORD_AND_SAMPLE      // "RECORD_AND_SAMPLE"
  OTEL_SPAN_SAMPLING_RESULT_VALUE_RECORD_ONLY            // "RECORD_ONLY"

ATTR_USER_AGENT_OS_NAME                                // user_agent.os.name
ATTR_USER_AGENT_OS_VERSION                             // user_agent.os.version

v2.0.0

17 Mar 15:57
7fde940
Compare
Choose a tag to compare

2.0.0

Summary

  • The minimum supported Node.js has been raised to ^18.19.0 || >=20.6.0. This means that support for Node.js 14 and 16 has been dropped.
  • The minimum supported TypeScript version has been raised to 5.0.4.
  • The compilation target for transpiled TypeScript has been raised to ES2022 (from ES2017).
  • The public interface has changed
  • Only experimental versions 0.200.0 are compatible with this release

💥 Breaking Change

  • feat(sdk-trace-base)!: Add parentSpanContext and remove parentSpanId from Span and ReadableSpan #5450 @JacksonWeber
    • (user-facing): the SDK's Spans parentSpanId was replaced by parentSpanContext, to migrate to the new property, please replace span.parentSpanId -> span.parentSpanContext?.spanId
  • feat(sdk-metrics)!: drop deprecated type field on MetricDescriptor #5291 @chancancode
  • feat(sdk-metrics)!: drop deprecated InstrumentDescriptor type; use MetricDescriptor instead #5277 @chancancode
  • feat(sdk-metrics)!: bump minimum version of @opentelemetry/api peer dependency to 1.9.0 #5254 @chancancode
  • chore(shim-opentracing): replace deprecated SpanAttributes #4430 @JamieDanielson
  • chore(otel-core): replace deprecated SpanAttributes #4408 @JamieDanielson
  • feat(sdk-metrics)!: remove MeterProvider.addMetricReader() in favor of constructor option #4419 @pichlermarc
  • chore(otel-resources): replace deprecated SpanAttributes #4428 @JamieDanielson
  • feat(sdk-metrics)!: remove MeterProvider.addMetricReader() in favor of constructor option #4419 @pichlermarc
  • feat(sdk-metrics)!: replace attributeKeys with custom processors option #4532 @pichlermarc
  • refactor(sdk-trace-base)!: replace SpanAttributes with Attributes #5009 @david-luna
  • refactor(resources)!: replace ResourceAttributes with Attributes #5016 @david-luna
  • feat(sdk-metrics)!: drop View and Aggregation in favor of ViewOptions and AggregationOption #4931 @pichlermarc
  • refactor(sdk-trace-base)!: remove new Span constructor in favor of Tracer.startSpan API #5048 @david-luna
  • refactor(sdk-trace-base)!: remove BasicTracerProvider.addSpanProcessor API in favor of constructor options. #5134 @david-luna
  • refactor(sdk-trace-base)!: make resource property private in BasicTracerProvider and remove getActiveSpanProcessor API. #5192 @david-luna
  • feat(sdk-metrics)!: extract IMetricReader interface and use it over abstract class #5311
    • (user-facing): MeterProviderOptions now provides the more general IMetricReader type over MetricReader
    • If you accept MetricReader in your public interface, consider accepting the more general IMetricReader instead to avoid unintentional breaking changes
  • feat(sdk-trace)!: remove ability to have BasicTracerProvider instantiate exporters #5239 @pichlermarc
    • When extending BasicTracerProvider, the class offered multiple methods to facilitate the creation of exporters and auto-pairing with SpanProcessors.
      • This functionality has been removed - users may now pass SpanProcessors to the base class constructor when extending
      • (user-facing): _registeredExporters has been removed
      • (user-facing): _getSpanExporter has been removed
      • (user-facing): _buildExporterFromEnv has been removed
  • feat(core)!: remove deprecated IdGenerator and RandomIdGenerator #5309 @pichlermarc
  • feat(core)!: remove deprecated type InstrumentationLibrary #5308 @pichlermarc
    • (user-facing): please use equivalent type InstrumentationScope instead
  • feat(sdk-trace-base)!: replace usages fo InstrumentationLibrary with InstrumentationScope #5308 @pichlermarc
    • (user-facing) rename Tracer.instrumentationLibrary -> Tracer.instrumentationScope
    • (user-facing) rename ReadableSpan.instrumentationLibrary -> ReadableSpan.instrumentationScope
      • also renames the property in implementations of ReadableSpan
  • feat(exporter-jaeger): use ReadableSpan.instrumentationScope over ReadableSpan.instrumentationLibrary #5308 @pichlermarc
  • feat(exporter-zipkin): use ReadableSpan.instrumentationScope over ReadableSpan.instrumentationLibrary #5308 @pichlermarc
  • chore!: update typescript to version 5.0.4 #5145 @david-luna
    • (user-facing) dropped support for typescript@<5.0.4
    • (user-facing) all packages published from this repository will from now on drop support for old versions of typescript in minor releases. We will only drop support for versions that are older than 2 years.
  • feat(core)!: remove deprecated samplers #5316 @pichlermarc
    • (user-facing): deprecated AlwaysOnSampler has moved to @opentelemetry/sdk-trace-base
    • (user-facing): deprecated AlwaysOffSampler has moved to @opentelemetry/sdk-trace-base
    • (user-facing): deprecated ParentBasedSampler has moved to @opentelemetry/sdk-trace-base
    • (user-facing): deprecated TraceIdRatioSampler has moved to @opentelemetry/sdk-trace-base
  • feat(resource): Merge sync and async resource interfaces into a single interface #5350 @dyladan
    • Resource constructor now takes a single argument which contains an optional attributes object
    • Detected resource attribute values may be a promise or a synchronous value
    • Resources are now merged by the order in which their detectors are configured instead of async attributes being last
    • Resource detectors now return DetectedResource plain objects instead of new Resource()
  • feat(sdk-trace-base)!: drop ability to instantiate propagators beyond defaults #5355 @pichlermarc
    • (user-facing): only a non-env-var based default is now used on BasicTracerProvider#register().
      • propagators can now not be configured via OTEL_PROPAGATORS or window.OTEL_PROPAGATORS anymore, please pass the propagator to NodeTracerProvider#register() instead.
      • if not configured directly via code, BasicTracerProvider#register() will now fall back to defaults (tracecontext and baggage)
  • feat(sdk-trace-node)!: drop ability to instantiate propagators beyond defaults #5355 @pichlermarc
    • (user-facing): only a non-env-var based default is now used on NodeTracerProvider#register().
      • propagators can now not be configured via OTEL_PROPAGATORS anymore, please pass the propagator to NodeTracerProvider#register() instead.
      • if not configured via code, NodeTracerProvider#register() will now fall back to the defaults (tracecontext and baggage)
      • if autoconfiguration based on enviornment variables is needed, please use NodeSDK from @opentelemetry/sdk-node.
  • feat(sdk-trace-web)!: drop ability to instantiate propagators beyond defaults #5355 @pichlermarc
    • (user-facing): only a non-env-var based default is now used on WebTracerProvider#register().
      • propagators can now not be configured via window.OTEL_PROPAGATORS anymore, please pass the propagator to WebTracerProvider#register() instead.
      • if not configured via code, WebTracerProvider#register() will now fall back to defaults (tracecontext and baggage)
  • feat(sdk-trace)!: drop unnecessary exports #5405 @pichlermarc
    • (user-facing): EXPORTER_FACTORY is not used anymore and has been removed
    • (user-facing): PROPAGATOR_FACTORY is not used anymore and has been removed
    • (user-facing): ForceFlushState was intended for internal use and has been removed
    • (user-facing): the Tracer class was unintentionally exported and has been removed
      • to obtain a Tracer, please use BasicTracerProvider#getTracer(), NodeTracerProvider#getTracer() or WebTracerProvider#getTracer()
      • to reference a Tracer, please use the Tracer type from @opentelemetry/api
  • chore!: Raise the minimum supported Node.js version to ^18.19.0 || >=20.6.0. Support for Node.js 14, 16, and early minor versions of 18 and 20 have been dropped. This applies to all ...
Read more

experimental/v0.200.0

17 Mar 15:57
7fde940
Compare
Choose a tag to compare

0.200.0

Summary

  • The minimum supported Node.js has been raised to ^18.19.0 || >=20.6.0. This means that support for Node.js 14 and 16 has been dropped.
  • The minimum supported TypeScript version has been raised to 5.0.4.
  • The compilation target for transpiled TypeScript has been raised to ES2022 (from ES2017).
  • The public interface has changed
  • Only stable versions 2.0.0 are compatible with this release

💥 Breaking Change

  • feat(exporter-prometheus)!: stop the using type field to enforce naming conventions #5291 @chancancode
    • Any non-monotonic sums will now be treated as counters and will therefore include the _total suffix.
  • feat(shim-opencenus)!: stop mapping removed Instrument type to OpenTelemetry metrics #5291 @chancancode
    • The internal OpenTelemetry data model dropped the concept of instrument type on exported metrics, therefore mapping it is not necessary anymore.
  • feat(instrumentation-fetch)!: passthrough original response to applyCustomAttributes hook #5281 @chancancode
    • Previously, the fetch instrumentation code unconditionally clones every fetch() response in order to preserve the ability for the applyCustomAttributes hook to consume the response body. This is fundamentally unsound, as it forces the browser to buffer and retain the response body until it is fully received and read, which crates unnecessary memory pressure on large or long-running response streams. In extreme cases, this is effectively a memory leak and can cause the browser tab to crash. If your use case for applyCustomAttributes requires access to the response body, please chime in on #5293.
  • chore!: Raise the minimum supported Node.js version to ^18.19.0 || >=20.6.0. Support for Node.js 14, 16, and early minor versions of 18 and 20 have been dropped. This applies to all packages except the 'api' and 'semantic-conventions' packages. #5395 @trentm
  • feat(sdk-node)!: use IMetricReader over MetricReader #5311
    • (user-facing): NodeSDKConfiguration now provides the more general IMetricReader type over MetricReader
  • feat(exporter-metrics-otlp-http)!: do not read environment variables from window in browsers #5473 @pichlermarc
    • (user-facing): all configuration previously possible via window.OTEL_* is now not supported anymore, please pass configuration options to constructors instead.
    • Note: Node.js environment variable configuration continues to work as-is.
  • feat(sdk-logs)!: do not read environment variables from window in browsers #5472 @pichlermarc
    • (user-facing): all configuration previously possible via window.OTEL_* is now not supported anymore, please pass configuration options to constructors instead.
      • Note: Node.js environment variable configuration continues to work as-is.

🚀 (Enhancement)

  • feat(instrumentation-fetch): add a requestHook option #5380
  • feat(instrumentation): re-export initialize function from import-in-the-middle #5123
  • feat(sdk-node): lower diagnostic level #5360 @cjihrig
  • feat(exporter-prometheus): add additional attributes option #5317 @marius-a-mueller
    • Add withResourceConstantLabels option to ExporterConfig. It can be used to define a regex pattern to choose which resource attributes will be used as static labels on the metrics. The default is to not set any static labels.

🐛 (Bug Fix)

  • fix(instrumentation-grpc): monitor error events with events.errorMonitor #5369 @cjihrig
  • fix(exporter-metrics-otlp-http): browser OTLPMetricExporter was not passing config to OTLPMetricExporterBase super class #5331 @trentm
  • fix(instrumentation-fetch, instrumentation-xhr): Ignore network events with zero-timings #5332 @chancancode
  • fix(exporter-logs/trace-otlp-grpc): fix error for missing dependency otlp-exporter-base #5412 @JamieDanielson

🏠 (Internal)

  • chore(instrumentation-grpc): remove unused findIndex() function #5372 @cjihrig
  • refactor(otlp-exporter-base): remove unnecessary isNaN() checks #5374 @cjihrig
  • refactor(exporter-prometheus): remove unnecessary isNaN() check #5377 @cjihrig
  • refactor(sdk-node): move code to auto-instantiate propagators into utils #5355 @pichlermarc
  • chore: unpin @opentelemetry/semantic-conventions dep to allow better de-duplication in installs #5439 @trentm
  • refactor(instrumentation-http): migrate away from getEnv() #5469 @pichlermarc
  • refactor(sdk-node): migrate away from getEnv() #5475 @pichlermarc

experimental/v0.57.2

13 Feb 17:14
ac8641a
Compare
Choose a tag to compare

0.57.2

🐛 (Bug Fix)

  • fix(exporter-logs/trace-otlp-grpc): fix error for missing dependency otlp-exporter-base #5470 @JamieDanielson

semconv/v1.30.0

12 Feb 00:51
9feaee3
Compare
Choose a tag to compare

1.30.0

🚀 (Enhancement)

  • feat: update semantic conventions to v1.30.0 #5433 @trentm
    • Semantic Conventions v1.30.0: changelog | latest docs
    • @opentelemetry/semantic-conventions (stable) changes: 1 newly deprecated exports, 25 added exports
    • @opentelemetry/semantic-conventions/incubating (unstable) changes: 24 newly deprecated exports, 165 added exports

Stable changes in v1.30.0

1 newly deprecated exports
ATTR_EXCEPTION_ESCAPED // exception.escaped: It's no longer recommended to record exceptions that are handled and do not escape the scope of a span.
25 added exports
METRIC_DOTNET_ASSEMBLY_COUNT                             // dotnet.assembly.count
METRIC_DOTNET_EXCEPTIONS                                 // dotnet.exceptions
METRIC_DOTNET_GC_COLLECTIONS                             // dotnet.gc.collections
METRIC_DOTNET_GC_HEAP_TOTAL_ALLOCATED                    // dotnet.gc.heap.total_allocated
METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_FRAGMENTATION_SIZE // dotnet.gc.last_collection.heap.fragmentation.size
METRIC_DOTNET_GC_LAST_COLLECTION_HEAP_SIZE               // dotnet.gc.last_collection.heap.size
METRIC_DOTNET_GC_LAST_COLLECTION_MEMORY_COMMITTED_SIZE   // dotnet.gc.last_collection.memory.committed_size
METRIC_DOTNET_GC_PAUSE_TIME                              // dotnet.gc.pause.time
METRIC_DOTNET_JIT_COMPILATION_TIME                       // dotnet.jit.compilation.time
METRIC_DOTNET_JIT_COMPILED_IL_SIZE                       // dotnet.jit.compiled_il.size
METRIC_DOTNET_JIT_COMPILED_METHODS                       // dotnet.jit.compiled_methods
METRIC_DOTNET_MONITOR_LOCK_CONTENTIONS                   // dotnet.monitor.lock_contentions
METRIC_DOTNET_PROCESS_CPU_COUNT                          // dotnet.process.cpu.count
METRIC_DOTNET_PROCESS_CPU_TIME                           // dotnet.process.cpu.time
METRIC_DOTNET_PROCESS_MEMORY_WORKING_SET                 // dotnet.process.memory.working_set
METRIC_DOTNET_THREAD_POOL_QUEUE_LENGTH                   // dotnet.thread_pool.queue.length
METRIC_DOTNET_THREAD_POOL_THREAD_COUNT                   // dotnet.thread_pool.thread.count
METRIC_DOTNET_THREAD_POOL_WORK_ITEM_COUNT                // dotnet.thread_pool.work_item.count
METRIC_DOTNET_TIMER_COUNT                                // dotnet.timer.count
ATTR_DOTNET_GC_HEAP_GENERATION                           // dotnet.gc.heap.generation
  DOTNET_GC_HEAP_GENERATION_VALUE_GEN0                     // "gen0"
  DOTNET_GC_HEAP_GENERATION_VALUE_GEN1                     // "gen1"
  DOTNET_GC_HEAP_GENERATION_VALUE_GEN2                     // "gen2"
  DOTNET_GC_HEAP_GENERATION_VALUE_LOH                      // "loh"
  DOTNET_GC_HEAP_GENERATION_VALUE_POH                      // "poh"

Unstable changes in v1.30.0

24 newly deprecated exports
METRIC_DB_CLIENT_COSMOSDB_ACTIVE_INSTANCE_COUNT    // db.client.cosmosdb.active_instance.count: Replaced by `azure.cosmosdb.client.active_instance.count`.
METRIC_DB_CLIENT_COSMOSDB_OPERATION_REQUEST_CHARGE // db.client.cosmosdb.operation.request_charge: Replaced by `azure.cosmosdb.client.operation.request_charge`.
ATTR_CODE_COLUMN                                   // code.column: Replaced by `code.column.number`
ATTR_CODE_FUNCTION                                 // code.function: Replaced by `code.function.name`
ATTR_CODE_LINENO                                   // code.lineno: Replaced by `code.line.number`
ATTR_DB_CASSANDRA_CONSISTENCY_LEVEL                // db.cassandra.consistency_level: Replaced by `cassandra.consistency.level`.
ATTR_DB_CASSANDRA_COORDINATOR_DC                   // db.cassandra.coordinator.dc: Replaced by `cassandra.coordinator.dc`.
ATTR_DB_CASSANDRA_COORDINATOR_ID                   // db.cassandra.coordinator.id: Replaced by `cassandra.coordinator.id`.
ATTR_DB_CASSANDRA_IDEMPOTENCE                      // db.cassandra.idempotence: Replaced by `cassandra.query.idempotent`.
ATTR_DB_CASSANDRA_PAGE_SIZE                        // db.cassandra.page_size: Replaced by `cassandra.page.size`.
ATTR_DB_CASSANDRA_SPECULATIVE_EXECUTION_COUNT      // db.cassandra.speculative_execution_count: Replaced by `cassandra.speculative_execution.count`.
ATTR_DB_COSMOSDB_CLIENT_ID                         // db.cosmosdb.client_id: Replaced by `azure.client.id`.
ATTR_DB_COSMOSDB_CONNECTION_MODE                   // db.cosmosdb.connection_mode: Replaced by `azure.cosmosdb.connection.mode`.
ATTR_DB_COSMOSDB_CONSISTENCY_LEVEL                 // db.cosmosdb.consistency_level: Replaced by `azure.cosmosdb.consistency.level`.
ATTR_DB_COSMOSDB_REGIONS_CONTACTED                 // db.cosmosdb.regions_contacted: Replaced by `azure.cosmosdb.operation.contacted_regions`.
ATTR_DB_COSMOSDB_REQUEST_CHARGE                    // db.cosmosdb.request_charge: Replaced by `azure.cosmosdb.operation.request_charge`.
ATTR_DB_COSMOSDB_REQUEST_CONTENT_LENGTH            // db.cosmosdb.request_content_length: Replaced by `azure.cosmosdb.request.body.size`.
ATTR_DB_COSMOSDB_SUB_STATUS_CODE                   // db.cosmosdb.sub_status_code: Replaced by `azure.cosmosdb.response.sub_status_code`.
ATTR_DB_ELASTICSEARCH_NODE_NAME                    // db.elasticsearch.node.name: Replaced by `elasticsearch.node.name`.
ATTR_DB_ELASTICSEARCH_PATH_PARTS                   // (key) => `db.elasticsearch.path_parts.${key}`: Replaced by `db.operation.parameter`.
ATTR_DB_SYSTEM                                     // db.system: Replaced by `db.system.name`.
ATTR_EVENT_NAME                                    // event.name: Replaced by EventName top-level field on the LogRecord
ATTR_GEN_AI_OPENAI_REQUEST_SEED                    // gen_ai.openai.request.seed: Replaced by `gen_ai.request.seed` attribute.
ATTR_SYSTEM_NETWORK_STATE                          // system.network.state: Removed, report network connection state with `network.connection.state` attribute
165 added exports
METRIC_AZURE_COSMOSDB_CLIENT_ACTIVE_INSTANCE_COUNT       // azure.cosmosdb.client.active_instance.count
METRIC_AZURE_COSMOSDB_CLIENT_OPERATION_REQUEST_CHARGE    // azure.cosmosdb.client.operation.request_charge

METRIC_CICD_PIPELINE_RUN_ACTIVE                          // cicd.pipeline.run.active
METRIC_CICD_PIPELINE_RUN_DURATION                        // cicd.pipeline.run.duration
METRIC_CICD_PIPELINE_RUN_ERRORS                          // cicd.pipeline.run.errors
METRIC_CICD_SYSTEM_ERRORS                                // cicd.system.errors
METRIC_CICD_WORKER_COUNT                                 // cicd.worker.count

METRIC_K8S_CRONJOB_ACTIVE_JOBS                           // k8s.cronjob.active_jobs
METRIC_K8S_DAEMONSET_CURRENT_SCHEDULED_NODES             // k8s.daemonset.current_scheduled_nodes
METRIC_K8S_DAEMONSET_DESIRED_SCHEDULED_NODES             // k8s.daemonset.desired_scheduled_nodes
METRIC_K8S_DAEMONSET_MISSCHEDULED_NODES                  // k8s.daemonset.misscheduled_nodes
METRIC_K8S_DAEMONSET_READY_NODES                         // k8s.daemonset.ready_nodes
METRIC_K8S_DEPLOYMENT_AVAILABLE_PODS                     // k8s.deployment.available_pods
METRIC_K8S_DEPLOYMENT_DESIRED_PODS                       // k8s.deployment.desired_pods
METRIC_K8S_HPA_CURRENT_PODS                              // k8s.hpa.current_pods
METRIC_K8S_HPA_DESIRED_PODS                              // k8s.hpa.desired_pods
METRIC_K8S_HPA_MAX_PODS                                  // k8s.hpa.max_pods
METRIC_K8S_HPA_MIN_PODS                                  // k8s.hpa.min_pods
METRIC_K8S_JOB_ACTIVE_PODS                               // k8s.job.active_pods
METRIC_K8S_JOB_DESIRED_SUCCESSFUL_PODS                   // k8s.job.desired_successful_pods
METRIC_K8S_JOB_FAILED_PODS                               // k8s.job.failed_pods
METRIC_K8S_JOB_MAX_PARALLEL_PODS                         // k8s.job.max_parallel_pods
METRIC_K8S_JOB_SUCCESSFUL_PODS                           // k8s.job.successful_pods
METRIC_K8S_NAMESPACE_PHASE                               // k8s.namespace.phase
METRIC_K8S_REPLICASET_AVAILABLE_PODS                     // k8s.replicaset.available_pods
METRIC_K8S_REPLICASET_DESIRED_PODS                       // k8s.replicaset.desired_pods
METRIC_K8S_REPLICATION_CONTROLLER_AVAILABLE_PODS         // k8s.replication_controller.available_pods
METRIC_K8S_REPLICATION_CONTROLLER_DESIRED_PODS           // k8s.replication_controller.desired_pods
METRIC_K8S_STATEFULSET_CURRENT_PODS                      // k8s.statefulset.current_pods
METRIC_K8S_STATEFULSET_DESIRED_PODS                      // k8s.statefulset.desired_pods
METRIC_K8S_STATEFULSET_READY_PODS                        // k8s.statefulset.ready_pods
METRIC_K8S_STATEFULSET_UPDATED_PODS                      // k8s.statefulset.updated_pods

METRIC_VCS_CHANGE_TIME_TO_MERGE                          // vcs.change.time_to_merge

ATTR_AWS_EXTENDED_REQUEST_ID                             // aws.extended_request_id

ATTR_AZURE_CLIENT_ID                                     // azure.client.id
ATTR_AZURE_COSMOSDB_CONNECTION_MODE                      // azure.cosmosdb.connection.mode
  AZURE_COSMOSDB_CONNECTION_MODE_VALUE_DIRECT              // "direct"
  AZURE_COSMOSDB_CONNECTION_MODE_VALUE_GATEWAY             // "gateway"
ATTR_AZURE_COSMOSDB_CONSISTENCY_LEVEL                    // azure.cosmosdb.consistency.level
  AZURE_COSMOSDB_CONSISTENCY_LEVEL_VALUE_BOUNDED_STALENESS // "BoundedStaleness"
  AZURE_COSMOSDB_CONSISTENCY_LEVEL_VALUE_CONSISTENT_PREFIX // "ConsistentPrefix"
  AZURE_COSMO...
Read more

semconv/v1.29.0

06 Feb 21:02
6508845
Compare
Choose a tag to compare

1.29.0

🚀 (Enhancement)

  • feat: update semantic conventions to v1.29.0 #5356 @trentm
    • Semantic Conventions v1.29.0:
      changelog |
      latest docs
    • @opentelemetry/semantic-conventions (stable) changes: none
    • @opentelemetry/semantic-conventions/incubating (unstable) changes: 8 newly deprecated exports, 95 added exports

Unstable changes in v1.29.0

8 newly deprecated exports
ATTR_DB_COSMOSDB_OPERATION_TYPE            // db.cosmosdb.operation_type: No replacement at this time.
ATTR_DB_QUERY_PARAMETER                    // (key) => `db.query.parameter.${key}`: Replaced by `db.operation.parameter`.
ATTR_PROCESS_EXECUTABLE_BUILD_ID_PROFILING // process.executable.build_id.profiling: Replaced by `process.executable.build_id.htlhash`
ATTR_VCS_REPOSITORY_CHANGE_ID              // vcs.repository.change.id: Deprecated, use `vcs.change.id` instead.
ATTR_VCS_REPOSITORY_CHANGE_TITLE           // vcs.repository.change.title: Deprecated, use `vcs.change.title` instead.
ATTR_VCS_REPOSITORY_REF_NAME               // vcs.repository.ref.name: Deprecated, use `vcs.ref.head.name` instead.
ATTR_VCS_REPOSITORY_REF_REVISION           // vcs.repository.ref.revision: Deprecated, use `vcs.ref.head.revision` instead.
ATTR_VCS_REPOSITORY_REF_TYPE               // vcs.repository.ref.type: Deprecated, use `vcs.ref.head.type` instead.
95 added exports
METRIC_CONTAINER_UPTIME                               // container.uptime

METRIC_DB_CLIENT_COSMOSDB_ACTIVE_INSTANCE_COUNT       // db.client.cosmosdb.active_instance.count
METRIC_DB_CLIENT_COSMOSDB_OPERATION_REQUEST_CHARGE    // db.client.cosmosdb.operation.request_charge
METRIC_DB_CLIENT_RESPONSE_RETURNED_ROWS               // db.client.response.returned_rows

METRIC_K8S_NODE_NETWORK_ERRORS                        // k8s.node.network.errors
METRIC_K8S_NODE_NETWORK_IO                            // k8s.node.network.io
METRIC_K8S_NODE_UPTIME                                // k8s.node.uptime
METRIC_K8S_POD_NETWORK_ERRORS                         // k8s.pod.network.errors
METRIC_K8S_POD_NETWORK_IO                             // k8s.pod.network.io
METRIC_K8S_POD_UPTIME                                 // k8s.pod.uptime

METRIC_SYSTEM_UPTIME                                  // system.uptime

METRIC_VCS_CHANGE_COUNT                               // vcs.change.count
METRIC_VCS_CHANGE_DURATION                            // vcs.change.duration
METRIC_VCS_CHANGE_TIME_TO_APPROVAL                    // vcs.change.time_to_approval
METRIC_VCS_CONTRIBUTOR_COUNT                          // vcs.contributor.count
METRIC_VCS_REF_COUNT                                  // vcs.ref.count
METRIC_VCS_REF_LINES_DELTA                            // vcs.ref.lines_delta
METRIC_VCS_REF_REVISIONS_DELTA                        // vcs.ref.revisions_delta
METRIC_VCS_REF_TIME                                   // vcs.ref.time
METRIC_VCS_REPOSITORY_COUNT                           // vcs.repository.count

ATTR_DB_COSMOSDB_CONSISTENCY_LEVEL                    // db.cosmosdb.consistency_level
  DB_COSMOSDB_CONSISTENCY_LEVEL_VALUE_BOUNDED_STALENESS // "BoundedStaleness"
  DB_COSMOSDB_CONSISTENCY_LEVEL_VALUE_CONSISTENT_PREFIX // "ConsistentPrefix"
  DB_COSMOSDB_CONSISTENCY_LEVEL_VALUE_EVENTUAL          // "Eventual"
  DB_COSMOSDB_CONSISTENCY_LEVEL_VALUE_SESSION           // "Session"
  DB_COSMOSDB_CONSISTENCY_LEVEL_VALUE_STRONG            // "Strong"
ATTR_DB_COSMOSDB_REGIONS_CONTACTED                    // db.cosmosdb.regions_contacted
ATTR_DB_OPERATION_PARAMETER                           // (key) => `db.operation.parameter.${key}`
ATTR_DB_QUERY_SUMMARY                                 // db.query.summary
ATTR_DB_RESPONSE_RETURNED_ROWS                        // db.response.returned_rows

ATTR_FEATURE_FLAG_CONTEXT_ID                          // feature_flag.context.id
ATTR_FEATURE_FLAG_EVALUATION_ERROR_MESSAGE            // feature_flag.evaluation.error.message
ATTR_FEATURE_FLAG_EVALUATION_REASON                   // feature_flag.evaluation.reason
  FEATURE_FLAG_EVALUATION_REASON_VALUE_CACHED           // "cached"
  FEATURE_FLAG_EVALUATION_REASON_VALUE_DEFAULT          // "default"
  FEATURE_FLAG_EVALUATION_REASON_VALUE_DISABLED         // "disabled"
  FEATURE_FLAG_EVALUATION_REASON_VALUE_ERROR            // "error"
  FEATURE_FLAG_EVALUATION_REASON_VALUE_SPLIT            // "split"
  FEATURE_FLAG_EVALUATION_REASON_VALUE_STALE            // "stale"
  FEATURE_FLAG_EVALUATION_REASON_VALUE_STATIC           // "static"
  FEATURE_FLAG_EVALUATION_REASON_VALUE_TARGETING_MATCH  // "targeting_match"
  FEATURE_FLAG_EVALUATION_REASON_VALUE_UNKNOWN          // "unknown"
ATTR_FEATURE_FLAG_SET_ID                              // feature_flag.set.id
ATTR_FEATURE_FLAG_VERSION                             // feature_flag.version

ATTR_GEN_AI_OPENAI_RESPONSE_SYSTEM_FINGERPRINT        // gen_ai.openai.response.system_fingerprint
GEN_AI_OPERATION_NAME_VALUE_EMBEDDINGS                // "embeddings"
ATTR_GEN_AI_REQUEST_ENCODING_FORMATS                  // gen_ai.request.encoding_formats
GEN_AI_SYSTEM_VALUE_AWS_BEDROCK                       // "aws.bedrock"
GEN_AI_SYSTEM_VALUE_AZ_AI_INFERENCE                   // "az.ai.inference"
GEN_AI_SYSTEM_VALUE_IBM_WATSONX_AI                    // "ibm.watsonx.ai"

ATTR_GEO_CONTINENT_CODE                               // geo.continent.code
  GEO_CONTINENT_CODE_VALUE_AF                           // "AF"
  GEO_CONTINENT_CODE_VALUE_AN                           // "AN"
  GEO_CONTINENT_CODE_VALUE_AS                           // "AS"
  GEO_CONTINENT_CODE_VALUE_EU                           // "EU"
  GEO_CONTINENT_CODE_VALUE_NA                           // "NA"
  GEO_CONTINENT_CODE_VALUE_OC                           // "OC"
  GEO_CONTINENT_CODE_VALUE_SA                           // "SA"
ATTR_GEO_COUNTRY_ISO_CODE                             // geo.country.iso_code
ATTR_GEO_LOCALITY_NAME                                // geo.locality.name
ATTR_GEO_LOCATION_LAT                                 // geo.location.lat
ATTR_GEO_LOCATION_LON                                 // geo.location.lon
ATTR_GEO_POSTAL_CODE                                  // geo.postal_code
ATTR_GEO_REGION_ISO_CODE                              // geo.region.iso_code

ATTR_PROCESS_EXECUTABLE_BUILD_ID_HTLHASH              // process.executable.build_id.htlhash
ATTR_PROCESS_LINUX_CGROUP                             // process.linux.cgroup

ATTR_USER_AGENT_SYNTHETIC_TYPE                        // user_agent.synthetic.type
  USER_AGENT_SYNTHETIC_TYPE_VALUE_BOT                   // "bot"
  USER_AGENT_SYNTHETIC_TYPE_VALUE_TEST                  // "test"

ATTR_VCS_CHANGE_ID                                    // vcs.change.id
ATTR_VCS_CHANGE_STATE                                 // vcs.change.state
  VCS_CHANGE_STATE_VALUE_CLOSED                         // "closed"
  VCS_CHANGE_STATE_VALUE_MERGED                         // "merged"
  VCS_CHANGE_STATE_VALUE_OPEN                           // "open"
  VCS_CHANGE_STATE_VALUE_WIP                            // "wip"
ATTR_VCS_CHANGE_TITLE                                 // vcs.change.title
ATTR_VCS_LINE_CHANGE_TYPE                             // vcs.line_change.type
  VCS_LINE_CHANGE_TYPE_VALUE_ADDED                      // "added"
  VCS_LINE_CHANGE_TYPE_VALUE_REMOVED                    // "removed"
ATTR_VCS_REF_BASE_NAME                                // vcs.ref.base.name
ATTR_VCS_REF_BASE_REVISION                            // vcs.ref.base.revision
ATTR_VCS_REF_BASE_TYPE                                // vcs.ref.base.type
  VCS_REF_BASE_TYPE_VALUE_BRANCH                        // "branch"
  VCS_REF_BASE_TYPE_VALUE_TAG                           // "tag"
ATTR_VCS_REF_HEAD_NAME                                // vcs.ref.head.name
ATTR_VCS_REF_HEAD_REVISION                            // vcs.ref.head.revision
ATTR_VCS_REF_HEAD_TYPE                                // vcs.ref.head.type
  VCS_REF_HEAD_TYPE_VALUE_BRANCH                        // "branch"
  VCS_REF_HEAD_TYPE_VALUE_TAG                           // "tag"
ATTR_VCS_REF_TYPE                                     // vcs.ref.type
  VCS_REF_TYPE_VALUE_BRANCH                             // "branch"
  VCS_REF_TYPE_VALUE_TAG                                // "tag"
ATTR_VCS_REVISION_DELTA_DIRECTION                     // vcs.revision_delta.direction
  VCS_REVISION_DELTA_DIRECTION_VALUE_AHEAD              // "ahead"
  VCS_REVISION_DELTA_DIRECTION_VALUE_BEHIND             // "behind"

📚 (Refine Doc)

  • docs: Document suggested usage of unstable semconv: copy relevant definitions into your code base. #5182 @trentm

v1.30.1

14 Jan 09:18
cbc912d
Compare
Choose a tag to compare

1.30.1

🐛 (Bug Fix)

  • fix(sdk-metrics): do not export from PeriodicExportingMetricReader when there are no metrics to export. #5288 @JacksonWeber

🏠 (Internal)

experimental/v0.57.1

14 Jan 09:18
cbc912d
Compare
Choose a tag to compare

0.57.1

🐛 (Bug Fix)

  • fix(exporter-metrics-otlp-http): browser OTLPMetricExporter was not passing config to OTLPMetricExporterBase super class #5331 @trentm

v1.30.0

18 Dec 10:13
616d27a
Compare
Choose a tag to compare

1.30.0

🚀 (Enhancement)

  • feat(sdk-metrics): PeriodicExportingMetricReader now flushes pending tasks at shutdown #5242

🐛 (Bug Fix)

  • fix(sdk-trace-base): do not load OTEL_ env vars on module load, but when needed #5233
  • fix(instrumentation-xhr, instrumentation-fetch): content length attributes no longer get removed with ignoreNetworkEvents: true being set #5229