Skip to content

Releases: open-telemetry/opentelemetry-js

semconv/v1.29.0

06 Feb 21:02
6508845

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

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

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

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

experimental/v0.57.0

18 Dec 10:14
616d27a

Choose a tag to compare

0.57.0

🚀 (Enhancement)

  • feat(opentelemetry-sdk-node): automatically configure metrics exporter based on environment variables #5168 @bhaskarbanerjee

🏠 (Internal)

  • refactor(otlp-transformer): re-structure package to prepare for separate entrypoints #5264 @pichlermarc

v1.29.0

04 Dec 16:33
85dcbc7

Choose a tag to compare

1.29.0

🚀 (Enhancement)

  • feat(sdk-metrics): Add support for aggregation cardinality limit with a default limit of 2000. This limit can be customized via views #5128

experimental/v0.56.0

04 Dec 16:34
85dcbc7

Choose a tag to compare

0.56.0

💥 Breaking Change

  • feat(otlp-exporter-base)!: collapse base classes into one #5031 @pichlermarc
    • OTLPExporterNodeBase has been removed in favor of a platform-agnostic implementation (OTLPExporterBase)
    • OTLPExporterBrowserBase has been removed in favor of a platform-agnostic implementation (OTLPExporterBase)
    • ExportServiceError was intended for internal use and has been dropped from exports
    • validateAndNormalizeHeaders was intended for internal use and has been dropped from exports
    • OTLPExporterBase all properties are now private, the constructor now takes an IOTLPExportDelegate, 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, PushMetricExporter or LogRecordExporter, based on their respective type.
  • feat(otlp-grpc-exporter-base)!: collapse base classes into one #5031 @pichlermarc
    • OTLPGRPCExporterNodeBase has been removed in favor of a platform-agnostic implementation (OTLPExporterBase from @opentelemetry/otlp-exporter-base)
  • feat(otlp-transformer)!: accept ResourceMetrics in serializers instead of ResourceMetrics[]
    • (user-facing): ProtobufMetricsSerializer now only accepts ResourceMetrics instead of ResourceMetrics[] to align with PushMetricExporter requirements
    • (user-facing): JsonMetricsSerializer now only accepts ResourceMetrics instead of ResourceMetrics[] to align with PushMetricExporter requirements

🚀 (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)

semconv/v1.28.0

20 Nov 21:29
e97cc2e

Choose a tag to compare

1.28.0

🚀 (Enhancement)

📚 (Refine Doc)

  • chore: Improve documentation on entry-points (top-level and "incubating") and on deprecations. #5025 @trentm

🏠 (Internal)

  • chore: Update the comments of some deprecated constants to point to the currently relevant replacement constant, if any. #5160 @trentm
  • chore: Minor improvements to formatting of comments. #5100 @trentm

v1.28.0

18 Nov 11:21
4b1ad3f

Choose a tag to compare

1.28.0

🚀 (Enhancement)

  • feat(sdk-metrics, sdk-trace): add mergeResourceWithDefaults flag, which allows opting-out of resources getting merged with the default resource #4617

    • default: true (no change in behavior)
    • note: false will become the default behavior in the next major version in order to comply with specification requirements
  • feat(sdk-trace-base): add spanProcessors property in TracerConfig interface. #5138 @david-luna

🐛 (Bug Fix)

  • fix(sdk-metrics): await exports in PeriodicExportingMetricReader when 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

18 Nov 11:21
4b1ad3f

Choose a tag to compare

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

🚀 (Enhancement)

  • feat(sdk-node, sdk-logs): add mergeResourceWithDefaults flag, which allows opting-out of resources getting merged with the default resource #4617
    • default: true
    • note: false will become the default behavior in a future iteration in order to comply with specification requirements
  • feat(instrumentation): Track request body size in XHR and Fetch instrumentations #4706 @MustafaHaddara

🐛 (Bug Fix)

  • fix(instrumentation-http): Fix the OTEL_SEMCONV_STABILITY_OPT_IN variable check. Using of instead of in #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