diff --git a/README.md b/README.md index 30d8ba27cf7..08ef0237838 100644 --- a/README.md +++ b/README.md @@ -245,12 +245,10 @@ To request automatic tracing support for a module not on this list, please [file ## Upgrade guidelines -### 0.19.0 to 1.0.0-rc.0 +### 0.18.x to 0.19.0 - All plugins have been removed in favor of instrumentations. - -### 0.18.0 to 0.19.0 - + - The `@opentelemetry/propagator-b3` package previously exported three propagators: `B3Propagator`,`B3SinglePropagator`, and `B3MultiPropagator`, but now only exports the `B3Propagator`. It extracts b3 context in single and multi-header encodings, and injects context using the single-header encoding by default, but can be configured to inject context using the multi-header endcoding during construction: `new B3Propagator({ injectEncoding: B3InjectEncoding.MULTI_HEADER })`. If you were previously using the `B3SinglePropagator` or `B3MultiPropagator` directly, you should update your code to use the `B3Propagator` with the appropriate configuration. See the [readme](./packages/opentelemetry-propagator-b3/readme.md) for full details and usage. ### 0.17.0 to 0.18.0 diff --git a/backwards-compatability/node10/package.json b/backwards-compatability/node10/package.json index 46b48ca9bda..00cf230b7c8 100644 --- a/backwards-compatability/node10/package.json +++ b/backwards-compatability/node10/package.json @@ -8,12 +8,12 @@ "test:backcompat": "tsc --noEmit index.ts" }, "dependencies": { - "@opentelemetry/sdk-node": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2" + "@opentelemetry/sdk-node": "0.18.2", + "@opentelemetry/tracing": "0.18.2" }, "devDependencies": { "@types/node": "10.17.56", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "author": "OpenTelemetry Authors", "license": "Apache-2.0" diff --git a/backwards-compatability/node12/package.json b/backwards-compatability/node12/package.json index 4be8e0d8453..16994dc8a80 100644 --- a/backwards-compatability/node12/package.json +++ b/backwards-compatability/node12/package.json @@ -8,12 +8,12 @@ "test:backcompat": "tsc --noEmit index.ts" }, "dependencies": { - "@opentelemetry/sdk-node": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2" + "@opentelemetry/sdk-node": "0.18.2", + "@opentelemetry/tracing": "0.18.2" }, "devDependencies": { "@types/node": "12.20.7", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "author": "OpenTelemetry Authors", "license": "Apache-2.0" diff --git a/backwards-compatability/node8/package.json b/backwards-compatability/node8/package.json index afa95e86a94..f4b8aa6b459 100644 --- a/backwards-compatability/node8/package.json +++ b/backwards-compatability/node8/package.json @@ -8,12 +8,12 @@ "test:backcompat": "tsc --noEmit index.ts" }, "dependencies": { - "@opentelemetry/sdk-node": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2" + "@opentelemetry/sdk-node": "0.18.2", + "@opentelemetry/tracing": "0.18.2" }, "devDependencies": { "@types/node": "8.10.66", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "author": "OpenTelemetry Authors", "license": "Apache-2.0" diff --git a/examples/grpc-js/package.json b/examples/grpc-js/package.json index 10ebab5f4dc..e2c72adde1f 100644 --- a/examples/grpc-js/package.json +++ b/examples/grpc-js/package.json @@ -28,7 +28,7 @@ "url": "https://github.com/open-telemetry/opentelemetry-js/issues" }, "dependencies": { - "@grpc/grpc-js": "^1.0.5", + "@grpc/grpc-js": "^1.2.12", "@opentelemetry/api": "^1.0.0-rc.0", "@opentelemetry/exporter-jaeger": "^0.18.2", "@opentelemetry/exporter-zipkin": "^0.18.2", diff --git a/integration-tests/propagation-validation-server/package.json b/integration-tests/propagation-validation-server/package.json index 7c11b8b2587..0c425e41ab7 100644 --- a/integration-tests/propagation-validation-server/package.json +++ b/integration-tests/propagation-validation-server/package.json @@ -11,16 +11,16 @@ "compile": "tsc --build" }, "dependencies": { - "@opentelemetry/context-async-hooks": "^0.18.2", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", + "@opentelemetry/context-async-hooks": "0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/tracing": "0.18.2", "axios": "0.21.1", "body-parser": "1.19.0", "express": "4.17.1" }, "devDependencies": { "@opentelemetry/api": "^1.0.0-rc.0", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" diff --git a/package.json b/package.json index c0023151a7f..996a0acaf62 100644 --- a/package.json +++ b/package.json @@ -45,13 +45,13 @@ "author": "OpenTelemetry Authors", "license": "Apache-2.0", "devDependencies": { - "@commitlint/cli": "12.0.1", - "@commitlint/config-conventional": "12.0.1", - "@typescript-eslint/eslint-plugin": "4.20.0", - "@typescript-eslint/parser": "4.20.0", + "@commitlint/cli": "12.1.1", + "@commitlint/config-conventional": "12.1.1", + "@typescript-eslint/eslint-plugin": "4.22.0", + "@typescript-eslint/parser": "4.22.0", "beautify-benchmark": "0.2.4", "benchmark": "2.1.4", - "eslint": "7.23.0", + "eslint": "7.24.0", "eslint-config-airbnb-base": "14.2.1", "eslint-plugin-header": "3.1.1", "eslint-plugin-import": "2.22.1", @@ -61,8 +61,8 @@ "lerna": "3.22.1", "lerna-changelog": "1.0.1", "markdownlint-cli": "0.27.1", - "typescript": "4.2.3", - "update-ts-references": "2.0.0" + "typescript": "4.2.4", + "update-ts-references": "2.3.0" }, "husky": { "hooks": { diff --git a/packages/opentelemetry-api-metrics/package.json b/packages/opentelemetry-api-metrics/package.json index 96b7c885d4b..3c351cfc85c 100644 --- a/packages/opentelemetry-api-metrics/package.json +++ b/packages/opentelemetry-api-metrics/package.json @@ -68,7 +68,7 @@ "nyc": "15.1.0", "ts-loader": "8.1.0", "ts-mocha": "8.0.0", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0" } } diff --git a/packages/opentelemetry-context-async-hooks/package.json b/packages/opentelemetry-context-async-hooks/package.json index 27d59d168cd..9d23b4c3aa5 100644 --- a/packages/opentelemetry-context-async-hooks/package.json +++ b/packages/opentelemetry-context-async-hooks/package.json @@ -51,7 +51,7 @@ "rimraf": "3.0.2", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" diff --git a/packages/opentelemetry-context-zone-peer-dep/package.json b/packages/opentelemetry-context-zone-peer-dep/package.json index 38d52c0fcf6..bd61baf28d0 100644 --- a/packages/opentelemetry-context-zone-peer-dep/package.json +++ b/packages/opentelemetry-context-zone-peer-dep/package.json @@ -41,7 +41,7 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@opentelemetry/api": "^1.0.0-rc.0", "@types/mocha": "8.2.2", "@types/node": "14.14.37", @@ -65,7 +65,7 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0", "webpack-cli": "4.6.0", "zone.js": "0.11.4" diff --git a/packages/opentelemetry-context-zone/package.json b/packages/opentelemetry-context-zone/package.json index ffdd7d2ebc4..52937e3599a 100644 --- a/packages/opentelemetry-context-zone/package.json +++ b/packages/opentelemetry-context-zone/package.json @@ -38,7 +38,7 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/sinon": "9.0.11", @@ -58,13 +58,13 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0", "webpack-cli": "4.6.0", "webpack-merge": "5.7.3" }, "dependencies": { - "@opentelemetry/context-zone-peer-dep": "^0.18.2", + "@opentelemetry/context-zone-peer-dep": "0.18.2", "zone.js": "^0.11.0" }, "sideEffects": true diff --git a/packages/opentelemetry-core/package.json b/packages/opentelemetry-core/package.json index 2322d518461..f165ffc287c 100644 --- a/packages/opentelemetry-core/package.json +++ b/packages/opentelemetry-core/package.json @@ -51,7 +51,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/propagator-b3": "^0.18.2", + "@opentelemetry/propagator-b3": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/semver": "7.3.4", @@ -73,7 +73,7 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0" }, "peerDependencies": { diff --git a/packages/opentelemetry-core/src/utils/environment.ts b/packages/opentelemetry-core/src/utils/environment.ts index d58ae1253a8..ac856656994 100644 --- a/packages/opentelemetry-core/src/utils/environment.ts +++ b/packages/opentelemetry-core/src/utils/environment.ts @@ -101,9 +101,9 @@ export const DEFAULT_ENVIRONMENT: Required = { OTEL_PROPAGATORS: ['tracecontext', 'baggage'], OTEL_RESOURCE_ATTRIBUTES: '', OTEL_SAMPLING_PROBABILITY: 1, - OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT: 1000, - OTEL_SPAN_EVENT_COUNT_LIMIT: 1000, - OTEL_SPAN_LINK_COUNT_LIMIT: 1000, + OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT: 128, + OTEL_SPAN_EVENT_COUNT_LIMIT: 128, + OTEL_SPAN_LINK_COUNT_LIMIT: 128, }; /** diff --git a/packages/opentelemetry-exporter-collector-grpc/package.json b/packages/opentelemetry-exporter-collector-grpc/package.json index 89425cf0984..3f7c9024e57 100644 --- a/packages/opentelemetry-exporter-collector-grpc/package.json +++ b/packages/opentelemetry-exporter-collector-grpc/package.json @@ -45,9 +45,9 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/api-metrics": "^0.18.2", + "@opentelemetry/api-metrics": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/sinon": "9.0.11", @@ -61,18 +61,18 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@grpc/proto-loader": "^0.5.4", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/exporter-collector": "^0.18.2", - "@opentelemetry/metrics": "^0.18.2", - "@opentelemetry/resources": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", - "grpc": "^1.24.2" + "@grpc/grpc-js": "^1.2.12", + "@grpc/proto-loader": "^0.6.0", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/exporter-collector": "0.18.2", + "@opentelemetry/metrics": "0.18.2", + "@opentelemetry/resources": "0.18.2", + "@opentelemetry/tracing": "0.18.2" } } diff --git a/packages/opentelemetry-exporter-collector-grpc/src/CollectorExporterNodeBase.ts b/packages/opentelemetry-exporter-collector-grpc/src/CollectorExporterNodeBase.ts index 9c7048c1889..c01264cb945 100644 --- a/packages/opentelemetry-exporter-collector-grpc/src/CollectorExporterNodeBase.ts +++ b/packages/opentelemetry-exporter-collector-grpc/src/CollectorExporterNodeBase.ts @@ -19,7 +19,7 @@ import { CollectorExporterBase, collectorTypes, } from '@opentelemetry/exporter-collector'; -import type { Metadata } from 'grpc'; +import type { Metadata } from '@grpc/grpc-js'; import { CollectorExporterConfigNode, GRPCQueueItem, diff --git a/packages/opentelemetry-exporter-collector-grpc/src/types.ts b/packages/opentelemetry-exporter-collector-grpc/src/types.ts index aa8f98a0a4f..3d8dda8dca0 100644 --- a/packages/opentelemetry-exporter-collector-grpc/src/types.ts +++ b/packages/opentelemetry-exporter-collector-grpc/src/types.ts @@ -15,7 +15,7 @@ */ import { collectorTypes } from '@opentelemetry/exporter-collector'; -import * as grpc from 'grpc'; +import * as grpc from '@grpc/grpc-js'; /** * Queue item to be used to save temporary spans/metrics in case the GRPC service diff --git a/packages/opentelemetry-exporter-collector-grpc/src/util.ts b/packages/opentelemetry-exporter-collector-grpc/src/util.ts index 7da27e95bc1..72ea1c73693 100644 --- a/packages/opentelemetry-exporter-collector-grpc/src/util.ts +++ b/packages/opentelemetry-exporter-collector-grpc/src/util.ts @@ -17,7 +17,7 @@ import { diag } from '@opentelemetry/api'; import * as protoLoader from '@grpc/proto-loader'; import { collectorTypes } from '@opentelemetry/exporter-collector'; -import * as grpc from 'grpc'; +import * as grpc from '@grpc/grpc-js'; import * as path from 'path'; import { @@ -82,7 +82,7 @@ export function send( collector.serviceClient.export( serviceRequest, - collector.metadata, + collector.metadata || new grpc.Metadata(), (err: collectorTypes.ExportServiceError) => { if (err) { diag.error('Service request', serviceRequest); diff --git a/packages/opentelemetry-exporter-collector-grpc/test/CollectorMetricExporter.test.ts b/packages/opentelemetry-exporter-collector-grpc/test/CollectorMetricExporter.test.ts index 7f2a45f51a4..59677eb5255 100644 --- a/packages/opentelemetry-exporter-collector-grpc/test/CollectorMetricExporter.test.ts +++ b/packages/opentelemetry-exporter-collector-grpc/test/CollectorMetricExporter.test.ts @@ -25,7 +25,7 @@ import { collectorTypes } from '@opentelemetry/exporter-collector'; import * as metrics from '@opentelemetry/metrics'; import * as assert from 'assert'; import * as fs from 'fs'; -import * as grpc from 'grpc'; +import * as grpc from '@grpc/grpc-js'; import * as path from 'path'; import * as sinon from 'sinon'; import { CollectorMetricExporter } from '../src'; @@ -109,9 +109,10 @@ const testCollectorMetricExporter = (params: TestParams) => ] ) : grpc.ServerCredentials.createInsecure(); - server.bind(address, credentials); - server.start(); - done(); + server.bindAsync(address, credentials, () => { + server.start(); + done(); + }); }); }); diff --git a/packages/opentelemetry-exporter-collector-grpc/test/CollectorTraceExporter.test.ts b/packages/opentelemetry-exporter-collector-grpc/test/CollectorTraceExporter.test.ts index 36c752ea189..a1a38db5f33 100644 --- a/packages/opentelemetry-exporter-collector-grpc/test/CollectorTraceExporter.test.ts +++ b/packages/opentelemetry-exporter-collector-grpc/test/CollectorTraceExporter.test.ts @@ -24,7 +24,7 @@ import { import * as assert from 'assert'; import * as fs from 'fs'; -import * as grpc from 'grpc'; +import * as grpc from '@grpc/grpc-js'; import * as path from 'path'; import * as sinon from 'sinon'; import { CollectorTraceExporter } from '../src'; @@ -104,9 +104,10 @@ const testCollectorExporter = (params: TestParams) => ] ) : grpc.ServerCredentials.createInsecure(); - server.bind(address, credentials); - server.start(); - done(); + server.bindAsync(address, credentials, () => { + server.start(); + done(); + }); }); }); diff --git a/packages/opentelemetry-exporter-collector-grpc/test/helper.ts b/packages/opentelemetry-exporter-collector-grpc/test/helper.ts index 607a8ad7292..8d2c0bb1405 100644 --- a/packages/opentelemetry-exporter-collector-grpc/test/helper.ts +++ b/packages/opentelemetry-exporter-collector-grpc/test/helper.ts @@ -27,7 +27,7 @@ import * as metrics from '@opentelemetry/metrics'; import { Resource } from '@opentelemetry/resources'; import { ReadableSpan } from '@opentelemetry/tracing'; import * as assert from 'assert'; -import * as grpc from 'grpc'; +import * as grpc from '@grpc/grpc-js'; const meterProvider = new metrics.MeterProvider({ interval: 30000, diff --git a/packages/opentelemetry-exporter-collector-proto/package.json b/packages/opentelemetry-exporter-collector-proto/package.json index a2510cf783b..d09f13180bf 100644 --- a/packages/opentelemetry-exporter-collector-proto/package.json +++ b/packages/opentelemetry-exporter-collector-proto/package.json @@ -45,9 +45,9 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/api-metrics": "^0.18.2", + "@opentelemetry/api-metrics": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/sinon": "9.0.11", @@ -61,18 +61,18 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@grpc/proto-loader": "^0.5.4", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/exporter-collector": "^0.18.2", - "@opentelemetry/metrics": "^0.18.2", - "@opentelemetry/resources": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", + "@grpc/proto-loader": "^0.6.0", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/exporter-collector": "0.18.2", + "@opentelemetry/metrics": "0.18.2", + "@opentelemetry/resources": "0.18.2", + "@opentelemetry/tracing": "0.18.2", "protobufjs": "^6.9.0" } } diff --git a/packages/opentelemetry-exporter-collector/package.json b/packages/opentelemetry-exporter-collector/package.json index a29af5ad8e6..642558f81c6 100644 --- a/packages/opentelemetry-exporter-collector/package.json +++ b/packages/opentelemetry-exporter-collector/package.json @@ -49,7 +49,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0-rc.0", - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/sinon": "9.0.11", @@ -72,7 +72,7 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0", "webpack-cli": "4.6.0", "webpack-merge": "5.7.3" @@ -81,10 +81,10 @@ "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/api-metrics": "^0.18.2", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/metrics": "^0.18.2", - "@opentelemetry/resources": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2" + "@opentelemetry/api-metrics": "0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/metrics": "0.18.2", + "@opentelemetry/resources": "0.18.2", + "@opentelemetry/tracing": "0.18.2" } } diff --git a/packages/opentelemetry-exporter-jaeger/package.json b/packages/opentelemetry-exporter-jaeger/package.json index 3e867a37ff4..23fef83d132 100644 --- a/packages/opentelemetry-exporter-jaeger/package.json +++ b/packages/opentelemetry-exporter-jaeger/package.json @@ -41,7 +41,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/resources": "^0.18.2", + "@opentelemetry/resources": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/sinon": "9.0.11", @@ -54,14 +54,14 @@ "sinon": "10.0.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/tracing": "0.18.2", "jaeger-client": "^3.15.0" } } diff --git a/packages/opentelemetry-exporter-prometheus/package.json b/packages/opentelemetry-exporter-prometheus/package.json index a0939563358..09abcd0aef1 100644 --- a/packages/opentelemetry-exporter-prometheus/package.json +++ b/packages/opentelemetry-exporter-prometheus/package.json @@ -51,14 +51,14 @@ "sinon": "10.0.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/api-metrics": "^0.18.2", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/metrics": "^0.18.2" + "@opentelemetry/api-metrics": "0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/metrics": "0.18.2" } } diff --git a/packages/opentelemetry-exporter-zipkin/package.json b/packages/opentelemetry-exporter-zipkin/package.json index d22a9dddc41..daa239e71e3 100644 --- a/packages/opentelemetry-exporter-zipkin/package.json +++ b/packages/opentelemetry-exporter-zipkin/package.json @@ -46,7 +46,7 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@opentelemetry/api": "^1.0.0-rc.0", "@types/mocha": "8.2.2", "@types/node": "14.14.37", @@ -70,7 +70,7 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0", "webpack-cli": "4.6.0", "webpack-merge": "5.7.3" @@ -79,8 +79,8 @@ "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/resources": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2" + "@opentelemetry/core": "0.18.2", + "@opentelemetry/resources": "0.18.2", + "@opentelemetry/tracing": "0.18.2" } } diff --git a/packages/opentelemetry-instrumentation-fetch/README.md b/packages/opentelemetry-instrumentation-fetch/README.md index 6c04e786067..2e139bd5eb1 100644 --- a/packages/opentelemetry-instrumentation-fetch/README.md +++ b/packages/opentelemetry-instrumentation-fetch/README.md @@ -61,6 +61,14 @@ fetch('http://localhost:8090/fetch.js'); See [examples/tracer-web/fetch](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/tracer-web) for a short example. +### Fetch Instrumentation options + +Fetch instrumentation plugin has few options available to choose from. You can set the following: + +| Options | Type | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- | ------------------------------------- | +| [`applyCustomAttributesOnSpan`](https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-instrumentation-fetch/src/fetch.ts#L47) | `HttpCustomAttributeFunction` | Function for adding custom attributes | + ## Useful links - For more information on OpenTelemetry, visit: diff --git a/packages/opentelemetry-instrumentation-fetch/package.json b/packages/opentelemetry-instrumentation-fetch/package.json index fc2a82a388b..dfe5619a7a6 100644 --- a/packages/opentelemetry-instrumentation-fetch/package.json +++ b/packages/opentelemetry-instrumentation-fetch/package.json @@ -42,11 +42,11 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/context-zone": "^0.18.2", - "@opentelemetry/propagator-b3": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", + "@opentelemetry/context-zone": "0.18.2", + "@opentelemetry/propagator-b3": "0.18.2", + "@opentelemetry/tracing": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/shimmer": "1.0.1", @@ -69,7 +69,7 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0", "webpack-cli": "4.6.0", "webpack-merge": "5.7.3" @@ -78,9 +78,9 @@ "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/instrumentation": "^0.18.2", - "@opentelemetry/semantic-conventions": "^0.18.2", - "@opentelemetry/web": "^0.18.2" + "@opentelemetry/core": "0.18.2", + "@opentelemetry/instrumentation": "0.18.2", + "@opentelemetry/semantic-conventions": "0.18.2", + "@opentelemetry/web": "0.18.2" } } diff --git a/packages/opentelemetry-instrumentation-fetch/src/fetch.ts b/packages/opentelemetry-instrumentation-fetch/src/fetch.ts index 93259c80029..8d286497947 100644 --- a/packages/opentelemetry-instrumentation-fetch/src/fetch.ts +++ b/packages/opentelemetry-instrumentation-fetch/src/fetch.ts @@ -19,6 +19,7 @@ import { isWrapped, InstrumentationBase, InstrumentationConfig, + safeExecuteInTheMiddle, } from '@opentelemetry/instrumentation'; import * as core from '@opentelemetry/core'; import * as web from '@opentelemetry/web'; @@ -43,6 +44,14 @@ const getUrlNormalizingAnchor = () => { return a; }; +export interface FetchCustomAttributeFunction { + ( + span: api.Span, + request: Request | RequestInit, + result: Response | FetchError + ): void; +} + /** * FetchPlugin Config */ @@ -61,6 +70,8 @@ export interface FetchInstrumentationConfig extends InstrumentationConfig { * also not be traced. */ ignoreUrls?: Array; + /** Function for adding custom attributes on the span */ + applyCustomAttributesOnSpan?: FetchCustomAttributeFunction; } /** @@ -311,6 +322,7 @@ export class FetchInstrumentation extends InstrumentationBase< response: Response ) { try { + plugin._applyAttributesAfterFetch(span, options, response); if (response.status >= 200 && response.status < 400) { plugin._endSpan(span, spanData, response); } else { @@ -331,6 +343,7 @@ export class FetchInstrumentation extends InstrumentationBase< error: FetchError ) { try { + plugin._applyAttributesAfterFetch(span, options, error); plugin._endSpan(span, spanData, { status: error.status || 0, statusText: error.message, @@ -360,6 +373,28 @@ export class FetchInstrumentation extends InstrumentationBase< }; } + private _applyAttributesAfterFetch( + span: api.Span, + request: Request | RequestInit, + result: Response | FetchError + ) { + const applyCustomAttributesOnSpan = this._getConfig() + .applyCustomAttributesOnSpan; + if (applyCustomAttributesOnSpan) { + safeExecuteInTheMiddle( + () => applyCustomAttributesOnSpan(span, request, result), + error => { + if (!error) { + return; + } + + api.diag.error('applyCustomAttributesOnSpan', error); + }, + true + ); + } + } + /** * Prepares a span data - needed later for matching appropriate network * resources diff --git a/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts b/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts index f0f2065ef4c..a9568f71ccf 100644 --- a/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts +++ b/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts @@ -35,7 +35,11 @@ import { } from '@opentelemetry/web'; import * as assert from 'assert'; import * as sinon from 'sinon'; -import { FetchInstrumentation, FetchInstrumentationConfig } from '../src'; +import { + FetchInstrumentation, + FetchInstrumentationConfig, + FetchCustomAttributeFunction, +} from '../src'; import { AttributeNames } from '../src/enums/AttributeNames'; import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; @@ -57,6 +61,7 @@ const getData = (url: string, method?: string) => }, }); +const CUSTOM_ATTRIBUTE_KEY = 'span kind'; const defaultResource = { connectEnd: 15, connectStart: 13, @@ -576,6 +581,73 @@ describe('fetch', () => { }); }); + describe('applyCustomAttributesOnSpan option', () => { + const noop = () => {}; + const prepare = ( + url: string, + applyCustomAttributesOnSpan: FetchCustomAttributeFunction, + cb: VoidFunction = noop + ) => { + const propagateTraceHeaderCorsUrls = [url]; + + prepareData(cb, url, { + propagateTraceHeaderCorsUrls, + applyCustomAttributesOnSpan, + }); + }; + + afterEach(() => { + clearData(); + }); + + it('applies attributes when the request is succesful', done => { + prepare( + url, + span => { + span.setAttribute(CUSTOM_ATTRIBUTE_KEY, 'custom value'); + }, + () => { + const span: tracing.ReadableSpan = exportSpy.args[1][0][0]; + const attributes = span.attributes; + + assert.ok(attributes[CUSTOM_ATTRIBUTE_KEY] === 'custom value'); + done(); + } + ); + }); + + it('applies custom attributes when the request fails', done => { + prepare( + badUrl, + span => { + span.setAttribute(CUSTOM_ATTRIBUTE_KEY, 'custom value'); + }, + () => { + const span: tracing.ReadableSpan = exportSpy.args[1][0][0]; + const attributes = span.attributes; + + assert.ok(attributes[CUSTOM_ATTRIBUTE_KEY] === 'custom value'); + done(); + } + ); + }); + + it('has request and response objects in callback arguments', done => { + const applyCustomAttributes: FetchCustomAttributeFunction = ( + span, + request, + response + ) => { + assert.ok(request.method === 'GET'); + assert.ok(response.status === 200); + + done(); + }; + + prepare(url, applyCustomAttributes); + }); + }); + describe('when url is ignored', () => { beforeEach(done => { const propagateTraceHeaderCorsUrls = url; diff --git a/packages/opentelemetry-instrumentation-grpc/package.json b/packages/opentelemetry-instrumentation-grpc/package.json index fd95b79a2ea..4bca3ce7e44 100644 --- a/packages/opentelemetry-instrumentation-grpc/package.json +++ b/packages/opentelemetry-instrumentation-grpc/package.json @@ -42,12 +42,12 @@ }, "devDependencies": { "@grpc/grpc-js": "1.2.12", - "@grpc/proto-loader": "0.5.6", + "@grpc/proto-loader": "0.6.0", "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/context-async-hooks": "^0.18.2", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/node": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", + "@opentelemetry/context-async-hooks": "0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/node": "0.18.2", + "@opentelemetry/tracing": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/semver": "7.3.4", @@ -64,14 +64,14 @@ "sinon": "10.0.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/api-metrics": "^0.18.2", - "@opentelemetry/instrumentation": "^0.18.2", - "@opentelemetry/semantic-conventions": "^0.18.2" + "@opentelemetry/api-metrics": "0.18.2", + "@opentelemetry/instrumentation": "0.18.2", + "@opentelemetry/semantic-conventions": "0.18.2" } } diff --git a/packages/opentelemetry-instrumentation-http/package.json b/packages/opentelemetry-instrumentation-http/package.json index 5ff21c83092..6f27af5d99b 100644 --- a/packages/opentelemetry-instrumentation-http/package.json +++ b/packages/opentelemetry-instrumentation-http/package.json @@ -42,10 +42,10 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/context-async-hooks": "^0.18.2", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/node": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", + "@opentelemetry/context-async-hooks": "0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/node": "0.18.2", + "@opentelemetry/tracing": "0.18.2", "@types/got": "9.6.11", "@types/mocha": "8.2.2", "@types/node": "14.14.37", @@ -67,14 +67,14 @@ "superagent": "6.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.18.2", - "@opentelemetry/semantic-conventions": "^0.18.2", + "@opentelemetry/instrumentation": "0.18.2", + "@opentelemetry/semantic-conventions": "0.18.2", "semver": "^7.1.3" } } diff --git a/packages/opentelemetry-instrumentation-http/src/http.ts b/packages/opentelemetry-instrumentation-http/src/http.ts index 6a23a4030bf..59d9539c33c 100644 --- a/packages/opentelemetry-instrumentation-http/src/http.ts +++ b/packages/opentelemetry-instrumentation-http/src/http.ts @@ -405,72 +405,35 @@ export class HttpInstrumentation extends InstrumentationBase { }), }; - return context.with(propagation.extract(ROOT_CONTEXT, headers), () => { - const span = instrumentation._startHttpSpan( - `${component.toLocaleUpperCase()} ${method}`, - spanOptions - ); - - return context.with(setSpan(context.active(), span), () => { - context.bind(request); - context.bind(response); - - if (instrumentation._getConfig().requestHook) { - instrumentation._callRequestHook(span, request); - } - if (instrumentation._getConfig().responseHook) { - instrumentation._callResponseHook(span, response); - } - - // Wraps end (inspired by: - // https://github.com/GoogleCloudPlatform/cloud-trace-nodejs/blob/master/src/instrumentations/instrumentation-connect.ts#L75) - const originalEnd = response.end; - response.end = function ( - this: http.ServerResponse, - ..._args: ResponseEndArgs - ) { - response.end = originalEnd; - // Cannot pass args of type ResponseEndArgs, - const returned = safeExecuteInTheMiddle( - // eslint-disable-next-line @typescript-eslint/no-explicit-any - () => response.end.apply(this, arguments as any), - error => { - if (error) { - utils.setSpanWithError(span, error); - instrumentation._closeHttpSpan(span); - throw error; - } - } - ); - - const attributes = utils.getIncomingRequestAttributesOnResponse( - request, - response - ); + const ctx = propagation.extract(ROOT_CONTEXT, headers); + const span = instrumentation._startHttpSpan( + `${component.toLocaleUpperCase()} ${method}`, + spanOptions, + ctx + ); - span - .setAttributes(attributes) - .setStatus(utils.parseResponseStatus(response.statusCode)); - - if (instrumentation._getConfig().applyCustomAttributesOnSpan) { - safeExecuteInTheMiddle( - () => - instrumentation._getConfig().applyCustomAttributesOnSpan!( - span, - request, - response - ), - () => {}, - true - ); - } + return context.with(setSpan(ctx, span), () => { + context.bind(request); + context.bind(response); - instrumentation._closeHttpSpan(span); - return returned; - }; + if (instrumentation._getConfig().requestHook) { + instrumentation._callRequestHook(span, request); + } + if (instrumentation._getConfig().responseHook) { + instrumentation._callResponseHook(span, response); + } - return safeExecuteInTheMiddle( - () => original.apply(this, [event, ...args]), + // Wraps end (inspired by: + // https://github.com/GoogleCloudPlatform/cloud-trace-nodejs/blob/master/src/instrumentations/instrumentation-connect.ts#L75) + const originalEnd = response.end; + response.end = function ( + this: http.ServerResponse, + ..._args: ResponseEndArgs + ) { + response.end = originalEnd; + // Cannot pass args of type ResponseEndArgs, + const returned = safeExecuteInTheMiddle( + () => response.end.apply(this, arguments as never), error => { if (error) { utils.setSpanWithError(span, error); @@ -479,7 +442,43 @@ export class HttpInstrumentation extends InstrumentationBase { } } ); - }); + + const attributes = utils.getIncomingRequestAttributesOnResponse( + request, + response + ); + + span + .setAttributes(attributes) + .setStatus(utils.parseResponseStatus(response.statusCode)); + + if (instrumentation._getConfig().applyCustomAttributesOnSpan) { + safeExecuteInTheMiddle( + () => + instrumentation._getConfig().applyCustomAttributesOnSpan!( + span, + request, + response + ), + () => {}, + true + ); + } + + instrumentation._closeHttpSpan(span); + return returned; + }; + + return safeExecuteInTheMiddle( + () => original.apply(this, [event, ...args]), + error => { + if (error) { + utils.setSpanWithError(span, error); + instrumentation._closeHttpSpan(span); + throw error; + } + } + ); }); }; } @@ -576,7 +575,11 @@ export class HttpInstrumentation extends InstrumentationBase { }; } - private _startHttpSpan(name: string, options: SpanOptions) { + private _startHttpSpan( + name: string, + options: SpanOptions, + ctx = context.active() + ) { /* * If a parent is required but not present, we use a `NoopSpan` to still * propagate context without recording it. @@ -587,16 +590,16 @@ export class HttpInstrumentation extends InstrumentationBase { : this._getConfig().requireParentforIncomingSpans; let span: Span; - const currentSpan = getSpan(context.active()); + const currentSpan = getSpan(ctx); if (requireParent === true && currentSpan === undefined) { // TODO: Refactor this when a solution is found in // https://github.com/open-telemetry/opentelemetry-specification/issues/530 - span = NOOP_TRACER.startSpan(name, options); + span = NOOP_TRACER.startSpan(name, options, ctx); } else if (requireParent === true && currentSpan?.context().isRemote) { span = currentSpan; } else { - span = this.tracer.startSpan(name, options); + span = this.tracer.startSpan(name, options, ctx); } this._spanNotEnded.add(span); return span; diff --git a/packages/opentelemetry-instrumentation-xml-http-request/package.json b/packages/opentelemetry-instrumentation-xml-http-request/package.json index 41bf9f52386..9fef4fb17bd 100644 --- a/packages/opentelemetry-instrumentation-xml-http-request/package.json +++ b/packages/opentelemetry-instrumentation-xml-http-request/package.json @@ -42,11 +42,11 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/context-zone": "^0.18.2", - "@opentelemetry/propagator-b3": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", + "@opentelemetry/context-zone": "0.18.2", + "@opentelemetry/propagator-b3": "0.18.2", + "@opentelemetry/tracing": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/sinon": "9.0.11", @@ -68,7 +68,7 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0", "webpack-cli": "4.6.0", "webpack-merge": "5.7.3" @@ -77,9 +77,9 @@ "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/instrumentation": "^0.18.2", - "@opentelemetry/semantic-conventions": "^0.18.2", - "@opentelemetry/web": "^0.18.2" + "@opentelemetry/core": "0.18.2", + "@opentelemetry/instrumentation": "0.18.2", + "@opentelemetry/semantic-conventions": "0.18.2", + "@opentelemetry/web": "0.18.2" } } diff --git a/packages/opentelemetry-instrumentation/package.json b/packages/opentelemetry-instrumentation/package.json index 4fbeb7b7ab0..383495fd6da 100644 --- a/packages/opentelemetry-instrumentation/package.json +++ b/packages/opentelemetry-instrumentation/package.json @@ -54,7 +54,7 @@ "url": "https://github.com/open-telemetry/opentelemetry-js/issues" }, "dependencies": { - "@opentelemetry/api-metrics": "^0.18.2", + "@opentelemetry/api-metrics": "0.18.2", "require-in-the-middle": "^5.0.3", "semver": "^7.3.2", "shimmer": "^1.2.1" @@ -63,7 +63,7 @@ "@opentelemetry/api": "^1.0.0-rc.0" }, "devDependencies": { - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@opentelemetry/api": "^1.0.0-rc.0", "@types/mocha": "8.2.2", "@types/node": "14.14.37", @@ -89,7 +89,7 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0", "webpack-cli": "4.6.0", "webpack-merge": "5.7.3" diff --git a/packages/opentelemetry-metrics/package.json b/packages/opentelemetry-metrics/package.json index 7fad7e53967..e7c9ead7f5d 100644 --- a/packages/opentelemetry-metrics/package.json +++ b/packages/opentelemetry-metrics/package.json @@ -53,15 +53,15 @@ "sinon": "10.0.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/api-metrics": "^0.18.2", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/resources": "^0.18.2", + "@opentelemetry/api-metrics": "0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/resources": "0.18.2", "lodash.merge": "^4.6.2" } } diff --git a/packages/opentelemetry-node/package.json b/packages/opentelemetry-node/package.json index 99c4227448f..b32ece42d80 100644 --- a/packages/opentelemetry-node/package.json +++ b/packages/opentelemetry-node/package.json @@ -42,7 +42,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/resources": "^0.18.2", + "@opentelemetry/resources": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/semver": "7.3.4", @@ -57,17 +57,17 @@ "sinon": "10.0.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/context-async-hooks": "^0.18.2", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", - "@opentelemetry/propagator-b3": "^0.18.0", - "@opentelemetry/propagator-jaeger": "^0.18.0", + "@opentelemetry/context-async-hooks": "0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/tracing": "0.18.2", + "@opentelemetry/propagator-b3": "0.18.2", + "@opentelemetry/propagator-jaeger": "0.18.2", "semver": "^7.1.3" } } diff --git a/packages/opentelemetry-propagator-b3/package.json b/packages/opentelemetry-propagator-b3/package.json index 0357a64bc74..feecb85aff6 100644 --- a/packages/opentelemetry-propagator-b3/package.json +++ b/packages/opentelemetry-propagator-b3/package.json @@ -53,6 +53,6 @@ "rimraf": "3.0.2", "ts-loader": "8.1.0", "ts-mocha": "8.0.0", - "typescript": "4.2.3" + "typescript": "4.2.4" } } diff --git a/packages/opentelemetry-propagator-jaeger/package.json b/packages/opentelemetry-propagator-jaeger/package.json index f608d551b12..079606a2482 100644 --- a/packages/opentelemetry-propagator-jaeger/package.json +++ b/packages/opentelemetry-propagator-jaeger/package.json @@ -64,13 +64,13 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2" + "@opentelemetry/core": "0.18.2" } } diff --git a/packages/opentelemetry-resource-detector-aws/package.json b/packages/opentelemetry-resource-detector-aws/package.json index 1af954f9c26..04f99c5a286 100644 --- a/packages/opentelemetry-resource-detector-aws/package.json +++ b/packages/opentelemetry-resource-detector-aws/package.json @@ -52,13 +52,13 @@ "sinon": "10.0.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/resources": "^0.18.2" + "@opentelemetry/core": "0.18.2", + "@opentelemetry/resources": "0.18.2" } } diff --git a/packages/opentelemetry-resource-detector-gcp/package.json b/packages/opentelemetry-resource-detector-gcp/package.json index 5926c624b58..ea481c5402b 100644 --- a/packages/opentelemetry-resource-detector-gcp/package.json +++ b/packages/opentelemetry-resource-detector-gcp/package.json @@ -40,7 +40,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/core": "^0.18.2", + "@opentelemetry/core": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/semver": "7.3.4", @@ -52,13 +52,13 @@ "rimraf": "3.0.2", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/resources": "^0.18.2", + "@opentelemetry/resources": "0.18.2", "gcp-metadata": "^4.1.4", "semver": "7.3.5" } diff --git a/packages/opentelemetry-resources/package.json b/packages/opentelemetry-resources/package.json index dd1bd7561fc..d0c0c2b0d21 100644 --- a/packages/opentelemetry-resources/package.json +++ b/packages/opentelemetry-resources/package.json @@ -56,12 +56,12 @@ "sinon": "10.0.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2" + "@opentelemetry/core": "0.18.2" } } diff --git a/packages/opentelemetry-sdk-node/package.json b/packages/opentelemetry-sdk-node/package.json index 9ba5aca27f4..64239b57dc7 100644 --- a/packages/opentelemetry-sdk-node/package.json +++ b/packages/opentelemetry-sdk-node/package.json @@ -40,15 +40,15 @@ "access": "public" }, "dependencies": { - "@opentelemetry/api-metrics": "^0.18.2", - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/instrumentation": "^0.18.2", - "@opentelemetry/metrics": "^0.18.2", - "@opentelemetry/node": "^0.18.2", - "@opentelemetry/resource-detector-aws": "^0.18.2", - "@opentelemetry/resource-detector-gcp": "^0.18.2", - "@opentelemetry/resources": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2", + "@opentelemetry/api-metrics": "0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/instrumentation": "0.18.2", + "@opentelemetry/metrics": "0.18.2", + "@opentelemetry/node": "0.18.2", + "@opentelemetry/resource-detector-aws": "0.18.2", + "@opentelemetry/resource-detector-gcp": "0.18.2", + "@opentelemetry/resources": "0.18.2", + "@opentelemetry/tracing": "0.18.2", "nock": "12.0.3" }, "peerDependencies": { @@ -56,7 +56,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/context-async-hooks": "^0.18.2", + "@opentelemetry/context-async-hooks": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "@types/semver": "7.3.4", @@ -71,6 +71,6 @@ "sinon": "10.0.0", "ts-loader": "8.1.0", "ts-mocha": "8.0.0", - "typescript": "4.2.3" + "typescript": "4.2.4" } } diff --git a/packages/opentelemetry-semantic-conventions/package.json b/packages/opentelemetry-semantic-conventions/package.json index 627c5791ac0..3fc06d8c39c 100644 --- a/packages/opentelemetry-semantic-conventions/package.json +++ b/packages/opentelemetry-semantic-conventions/package.json @@ -51,6 +51,6 @@ "sinon": "10.0.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3" + "typescript": "4.2.4" } } diff --git a/packages/opentelemetry-shim-opentracing/package.json b/packages/opentelemetry-shim-opentracing/package.json index 43315da20d3..795f837a567 100644 --- a/packages/opentelemetry-shim-opentracing/package.json +++ b/packages/opentelemetry-shim-opentracing/package.json @@ -39,7 +39,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/tracing": "^0.18.2", + "@opentelemetry/tracing": "0.18.2", "@types/mocha": "8.2.2", "@types/node": "14.14.37", "codecov": "3.8.1", @@ -51,13 +51,13 @@ "ts-node": "9.1.1", "tslint-consistent-codestyle": "1.16.0", "tslint-microsoft-contrib": "6.2.0", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2", + "@opentelemetry/core": "0.18.2", "opentracing": "^0.14.4" } } diff --git a/packages/opentelemetry-tracing/package.json b/packages/opentelemetry-tracing/package.json index 7949cc62269..ffb92f9759a 100644 --- a/packages/opentelemetry-tracing/package.json +++ b/packages/opentelemetry-tracing/package.json @@ -70,16 +70,16 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/resources": "^0.18.2", - "@opentelemetry/semantic-conventions": "^0.18.2", + "@opentelemetry/core": "0.18.2", + "@opentelemetry/resources": "0.18.2", + "@opentelemetry/semantic-conventions": "0.18.2", "lodash.merge": "^4.6.2" } } diff --git a/packages/opentelemetry-tracing/test/BasicTracerProvider.test.ts b/packages/opentelemetry-tracing/test/BasicTracerProvider.test.ts index 981d7edb49c..0f64753a24a 100644 --- a/packages/opentelemetry-tracing/test/BasicTracerProvider.test.ts +++ b/packages/opentelemetry-tracing/test/BasicTracerProvider.test.ts @@ -71,9 +71,9 @@ describe('BasicTracerProvider', () => { it('should construct an instance with default trace params', () => { const tracer = new BasicTracerProvider({}).getTracer('default'); assert.deepStrictEqual(tracer.getActiveTraceParams(), { - numberOfAttributesPerSpan: 1000, - numberOfEventsPerSpan: 1000, - numberOfLinksPerSpan: 1000, + numberOfAttributesPerSpan: 128, + numberOfEventsPerSpan: 128, + numberOfLinksPerSpan: 128, }); }); @@ -85,8 +85,8 @@ describe('BasicTracerProvider', () => { }).getTracer('default'); assert.deepStrictEqual(tracer.getActiveTraceParams(), { numberOfAttributesPerSpan: 100, - numberOfEventsPerSpan: 1000, - numberOfLinksPerSpan: 1000, + numberOfEventsPerSpan: 128, + numberOfLinksPerSpan: 128, }); }); @@ -97,9 +97,9 @@ describe('BasicTracerProvider', () => { }, }).getTracer('default'); assert.deepStrictEqual(tracer.getActiveTraceParams(), { - numberOfAttributesPerSpan: 1000, + numberOfAttributesPerSpan: 128, numberOfEventsPerSpan: 300, - numberOfLinksPerSpan: 1000, + numberOfLinksPerSpan: 128, }); }); @@ -110,8 +110,8 @@ describe('BasicTracerProvider', () => { }, }).getTracer('default'); assert.deepStrictEqual(tracer.getActiveTraceParams(), { - numberOfAttributesPerSpan: 1000, - numberOfEventsPerSpan: 1000, + numberOfAttributesPerSpan: 128, + numberOfEventsPerSpan: 128, numberOfLinksPerSpan: 10, }); }); diff --git a/packages/opentelemetry-web/package.json b/packages/opentelemetry-web/package.json index fa290493d7e..e479c9ec627 100644 --- a/packages/opentelemetry-web/package.json +++ b/packages/opentelemetry-web/package.json @@ -41,11 +41,11 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.13.14", + "@babel/core": "7.13.15", "@opentelemetry/api": "^1.0.0-rc.0", - "@opentelemetry/context-zone": "^0.18.2", - "@opentelemetry/propagator-b3": "^0.18.2", - "@opentelemetry/resources": "^0.18.2", + "@opentelemetry/context-zone": "0.18.2", + "@opentelemetry/propagator-b3": "0.18.2", + "@opentelemetry/resources": "0.18.2", "@types/jquery": "3.5.5", "@types/mocha": "8.2.2", "@types/node": "14.14.37", @@ -69,7 +69,7 @@ "ts-loader": "8.1.0", "ts-mocha": "8.0.0", "ts-node": "9.1.1", - "typescript": "4.2.3", + "typescript": "4.2.4", "webpack": "4.46.0", "webpack-cli": "4.6.0", "webpack-merge": "5.7.3" @@ -78,8 +78,8 @@ "@opentelemetry/api": "^1.0.0-rc.0" }, "dependencies": { - "@opentelemetry/core": "^0.18.2", - "@opentelemetry/semantic-conventions": "^0.18.2", - "@opentelemetry/tracing": "^0.18.2" + "@opentelemetry/core": "0.18.2", + "@opentelemetry/semantic-conventions": "0.18.2", + "@opentelemetry/tracing": "0.18.2" } } diff --git a/packages/template/package.json b/packages/template/package.json index dd0c426de24..0216914e693 100644 --- a/packages/template/package.json +++ b/packages/template/package.json @@ -58,7 +58,7 @@ ], "devDependencies": { "@types/node": "14.14.37", - "typescript": "4.2.3" + "typescript": "4.2.4" }, "Add these to devDependencies for testing": { "@types/mocha": "8.2.0",