将 @opentelemetry/core 从 1.x 升级到 2.x
根据 TypeScript 类型自动比较 @opentelemetry/core 1.30.1 与 2.11.0 的公开 API。签名变化表示可能存在不兼容变更,并非确定结论。
概要
| 已删除的导入路径 | 0 |
|---|---|
| 已删除的导出 | 26 |
| 已修改的签名 | 5 |
| 已删除的类或接口成员 | 3 |
| 已修改的类或接口成员 | 1 |
| 新增弃用 | 4 |
| 要求变化(engines、peer 依赖) | 1 |
| 新增导出 | 7 |
已删除的导出
| import | export | kind | 之前 |
|---|---|---|---|
@opentelemetry/core | getEnv | function | (): Required<ENVIRONMENT> |
@opentelemetry/core | VERSION | variable | "1.30.1" |
@opentelemetry/core | isWrapped | function | (func: unknown): func is ShimWrapped |
@opentelemetry/core | ENVIRONMENT | type | { CONTAINER_NAME?: string | undefined; ECS_CONTAINER_METADATA_URI_V4?: string | undefined; ECS_CONTAINER_METADATA_URI?: string | undefined; HOSTNAME?: string | undefined; KUBERNETES_SERVICE_HOST?: string | undefined; NAMESPACE?: string | undefined; OTEL_EXPORTER_JAEGER_AGENT_HOST?: string | undefined; OTEL_EXPORTER_JAEGER_ENDPOINT?: string | undefined; OTEL_EXPORTER_JAEGER_PASSWORD?: string | undefined; OTEL_EXPORTER_JAEGER_USER?: string | undefined; OTEL_EXPORTER_OTLP_ENDPOINT?: string | undefined; OTEL_EXPORTER_OTLP_TRACES_ENDPOINT?: string | undefined; OTEL_EXPORTER_OTLP_METRICS_ENDPOINT?: … |
@opentelemetry/core | IdGenerator | interface | interface |
@opentelemetry/core | ShimWrapped | interface | interface |
@opentelemetry/core | hexToBase64 | function | (hexStr: string): string |
@opentelemetry/core | hexToBinary | function | (hexStr: string): Uint8Array<ArrayBufferLike> |
@opentelemetry/core | baggageUtils | variable | { getKeyPairs: (baggage: Baggage) => string[]; serializeKeyPairs: (keyPairs: string[]) => string; parseKeyPairsIntoRecord: (value?: string | undefined) => Record<string, string>; parsePairKeyValue: (entry: string) => ParsedBaggageKeyValue | undefined; } |
@opentelemetry/core | isAttributeKey | function | (key: unknown): key is string |
@opentelemetry/core | AlwaysOnSampler | class | class |
@opentelemetry/core | RAW_ENVIRONMENT | type | { [key: string]: string | number | string[] | undefined; } |
@opentelemetry/core | AlwaysOffSampler | class | class |
@opentelemetry/core | TimeOriginLegacy | interface | interface |
@opentelemetry/core | parseEnvironment | function | (values: RAW_ENVIRONMENT): ENVIRONMENT |
@opentelemetry/core | RandomIdGenerator | class | class |
@opentelemetry/core | ParentBasedSampler | class | class |
@opentelemetry/core | DEFAULT_ENVIRONMENT | variable | Required<ENVIRONMENT> |
@opentelemetry/core | TracesSamplerValues | enum | TracesSamplerValues |
@opentelemetry/core | getEnvWithoutDefaults | function | (): ENVIRONMENT |
@opentelemetry/core | InstrumentationLibrary | interface | interface |
@opentelemetry/core | TraceIdRatioBasedSampler | class | class |
@opentelemetry/core | DEFAULT_ATTRIBUTE_COUNT_LIMIT | variable | 128 |
@opentelemetry/core | DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT | variable | number |
@opentelemetry/core | DEFAULT_SPAN_ATTRIBUTE_PER_LINK_COUNT_LIMIT | variable | 128 |
@opentelemetry/core | DEFAULT_SPAN_ATTRIBUTE_PER_EVENT_COUNT_LIMIT | variable | 128 |
已修改的签名
| export | 之前 | 之后 |
|---|---|---|
@opentelemetry/core · SDK_INFO | { "telemetry.sdk.name": string; "process.runtime.name": string; "telemetry.sdk.language": string; "telemetry.sdk.version": string; } | { "telemetry.sdk.name": string; "process.runtime.name": string; "telemetry.sdk.language": "nodejs"; "telemetry.sdk.version": string; } |
@opentelemetry/core · unrefTimer | (timer: NodeJS.Timer): void | (timer: number | { unref(): unknown; }): void |
@opentelemetry/core · otperformance | any | { now(): number; readonly timeOrigin: number; } |
@opentelemetry/core · isAttributeValue | (val: unknown): val is SpanAttributeValue | (val: unknown): val is AttributeValue |
@opentelemetry/core · sanitizeAttributes | (attributes: unknown): SpanAttributes | (attributes: unknown): Attributes |
已删除的类或接口成员
| member | import | 之前 |
|---|---|---|
TraceState._keys | @opentelemetry/core | any |
TraceState._clone | @opentelemetry/core | any |
TraceState._parse | @opentelemetry/core | any |
已修改的类或接口成员
| member | 之前 | 之后 |
|---|---|---|
BindOnceFuture.constructor | <R, This = unknown, T extends (this: This, ...args: unknown[]) => R = () => R>(_callback: T, _that: This): BindOnceFuture<R, This, T> | <R, This = unknown, T extends (this: This, ...args: unknown[]) => R = () => R>(callback: T, that: This): BindOnceFuture<R, This, T> |
新增弃用
| export | @deprecated |
|---|---|
@opentelemetry/core · unrefTimer | please copy this code to your implementation instead, this function will be removed in the next major version of this package. |
@opentelemetry/core · _globalThis | Use globalThis directly instead. |
@opentelemetry/core · getTimeOrigin | Use `performance.timeOrigin` directly. |
@opentelemetry/core · otperformance | Use performance directly. |
要求变化(engines、peer 依赖)
| 之前 | 之后 | |
|---|---|---|
engines.node | >=14 | ^18.19.0 || >=20.6.0 |
新增导出 (7)
| import | export | kind |
|---|---|---|
@opentelemetry/core | hrTimeToSeconds | function |
@opentelemetry/core | getNumberFromEnv | function |
@opentelemetry/core | getStringFromEnv | function |
@opentelemetry/core | getBooleanFromEnv | function |
@opentelemetry/core | getStringListFromEnv | function |
@opentelemetry/core | diagLogLevelFromString | function |
@opentelemetry/core | parseKeyPairsIntoRecord | function |
常见问题
将 @opentelemetry/core 从 1 升级到 2 有哪些不兼容变更?
在 @opentelemetry/core 1.30.1 与 2.11.0 之间,Vigia 发现 26 个已删除的导出、5 个已修改的签名,以及 4 个已删除或修改的类或接口成员。
@opentelemetry/core 2 中弃用了哪些内容?
@opentelemetry/core 2.11.0 中有 4 个导出或成员新被标记为弃用。
供智能体使用
GET https://vigia.coredls.cloud/v1/packages/npm/@opentelemetry/core/upgrade?from=1.30.1&to=2.11.0