diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index d11fe80ab6..cde3ca25c7 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -23,7 +23,7 @@ jobs: path: | package-lock.json packages/*/package-lock.json - backwards-compatability/*/package-lock.json + backwards-compatibility/*/package-lock.json metapackages/*/package-lock.json packages/*/package-lock.json integration-tests/*/package-lock.json diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 16b9d4b4cd..79c0f720be 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -14,7 +14,7 @@ jobs: steps: - uses: actions/setup-node@v3 with: - node-version: '14' + node-version: '16' - uses: actions/checkout@v3 diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 6c61133e69..e326aa822e 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -143,7 +143,7 @@ jobs: NPM_CONFIG_UNSAFE_PERM: true steps: - name: Checkout - uses: actions/checkout@v3.0.2 + uses: actions/checkout@v3.5.3 - uses: actions/setup-node@v3 with: node-version: 16 diff --git a/CHANGELOG.md b/CHANGELOG.md index f827e31585..7de3dc1f1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,14 +11,29 @@ For experimental package changes, see the [experimental CHANGELOG](experimental/ ### :rocket: (Enhancement) -* feat(SpanExpoter): Add optional forceFlush to SpanExporter interface [#3753](https://github.com/open-telemetry/opentelemetry-js/pull/3753/) @sgracias1 @JacksonWeber +* feat(exporter-metrics-otlp-*)!: add LowMemory metrics temporality preference [#3915](https://github.com/open-telemetry/opentelemetry-js/pull/3915) + * Breaking: From now on `AggregationTemporalityPreference` has to be used instead of `AggregationTemporality` when configuring the exporter. + * Adds support for [LowMemory temporality preference](https://github.com/open-telemetry/opentelemetry-specification/blob/f09624bb97e9be3be259733b93be507df18927bd/specification/metrics/sdk_exporters/otlp.md#additional-configuration) + * Adds support for `lowmemory` in `OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE` ### :bug: (Bug Fix) +* fix(opentelemetry-exporter-prometheus): Update default PrometheusExporter to not append a timestamp to match the text based exposition format [#3961](https://github.com/open-telemetry/opentelemetry-js/pull/3961) @JacksonWeber +* fix(sdk-metrics): Update default Histogram's boundary to match OTEL's spec [#3893](https://github.com/open-telemetry/opentelemetry-js/pull/3893/) @chigia001 +* fix(sdk-metrics): preserve startTime for cumulative ExponentialHistograms [#3934](https://github.com/open-telemetry/opentelemetry-js/pull/3934/) @aabmass + ### :books: (Refine Doc) ### :house: (Internal) +* feat(minification): [Minification] Add noEmitHelpers, importHelpers and tslib as a dependency [#3913](https://github.com/open-telemetry/opentelemetry-js/issues/3913) + +## 1.14.0 + +### :rocket: (Enhancement) + +* feat(SpanExporter): Add optional forceFlush to SpanExporter interface [#3753](https://github.com/open-telemetry/opentelemetry-js/pull/3753/) @sgracias1 @JacksonWeber + ## 1.13.0 ### :rocket: (Enhancement) diff --git a/api/package.json b/api/package.json index a82fd886b8..888e602e5e 100644 --- a/api/package.json +++ b/api/package.json @@ -16,7 +16,7 @@ "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../", "codecov:webworker": "nyc report --reporter=json && codecov -f coverage/*.json -p ../", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", "docs": "typedoc", "docs:deploy": "gh-pages --dist docs/out", @@ -60,31 +60,36 @@ "access": "public" }, "devDependencies": { - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "@types/webpack": "4.41.26", + "@types/sinon": "10.0.15", + "@types/webpack": "4.41.33", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", - "dpdm": "3.10.0", + "cross-var": "1.1.0", + "dpdm": "3.13.1", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", "karma-mocha-webworker": "1.3.0", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "memfs": "3.4.9", - "mocha": "10.0.0", + "lerna": "7.1.1", + "memfs": "3.5.3", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", - "unionfs": "4.4.0", + "unionfs": "4.5.1", "webpack": "4.46.0" }, + "dependencies": { + "tslib": "^2.3.1" + }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/api", "sideEffects": false } diff --git a/examples/esm-http-ts/package.json b/examples/esm-http-ts/package.json index 49c0e2601f..71977f73ff 100644 --- a/examples/esm-http-ts/package.json +++ b/examples/esm-http-ts/package.json @@ -1,7 +1,7 @@ { "name": "esm-http-ts", "private": true, - "version": "0.38.0", + "version": "0.40.0", "description": "Example of HTTP integration with OpenTelemetry using ESM and TypeScript", "main": "build/index.js", "type": "module", @@ -30,13 +30,13 @@ }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/", "dependencies": { - "@opentelemetry/api": "1.4.0", - "@opentelemetry/exporter-trace-otlp-proto": "0.38.0", - "@opentelemetry/instrumentation": "0.38.0", - "@opentelemetry/instrumentation-http": "0.38.0", - "@opentelemetry/resources": "1.9.1", - "@opentelemetry/sdk-trace-base": "1.9.1", - "@opentelemetry/sdk-trace-node": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" + "@opentelemetry/api": "1.4.1", + "@opentelemetry/exporter-trace-otlp-proto": "0.40.0", + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/instrumentation-http": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/sdk-trace-node": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0" } } diff --git a/examples/esm-http-ts/tsconfig.json b/examples/esm-http-ts/tsconfig.json index 5f821d66c7..f7c20de0d1 100644 --- a/examples/esm-http-ts/tsconfig.json +++ b/examples/esm-http-ts/tsconfig.json @@ -18,7 +18,8 @@ "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */, /* Completeness */ - "skipLibCheck": true /* Skip type checking all .d.ts files. */ + "skipLibCheck": true /* Skip type checking all .d.ts files. */, + "importHelpers": true }, "include": ["**/*.ts", "**/*.js", "*.config.js"], "exclude": ["node_modules"] diff --git a/examples/grpc/README.md b/examples/grpc/README.md deleted file mode 100644 index 1ec7a42a0e..0000000000 --- a/examples/grpc/README.md +++ /dev/null @@ -1,71 +0,0 @@ -# Overview - -OpenTelemetry gRPC Instrumentation allows the user to automatically collect trace data and export them to the backend of choice (we can use Zipkin or Jaeger for this example), to give observability to distributed systems. - -## Installation - -```sh -# from this directory -npm install -``` - -Setup [Zipkin Tracing](https://zipkin.io/pages/quickstart.html) -or -Setup [Jaeger Tracing](https://www.jaegertracing.io/docs/latest/getting-started/#all-in-one) - -## Run the Application - -### Zipkin - -- Run the server - - ```sh - # from this directory - npm run zipkin:server - ``` - -- Run the client - - ```sh - # from this directory - npm run zipkin:client - ``` - -#### Zipkin UI - -`zipkin:server` script should output the `traceid` in the terminal (e.g `traceid: 4815c3d576d930189725f1f1d1bdfcc6`). -Go to Zipkin with your browser (e.g - -

- -### Jaeger - -- Run the server - - ```sh - # from this directory - npm run jaeger:server - ``` - -- Run the client - - ```sh - # from this directory - npm run jaeger:client - ``` - -#### Jaeger UI - -`jaeger:server` script should output the `traceid` in the terminal (e.g `traceid: 4815c3d576d930189725f1f1d1bdfcc6`). -Go to Jaeger with your browser (e.g - -

- -## Useful links - -- For more information on OpenTelemetry, visit: -- For more information on OpenTelemetry for Node.js, visit: - -## LICENSE - -Apache License 2.0 diff --git a/examples/grpc/client.js b/examples/grpc/client.js deleted file mode 100644 index 18c7cf7354..0000000000 --- a/examples/grpc/client.js +++ /dev/null @@ -1,46 +0,0 @@ -'use strict'; - -const api = require('@opentelemetry/api'); -const tracer = require('./tracer')('example-grpc-client'); -const grpc = require('grpc'); -const messages = require('./helloworld_pb'); -const services = require('./helloworld_grpc_pb'); - -const PORT = 50051; - -/** A function which makes requests and handles response. */ -function main() { - // span corresponds to outgoing requests. Here, we have manually created - // the span, which is created to track work that happens outside of the - // request lifecycle entirely. - const span = tracer.startSpan('client.js:main()'); - api.context.with(api.trace.setSpan(api.context.active(), span), () => { - console.log('Client traceId ', span.spanContext().traceId); - const client = new services.GreeterClient( - `localhost:${PORT}`, - grpc.credentials.createInsecure(), - ); - const request = new messages.HelloRequest(); - let user; - if (process.argv.length >= 3) { - // eslint-disable-next-line prefer-destructuring - user = process.argv[2]; - } else { - user = 'world'; - } - request.setName(user); - client.sayHello(request, (err, response) => { - span.end(); - if (err) throw err; - console.log('Greeting:', response.getMessage()); - }); - }); - - // The process must live for at least the interval past any traces that - // must be exported, or some risk being lost if they are recorded after the - // last export. - console.log('Sleeping 5 seconds before shutdown to ensure all records are flushed.'); - setTimeout(() => { console.log('Completed.'); }, 5000); -} - -main(); diff --git a/examples/grpc/helloworld_grpc_pb.js b/examples/grpc/helloworld_grpc_pb.js deleted file mode 100644 index 1e39a0f46a..0000000000 --- a/examples/grpc/helloworld_grpc_pb.js +++ /dev/null @@ -1,64 +0,0 @@ -// GENERATED CODE -- DO NOT EDIT! - -// Original file comments: -// Copyright 2015 gRPC authors. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -'use strict'; - -const grpc = require('grpc'); -const helloworld_pb = require('./helloworld_pb.js'); - -function serialize_HelloReply(arg) { - if (!(arg instanceof helloworld_pb.HelloReply)) { - throw new Error('Expected argument of type HelloReply'); - } - return Buffer.from(arg.serializeBinary()); -} - -function deserialize_HelloReply(buffer_arg) { - return helloworld_pb.HelloReply.deserializeBinary(new Uint8Array(buffer_arg)); -} - -function serialize_HelloRequest(arg) { - if (!(arg instanceof helloworld_pb.HelloRequest)) { - throw new Error('Expected argument of type HelloRequest'); - } - return Buffer.from(arg.serializeBinary()); -} - -function deserialize_HelloRequest(buffer_arg) { - return helloworld_pb.HelloRequest.deserializeBinary( - new Uint8Array(buffer_arg), - ); -} - -// The greeting service definition. -const GreeterService = (exports.GreeterService = { - // Sends a greeting - sayHello: { - path: '/helloworld.Greeter/SayHello', - requestStream: false, - responseStream: false, - requestType: helloworld_pb.HelloRequest, - responseType: helloworld_pb.HelloReply, - requestSerialize: serialize_HelloRequest, - requestDeserialize: deserialize_HelloRequest, - responseSerialize: serialize_HelloReply, - responseDeserialize: deserialize_HelloReply, - }, -}); - -exports.GreeterClient = grpc.makeGenericClientConstructor(GreeterService); diff --git a/examples/grpc/helloworld_pb.js b/examples/grpc/helloworld_pb.js deleted file mode 100644 index 066acd68e8..0000000000 --- a/examples/grpc/helloworld_pb.js +++ /dev/null @@ -1,332 +0,0 @@ -/** - * @fileoverview - * @enhanceable - * @public - */ -// GENERATED CODE -- DO NOT EDIT! - -const jspb = require('google-protobuf'); - -const goog = jspb; -const global = Function('return this')(); - -goog.exportSymbol('proto.helloworld.HelloReply', null, global); -goog.exportSymbol('proto.helloworld.HelloRequest', null, global); - -/** - * Generated by JsPbCodeGenerator. - * @param {Array=} opt_data Optional initial data array, typically from a - * server response, or constructed directly in Javascript. The array is used - * in place and becomes part of the constructed object. It is not cloned. - * If no data is provided, the constructed object will be empty, but still - * valid. - * @extends {jspb.Message} - * @constructor - */ -proto.helloworld.HelloRequest = function (opt_data) { - jspb.Message.initialize(this, opt_data, 0, -1, null, null); -}; -goog.inherits(proto.helloworld.HelloRequest, jspb.Message); -if (goog.DEBUG && !COMPILED) { - proto.helloworld.HelloRequest.displayName = 'proto.helloworld.HelloRequest'; -} - -if (jspb.Message.GENERATE_TO_OBJECT) { - /** - * Creates an object representation of this proto suitable for use in Soy templates. - * Field names that are reserved in JavaScript and will be renamed to pb_name. - * To access a reserved field use, foo.pb_, eg, foo.pb_default. - * For the list of reserved names please see: - * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS. - * @param {boolean=} opt_includeInstance Whether to include the JSPB instance - * for transitional soy proto support: http://goto/soy-param-migration - * @return {!Object} - */ - proto.helloworld.HelloRequest.prototype.toObject = function ( - opt_includeInstance, - ) { - return proto.helloworld.HelloRequest.toObject(opt_includeInstance, this); - }; - - /** - * Static version of the {@see toObject} method. - * @param {boolean|undefined} includeInstance Whether to include the JSPB - * instance for transitional soy proto support: - * http://goto/soy-param-migration - * @param {!proto.helloworld.HelloRequest} msg The msg instance to transform. - * @return {!Object} - */ - proto.helloworld.HelloRequest.toObject = function (includeInstance, msg) { - let f; - - const obj = { - name: msg.getName(), - }; - - if (includeInstance) { - obj.$jspbMessageInstance = msg; - } - return obj; - }; -} - -/** - * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. - * @return {!proto.helloworld.HelloRequest} - */ -proto.helloworld.HelloRequest.deserializeBinary = function (bytes) { - const reader = new jspb.BinaryReader(bytes); - const msg = new proto.helloworld.HelloRequest(); - return proto.helloworld.HelloRequest.deserializeBinaryFromReader(msg, reader); -}; - -/** - * Deserializes binary data (in protobuf wire format) from the - * given reader into the given message object. - * @param {!proto.helloworld.HelloRequest} msg The message object to deserialize into. - * @param {!jspb.BinaryReader} reader The BinaryReader to use. - * @return {!proto.helloworld.HelloRequest} - */ -proto.helloworld.HelloRequest.deserializeBinaryFromReader = function ( - msg, - reader, -) { - while (reader.nextField()) { - if (reader.isEndGroup()) { - break; - } - const field = reader.getFieldNumber(); - switch (field) { - case 1: - var value = /** @type {string} */ (reader.readString()); - msg.setName(value); - break; - default: - reader.skipField(); - break; - } - } - return msg; -}; - -/** - * Class method variant: serializes the given message to binary data - * (in protobuf wire format), writing to the given BinaryWriter. - * @param {!proto.helloworld.HelloRequest} message - * @param {!jspb.BinaryWriter} writer - */ -proto.helloworld.HelloRequest.serializeBinaryToWriter = function ( - message, - writer, -) { - message.serializeBinaryToWriter(writer); -}; - -/** - * Serializes the message to binary data (in protobuf wire format). - * @return {!Uint8Array} - */ -proto.helloworld.HelloRequest.prototype.serializeBinary = function () { - const writer = new jspb.BinaryWriter(); - this.serializeBinaryToWriter(writer); - return writer.getResultBuffer(); -}; - -/** - * Serializes the message to binary data (in protobuf wire format), - * writing to the given BinaryWriter. - * @param {!jspb.BinaryWriter} writer - */ -proto.helloworld.HelloRequest.prototype.serializeBinaryToWriter = function ( - writer, -) { - let f; - f = this.getName(); - if (f.length > 0) { - writer.writeString(1, f); - } -}; - -/** - * Creates a deep clone of this proto. No data is shared with the original. - * @return {!proto.helloworld.HelloRequest} The clone. - */ -proto.helloworld.HelloRequest.prototype.cloneMessage = function () { - return /** @type {!proto.helloworld.HelloRequest} */ (jspb.Message.cloneMessage( - this, - )); -}; - -/** - * optional string name = 1; - * @return {string} - */ -proto.helloworld.HelloRequest.prototype.getName = function () { - return /** @type {string} */ (jspb.Message.getFieldProto3(this, 1, '')); -}; - -/** @param {string} value */ -proto.helloworld.HelloRequest.prototype.setName = function (value) { - jspb.Message.setField(this, 1, value); -}; - -/** - * Generated by JsPbCodeGenerator. - * @param {Array=} opt_data Optional initial data array, typically from a - * server response, or constructed directly in Javascript. The array is used - * in place and becomes part of the constructed object. It is not cloned. - * If no data is provided, the constructed object will be empty, but still - * valid. - * @extends {jspb.Message} - * @constructor - */ -proto.helloworld.HelloReply = function (opt_data) { - jspb.Message.initialize(this, opt_data, 0, -1, null, null); -}; -goog.inherits(proto.helloworld.HelloReply, jspb.Message); -if (goog.DEBUG && !COMPILED) { - proto.helloworld.HelloReply.displayName = 'proto.helloworld.HelloReply'; -} - -if (jspb.Message.GENERATE_TO_OBJECT) { - /** - * Creates an object representation of this proto suitable for use in Soy templates. - * Field names that are reserved in JavaScript and will be renamed to pb_name. - * To access a reserved field use, foo.pb_, eg, foo.pb_default. - * For the list of reserved names please see: - * com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS. - * @param {boolean=} opt_includeInstance Whether to include the JSPB instance - * for transitional soy proto support: http://goto/soy-param-migration - * @return {!Object} - */ - proto.helloworld.HelloReply.prototype.toObject = function ( - opt_includeInstance, - ) { - return proto.helloworld.HelloReply.toObject(opt_includeInstance, this); - }; - - /** - * Static version of the {@see toObject} method. - * @param {boolean|undefined} includeInstance Whether to include the JSPB - * instance for transitional soy proto support: - * http://goto/soy-param-migration - * @param {!proto.helloworld.HelloReply} msg The msg instance to transform. - * @return {!Object} - */ - proto.helloworld.HelloReply.toObject = function (includeInstance, msg) { - let f; - - const obj = { - message: msg.getMessage(), - }; - - if (includeInstance) { - obj.$jspbMessageInstance = msg; - } - return obj; - }; -} - -/** - * Deserializes binary data (in protobuf wire format). - * @param {jspb.ByteSource} bytes The bytes to deserialize. - * @return {!proto.helloworld.HelloReply} - */ -proto.helloworld.HelloReply.deserializeBinary = function (bytes) { - const reader = new jspb.BinaryReader(bytes); - const msg = new proto.helloworld.HelloReply(); - return proto.helloworld.HelloReply.deserializeBinaryFromReader(msg, reader); -}; - -/** - * Deserializes binary data (in protobuf wire format) from the - * given reader into the given message object. - * @param {!proto.helloworld.HelloReply} msg The message object to deserialize into. - * @param {!jspb.BinaryReader} reader The BinaryReader to use. - * @return {!proto.helloworld.HelloReply} - */ -proto.helloworld.HelloReply.deserializeBinaryFromReader = function ( - msg, - reader, -) { - while (reader.nextField()) { - if (reader.isEndGroup()) { - break; - } - const field = reader.getFieldNumber(); - switch (field) { - case 1: - var value = /** @type {string} */ (reader.readString()); - msg.setMessage(value); - break; - default: - reader.skipField(); - break; - } - } - return msg; -}; - -/** - * Class method variant: serializes the given message to binary data - * (in protobuf wire format), writing to the given BinaryWriter. - * @param {!proto.helloworld.HelloReply} message - * @param {!jspb.BinaryWriter} writer - */ -proto.helloworld.HelloReply.serializeBinaryToWriter = function ( - message, - writer, -) { - message.serializeBinaryToWriter(writer); -}; - -/** - * Serializes the message to binary data (in protobuf wire format). - * @return {!Uint8Array} - */ -proto.helloworld.HelloReply.prototype.serializeBinary = function () { - const writer = new jspb.BinaryWriter(); - this.serializeBinaryToWriter(writer); - return writer.getResultBuffer(); -}; - -/** - * Serializes the message to binary data (in protobuf wire format), - * writing to the given BinaryWriter. - * @param {!jspb.BinaryWriter} writer - */ -proto.helloworld.HelloReply.prototype.serializeBinaryToWriter = function ( - writer, -) { - let f; - f = this.getMessage(); - if (f.length > 0) { - writer.writeString(1, f); - } -}; - -/** - * Creates a deep clone of this proto. No data is shared with the original. - * @return {!proto.helloworld.HelloReply} The clone. - */ -proto.helloworld.HelloReply.prototype.cloneMessage = function () { - return /** @type {!proto.helloworld.HelloReply} */ (jspb.Message.cloneMessage( - this, - )); -}; - -/** - * optional string message = 1; - * @return {string} - */ -proto.helloworld.HelloReply.prototype.getMessage = function () { - return /** @type {string} */ (jspb.Message.getFieldProto3(this, 1, '')); -}; - -/** @param {string} value */ -proto.helloworld.HelloReply.prototype.setMessage = function (value) { - jspb.Message.setField(this, 1, value); -}; - -goog.object.extend(exports, proto.helloworld); diff --git a/examples/grpc/images/jaeger.png b/examples/grpc/images/jaeger.png deleted file mode 100644 index 20eead3ba3..0000000000 Binary files a/examples/grpc/images/jaeger.png and /dev/null differ diff --git a/examples/grpc/images/zipkin.png b/examples/grpc/images/zipkin.png deleted file mode 100644 index d1dcd125a7..0000000000 Binary files a/examples/grpc/images/zipkin.png and /dev/null differ diff --git a/examples/grpc/package.json b/examples/grpc/package.json deleted file mode 100644 index d33861fccf..0000000000 --- a/examples/grpc/package.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "name": "grpc-example", - "private": true, - "version": "0.25.0", - "description": "Example of gRPC integration with OpenTelemetry", - "main": "index.js", - "scripts": { - "zipkin:server": "cross-env EXPORTER=zipkin node ./server.js", - "zipkin:client": "cross-env EXPORTER=zipkin node ./client.js", - "jaeger:server": "cross-env EXPORTER=jaeger node ./server.js", - "jaeger:client": "cross-env EXPORTER=jaeger node ./client.js" - }, - "repository": { - "type": "git", - "url": "git+ssh://git@github.com/open-telemetry/opentelemetry-js.git" - }, - "keywords": [ - "opentelemetry", - "grpc", - "tracing" - ], - "engines": { - "node": ">=14" - }, - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "bugs": { - "url": "https://github.com/open-telemetry/opentelemetry-js/issues" - }, - "dependencies": { - "@opentelemetry/api": "^1.0.2", - "@opentelemetry/exporter-jaeger": "^1.0.1", - "@opentelemetry/exporter-zipkin": "^1.0.1", - "@opentelemetry/instrumentation": "^0.27.0", - "@opentelemetry/instrumentation-grpc": "^0.27.0", - "@opentelemetry/resources": "^1.0.1", - "@opentelemetry/semantic-conventions": "^1.0.1", - "@opentelemetry/sdk-trace-base": "^1.0.1", - "@opentelemetry/sdk-trace-node": "^1.0.1", - "google-protobuf": "^3.9.2", - "grpc": "^1.23.3", - "node-pre-gyp": "0.14.0" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc", - "devDependencies": { - "cross-env": "^6.0.0" - } -} diff --git a/examples/grpc/server.js b/examples/grpc/server.js deleted file mode 100644 index 6cb34dee5e..0000000000 --- a/examples/grpc/server.js +++ /dev/null @@ -1,38 +0,0 @@ -'use strict'; - -const api = require('@opentelemetry/api'); -const tracer = require('./tracer')(('example-grpc-server')); -const grpc = require('grpc'); - -const messages = require('./helloworld_pb'); -const services = require('./helloworld_grpc_pb'); - -const PORT = 50051; - -/** Starts a gRPC server that receives requests on sample server port. */ -function startServer() { - // Creates a server - const server = new grpc.Server(); - server.addService(services.GreeterService, { sayHello }); - server.bind(`0.0.0.0:${PORT}`, grpc.ServerCredentials.createInsecure()); - console.log(`binding server on 0.0.0.0:${PORT}`); - server.start(); -} - -function sayHello(call, callback) { - const currentSpan = api.trace.getSpan(api.context.active()); - // display traceid in the terminal - console.log(`traceid: ${currentSpan.spanContext().traceId}`); - const span = tracer.startSpan('server.js:sayHello()', { - parent: currentSpan, - kind: 1, // server - attributes: { key: 'value' }, - }); - span.addEvent(`invoking sayHello() to ${call.request.getName()}`); - const reply = new messages.HelloReply(); - reply.setMessage(`Hello ${call.request.getName()}`); - callback(null, reply); - span.end(); -} - -startServer(); diff --git a/examples/grpc/tracer.js b/examples/grpc/tracer.js deleted file mode 100644 index 3dd3adddc7..0000000000 --- a/examples/grpc/tracer.js +++ /dev/null @@ -1,41 +0,0 @@ -'use strict'; - -const opentelemetry = require('@opentelemetry/api'); -const { registerInstrumentations } = require('@opentelemetry/instrumentation'); -const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node'); -const { Resource } = require('@opentelemetry/resources'); -const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions'); -const { SimpleSpanProcessor } = require('@opentelemetry/sdk-trace-base'); -const { JaegerExporter } = require('@opentelemetry/exporter-jaeger'); -const { ZipkinExporter } = require('@opentelemetry/exporter-zipkin'); -const { GrpcInstrumentation } = require('@opentelemetry/instrumentation-grpc'); - -const EXPORTER = process.env.EXPORTER || ''; - -module.exports = (serviceName) => { - const provider = new NodeTracerProvider({ - resource: new Resource({ - [SemanticResourceAttributes.SERVICE_NAME]: serviceName, - }), - }); - - let exporter; - if (EXPORTER.toLowerCase().startsWith('z')) { - exporter = new ZipkinExporter(); - } else { - exporter = new JaegerExporter(); - } - - provider.addSpanProcessor(new SimpleSpanProcessor(exporter)); - - // Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings - provider.register(); - - registerInstrumentations({ - instrumentations: [ - new GrpcInstrumentation(), - ], - }); - - return opentelemetry.trace.getTracer('grpc-example'); -}; diff --git a/examples/http/package.json b/examples/http/package.json index e06dd1af2f..a48f8e2c1b 100644 --- a/examples/http/package.json +++ b/examples/http/package.json @@ -1,7 +1,7 @@ { "name": "http-example", "private": true, - "version": "0.39.1", + "version": "0.40.0", "description": "Example of HTTP integration with OpenTelemetry", "main": "index.js", "scripts": { @@ -29,14 +29,14 @@ }, "dependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/exporter-jaeger": "1.13.0", - "@opentelemetry/exporter-zipkin": "1.13.0", - "@opentelemetry/instrumentation": "0.39.1", - "@opentelemetry/instrumentation-http": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/sdk-trace-node": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/exporter-jaeger": "1.14.0", + "@opentelemetry/exporter-zipkin": "1.14.0", + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/instrumentation-http": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/sdk-trace-node": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/http", "devDependencies": { diff --git a/examples/https/package.json b/examples/https/package.json index 62b65273f2..2a63c724c9 100644 --- a/examples/https/package.json +++ b/examples/https/package.json @@ -1,7 +1,7 @@ { "name": "https-example", "private": true, - "version": "0.39.1", + "version": "0.40.0", "description": "Example of HTTPs integration with OpenTelemetry", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -33,14 +33,14 @@ }, "dependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/exporter-jaeger": "1.13.0", - "@opentelemetry/exporter-zipkin": "1.13.0", - "@opentelemetry/instrumentation": "0.39.1", - "@opentelemetry/instrumentation-http": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/sdk-trace-node": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/exporter-jaeger": "1.14.0", + "@opentelemetry/exporter-zipkin": "1.14.0", + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/instrumentation-http": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/sdk-trace-node": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/https", "devDependencies": { diff --git a/examples/opentelemetry-web/package.json b/examples/opentelemetry-web/package.json index c4c75e460c..7caa50413f 100644 --- a/examples/opentelemetry-web/package.json +++ b/examples/opentelemetry-web/package.json @@ -1,7 +1,7 @@ { "name": "web-opentelemetry-example", "private": true, - "version": "0.39.1", + "version": "0.40.0", "description": "Example of using @opentelemetry/sdk-trace-web and @opentelemetry/sdk-metrics in browser", "main": "index.js", "scripts": { @@ -43,20 +43,21 @@ }, "dependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/context-zone": "1.13.0", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.39.1", - "@opentelemetry/exporter-trace-otlp-http": "0.39.1", - "@opentelemetry/exporter-trace-otlp-proto": "0.39.1", - "@opentelemetry/exporter-zipkin": "1.13.0", - "@opentelemetry/instrumentation": "0.39.1", - "@opentelemetry/instrumentation-fetch": "0.39.1", - "@opentelemetry/instrumentation-xml-http-request": "0.39.1", - "@opentelemetry/propagator-b3": "1.13.0", - "@opentelemetry/sdk-metrics": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/sdk-trace-web": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/context-zone": "1.14.0", + "@opentelemetry/core": "1.14.0", + "@opentelemetry/exporter-metrics-otlp-http": "0.40.0", + "@opentelemetry/exporter-trace-otlp-http": "0.40.0", + "@opentelemetry/exporter-trace-otlp-proto": "0.40.0", + "@opentelemetry/exporter-zipkin": "1.14.0", + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/instrumentation-fetch": "0.40.0", + "@opentelemetry/instrumentation-xml-http-request": "0.40.0", + "@opentelemetry/propagator-b3": "1.14.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/sdk-trace-web": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/tracer-web" } diff --git a/examples/otlp-exporter-node/package.json b/examples/otlp-exporter-node/package.json index c19ae9ea59..bb5fa25136 100644 --- a/examples/otlp-exporter-node/package.json +++ b/examples/otlp-exporter-node/package.json @@ -1,7 +1,7 @@ { "name": "example-otlp-exporter-node", "private": true, - "version": "0.39.1", + "version": "0.40.0", "description": "Example of using @opentelemetry/collector-exporter in Node.js", "main": "index.js", "scripts": { @@ -29,17 +29,17 @@ }, "dependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-metrics-otlp-grpc": "0.39.1", - "@opentelemetry/exporter-metrics-otlp-http": "0.39.1", - "@opentelemetry/exporter-metrics-otlp-proto": "0.39.1", - "@opentelemetry/exporter-trace-otlp-grpc": "0.39.1", - "@opentelemetry/exporter-trace-otlp-http": "0.39.1", - "@opentelemetry/exporter-trace-otlp-proto": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-metrics": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/exporter-metrics-otlp-grpc": "0.40.0", + "@opentelemetry/exporter-metrics-otlp-http": "0.40.0", + "@opentelemetry/exporter-metrics-otlp-proto": "0.40.0", + "@opentelemetry/exporter-trace-otlp-grpc": "0.40.0", + "@opentelemetry/exporter-trace-otlp-http": "0.40.0", + "@opentelemetry/exporter-trace-otlp-proto": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/otlp-exporter-node" } diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index d852749eca..08c883e0a7 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -6,6 +6,30 @@ All notable changes to experimental packages in this project will be documented ### :boom: Breaking Change +* chore(instrumentation-grpc): Drop support for package `grpc`. [#3807](https://github.com/open-telemetry/opentelemetry-js/pull/3807) @llc1123 + +### :rocket: (Enhancement) + +* feat(otlp-grpc-exporters): add support for UDS endpoints. [#3853](https://github.com/open-telemetry/opentelemetry-js/pull/3853) @llc1123 +* feat(otlp-exporters): bump otlp proto to 0.20.0 [#3932](https://github.com/open-telemetry/opentelemetry-js/pull/3932) @pichlermarc + +### :bug: (Bug Fix) + +* fix(exporter-logs-otlp-http): set useHex to true [#3875](https://github.com/open-telemetry/opentelemetry-js/pull/3875) @Nico385412 + fix(otlp-proto-exporter-base): add missing type import [#3937](https://github.com/open-telemetry/opentelemetry-js/pull/3937) @pichlermarc +* fix(example-opencensus-shim): avoid OpenCensus auto instrumentations [#3951](https://github.com/open-telemetry/opentelemetry-js/pull/3951) @llc1123 +* fix(http-intrumentation): prevent request socket null from throwing uncaught error [#3858](https://github.com/open-telemetry/opentelemetry-js/pull/3858) @aodysseos + +### :books: (Refine Doc) + +### :house: (Internal) + +* chore(instrumentation-grpc): Cleanup remnants of grpc-native support. [#3886](https://github.com/open-telemetry/opentelemetry-js/pull/3886) @llc1123 + +## 0.40.0 + +### :boom: Breaking Change + * fix(exporter-logs-otlp-grpc): change OTLPLogsExporter to OTLPLogExporter [#3819](https://github.com/open-telemetry/opentelemetry-js/pull/3819) @fuaiyi * chore(instrumentation-grpc): add 'grpc' deprecation notice postinstall script [#3833](https://github.com/open-telemetry/opentelemetry-js/pull/3833) @pichlermarc * Support for telemetry generation for the [`grpc`](https://www.npmjs.com/package/grpc) module will be dropped in the next release as the package has been @@ -27,10 +51,6 @@ All notable changes to experimental packages in this project will be documented * fix(sdk-node): use resource interface instead of concrete class [#3803](https://github.com/open-telemetry/opentelemetry-js/pull/3803) @blumamir * fix(sdk-logs): remove includeTraceContext configuration and use LogRecord context when available [#3817](https://github.com/open-telemetry/opentelemetry-js/pull/3817) @hectorhdzg -### :books: (Refine Doc) - -### :house: (Internal) - ## 0.39.1 ### :bug: (Bug Fix) diff --git a/experimental/backwards-compatability/node14/index.ts b/experimental/backwards-compatibility/node14/index.ts similarity index 100% rename from experimental/backwards-compatability/node14/index.ts rename to experimental/backwards-compatibility/node14/index.ts diff --git a/experimental/backwards-compatability/node14/package.json b/experimental/backwards-compatibility/node14/package.json similarity index 71% rename from experimental/backwards-compatability/node14/package.json rename to experimental/backwards-compatibility/node14/package.json index fb30bd3215..a18a2795f4 100644 --- a/experimental/backwards-compatability/node14/package.json +++ b/experimental/backwards-compatibility/node14/package.json @@ -1,16 +1,17 @@ { "name": "backcompat-node14", - "version": "0.39.1", + "version": "0.40.0", "private": true, - "description": "Backwards compatability app for node 14 types and the OpenTelemetry Node.js SDK", + "description": "Backwards compatibility app for node 14 types and the OpenTelemetry Node.js SDK", "main": "index.js", "scripts": { "test:backcompat": "tsc --noEmit index.ts && tsc --noEmit --esModuleInterop index.ts", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, "dependencies": { - "@opentelemetry/sdk-node": "0.39.1", - "@opentelemetry/sdk-trace-base": "1.13.0" + "@opentelemetry/sdk-node": "0.40.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "tslib": "^2.3.1" }, "devDependencies": { "@types/node": "14.18.25", diff --git a/experimental/backwards-compatability/node14/tsconfig.json b/experimental/backwards-compatibility/node14/tsconfig.json similarity index 100% rename from experimental/backwards-compatability/node14/tsconfig.json rename to experimental/backwards-compatibility/node14/tsconfig.json diff --git a/experimental/backwards-compatability/node16/index.ts b/experimental/backwards-compatibility/node16/index.ts similarity index 100% rename from experimental/backwards-compatability/node16/index.ts rename to experimental/backwards-compatibility/node16/index.ts diff --git a/experimental/backwards-compatability/node16/package.json b/experimental/backwards-compatibility/node16/package.json similarity index 71% rename from experimental/backwards-compatability/node16/package.json rename to experimental/backwards-compatibility/node16/package.json index bf74118063..aaeb4db421 100644 --- a/experimental/backwards-compatability/node16/package.json +++ b/experimental/backwards-compatibility/node16/package.json @@ -1,16 +1,17 @@ { "name": "backcompat-node16", - "version": "0.39.1", + "version": "0.40.0", "private": true, - "description": "Backwards compatability app for node 16 types and the OpenTelemetry Node.js SDK", + "description": "Backwards compatibility app for node 16 types and the OpenTelemetry Node.js SDK", "main": "index.js", "scripts": { "test:backcompat": "tsc --noEmit index.ts && tsc --noEmit --esModuleInterop index.ts", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, "dependencies": { - "@opentelemetry/sdk-node": "0.39.1", - "@opentelemetry/sdk-trace-base": "1.13.0" + "@opentelemetry/sdk-node": "0.40.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "tslib": "^2.3.1" }, "devDependencies": { "@types/node": "16.11.52", diff --git a/experimental/backwards-compatability/node16/tsconfig.json b/experimental/backwards-compatibility/node16/tsconfig.json similarity index 100% rename from experimental/backwards-compatability/node16/tsconfig.json rename to experimental/backwards-compatibility/node16/tsconfig.json diff --git a/experimental/examples/logs/package.json b/experimental/examples/logs/package.json index 3e10700d19..0df41c352f 100644 --- a/experimental/examples/logs/package.json +++ b/experimental/examples/logs/package.json @@ -1,14 +1,14 @@ { "name": "logs-example", - "version": "0.2.0", + "version": "0.40.0", "private": true, "scripts": { "start": "ts-node index.ts" }, "dependencies": { "@opentelemetry/api": "^1.4.1", - "@opentelemetry/api-logs": "0.39.1", - "@opentelemetry/sdk-logs": "0.39.1" + "@opentelemetry/api-logs": "0.40.0", + "@opentelemetry/sdk-logs": "0.40.0" }, "devDependencies": { "@types/node": "18.6.5", diff --git a/experimental/examples/opencensus-shim/README.md b/experimental/examples/opencensus-shim/README.md new file mode 100644 index 0000000000..0738d67d89 --- /dev/null +++ b/experimental/examples/opencensus-shim/README.md @@ -0,0 +1,75 @@ +# Overview + +The OpenCensus shim allows existing OpenCensus instrumentation to interoperate with OpenTelemetry instrumentation by using the OpenTelemetry SDK as an implementation for OpenCensus. + +This is a simple example that demonstrates how existing OpenCensus instrumentation can be integrated with OpenTelemetry. + +The example has: + +- Root Spans (on client), instrumented with OpenCensus's HTTP instrumentation +- Child Span from a remote parent (on server), instrumented with OpenCensus's HTTP instrumentation +- Another Child Span created in the server representing some work being done, instrumented manually with OpenTelemetry. + +## Installation + +```sh +# from this directory +$ npm install +``` + +## Run the Application + +### Jaeger + +Setup [Jaeger Tracing All in One](https://www.jaegertracing.io/docs/latest/getting-started/#all-in-one) agent. If you have docker installed: + +```sh +docker run \ + --rm \ + --name jaeger \ + -e COLLECTOR_OTLP_ENABLED=true \ + -p 16686:16686 \ + -p 4317:4317 \ + jaegertracing/all-in-one:latest +``` + +### Run the sample server + +```sh +# from this directory +$ node -r @opentelemetry/shim-opencensus/register ./server.js +``` + +The `-r @opentelemetry/shim-opencensus/register` flag to Node tells it to load the OpenCensus +shim's register module to install the OpenCensus shim. The shim bridges all calls to +OpenCensus's tracers to OpenTelemetry. + +### Run the sample client + +```sh +# from this directory +node -r @opentelemetry/shim-opencensus/register ./client.js +``` + +Again, we use the `-r @opentelemetry/shim-opencensus/register` flag to install the OpenCensus shim. + +## Check the trace + +Go to Jaeger with your browser and click on the "Service" dropdown. Choose `opencensus-shim-example-server` and hit "Find Traces". Click on one of the available traces and you should see 3 spans: + +- An outer span from the client. This came from the OpenCensus HTTP instrumentation. + - A child from the server. This came from the OpenCensus HTTP instrumentation. + - A child for the sleep operation. This was manually instrumented with OpenTelemetry. + Notice this span is correctly recorded as a child of the OpenCensus instrumentation. + +

+ +## Useful links + +- For more information on OpenTelemetry, visit: +- For more information on OpenTelemetry for Node.js, visit: +- For more information on OpenCensus, visit: + +## LICENSE + +Apache License 2.0 diff --git a/experimental/examples/opencensus-shim/client.js b/experimental/examples/opencensus-shim/client.js new file mode 100644 index 0000000000..e0a2ed52fa --- /dev/null +++ b/experimental/examples/opencensus-shim/client.js @@ -0,0 +1,54 @@ +/* + * Copyright The OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +'use strict'; + +const setup = require('./setup'); + +const provider = setup('opencensus-shim-example-client'); + +const http = require('http'); + +makeRequest(); + +async function makeRequest() { + const data = await new Promise((resolve, reject) => { + http + .get( + { + host: 'localhost', + port: 3000, + path: '/', + }, + resp => { + let data = ''; + + resp.on('data', chunk => { + data += chunk; + }); + + resp.on('end', async () => { + resolve(JSON.parse(data)); + }); + } + ) + .on('error', err => { + reject(err); + }); + }); + console.log('Got data from server: ', data); + + await provider.shutdown(); +} diff --git a/experimental/examples/opencensus-shim/images/jaeger-trace.png b/experimental/examples/opencensus-shim/images/jaeger-trace.png new file mode 100644 index 0000000000..15521f64cd Binary files /dev/null and b/experimental/examples/opencensus-shim/images/jaeger-trace.png differ diff --git a/experimental/examples/opencensus-shim/package.json b/experimental/examples/opencensus-shim/package.json new file mode 100644 index 0000000000..fd231ef119 --- /dev/null +++ b/experimental/examples/opencensus-shim/package.json @@ -0,0 +1,41 @@ +{ + "name": "opencensus-shim", + "private": true, + "version": "0.40.0", + "description": "Example of using @opentelemetry/shim-opencensus in Node.js", + "main": "index.js", + "scripts": { + "client": "node -r @opentelemetry/shim-opencensus/register ./client.js", + "server": "node -r @opentelemetry/shim-opencensus/register ./server.js" + }, + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/open-telemetry/opentelemetry-js.git" + }, + "keywords": [ + "opentelemetry", + "http", + "tracing", + "opencensus" + ], + "engines": { + "node": ">=14" + }, + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "bugs": { + "url": "https://github.com/open-telemetry/opentelemetry-js/issues" + }, + "dependencies": { + "@opentelemetry/api": "1.4.1", + "@opentelemetry/sdk-trace-node": "1.14.0", + "@opencensus/core": "0.1.0", + "@opencensus/nodejs-base": "0.1.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "@opentelemetry/exporter-trace-otlp-grpc": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/shim-opencensus": "0.40.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/examples/opencensus-shim", + "devDependencies": {} +} diff --git a/experimental/examples/opencensus-shim/server.js b/experimental/examples/opencensus-shim/server.js new file mode 100644 index 0000000000..98ddcf5b60 --- /dev/null +++ b/experimental/examples/opencensus-shim/server.js @@ -0,0 +1,39 @@ +'use strict'; + +const { SpanStatusCode } = require('@opentelemetry/api'); +const setup = require('./setup'); +const utils = require('./utils'); +const { trace } = require('@opentelemetry/api'); + +setup('opencensus-shim-example-server'); +const http = require('http'); + +const otelTracer = trace.getTracer('opencensus-shim-example'); + +function startServer(port) { + // requests are traced by OpenCensus http instrumentation + const server = http.createServer(async (req, res) => { + // you can mix OTel and OC instrumentation + + // deliberately sleeping to mock some action + await otelTracer.startActiveSpan('sleep', async span => { + await utils.sleep(1000); + span.end(); + }); + + trace.getActiveSpan()?.addEvent('write headers'); + res.writeHead(200, { 'Content-Type': 'application/json' }); + trace.getActiveSpan()?.addEvent('write json response'); + res.write(JSON.stringify({ status: 'OK', message: 'Hello World!' })); + trace.getActiveSpan()?.setStatus(SpanStatusCode.OK); + res.end(); + }); + + server.listen(port, err => { + if (err) throw err; + + console.log(`Server is listening on ${port}`); + }); +} + +startServer(3000); diff --git a/experimental/examples/opencensus-shim/setup.js b/experimental/examples/opencensus-shim/setup.js new file mode 100644 index 0000000000..37206971e7 --- /dev/null +++ b/experimental/examples/opencensus-shim/setup.js @@ -0,0 +1,51 @@ +/* + * Copyright The OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +'use strict'; + +const { DiagConsoleLogger, diag, DiagLogLevel } = require('@opentelemetry/api'); +const { + NodeTracerProvider, + BatchSpanProcessor, +} = require('@opentelemetry/sdk-trace-node'); +const { + OTLPTraceExporter, +} = require('@opentelemetry/exporter-trace-otlp-grpc'); +const { Resource } = require('@opentelemetry/resources'); +const { + SemanticResourceAttributes, +} = require('@opentelemetry/semantic-conventions'); + +module.exports = function setup(serviceName) { + const tracing = require('@opencensus/nodejs-base'); + + diag.setLogger(new DiagConsoleLogger(), { logLevel: DiagLogLevel.ALL }); + const provider = new NodeTracerProvider({ + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: serviceName, + }), + }); + provider.addSpanProcessor( + new BatchSpanProcessor(new OTLPTraceExporter(), { + scheduledDelayMillis: 5000, + }) + ); + provider.register(); + + // Start OpenCensus tracing + tracing.start({ samplingRate: 1, logger: diag }); + + return provider; +}; diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/test/grpc.test.ts b/experimental/examples/opencensus-shim/utils.js similarity index 65% rename from experimental/packages/opentelemetry-instrumentation-grpc/test/grpc.test.ts rename to experimental/examples/opencensus-shim/utils.js index 453c6d6ef9..3b1c625009 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/test/grpc.test.ts +++ b/experimental/examples/opencensus-shim/utils.js @@ -13,16 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +'use strict'; -import { runTests } from './helper'; -import { GrpcInstrumentation } from '../src/instrumentation'; +async function sleep(ms) { + return new Promise(resolve => setTimeout(resolve, ms)); +} -const instrumentation = new GrpcInstrumentation(); -instrumentation.enable(); -instrumentation.disable(); - -import * as grpc from 'grpc'; - -describe('#grpc', () => { - runTests(instrumentation, 'grpc', grpc, 12345); -}); +exports.sleep = sleep; diff --git a/experimental/examples/prometheus/package.json b/experimental/examples/prometheus/package.json index d1c5cb9ce6..037e147dc9 100644 --- a/experimental/examples/prometheus/package.json +++ b/experimental/examples/prometheus/package.json @@ -1,6 +1,6 @@ { "name": "prometheus-example", - "version": "0.39.1", + "version": "0.40.0", "private": true, "description": "Example of using @opentelemetry/sdk-metrics and @opentelemetry/exporter-prometheus", "main": "index.js", @@ -11,7 +11,7 @@ "license": "Apache-2.0", "dependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/exporter-prometheus": "0.39.1", - "@opentelemetry/sdk-metrics": "1.13.0" + "@opentelemetry/exporter-prometheus": "0.40.0", + "@opentelemetry/sdk-metrics": "1.14.0" } } diff --git a/experimental/packages/api-events/package.json b/experimental/packages/api-events/package.json index bc1a24a54b..ec768c6188 100644 --- a/experimental/packages/api-events/package.json +++ b/experimental/packages/api-events/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/api-events", - "version": "0.39.1", + "version": "0.40.0", "description": "Public events API for OpenTelemetry", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -26,7 +26,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "node ../../../scripts/version-update.js" }, "keywords": [ @@ -61,21 +61,24 @@ "access": "public" }, "dependencies": { - "@opentelemetry/api": "^1.0.0" + "@opentelemetry/api": "^1.0.0", + "tslib": "^2.3.1" }, "devDependencies": { - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", diff --git a/experimental/packages/api-logs/package.json b/experimental/packages/api-logs/package.json index 9143ef36d0..7be2db96e3 100644 --- a/experimental/packages/api-logs/package.json +++ b/experimental/packages/api-logs/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/api-logs", - "version": "0.39.1", + "version": "0.40.0", "description": "Public logs API for OpenTelemetry", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -26,7 +26,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "node ../../../scripts/version-update.js" }, "keywords": [ @@ -61,21 +61,24 @@ "access": "public" }, "dependencies": { - "@opentelemetry/api": "^1.0.0" + "@opentelemetry/api": "^1.0.0", + "tslib": "^2.3.1" }, "devDependencies": { - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", diff --git a/experimental/packages/exporter-logs-otlp-grpc/README.md b/experimental/packages/exporter-logs-otlp-grpc/README.md index 17c9573398..b2ba24bf9a 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/README.md +++ b/experimental/packages/exporter-logs-otlp-grpc/README.md @@ -5,7 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides an exporter for OTLP gRPC logs using protocol version `v0.18`. +This module provides a logs-exporter for OTLP (gRPC) using protocol version `v0.20.0`. ## Installation @@ -34,6 +34,7 @@ import { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-grpc'; const collectorOptions = { // url is optional and can be omitted - default is http://localhost:4317 + // Unix domain sockets are also supported: 'unix:///path/to/socket.sock' url: 'http://:', }; diff --git a/experimental/packages/exporter-logs-otlp-grpc/package.json b/experimental/packages/exporter-logs-otlp-grpc/package.json index 99cb19287e..43dc22d223 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/package.json +++ b/experimental/packages/exporter-logs-otlp-grpc/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-logs-otlp-grpc", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry Collector Exporter allows user to send collected log records to the OpenTelemetry Collector", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -15,7 +15,7 @@ "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", "version": "node ../../../scripts/version-update.js", "watch": "tsc --watch --build", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -48,20 +48,22 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@grpc/proto-loader": "^0.7.3", "@opentelemetry/api": "1.4.1", - "@opentelemetry/api-logs": "0.39.1", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/api-logs": "0.40.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", "cpx": "1.5.0", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -71,10 +73,11 @@ }, "dependencies": { "@grpc/grpc-js": "^1.7.1", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-grpc-exporter-base": "0.39.1", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/sdk-logs": "0.39.1" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/otlp-grpc-exporter-base": "0.40.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/sdk-logs": "0.40.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/exporter-logs-otlp-grpc", "sideEffects": false diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts b/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts index 48f1fa865e..9bda910924 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts +++ b/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts @@ -44,9 +44,11 @@ const includeDirs = [ path.resolve(__dirname, '../../otlp-grpc-exporter-base/protos'), ]; -const address = 'localhost:1503'; +const httpAddr = 'https://localhost:1503'; +const udsAddr = 'unix:///tmp/otlp-logs.sock'; type TestParams = { + address?: string; useTLS?: boolean; metadata?: grpc.Metadata; }; @@ -54,10 +56,11 @@ type TestParams = { const metadata = new grpc.Metadata(); metadata.set('k', 'v'); -const testCollectorExporter = (params: TestParams) => - describe(`OTLPLogExporter - node ${params.useTLS ? 'with' : 'without'} TLS, ${ - params.metadata ? 'with' : 'without' - } metadata`, () => { +const testCollectorExporter = (params: TestParams) => { + const { address = httpAddr, useTLS, metadata } = params; + return describe(`OTLPLogExporter - node ${useTLS ? 'with' : 'without'} TLS, ${ + metadata ? 'with' : 'without' + } metadata, target ${address}`, () => { let collectorExporter: OTLPLogExporter; let server: grpc.Server; let exportedData: IResourceLogs | undefined; @@ -92,7 +95,7 @@ const testCollectorExporter = (params: TestParams) => }, } ); - const credentials = params.useTLS + const credentials = useTLS ? grpc.ServerCredentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), [ @@ -103,10 +106,15 @@ const testCollectorExporter = (params: TestParams) => ] ) : grpc.ServerCredentials.createInsecure(); - server.bindAsync(address, credentials, () => { - server.start(); - done(); - }); + const serverAddr = new URL(address); + server.bindAsync( + serverAddr.protocol === 'https:' ? serverAddr.host : address, + credentials, + () => { + server.start(); + done(); + } + ); }); }); @@ -115,7 +123,7 @@ const testCollectorExporter = (params: TestParams) => }); beforeEach(done => { - const credentials = params.useTLS + const credentials = useTLS ? grpc.credentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), fs.readFileSync('./test/certs/client.key'), @@ -123,9 +131,9 @@ const testCollectorExporter = (params: TestParams) => ) : grpc.credentials.createInsecure(); collectorExporter = new OTLPLogExporter({ - url: 'https://' + address, + url: address, credentials, - metadata: params.metadata, + metadata: metadata, }); done(); }); @@ -141,7 +149,7 @@ const testCollectorExporter = (params: TestParams) => // Need to stub/spy on the underlying logger as the 'diag' instance is global const spyLoggerWarn = sinon.stub(diag, 'warn'); collectorExporter = new OTLPLogExporter({ - url: `http://${address}`, + url: address, headers: { foo: 'bar', }, @@ -150,9 +158,13 @@ const testCollectorExporter = (params: TestParams) => assert.strictEqual(args[0], 'Headers cannot be set when using grpc'); }); it('should warn about path in url', () => { + if (new URL(address).protocol === 'unix:') { + // Skip this test for UDS + return; + } const spyLoggerWarn = sinon.stub(diag, 'warn'); collectorExporter = new OTLPLogExporter({ - url: `http://${address}/v1/logs`, + url: `${address}/v1/logs`, }); const args = spyLoggerWarn.args[0]; assert.strictEqual( @@ -190,7 +202,7 @@ const testCollectorExporter = (params: TestParams) => }, 500); }); it('should log deadline exceeded error', done => { - const credentials = params.useTLS + const credentials = useTLS ? grpc.credentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), fs.readFileSync('./test/certs/client.key'), @@ -199,9 +211,9 @@ const testCollectorExporter = (params: TestParams) => : grpc.credentials.createInsecure(); const collectorExporterWithTimeout = new OTLPLogExporter({ - url: 'grpcs://' + address, + url: address, credentials, - metadata: params.metadata, + metadata: metadata, timeoutMillis: 100, }); @@ -222,7 +234,7 @@ const testCollectorExporter = (params: TestParams) => }); describe('export - with gzip compression', () => { beforeEach(() => { - const credentials = params.useTLS + const credentials = useTLS ? grpc.credentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), fs.readFileSync('./test/certs/client.key'), @@ -230,13 +242,13 @@ const testCollectorExporter = (params: TestParams) => ) : grpc.credentials.createInsecure(); collectorExporter = new OTLPLogExporter({ - url: 'https://' + address, + url: address, credentials, - metadata: params.metadata, + metadata: metadata, compression: CompressionAlgorithm.GZIP, }); }); - it('should successfully send the spans', done => { + it('should successfully send the log records', done => { const responseSpy = sinon.spy(); const logRecords = [Object.assign({}, mockedReadableLogRecord)]; collectorExporter.export(logRecords, responseSpy); @@ -248,13 +260,13 @@ const testCollectorExporter = (params: TestParams) => const logs = exportedData.scopeLogs[0].logRecords; const resource = exportedData.resource; - assert.ok(typeof logs !== 'undefined', 'spans do not exist'); + assert.ok(typeof logs !== 'undefined', 'log records do not exist'); ensureExportedLogRecordIsCorrect(logs[0]); assert.ok(typeof resource !== 'undefined', "resource doesn't exist"); ensureResourceIsCorrect(resource); - ensureMetadataIsCorrect(reqMetadata, params.metadata); + ensureMetadataIsCorrect(reqMetadata, metadata); done(); }, 500); @@ -263,7 +275,7 @@ const testCollectorExporter = (params: TestParams) => describe('Logs Exporter with compression', () => { const envSource = process.env; it('should return gzip compression algorithm on exporter', () => { - const credentials = params.useTLS + const credentials = useTLS ? grpc.credentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), fs.readFileSync('./test/certs/client.key'), @@ -273,9 +285,9 @@ const testCollectorExporter = (params: TestParams) => envSource.OTEL_EXPORTER_OTLP_COMPRESSION = 'gzip'; collectorExporter = new OTLPLogExporter({ - url: 'https://' + address, + url: address, credentials, - metadata: params.metadata, + metadata: metadata, }); assert.strictEqual( collectorExporter.compression, @@ -285,6 +297,7 @@ const testCollectorExporter = (params: TestParams) => }); }); }); +}; describe('OTLPLogExporter - node (getDefaultUrl)', () => { it('should default to localhost', done => { @@ -344,3 +357,5 @@ describe('when configuring via environment', () => { testCollectorExporter({ useTLS: true }); testCollectorExporter({ useTLS: false }); testCollectorExporter({ metadata }); +// skip UDS tests on windows +process.platform !== 'win32' && testCollectorExporter({ address: udsAddr }); diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt b/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt index 27e1d6826b..c194f04954 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt @@ -1,33 +1,33 @@ -----BEGIN CERTIFICATE----- -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 -g2LKPYSY8A== +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMm3OXVbMd0t2r4x+Pg4fecPeFhRzsg6 +sp7AM4UYlhb0Xkx8ij3q0E47uQM/OSari6qi7p1Un6nzgaXmhosaNkVXaKV4dQ4g +zKqrvC2+nTYU4lwss4Rx32CQxOKXEvN5FPwLTNo903PP3wqJyVt8syN0CDW953m/ +hUdkNaOe/lXmDJ9TmTTGyuPZFSlNlufbaNsBUM5chVFgBYDQIVy0jls8MiYLfao5 +tfprj+yS+lnTDl54dDTVVyAgV22SY65cnUgvO4bu3nzhS/h2Xg4/6/yAuYaRI7GQ +xvlA4pzx+aLaRDTJKiszRrHbQFv4PY+MmkVxvg2Oka4Vc2XMgDM87H0bd+beO8NH +Tf7UHU5AmIr2j2R27LWeELOqanm1HYn2VK182lD7OwQ5u5yqZZuke8bMMPJQEPUm +EwhIgXMVIlGps2+rDUEalPYkQ/BmAcs2g7fywW3RhIWCacggKoee1x9a6oiUM5yi +oDJ6T/C4WUQzIVebdMC25zBBlxcy8fK4Yus/DFTqM/eXPl4NVzbH/yB5tlU2GU0Q +V4tpGL1jsUy4b7r1bzuYVNfnKrarUGFF5TIHuvDo3voJNGb4hWBH/JdttG/9NaWA +HomZ8CUWR+gNEzyPkwq7upkiblKxJV7HKo79Eex+dlWa+Ru1F3kwYE200Y+a/wOF +Rj4+PfMu7WvpAgMBAAGjUzBRMB0GA1UdDgQWBBSwH/Wk2wTc+MEPAEornj1eGKra +0zAfBgNVHSMEGDAWgBSwH/Wk2wTc+MEPAEornj1eGKra0zAPBgNVHRMBAf8EBTAD +AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQCNkzOjjqH3qeQ0wT/Has5PSoWwRwq+B1JT +gg29bgEMD6dVkLdzgEuRVVkMtc/tCZAkA02pc0VN8+lNLW7ckNU/QhMTQYn+FgMR +cG86vR9loTnwUrxR4dS6Nbx1sQ7hpe2GZkWpTNmjh1duHBNHv9nS2JmMkRypqRne +oAI3/th1Qlrtl/zDn02/+P5/av0YJcMOcnRkULHnI62cbXHa2iPd/nENgH2xC6CA +EuYN/bnmOEUPeKljU1IZS6asjGMLdWLmpLs7oOcHGLD3pax+om69Pmn7rps8Z071 +WsJDHFCftItCUrg4KWwpXr77Vq4WAN2tOBdDHEZsbES6a54+7sc1QKOVSWwPuGEd +ShFHhTzoaB0dpwm6kLdYsEkC8JLIjV+Ikg5X3VTDITjUlHoJf2mxCGOzBiCnUr75 +Am0eBqlVcc/2aVk1tcVS9N7reY/KcMaAJvI314O9I94pYdIIm5jw3UmA9Y6HmpN0 +vYtQUF2sS5W82XoFD8bpOq/bx1o2ib2x32dfPQkVgd4sbmpsyN62Fy1HpHwXtXno +xGVaDzGSWj/7RyYyKhNmp3nfQsU0Tt6iVkM+N30vl2heZqEUgXxCG9qHVzWv9z6x +AJzuafjM8tviROpiHkvzsmq7uDhksGooKCi+m+eoEBJrd0J4gjngAi1NYjTsB2GT +4mvPz05UkA== -----END CERTIFICATE----- diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key b/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key index 3ca1e8e149..00ccb04622 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt b/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt index cb5c4508d7..fd05c9c40b 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt @@ -1,31 +1,31 @@ -----BEGIN CERTIFICATE----- MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjIwNjA4MDk1NDAxWhcN -MjMwNjA4MDk1NDAxWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjMwNjA4MTY0NDI2WhcN +MjQwNjA3MTY0NDI2WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZD bGllbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAMo9AlVbqKk0NI3U4IPhXARrA/9HCtW6TK8bNj+KqBETPJ0OV6Ep -FC1AUG8h6ZpQy1lAVchMOXXzVIxejJ53Wq2aBMELl7KaheEUAzbQNqSBxL7cY61l -sk1rd0ryQ0167j/tNV5h3FH4ZawD7vt2oGte4Dxipj+gFQx/MXD1j2vOKm0SO6xr -IdSWg79HRnMb6mJMCtTc6kvX5XDN3avwrhndsPKZREhs1ei6lhY4ip3N70357MB6 -vNF7euAMQU7KZ0uZZbj0lqINT+6jwEJ6yhkZM9ILKbxC8+IAhCAOsu2bKXtkhDSN -V+3Jr3x8PRWlhlCitGt9a8/DlT0RIfcXQHRmY7hdnMqt+7vJio56oHcyv2+8ap+C -rWr5OfsRuQvSs3ebn1zhDim0AspKOfdwGepPubgM/MuilYIi35L6CbRp+VbSGmIy -GUOGoWa3uykcMOm4hIK6bbFOGUTixbwIjRfxzuPfPLqIK+aQ5kBSUdDhK9LHpNOM -n0RihXBoRfE3VfnuWVcetp/FG7B5PTgCvP0Ss9QivTV/OQmi1juPa1ONmtZodZTz -eV2mDvZLQKFIInOQE/6dxMn+yrmYlQdV2nEiJU1yiKp5601OklqeX0BO1rWQy283 -AUwbAS5ZBmQeF4KmDZtEphdOTEDmu5YTyDhIvSK58Rq+iQq+CLmaYH3BAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBABV90+TvW47WUdsZpy0eZayjWgIZvKqpWVcYI4Px -1zEGMVJvg8TPjPujGIdhkhxbabklqy/+s/im4ev9MnIGG0wckoYaJgH9KvtD/Br9 -3SpexmN9mQMO8/8299TWJBjS1q5UYjktvbuKFGpizs3+y4n88UmcXRh8y2Z1oglZ -WuXn5A5BJkpXONI3U615mXTf0CLnpbU//4z5VQe2AylksOgo3y7DHXz3iPOh15TN -EnDz7Pms0i8tswSbmS+NU2Clv7ACHhstdPoEqiN/V9gpjon1n+fBXaqMhaXI9C9b -NV9l5AW1utBAc/zlzRnKYtw/yrDW00KAN2FJbGefThJWPCYUlBx5hcCl1C8ObjIz -4b2+2TLdnwkMeeb8FV6mzTaQVWQ5Yr+ffQBqDhahEwjGyUOjzqFtGSlujWKLT4g1 -T9XnVr8KKU6UWDeHDp1lz8S9wo2l5DJN/S6u/SB9RXBOgzFVO9EWnbxkpR4YqdwK -WNP+Xhw9AO+DVX+/zK0PHF4f1z85E30R/V/CmvSx07jaXxK+ixcCykfb0DRvyVyr -WyVxz72LeJnsqWBSjBlwGslPsOzucA6RfN2b7/9rTObglKoKbEV/dSKoRZ34hFcV -nuiwRbVjVXH1az8FU8o+nG+anKW/jpVn4NcabYiHWH6qL+W3ZRTcWkyOOsSHHdOS -Hdil +ADCCAgoCggIBANewSXGnuCUsPcOnXPq7SUFTLaSM62x2FnJrzb6rne8KYQ615l6D +d2Nm7MrttHWJUBQS6iDCsEGlF/AWYO5adVuZ+Xf+S+NoWMXPTUuJYq+5VEeAS8PM +IriksA8Npn0hAMNTDrd/eNXQ5W4zLQOqUWnKcuE0P1M7gI3/rfX9/JXkZfUmkQGK +OSva3qJHOcG7Bc7vqbJnkFebIw87e2iHxNnUf5IoJmrUaOMdFiQyHBBoJyTVJ3wp +Ufr6Q2+d0sIyes9PV33DbB8DyKGdOfbLg4YmKsnAvnypC0p2Xw9yAnHlQX27Ngcq +tfzcOXx3QlNPxQDF3oNHzi8GD7ysex1z7PRIsZlLVQLshAdOfA+naktPezj52R8V +BtWaxgVFI7IA5X21reS25t01k/GXNcyIJxW5KSz00b1h8+mpz0n0R3Mz3HuZybAX +g5bnZ+91jOeQmTt08eMXjwAGClxcOqfrssfDvOnUSZjDpzEGDaVuFGVPA9hR/eKN +Bfo659rv45pYhtxoHLz1LJWoZ1uegmKrGF1w16K05k5mpzwH6fzqDzzbF1xyynGX +yfbIqsvsBniuWGmhMjlfT5+l0VG2GgsD7Yijv6SV0YZrVf85iA5q6XdKTBuKYmin +ZEbneEjw9kc9myMeC5ik7wHuksA/BQcja1TPwB4ZRbPEcfi2iFxbtsSzAgMBAAEw +DQYJKoZIhvcNAQELBQADggIBAGdcqEI2l/dKxu9vPuRC2/VRgjgDBN4UJJCY111T +2A7GsGzd7lRhtxB5ZzClF77UiRJG+cvFai00c9+L3wp8qy4sZWY4MaJIWoKRh72Q +sRiH8AskeIl3uvvvaH86bbmpDo7M48Cs/zXZo9VhLzD8ZuHcS1mdjkOcnQzkbSzR +YeM9ActeuJRmsdQ+gSzCTvFqmGutL6xvM8b9a6PwyY5nPxS+eh0/7KNp+EXBvp0U +MWp6mMfq22nAwAQRLbvh5f+a/4GSwg73By6hwnsgb7tpBBJ6ppnKAIALRf7l5JwS +V0LM5Vnpp4J4JjdYyQzk2xkxi+UGIP1IRigbeWc4K3qgg6BUUkfSf4W9oJD4JCa2 +cOsqnKqFxTwXT4b9j9qsPpg7mUQ2+UtU4Lv3h/7sXpbpx0ldb2Hnaq+JqUz0l/7c +54y3+nzke7I4CWKtLJUSamQiyOC3CBVkRX0YEYUBhMXim6dKAfiOEV6K3bwiU+YZ +aDe0lEeLbzAp87DKRTAvDYhRMIFtD3g2qmYrWpQ4gj8vSEorNAfg3kVHMFRGlk9o +jaFduAz0hKk+QG5SgePXMph5ZRXGRq0FnDbF2gZ7WV+jZiIhsYGJ43+RBWHh4HO4 +P4h9eOWQG8AxpDRmOo2KmyPbV0V/eltC4N0oOAmWz+i0qqulnpG4dOzQKpinRBBr +jPt5 -----END CERTIFICATE----- diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr b/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr index 30ac376794..b783896725 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr @@ -2,27 +2,27 @@ MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGQ2xp ZW50MRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQDKPQJVW6ipNDSN1OCD4VwEawP/RwrVukyvGzY/iqgREzydDlehKRQt -QFBvIemaUMtZQFXITDl181SMXoyed1qtmgTBC5eymoXhFAM20DakgcS+3GOtZbJN -a3dK8kNNeu4/7TVeYdxR+GWsA+77dqBrXuA8YqY/oBUMfzFw9Y9rziptEjusayHU -loO/R0ZzG+piTArU3OpL1+Vwzd2r8K4Z3bDymURIbNXoupYWOIqdze9N+ezAerzR -e3rgDEFOymdLmWW49JaiDU/uo8BCesoZGTPSCym8QvPiAIQgDrLtmyl7ZIQ0jVft -ya98fD0VpYZQorRrfWvPw5U9ESH3F0B0ZmO4XZzKrfu7yYqOeqB3Mr9vvGqfgq1q -+Tn7EbkL0rN3m59c4Q4ptALKSjn3cBnqT7m4DPzLopWCIt+S+gm0aflW0hpiMhlD -hqFmt7spHDDpuISCum2xThlE4sW8CI0X8c7j3zy6iCvmkOZAUlHQ4SvSx6TTjJ9E -YoVwaEXxN1X57llXHrafxRuweT04Arz9ErPUIr01fzkJotY7j2tTjZrWaHWU83ld -pg72S0ChSCJzkBP+ncTJ/sq5mJUHVdpxIiVNcoiqeetNTpJanl9ATta1kMtvNwFM -GwEuWQZkHheCpg2bRKYXTkxA5ruWE8g4SL0iufEavokKvgi5mmB9wQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAGsOxCfMBI11h5BOvDgKpVlAhxHlwyitXGPQHcsr -tjOQi0CRnkcrUMZcgnjX3OPCD3ngjZJW02m82BrN7WJJpSLzEKpnKP6Y91BXfHma -3qPFmMNkXCZ8WRjp6K/l98z9j+lFksN5y2BJCqf8oL1iURPYuHlgRK3LhpR4LOPt -JrJYwAML4hr1g93ejdwGc1LjNx8dyAriCM7h7IwhYGgnT1kYu/shVgT6SH0+ixAq -PNIOekCJH75k9C/QP/hPPARbAzD5of69haLeAcABik/cH/RRuDHTTVxgHFfV/W8r -BWwf7IIxX0iEPCQWxW1Q5SfzOmP9ICLFln4s38MgEGIyGqxgfkSi3nuLkwKTLB1j -NppTiO7Da4Vvso85hdLqNXvE3J6VSiu2c0oDf/ZZYkSizEzt9ESPPp3VcNj2MDbr -CxwhzV018wovlTunUSwKWvRn+syT10bnzZX/+QarZ7mfq57DPfMHNiiPM1ej26eE -Z7A3R3J67H4Ifp5Ua9jdga6x0RfOBRDuZv2N861eVs+9jSIC+hmrvQ1TbTvzHFVB -KYE1UBDRNijuGwsYgZ74vPKLGgA7cFs9X2JXzKc/0Y9opgBltZlNBF97XZSLDw1v -VaPCUVqOU6VKamPX8nVhkpHoUdDSl08T+VKwP5Da4oJHmSZMzxRQLl2TZnIru14+ -uVcP +ggIKAoICAQDXsElxp7glLD3Dp1z6u0lBUy2kjOtsdhZya82+q53vCmEOteZeg3dj +ZuzK7bR1iVAUEuogwrBBpRfwFmDuWnVbmfl3/kvjaFjFz01LiWKvuVRHgEvDzCK4 +pLAPDaZ9IQDDUw63f3jV0OVuMy0DqlFpynLhND9TO4CN/631/fyV5GX1JpEBijkr +2t6iRznBuwXO76myZ5BXmyMPO3toh8TZ1H+SKCZq1GjjHRYkMhwQaCck1Sd8KVH6 ++kNvndLCMnrPT1d9w2wfA8ihnTn2y4OGJirJwL58qQtKdl8PcgJx5UF9uzYHKrX8 +3Dl8d0JTT8UAxd6DR84vBg+8rHsdc+z0SLGZS1UC7IQHTnwPp2pLT3s4+dkfFQbV +msYFRSOyAOV9ta3ktubdNZPxlzXMiCcVuSks9NG9YfPpqc9J9EdzM9x7mcmwF4OW +52fvdYznkJk7dPHjF48ABgpcXDqn67LHw7zp1EmYw6cxBg2lbhRlTwPYUf3ijQX6 +Oufa7+OaWIbcaBy89SyVqGdbnoJiqxhdcNeitOZOZqc8B+n86g882xdccspxl8n2 +yKrL7AZ4rlhpoTI5X0+fpdFRthoLA+2Io7+kldGGa1X/OYgOaul3SkwbimJop2RG +53hI8PZHPZsjHguYpO8B7pLAPwUHI2tUz8AeGUWzxHH4tohcW7bEswIDAQABoAAw +DQYJKoZIhvcNAQELBQADggIBACboOarzimaArw3lDm6ET5yiU7NxTWtnWwFUOoSh +qS2cvumnCokUlrDyMSSKoHl2i2biUd9uiHuEqlh0yufNgnTsyAXLg0UiBHAv5Tos +Esc5A+JTV5ehy+Zrjpl3Ayh8difS8hJEBjMhH+7rCN3rhpvwkTSaXDCQTBzWPhQ1 +R0EIho/SNOh5mXQKAUWwhtleI0sEJC/PqezGfN+w+URHnzE7YMwg02bvoMxBEror +YVddG4o0nIyd6CPg++K7TBzYGGOf1CUCrI9S1bBn3jcv2mq5YgZMdLEa0HkA9XzU +J/dTSGz5pJbkoaX9IHv8a3uoc+V1jdNWZRmTUYG/cNoAFISoG+uuJLgesF5l+vxx +GUwkE6wj4bNYR/Pqy5963oDmA3ndBzR1wtCZqIsLX3t3A9fLLtIEgeN/XDSvNDBs +YdwBrx2HTatK7QCJ5e+4ACs6Wc2c1nnDviPddpxUgl0pHKcMbT+xNk7bY5fjl5Qr +wzuBNgvQcsZxNNvI8bs13k/eBmKrKOV2WUP1mHRzSoxPX3gzGRSWCe/7QR51oWlB +Qkb6OGVGLCKPnhIKFeZ6G1Qv8q7/hOOlmWGO4bN7s5fjAKEsm3JV1xrsqSKRofRG +JfdPjQD88jewIAk6xGSMKmc4usQN+y/IfU8yZ57MHSHULccA1Wl/VXfgKCAxS5fK +uXtm -----END CERTIFICATE REQUEST----- diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key b/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key index fd649acf54..58414d8d59 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh b/experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh index e1f1af5b54..84637be753 100755 --- a/experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh @@ -8,15 +8,15 @@ rm ca.crt ca.key client.crt client.csr client.key server.crt server.csr server.key -openssl genrsa -nodes -des3 -out ca.key 4096 -openssl req -nodes -new -x509 -days 365 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" +openssl genrsa -out ca.key 4096 +openssl req -new -x509 -days 365 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" -openssl genrsa -nodes -des3 -out server.key 4096 -openssl req -nodes -new -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" -openssl x509 -req -nodes -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt -openssl rsa -nodes -in server.key -out server.key +openssl genrsa -out server.key 4096 +openssl req -new -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" +openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt +openssl rsa -in server.key -out server.key -openssl genrsa -nodes -des3 -out client.key 4096 -openssl req -nodes -new -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" -openssl x509 -nodes -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt -openssl rsa -nodes -in client.key -out client.key +openssl genrsa -out client.key 4096 +openssl req -new -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" +openssl x509 -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt +openssl rsa -in client.key -out client.key diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt index da8b6beedd..ace156a29e 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt @@ -1,31 +1,31 @@ -----BEGIN CERTIFICATE----- MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjIwNjA4MDk1NDAwWhcN -MjMwNjA4MDk1NDAwWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjMwNjA4MTY0NDI0WhcN +MjQwNjA3MTY0NDI0WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZT ZXJ2ZXIxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAKF4wbhjwTd048CdtquNjhuVGIvPxpdNaCPXbSJN9joRqRwp0vt4 -DnRfLWda34UzZ9fxXN4HTgYrzLYkrdOUhvourhjka2mjcs1kOjlfFeGwgJe8LTVG -6qE+LdJFw4xPd53dZtsN1dQaj7e/GlK4jNI69qtq16dnFswjbzAI62or9MHdzY4F -fEFReMr25kGSo+/nNwI21PbiMhZ+OSTuoSgomx6JmXUYG9+uZFZTrE+fn47jMK4w -Bv1W+U2D1w2Aof01lyfQQ/giMY6XUAIPHIyBEvFyF1sdU+ZJzubl3vPGzf84If8+ -31iYsYEoqR3vwYs7+fmAWXOcXnjL8N0QqZPT37fsKLF1l+WCxhWLMlc8x9Kq8Gez -mOJRrR3j5Ui+ux6TpQV3aIXj3ykUIeDIIwRPNsDrwzJLNG28YVMV1rz4+V2/MsQ4 -ML1MilP3ZB9uxUN391XulLxsQI0olv+LZqKYnqqeHbFDt61Hr4WmefqKqB4rlO1j -WH4SLCEykzToFQpK9MQpPmUJ2UZrudN3flJGZ8bpnGu2gA2rgqfejB52D5jpZTzT -RU9OZp1v6JWjjRh3vcqVSin0mPLEXQj11cpKOBzIBEjqoPtpnjH8SQd9mb7n/o5q -8gLSuTcOqn3lLH3DvLTBilsmNcIbBItpC6QGc5EVqPlAJKIvLvOGb6B5AgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAEdYvhg/TGjtzlJIqUv1qfyJr6gOm9Ydoz1WDaau -HJTkmI7vCeHUDxnhXEq1lYKt89XvUHsfI0lkCV2Gt+wppsL3ZZIGsv0C70nIPTIT -egPoBeUpqk1ZtPN3VEvgD3GDjAJzuvaL1Uhw9Yt4qKxP6ozyRfhObbTSomLNplui -LGGd6PqVF1vDAx6Ubw/LaNQzVjzQsMm4AgafakIh4c9aA3zxyZvUwAvT7ZVElMHK -moEudZQzL9Cx/Y9Pgv+z3JcXpT7UbDWSB/dVi5ZgcTtzHaYKAMFaunxNYqwWoicf -zB1uk2QOLgfxteWBjeaNl9UfXShGm+iGRoVVL7VrayO6+ScGchUGN5h1qR4xzWpA -2QKSb7t1oEW/GtrV6AD3jJUjcna4LP6DdpY/0IocgU5KonR0eFUNrZA8hUsXquQ0 -/Cx9d7ktdEDudeS4tJywF1CI3IcIZQ2vExJ+NjdlAFIVFkaqFFLhv/cCcGaBpH7X -6dc5bOoqyOgX97yBJJX9Joz6ZoAp2XO1tvycxj2g84V90lDsbTurmyuoR8yTcBbE -FNseKWNRi4fmsB1etz/HX3h1qUPP1ze+fY4C2zPleIB6uSKM5ZfODpMDejHQRF29 -YshoFbAJ19zOHYY+5LYHoLGJlN34TJ4ouPpAtRIQu4ebQZwMxddU1759sCIIwkHe -V5d5 +ADCCAgoCggIBAKtVnxPqCZheCuqePfLknxc+6MeyYkf494U8WWeZo+yirYV3zY70 +1KhKZ+M+XDqhrBXc7IQHZd2KKxYBGnrv9yvbllmtZRdnk3hnn8B4eNh3w5gCRKPo +GSTeiNN7WEIRwYZNkr8AWgeoYT1jN8SAMn5+qSqKSd62Z1BPJNi0eQmTVxgLZqzx +92AWBZQl9rOme+1zV6ohKcR22Of3yUl6476L1rYYcX0DXp0QFkhK0TFKNt3cHxqq +WTRuMTnyCj7woWRtwclWTdO2buAkJe8cIde6rcbaUAX9jTdkbAgYAB9MctEKqasO +MqFyMzweS3sG9oUnmd0/GRL9as314xTZuz8fFnfj5l0BN6thVMmvEEYU3rTLQRKf +AKWzI2VrU+5wIxN8O/4ZbriQ5ae13p6TDYilSZ6kMxSzfOM/A00hlA+DKMS0o8g8 +V9Y3wcl3aSSjoZbH7XS/uDEueodudz9V3HxCk7Wc41SpunQPFprmPDWtjiW0jcMD +3kHV819r2F8aidKN94Q+3KI+N/mwn1QdDVsquiCq0wbR54i3CoAkQbi5YeUdEZD6 +/mNLs/BABgzSbANw7Fn1Pd9gY/JIsRhMskcFRqXe9tOqKk8/GxMv/r9MgJn6HHlk +iDa3OZsoOtFbjjOPFoy/Xq9YMi4ODnJkEhe7BSsVl/wkDAUdg7Zfu8XVAgMBAAEw +DQYJKoZIhvcNAQELBQADggIBAEft+R+qGyKffiiJpYWLPn0C9SmpjZiWPK331n57 +Nk3GA8u9gRgD1gyqqLr19r86nLArF8jcB/nChPB1A9ysW3xyTNvpOlAwYvEjxWR2 +tJr8wiDucAd+SnQud6e+5PI5e8LnyxYoeoZ+i6hMbhNV70NthoINHMAQx+5NeSpa +Q0GJ4d0XA3W/8Pu6oK7O0QkVovVut73Koz5DqsF91zFJp7SjVKaCnnjRKyU8wbg5 +uTO0TRheEtx3AeEXNps5Yhq0daLTnmnuFeyaJHm2F1QuBmma1TTwIF3HDclv2wLn +Jp+MWG9yoN9oEJLqS/AvDu1BltPSuvnYgLZr7cl0os+TEqpzxroa4ziE98dEiy0D +K4YQ59UTz6C8Ps0uX0hcs3jsvZOkBWptusvJBfZN59xLJAVmF2igkgIBKoiXvXmv +fXDx0hsOBg2IPe2O8lLHlFKlJZlMc+prH1iD0Xv6HefSP4L1eZHU37zjrRf/GiNX +r6GoEhJR2pKEoZQT81xpYp/w+qjzWcTl/mLD6FEePRzV92h3ubjRWBB36UhLtnEG +LJgp7yq3aGu7rg9rnuz8J6DG8DStE9rNuRjkV1O2C/PvR97XmVoIqbrMlxX9MUQJ +XxLm5dqBz7EVuhDJSyp4zCkDYsOj1y/SLL2O3cTyQQeZg6jlqripNqWnviAdTWe5 +JIPp -----END CERTIFICATE----- diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr index d8ab7deb4b..b421a7a60c 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr @@ -2,27 +2,27 @@ MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGU2Vy dmVyMRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQCheMG4Y8E3dOPAnbarjY4blRiLz8aXTWgj120iTfY6EakcKdL7eA50 -Xy1nWt+FM2fX8VzeB04GK8y2JK3TlIb6Lq4Y5Gtpo3LNZDo5XxXhsICXvC01Ruqh -Pi3SRcOMT3ed3WbbDdXUGo+3vxpSuIzSOvaratenZxbMI28wCOtqK/TB3c2OBXxB -UXjK9uZBkqPv5zcCNtT24jIWfjkk7qEoKJseiZl1GBvfrmRWU6xPn5+O4zCuMAb9 -VvlNg9cNgKH9NZcn0EP4IjGOl1ACDxyMgRLxchdbHVPmSc7m5d7zxs3/OCH/Pt9Y -mLGBKKkd78GLO/n5gFlznF54y/DdEKmT09+37CixdZflgsYVizJXPMfSqvBns5ji -Ua0d4+VIvrsek6UFd2iF498pFCHgyCMETzbA68MySzRtvGFTFda8+PldvzLEODC9 -TIpT92QfbsVDd/dV7pS8bECNKJb/i2aimJ6qnh2xQ7etR6+Fpnn6iqgeK5TtY1h+ -EiwhMpM06BUKSvTEKT5lCdlGa7nTd35SRmfG6ZxrtoANq4Kn3owedg+Y6WU800VP -Tmadb+iVo40Yd73KlUop9JjyxF0I9dXKSjgcyARI6qD7aZ4x/EkHfZm+5/6OavIC -0rk3Dqp95Sx9w7y0wYpbJjXCGwSLaQukBnORFaj5QCSiLy7zhm+geQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBADoGwPR/TLe0PwsB2orIjrHnsZLYzcHxh9JdRaCO -Q07NvbocAqN3nIiHaUI/IqZG3aiBQb7i98maE2fcFVgsMoRVLB2GsQw+bzoPF+45 -kbtff4L1mHEt8AIIL063AepTetAMUfojpoRI0JG6pChzHDxuud++kPrz50wR5eEk -OhDjX46qh8VxExH3rfU+VDY/FvXMJaMLa76HOmY93g/p+C6T+SiTrs+QEPqWsMKa -eHJTTP0PZx8ikdT64aJpDiOmXVthymPPSZvDEWzlJ7RF8y0p+SoqPM3Pv8/M7zq7 -2dRL6UABTMGtBMEtj5DDZYWTl+1O8Yn4xhjHBcDT3ug3IvnCKCpX2ufi+wJzaWEu -QFAL+N5Sc1rZxklqWKprQeGBiEIE3UXdDA6Xvom85gLoaWoH6nMFvDNab+zJl4Ty -0Iiciq9jzUq4eda/TjgPxDs6RNlJxSXs1lASUR0Jx+Nb9wH2R1n6XQJhcOrz6nJ/ -T+/INYf5VrUdvf9P0PRub7Ga962fBDUG6WQx3PPjy/iEmffN/nsBXXzvQiw7ObW4 -eNCQob2H/3lAdxOs2txKhTCgUV9CzUb2P4Uq4s26n0yA6qpVG6Jgp14s+kVrgFYQ -KjhoFMWXtN3YqETnVNe6A9PEwkSpCm/JyGTm524ok0KyrXo1nSm1WKZqEIQCpp2D -vQFY +ggIKAoICAQCrVZ8T6gmYXgrqnj3y5J8XPujHsmJH+PeFPFlnmaPsoq2Fd82O9NSo +SmfjPlw6oawV3OyEB2XdiisWARp67/cr25ZZrWUXZ5N4Z5/AeHjYd8OYAkSj6Bkk +3ojTe1hCEcGGTZK/AFoHqGE9YzfEgDJ+fqkqiknetmdQTyTYtHkJk1cYC2as8fdg +FgWUJfazpnvtc1eqISnEdtjn98lJeuO+i9a2GHF9A16dEBZIStExSjbd3B8aqlk0 +bjE58go+8KFkbcHJVk3Ttm7gJCXvHCHXuq3G2lAF/Y03ZGwIGAAfTHLRCqmrDjKh +cjM8Hkt7BvaFJ5ndPxkS/WrN9eMU2bs/HxZ34+ZdATerYVTJrxBGFN60y0ESnwCl +syNla1PucCMTfDv+GW64kOWntd6ekw2IpUmepDMUs3zjPwNNIZQPgyjEtKPIPFfW +N8HJd2kko6GWx+10v7gxLnqHbnc/Vdx8QpO1nONUqbp0Dxaa5jw1rY4ltI3DA95B +1fNfa9hfGonSjfeEPtyiPjf5sJ9UHQ1bKrogqtMG0eeItwqAJEG4uWHlHRGQ+v5j +S7PwQAYM0mwDcOxZ9T3fYGPySLEYTLJHBUal3vbTqipPPxsTL/6/TICZ+hx5ZIg2 +tzmbKDrRW44zjxaMv16vWDIuDg5yZBIXuwUrFZf8JAwFHYO2X7vF1QIDAQABoAAw +DQYJKoZIhvcNAQELBQADggIBAJCMEdjKyklN2izvOhd7+JMXm/ClW3hjowbu+csO +JNz8NqUNLrKJjFyV3yAUGWuyp3z982S+XGfcm3nU7n9AJOjT4DLJId6opOtA6CSp +KTRgVZmeViL6O6UqBLTacz5DDjwMQXxszc+QpU53cMT6Y7VMvIOhQ6AmIvz1v71u +5gaYmlbfXVlmiPHEKRsQG9/DNIPe1mHP0p+S9qYKmCx7Jlpee7IstW/hNjt7alDn +uFaxFjxmCCSdWaMRyMW/qNRks9q3VdhJPan+amFeXceoEG7SOKiFiOc8A7DribSm +iKc2YlOw14xqc+cJutiKBvoBMri2eh1JgCbPT4ufVGFpbDkfYwAJxWx44Eg0X90j +gJUw8IRuHQZkEYss6jwFMFcOqjpe+AqrssOl4GZmu5gcaiUnj8PkSVZLTOrLilPg +sSDjzmoHdv4QcBppTrjj6PyR5Xd6DeGasWkMPvIPjiPN3mOhfxJ3C87atMqOhTLx +em7vFOBegAW6g40J9JD1XMoI/zFnTU8NevZQgCyx/Tq1XNRmUeMA6y/qpfTNKi/f +F7v/7nDWoxBgpOw3J0E9R+6rxD7Cjb2RWZEf20ZGdNBlPE+UG9c9b3HC3IHiwRHb +L9Fi0251w+fkaPX8dojQKErCEknqJ1SCP5S5F5g1QCQby22Y7LQsggMMf94s/wQX +4uMh -----END CERTIFICATE REQUEST----- diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key index 9147802e7d..80b9cea7bf 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-logs-otlp-http/README.md b/experimental/packages/exporter-logs-otlp-http/README.md index 256e1d88d8..24f0d7f4a0 100644 --- a/experimental/packages/exporter-logs-otlp-http/README.md +++ b/experimental/packages/exporter-logs-otlp-http/README.md @@ -5,7 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides an exporter for OTLP (http/json) logs using protocol version `v0.18`. +This module provides a logs-exporter for OTLP (http/json) using protocol version `v0.20.0`. ## Installation diff --git a/experimental/packages/exporter-logs-otlp-http/package.json b/experimental/packages/exporter-logs-otlp-http/package.json index b6f4808b42..a1ff957253 100644 --- a/experimental/packages/exporter-logs-otlp-http/package.json +++ b/experimental/packages/exporter-logs-otlp-http/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-logs-otlp-http", - "version": "0.39.1", + "version": "0.40.0", "publishConfig": { "access": "public" }, @@ -41,7 +41,7 @@ "test:browser": "nyc karma start --single-run", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -71,39 +71,43 @@ ], "sideEffects": false, "devDependencies": { - "@babel/core": "7.16.0", - "@opentelemetry/api-logs": ">=0.38.0", - "@types/mocha": "10.0.0", + "@babel/core": "7.22.5", + "@opentelemetry/api-logs": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", "cpx": "1.5.0", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "14.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "peerDependencies": { "@opentelemetry/api-logs": ">=0.38.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/sdk-logs": "0.39.1" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/sdk-logs": "0.40.0", + "tslib": "^2.3.1" } } diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts b/experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts index ef837614e2..a7ecbbac95 100644 --- a/experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts +++ b/experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts @@ -48,7 +48,7 @@ export class OTLPLogExporter } convert(logRecords: ReadableLogRecord[]): IExportLogsServiceRequest { - return createExportLogsServiceRequest(logRecords); + return createExportLogsServiceRequest(logRecords, true); } getDefaultUrl(config: OTLPExporterConfigBase): string { diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts b/experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts index 7f7c538df7..a1d101e87c 100644 --- a/experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts +++ b/experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts @@ -48,7 +48,7 @@ export class OTLPLogExporter } convert(logRecords: ReadableLogRecord[]): IExportLogsServiceRequest { - return createExportLogsServiceRequest(logRecords); + return createExportLogsServiceRequest(logRecords, true); } getDefaultUrl(config: OTLPExporterNodeConfigBase): string { diff --git a/experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts b/experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts index 66958a9fef..2443c97ef4 100644 --- a/experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts +++ b/experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts @@ -13,15 +13,24 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - import * as assert from 'assert'; import * as sinon from 'sinon'; import * as Config from '../../src/platform/config'; import { OTLPLogExporter } from '../../src/platform/browser'; +import { OTLPExporterConfigBase } from '@opentelemetry/otlp-exporter-base'; +import { ReadableLogRecord } from '@opentelemetry/sdk-logs'; +import { mockedReadableLogRecord } from '../logHelper'; +import { ExportResultCode } from '@opentelemetry/core'; describe('OTLPLogExporter', () => { let envSource: Record; + let collectorExporter: OTLPLogExporter; + let collectorExporterConfig: OTLPExporterConfigBase; + + afterEach(() => { + sinon.restore(); + }); if (typeof process === 'undefined') { envSource = globalThis as unknown as Record; @@ -61,4 +70,79 @@ describe('OTLPLogExporter', () => { assert.strictEqual(getDefaultUrl.callCount, 2); }); }); + + describe('export - common', () => { + let spySend: any; + beforeEach(() => { + spySend = sinon.stub(OTLPLogExporter.prototype, 'send'); + collectorExporter = new OTLPLogExporter(collectorExporterConfig); + }); + + it('should export spans as otlpTypes.Spans', done => { + const logs: ReadableLogRecord[] = []; + logs.push(Object.assign({}, mockedReadableLogRecord)); + + collectorExporter.export(logs, () => {}); + setTimeout(() => { + const log = spySend.args[0][0][0] as ReadableLogRecord; + assert.deepStrictEqual(logs[0], log); + done(); + }); + assert.strictEqual(spySend.callCount, 1); + }); + + describe('when exporter is shutdown', () => { + it( + 'should not export anything but return callback with code' + + ' "FailedNotRetryable"', + async () => { + const spans: ReadableLogRecord[] = []; + spans.push(Object.assign({}, mockedReadableLogRecord)); + await collectorExporter.shutdown(); + spySend.resetHistory(); + + const callbackSpy = sinon.spy(); + collectorExporter.export(spans, callbackSpy); + const returnCode = callbackSpy.args[0][0]; + + assert.strictEqual( + returnCode.code, + ExportResultCode.FAILED, + 'return value is wrong' + ); + assert.strictEqual(spySend.callCount, 0, 'should not call send'); + } + ); + }); + describe('when an error occurs', () => { + it('should return failed export result', done => { + const spans: ReadableLogRecord[] = []; + spans.push(Object.assign({}, mockedReadableLogRecord)); + spySend.throws({ + code: 100, + details: 'Test error', + metadata: {}, + message: 'Non-retryable', + stack: 'Stack', + }); + const callbackSpy = sinon.spy(); + collectorExporter.export(spans, callbackSpy); + setTimeout(() => { + const returnCode = callbackSpy.args[0][0]; + assert.strictEqual( + returnCode.code, + ExportResultCode.FAILED, + 'return value is wrong' + ); + assert.strictEqual( + returnCode.error.message, + 'Non-retryable', + 'return error message is wrong' + ); + assert.strictEqual(spySend.callCount, 1, 'should call send'); + done(); + }); + }); + }); + }); }); diff --git a/experimental/packages/exporter-logs-otlp-http/test/logHelper.ts b/experimental/packages/exporter-logs-otlp-http/test/logHelper.ts new file mode 100644 index 0000000000..1d9461f873 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/test/logHelper.ts @@ -0,0 +1,166 @@ +/* + * Copyright The OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { HrTime, TraceFlags } from '@opentelemetry/api'; +import { SeverityNumber } from '@opentelemetry/api-logs'; +import { Resource } from '@opentelemetry/resources'; +import * as assert from 'assert'; +import { VERSION } from '@opentelemetry/core'; +import { + IAnyValue, + IExportLogsServiceRequest, + IKeyValue, + ILogRecord, + IResource, +} from '@opentelemetry/otlp-transformer'; +import { ReadableLogRecord } from '@opentelemetry/sdk-logs'; + +export const mockedReadableLogRecord: ReadableLogRecord = { + resource: Resource.default().merge( + new Resource({ + 'resource-attribute': 'some resource-attr value', + }) + ), + instrumentationScope: { + name: 'scope_name_1', + version: '0.1.0', + schemaUrl: 'http://url.to.schema', + }, + hrTime: [1680253513, 123241635] as HrTime, + hrTimeObserved: [1680253513, 123241635] as HrTime, + attributes: { + 'some-attribute': 'some attribute value', + }, + severityNumber: SeverityNumber.ERROR, + severityText: 'error', + body: 'some_log_body', + spanContext: { + traceFlags: TraceFlags.SAMPLED, + traceId: '1f1008dc8e270e85c40a0d7c3939b278', + spanId: '5e107261f64fa53e', + }, +}; +export function ensureExportedAttributesAreCorrect(attributes: IKeyValue[]) { + assert.deepStrictEqual( + attributes, + [ + { + key: 'some-attribute', + value: { + stringValue: 'some attribute value', + }, + }, + ], + 'exported attributes are incorrect' + ); +} + +export function ensureExportedBodyIsCorrect(body?: IAnyValue) { + assert.deepStrictEqual( + body, + { stringValue: 'some_log_body' }, + 'exported attributes are incorrect' + ); +} + +export function ensureExportedLogRecordIsCorrect(logRecord: ILogRecord) { + ensureExportedBodyIsCorrect(logRecord.body); + ensureExportedAttributesAreCorrect(logRecord.attributes); + assert.strictEqual( + logRecord.timeUnixNano, + 1680253513123241700, + 'timeUnixNano is wrong' + ); + assert.strictEqual( + logRecord.observedTimeUnixNano, + 1680253513123241700, + 'observedTimeUnixNano is wrong' + ); + assert.strictEqual( + logRecord.severityNumber, + SeverityNumber.ERROR, + 'severityNumber is wrong' + ); + assert.strictEqual(logRecord.severityText, 'error', 'severityText is wrong'); + assert.strictEqual( + logRecord.droppedAttributesCount, + 0, + 'droppedAttributesCount is wrong' + ); + assert.strictEqual(logRecord.flags, TraceFlags.SAMPLED, 'flags is wrong'); +} + +export function ensureResourceIsCorrect(resource: IResource) { + assert.deepStrictEqual(resource, { + attributes: [ + { + key: 'service.name', + value: { + stringValue: `unknown_service:${process.argv0}`, + value: 'stringValue', + }, + }, + { + key: 'telemetry.sdk.language', + value: { + stringValue: 'nodejs', + value: 'stringValue', + }, + }, + { + key: 'telemetry.sdk.name', + value: { + stringValue: 'opentelemetry', + value: 'stringValue', + }, + }, + { + key: 'telemetry.sdk.version', + value: { + stringValue: VERSION, + value: 'stringValue', + }, + }, + { + key: 'resource-attribute', + value: { + stringValue: 'some resource-attr value', + value: 'stringValue', + }, + }, + ], + droppedAttributesCount: 0, + }); +} + +export function ensureExportLogsServiceRequestIsSet( + json: IExportLogsServiceRequest +) { + const resourceLogs = json.resourceLogs; + assert.strictEqual(resourceLogs?.length, 1, 'resourceLogs is missing'); + + const resource = resourceLogs?.[0].resource; + assert.ok(resource, 'resource is missing'); + + const scopeLogs = resourceLogs?.[0].scopeLogs; + assert.strictEqual(scopeLogs?.length, 1, 'scopeLogs is missing'); + + const scope = scopeLogs?.[0].scope; + assert.ok(scope, 'scope is missing'); + + const logRecords = scopeLogs?.[0].logRecords; + assert.strictEqual(logRecords?.length, 1, 'logs are missing'); +} diff --git a/experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts b/experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts index aa0d345348..2ae11142ad 100644 --- a/experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts +++ b/experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts @@ -14,14 +14,55 @@ * limitations under the License. */ +import { diag } from '@opentelemetry/api'; import * as assert from 'assert'; +import * as http from 'http'; import * as sinon from 'sinon'; - import * as Config from '../../src/platform/config'; + import { OTLPLogExporter } from '../../src/platform/node'; +import { OTLPExporterNodeConfigBase } from '@opentelemetry/otlp-exporter-base'; +import { ReadableLogRecord } from '@opentelemetry/sdk-logs'; +import { + ensureExportLogsServiceRequestIsSet, + ensureExportedLogRecordIsCorrect, + mockedReadableLogRecord, +} from '../logHelper'; +import { PassThrough, Stream } from 'stream'; +import { IExportLogsServiceRequest } from '@opentelemetry/otlp-transformer'; +import { ExportResultCode } from '@opentelemetry/core'; + +let fakeRequest: PassThrough; + +class MockedResponse extends Stream { + constructor(private _code: number, private _msg?: string) { + super(); + } + + send(data: string) { + this.emit('data', data); + this.emit('end'); + } + + get statusCode() { + return this._code; + } + + get statusMessage() { + return this._msg; + } +} describe('OTLPLogExporter', () => { let envSource: Record; + let collectorExporter: OTLPLogExporter; + let collectorExporterConfig: OTLPExporterNodeConfigBase; + let logs: ReadableLogRecord[]; + + afterEach(() => { + fakeRequest = new Stream.PassThrough(); + sinon.restore(); + }); if (typeof process === 'undefined') { envSource = globalThis as unknown as Record; @@ -61,4 +102,130 @@ describe('OTLPLogExporter', () => { assert.strictEqual(getDefaultUrl.callCount, 2); }); }); + + describe('export', () => { + beforeEach(() => { + collectorExporterConfig = { + headers: { + foo: 'bar', + }, + hostname: 'foo', + url: 'http://foo.bar.com', + keepAlive: true, + httpAgentOptions: { keepAliveMsecs: 2000 }, + }; + collectorExporter = new OTLPLogExporter(collectorExporterConfig); + logs = []; + logs.push(Object.assign({}, mockedReadableLogRecord)); + }); + afterEach(() => { + sinon.restore(); + }); + + it('should open the connection', done => { + sinon.stub(http, 'request').callsFake((options: any, cb: any) => { + assert.strictEqual(options.hostname, 'foo.bar.com'); + assert.strictEqual(options.method, 'POST'); + assert.strictEqual(options.path, '/'); + + const mockRes = new MockedResponse(200); + cb(mockRes); + mockRes.send('success'); + done(); + return fakeRequest as any; + }); + collectorExporter.export(logs, () => {}); + }); + + it('should set custom headers', done => { + sinon.stub(http, 'request').callsFake((options: any, cb: any) => { + assert.strictEqual(options.headers['foo'], 'bar'); + + const mockRes = new MockedResponse(200); + cb(mockRes); + mockRes.send('success'); + done(); + return fakeRequest as any; + }); + + collectorExporter.export(logs, () => {}); + }); + + it('should have keep alive and keepAliveMsecs option set', done => { + sinon.stub(http, 'request').callsFake((options: any, cb: any) => { + assert.strictEqual(options.agent.keepAlive, true); + assert.strictEqual(options.agent.options.keepAliveMsecs, 2000); + + const mockRes = new MockedResponse(200); + cb(mockRes); + mockRes.send('success'); + done(); + return fakeRequest as any; + }); + + collectorExporter.export(logs, () => {}); + }); + + it('should successfully send the logs', done => { + const fakeRequest = new Stream.PassThrough(); + sinon.stub(http, 'request').returns(fakeRequest as any); + + let buff = Buffer.from(''); + fakeRequest.on('end', () => { + const responseBody = buff.toString(); + const json = JSON.parse(responseBody) as IExportLogsServiceRequest; + const log1 = json.resourceLogs?.[0].scopeLogs?.[0].logRecords?.[0]; + assert.ok(typeof log1 !== 'undefined', "log doesn't exist"); + ensureExportedLogRecordIsCorrect(log1); + + ensureExportLogsServiceRequestIsSet(json); + + done(); + }); + + fakeRequest.on('data', chunk => { + buff = Buffer.concat([buff, chunk]); + }); + + const clock = sinon.useFakeTimers(); + collectorExporter.export(logs, () => {}); + clock.tick(200); + clock.restore(); + }); + + it('should log the successful message', done => { + // Need to stub/spy on the underlying logger as the "diag" instance is global + const spyLoggerError = sinon.stub(diag, 'error'); + + sinon.stub(http, 'request').callsFake((options: any, cb: any) => { + const mockRes = new MockedResponse(200); + cb(mockRes); + mockRes.send('success'); + return fakeRequest as any; + }); + + collectorExporter.export(logs, result => { + assert.strictEqual(result.code, ExportResultCode.SUCCESS); + assert.strictEqual(spyLoggerError.args.length, 0); + done(); + }); + }); + + it('should log the error message', done => { + sinon.stub(http, 'request').callsFake((options: any, cb: any) => { + const mockResError = new MockedResponse(400); + cb(mockResError); + mockResError.send('failed'); + + return fakeRequest as any; + }); + + collectorExporter.export(logs, result => { + assert.strictEqual(result.code, ExportResultCode.FAILED); + // @ts-expect-error verify error code + assert.strictEqual(result.error.code, 400); + done(); + }); + }); + }); }); diff --git a/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json b/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json index 554367c373..f7353a3e87 100644 --- a/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json +++ b/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json @@ -12,6 +12,9 @@ { "path": "../../../packages/opentelemetry-core" }, + { + "path": "../../../packages/opentelemetry-resources" + }, { "path": "../api-logs" }, diff --git a/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json b/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json index 87a369521c..7a3b4e394e 100644 --- a/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json +++ b/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json @@ -12,6 +12,9 @@ { "path": "../../../packages/opentelemetry-core" }, + { + "path": "../../../packages/opentelemetry-resources" + }, { "path": "../api-logs" }, diff --git a/experimental/packages/exporter-logs-otlp-http/tsconfig.json b/experimental/packages/exporter-logs-otlp-http/tsconfig.json index c4eda837a9..e347a2eef9 100644 --- a/experimental/packages/exporter-logs-otlp-http/tsconfig.json +++ b/experimental/packages/exporter-logs-otlp-http/tsconfig.json @@ -1,7 +1,6 @@ { "extends": "../../../tsconfig.base.json", "compilerOptions": { - "esModuleInterop": true, "outDir": "build", "rootDir": "." }, @@ -13,6 +12,9 @@ { "path": "../../../packages/opentelemetry-core" }, + { + "path": "../../../packages/opentelemetry-resources" + }, { "path": "../api-logs" }, diff --git a/experimental/packages/exporter-logs-otlp-proto/README.md b/experimental/packages/exporter-logs-otlp-proto/README.md index 3019f50d3f..3a00476c32 100644 --- a/experimental/packages/exporter-logs-otlp-proto/README.md +++ b/experimental/packages/exporter-logs-otlp-proto/README.md @@ -5,7 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides an exporter for OTLP (http/protobuf) logs using protocol version `v0.18`. +This module provides a logs-exporter for OTLP (http/protobuf) using protocol version `v0.20.0`. ## Installation diff --git a/experimental/packages/exporter-logs-otlp-proto/package.json b/experimental/packages/exporter-logs-otlp-proto/package.json index 016ec13486..204414966f 100644 --- a/experimental/packages/exporter-logs-otlp-proto/package.json +++ b/experimental/packages/exporter-logs-otlp-proto/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-logs-otlp-proto", - "version": "0.39.1", + "version": "0.40.0", "description": "An OTLP exporter to send logs using protobuf over HTTP", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -24,7 +24,7 @@ "test:browser": "nyc karma start --single-run", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -63,16 +63,18 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", "cpx": "1.5.0", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -81,14 +83,15 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/api-logs": "^0.39.1", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "@opentelemetry/otlp-proto-exporter-base": "0.39.1", - "@opentelemetry/sdk-logs": "^0.39.1" + "@opentelemetry/api-logs": "0.40.0", + "@opentelemetry/core": "1.14.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "@opentelemetry/otlp-proto-exporter-base": "0.40.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-logs": "0.40.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/exporter-logs-otlp-proto", "sideEffects": false diff --git a/experimental/packages/exporter-trace-otlp-grpc/README.md b/experimental/packages/exporter-trace-otlp-grpc/README.md index b03274b320..32d4231870 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/README.md +++ b/experimental/packages/exporter-trace-otlp-grpc/README.md @@ -5,8 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides exporter for node to be used with OTLP (`grpc`) compatible receivers. -Compatible with [opentelemetry-collector][opentelemetry-collector-url] versions `>=0.16 <=0.50`. +This module provides a trace-exporter for OTLP (gRPC) traces using protocol version `v0.20.0`. ## Installation @@ -30,6 +29,7 @@ const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-grpc' const collectorOptions = { // url is optional and can be omitted - default is http://localhost:4317 + // Unix domain sockets are also supported: 'unix:///path/to/socket.sock' url: 'http://:', }; @@ -54,6 +54,7 @@ const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-grpc' const collectorOptions = { // url is optional and can be omitted - default is http://localhost:4317 + // Unix domain sockets are also supported: 'unix:///path/to/socket.sock' url: 'http://:', credentials: grpc.credentials.createSsl(), }; @@ -94,6 +95,7 @@ metadata.set('k', 'v'); const collectorOptions = { // url is optional and can be omitted - default is http://localhost:4317 + // Unix domain sockets are also supported: 'unix:///path/to/socket.sock' url: 'http://:', metadata, // // an optional grpc.Metadata object to be sent with each request }; @@ -120,6 +122,7 @@ The OTLPTraceExporter has a timeout configuration option which is the maximum ti const collectorOptions = { timeoutMillis: 15000, // url is optional and can be omitted - default is localhost:4317 + // Unix domain sockets are also supported: 'unix:///path/to/socket.sock' url: ':', metadata, // // an optional grpc.Metadata object to be sent with each request }; @@ -138,6 +141,7 @@ const { CompressionAlgorithm } = require('@opentelemetry/exporter-trace-otlp-grp const collectorOptions = { // url is optional and can be omitted - default is http://localhost:4317 + // Unix domain sockets are also supported: 'unix:///path/to/socket.sock' url: 'http://:', metadata, // // an optional grpc.Metadata object to be sent with each request compression: CompressionAlgorithm.GZIP, diff --git a/experimental/packages/exporter-trace-otlp-grpc/package.json b/experimental/packages/exporter-trace-otlp-grpc/package.json index 506bf706e8..fce71adbd5 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/package.json +++ b/experimental/packages/exporter-trace-otlp-grpc/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-trace-otlp-grpc", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry Collector Exporter allows user to send collected traces to the OpenTelemetry Collector", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -15,7 +15,7 @@ "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", "version": "node ../../../scripts/version-update.js", "watch": "tsc --watch --build", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -47,18 +47,20 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@grpc/proto-loader": "^0.7.3", "@opentelemetry/api": "1.4.1", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "@types/mocha": "10.0.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", "cpx": "1.5.0", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -68,11 +70,12 @@ }, "dependencies": { "@grpc/grpc-js": "^1.7.1", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-grpc-exporter-base": "0.39.1", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/otlp-grpc-exporter-base": "0.40.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/exporter-trace-otlp-grpc", "sideEffects": false diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/OTLPTraceExporter.test.ts b/experimental/packages/exporter-trace-otlp-grpc/test/OTLPTraceExporter.test.ts index 17e5511010..f22fc95d2a 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/OTLPTraceExporter.test.ts +++ b/experimental/packages/exporter-trace-otlp-grpc/test/OTLPTraceExporter.test.ts @@ -49,9 +49,11 @@ const includeDirs = [ path.resolve(__dirname, '../../otlp-grpc-exporter-base/protos'), ]; -const address = 'localhost:1501'; +const httpAddr = 'https://localhost:1501'; +const udsAddr = 'unix:///tmp/otlp-traces.sock'; type TestParams = { + address?: string; useTLS?: boolean; metadata?: grpc.Metadata; }; @@ -59,10 +61,11 @@ type TestParams = { const metadata = new grpc.Metadata(); metadata.set('k', 'v'); -const testCollectorExporter = (params: TestParams) => - describe(`OTLPTraceExporter - node ${ - params.useTLS ? 'with' : 'without' - } TLS, ${params.metadata ? 'with' : 'without'} metadata`, () => { +const testCollectorExporter = (params: TestParams) => { + const { address = httpAddr, useTLS, metadata } = params; + return describe(`OTLPTraceExporter - node ${ + useTLS ? 'with' : 'without' + } TLS, ${metadata ? 'with' : 'without'} metadata, target ${address}`, () => { let collectorExporter: OTLPTraceExporter; let server: grpc.Server; let exportedData: IResourceSpans | undefined; @@ -97,7 +100,7 @@ const testCollectorExporter = (params: TestParams) => }, } ); - const credentials = params.useTLS + const credentials = useTLS ? grpc.ServerCredentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), [ @@ -108,10 +111,15 @@ const testCollectorExporter = (params: TestParams) => ] ) : grpc.ServerCredentials.createInsecure(); - server.bindAsync(address, credentials, () => { - server.start(); - done(); - }); + const serverAddr = new URL(address); + server.bindAsync( + serverAddr.protocol === 'https:' ? serverAddr.host : address, + credentials, + () => { + server.start(); + done(); + } + ); }); }); @@ -120,7 +128,7 @@ const testCollectorExporter = (params: TestParams) => }); beforeEach(done => { - const credentials = params.useTLS + const credentials = useTLS ? grpc.credentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), fs.readFileSync('./test/certs/client.key'), @@ -128,9 +136,9 @@ const testCollectorExporter = (params: TestParams) => ) : grpc.credentials.createInsecure(); collectorExporter = new OTLPTraceExporter({ - url: 'https://' + address, + url: address, credentials, - metadata: params.metadata, + metadata: metadata, }); const provider = new BasicTracerProvider(); @@ -149,7 +157,7 @@ const testCollectorExporter = (params: TestParams) => // Need to stub/spy on the underlying logger as the 'diag' instance is global const spyLoggerWarn = sinon.stub(diag, 'warn'); collectorExporter = new OTLPTraceExporter({ - url: `http://${address}`, + url: address, headers: { foo: 'bar', }, @@ -158,9 +166,13 @@ const testCollectorExporter = (params: TestParams) => assert.strictEqual(args[0], 'Headers cannot be set when using grpc'); }); it('should warn about path in url', () => { + if (new URL(address).protocol === 'unix:') { + // Skip this test for UDS + return; + } const spyLoggerWarn = sinon.stub(diag, 'warn'); collectorExporter = new OTLPTraceExporter({ - url: `http://${address}/v1/trace`, + url: `${address}/v1/trace`, }); const args = spyLoggerWarn.args[0]; assert.strictEqual( @@ -198,7 +210,7 @@ const testCollectorExporter = (params: TestParams) => }, 500); }); it('should log deadline exceeded error', done => { - const credentials = params.useTLS + const credentials = useTLS ? grpc.credentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), fs.readFileSync('./test/certs/client.key'), @@ -207,9 +219,9 @@ const testCollectorExporter = (params: TestParams) => : grpc.credentials.createInsecure(); const collectorExporterWithTimeout = new OTLPTraceExporter({ - url: 'grpcs://' + address, + url: address, credentials, - metadata: params.metadata, + metadata: metadata, timeoutMillis: 100, }); @@ -230,7 +242,7 @@ const testCollectorExporter = (params: TestParams) => }); describe('export - with gzip compression', () => { beforeEach(() => { - const credentials = params.useTLS + const credentials = useTLS ? grpc.credentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), fs.readFileSync('./test/certs/client.key'), @@ -238,9 +250,9 @@ const testCollectorExporter = (params: TestParams) => ) : grpc.credentials.createInsecure(); collectorExporter = new OTLPTraceExporter({ - url: 'https://' + address, + url: address, credentials, - metadata: params.metadata, + metadata: metadata, compression: CompressionAlgorithm.GZIP, }); @@ -265,7 +277,7 @@ const testCollectorExporter = (params: TestParams) => assert.ok(typeof resource !== 'undefined', "resource doesn't exist"); ensureResourceIsCorrect(resource); - ensureMetadataIsCorrect(reqMetadata, params.metadata); + ensureMetadataIsCorrect(reqMetadata, metadata); done(); }, 500); @@ -274,7 +286,7 @@ const testCollectorExporter = (params: TestParams) => describe('Trace Exporter with compression', () => { const envSource = process.env; it('should return gzip compression algorithm on exporter', () => { - const credentials = params.useTLS + const credentials = useTLS ? grpc.credentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), fs.readFileSync('./test/certs/client.key'), @@ -284,9 +296,9 @@ const testCollectorExporter = (params: TestParams) => envSource.OTEL_EXPORTER_OTLP_COMPRESSION = 'gzip'; collectorExporter = new OTLPTraceExporter({ - url: 'https://' + address, + url: address, credentials, - metadata: params.metadata, + metadata: metadata, }); assert.strictEqual( collectorExporter.compression, @@ -296,6 +308,7 @@ const testCollectorExporter = (params: TestParams) => }); }); }); +}; describe('OTLPTraceExporter - node (getDefaultUrl)', () => { it('should default to localhost', done => { @@ -361,3 +374,5 @@ describe('when configuring via environment', () => { testCollectorExporter({ useTLS: true }); testCollectorExporter({ useTLS: false }); testCollectorExporter({ metadata }); +// skip UDS tests on windows +process.platform !== 'win32' && testCollectorExporter({ address: udsAddr }); diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/certs/ca.crt b/experimental/packages/exporter-trace-otlp-grpc/test/certs/ca.crt index 27e1d6826b..c194f04954 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/certs/ca.crt +++ b/experimental/packages/exporter-trace-otlp-grpc/test/certs/ca.crt @@ -1,33 +1,33 @@ -----BEGIN CERTIFICATE----- -MIIFozCCA4ugAwIBAgIUC57UkrmvltHwm0jdwHjbFx/wIcMwDQYJKoZIhvcNAQEL +MIIFozCCA4ugAwIBAgIUFA6cfBQ2t0ZOpLTRUIE6VN+kGBkwDQYJKoZIhvcNAQEL BQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQHDBFPcGVuVGVs ZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9vdDENMAsGA1UECwwEVGVzdDELMAkGA1UE -AwwCY2EwHhcNMjIwNjA4MDk1MzU5WhcNMjMwNjA4MDk1MzU5WjBhMQswCQYDVQQG +AwwCY2EwHhcNMjMwNjA4MTY0NDIzWhcNMjQwNjA3MTY0NDIzWjBhMQswCQYDVQQG EwJDTDELMAkGA1UECAwCUk0xGjAYBgNVBAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0w CwYDVQQKDARSb290MQ0wCwYDVQQLDARUZXN0MQswCQYDVQQDDAJjYTCCAiIwDQYJ -KoZIhvcNAQEBBQADggIPADCCAgoCggIBANu7HBCDdS5EStAQP7W4K17xcEzGWB9w -+m8/pZpMIQMVJ0AvvxkGC1rp/uYzcFKjymCqOqFRjTVza5s3ltk6DEJKbwkszAIi -UTA26/AIKxy9iWCqbqS34utSIA8SfUDJx+Nb9PHW2/BZ9DqLsNqxUeq/3NO59z3/ -uMQt3rM7ijO8ETuWkXmje5r9WiuMXIapVBSzKaKwIuX8ikZnXWHFlP9Hej7UMNAl -qx5w/WVO/18UIqJRtwG7+uEN1uut+Jw1fqswctE+69yg1/TgrF9A9kx9e81ZKR9L -JE3K/BZw5z3jRVNxfyhWVCPS8G3znmijuToaS7GpL6S3Nxp7vYxjPx3F6K5DzF2t -Yz1qz6iyxvhm3J/TLz6OzJqP7qIg0Di1HBc/PdzGVSb35VxPYFwWjrAGWL3EzmWz -6ArQDCQdK6tSKlL2LpN0IHxOCSImQDZMB9YpveNenVBuLFhNGZAiow38WlXBS0RC -yQDBjhzwZJO5YE+itycxwFaLvyF/hLjfh5d7C+0tjoLRDZ3OlZQCHO+zdN/ZgZI9 -gx9NRyqmNudPhVzjN8+kQf7iXY0J+aT2XzPZzvMm2vKEB2BalP7iQ1aN+Szz1S5n -ESFDQgEnu9JjjZ/hcUuXNpi03m7O/pMq++fJ7Pib9YG93cBNYSRFulWU1rTD8z+Y -BE8Z+cluZD9xAgMBAAGjUzBRMB0GA1UdDgQWBBRZTBtOna2cDAuO5UP1Je85TKsE -CTAfBgNVHSMEGDAWgBRZTBtOna2cDAuO5UP1Je85TKsECTAPBgNVHRMBAf8EBTAD -AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQBWDujXcuCir18SZhm7ipTwRz50KG7x1W5/ -p32hHJlEYh83+7vytsVwO8W6Ugn8R76mIIeevZv5ahxZeNdLNKrF6qjwZp/INY64 -pO2rUiDqkbU8csQZm5mUMmEa06WytAims5e3wNzLlBEKCUArAy6jMctXm054uQiv -VPk79CEonOjvZBh72QAV+wDCm8oq7TGPgmLPYQkdg3ncPjAu1ubPoPupsUZKmO9G -369t/n5JNDM03Ksek3WFRr88xNIeGRwfAPkJH+XKuikM5PawKfkIX1S//C+NKwdG -9I5d+gO40Ap9itUGr4m0E541isW/poFzcEw8P+UV7WvPNJyCvdOxEIvji4SbLl4h -oCS2qNeREuhtfX0jGzxc9pfrj1w14159tpnwQay2Sf6UOSr6OSl46lETAQaWzJz+ -r/FDHy+T7THqvp++JlIkCfvtMZRXdCX6eRghc/03qSpizhDsAB3hMy/Yq3FA95WT -Rx56YJgzvEH1BUxfc/peTr6BGNEaonRvf9i2dnf+Z3jCJAn4WeKfTDmcpSnmcK4s -dOhQOYnupZCu8mYyC5aOPFB/Ovtm5USJDlWujUm+EjIaOUiPDqP7ff2wQX9+ympF -7xjbanad5F3E1gl623VuhGTI6jUiY5TnxVwh67WxIMb2/bP5Ko27/JmWbbJ1/Dar -g2LKPYSY8A== +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMm3OXVbMd0t2r4x+Pg4fecPeFhRzsg6 +sp7AM4UYlhb0Xkx8ij3q0E47uQM/OSari6qi7p1Un6nzgaXmhosaNkVXaKV4dQ4g +zKqrvC2+nTYU4lwss4Rx32CQxOKXEvN5FPwLTNo903PP3wqJyVt8syN0CDW953m/ +hUdkNaOe/lXmDJ9TmTTGyuPZFSlNlufbaNsBUM5chVFgBYDQIVy0jls8MiYLfao5 +tfprj+yS+lnTDl54dDTVVyAgV22SY65cnUgvO4bu3nzhS/h2Xg4/6/yAuYaRI7GQ +xvlA4pzx+aLaRDTJKiszRrHbQFv4PY+MmkVxvg2Oka4Vc2XMgDM87H0bd+beO8NH +Tf7UHU5AmIr2j2R27LWeELOqanm1HYn2VK182lD7OwQ5u5yqZZuke8bMMPJQEPUm +EwhIgXMVIlGps2+rDUEalPYkQ/BmAcs2g7fywW3RhIWCacggKoee1x9a6oiUM5yi +oDJ6T/C4WUQzIVebdMC25zBBlxcy8fK4Yus/DFTqM/eXPl4NVzbH/yB5tlU2GU0Q +V4tpGL1jsUy4b7r1bzuYVNfnKrarUGFF5TIHuvDo3voJNGb4hWBH/JdttG/9NaWA +HomZ8CUWR+gNEzyPkwq7upkiblKxJV7HKo79Eex+dlWa+Ru1F3kwYE200Y+a/wOF +Rj4+PfMu7WvpAgMBAAGjUzBRMB0GA1UdDgQWBBSwH/Wk2wTc+MEPAEornj1eGKra +0zAfBgNVHSMEGDAWgBSwH/Wk2wTc+MEPAEornj1eGKra0zAPBgNVHRMBAf8EBTAD +AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQCNkzOjjqH3qeQ0wT/Has5PSoWwRwq+B1JT +gg29bgEMD6dVkLdzgEuRVVkMtc/tCZAkA02pc0VN8+lNLW7ckNU/QhMTQYn+FgMR +cG86vR9loTnwUrxR4dS6Nbx1sQ7hpe2GZkWpTNmjh1duHBNHv9nS2JmMkRypqRne +oAI3/th1Qlrtl/zDn02/+P5/av0YJcMOcnRkULHnI62cbXHa2iPd/nENgH2xC6CA +EuYN/bnmOEUPeKljU1IZS6asjGMLdWLmpLs7oOcHGLD3pax+om69Pmn7rps8Z071 +WsJDHFCftItCUrg4KWwpXr77Vq4WAN2tOBdDHEZsbES6a54+7sc1QKOVSWwPuGEd +ShFHhTzoaB0dpwm6kLdYsEkC8JLIjV+Ikg5X3VTDITjUlHoJf2mxCGOzBiCnUr75 +Am0eBqlVcc/2aVk1tcVS9N7reY/KcMaAJvI314O9I94pYdIIm5jw3UmA9Y6HmpN0 +vYtQUF2sS5W82XoFD8bpOq/bx1o2ib2x32dfPQkVgd4sbmpsyN62Fy1HpHwXtXno +xGVaDzGSWj/7RyYyKhNmp3nfQsU0Tt6iVkM+N30vl2heZqEUgXxCG9qHVzWv9z6x +AJzuafjM8tviROpiHkvzsmq7uDhksGooKCi+m+eoEBJrd0J4gjngAi1NYjTsB2GT +4mvPz05UkA== -----END CERTIFICATE----- diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/certs/ca.key b/experimental/packages/exporter-trace-otlp-grpc/test/certs/ca.key index 3ca1e8e149..00ccb04622 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/certs/ca.key +++ b/experimental/packages/exporter-trace-otlp-grpc/test/certs/ca.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.crt b/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.crt index cb5c4508d7..fd05c9c40b 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.crt +++ b/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.crt @@ -1,31 +1,31 @@ -----BEGIN CERTIFICATE----- MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjIwNjA4MDk1NDAxWhcN -MjMwNjA4MDk1NDAxWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjMwNjA4MTY0NDI2WhcN +MjQwNjA3MTY0NDI2WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZD bGllbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAMo9AlVbqKk0NI3U4IPhXARrA/9HCtW6TK8bNj+KqBETPJ0OV6Ep -FC1AUG8h6ZpQy1lAVchMOXXzVIxejJ53Wq2aBMELl7KaheEUAzbQNqSBxL7cY61l -sk1rd0ryQ0167j/tNV5h3FH4ZawD7vt2oGte4Dxipj+gFQx/MXD1j2vOKm0SO6xr -IdSWg79HRnMb6mJMCtTc6kvX5XDN3avwrhndsPKZREhs1ei6lhY4ip3N70357MB6 -vNF7euAMQU7KZ0uZZbj0lqINT+6jwEJ6yhkZM9ILKbxC8+IAhCAOsu2bKXtkhDSN -V+3Jr3x8PRWlhlCitGt9a8/DlT0RIfcXQHRmY7hdnMqt+7vJio56oHcyv2+8ap+C -rWr5OfsRuQvSs3ebn1zhDim0AspKOfdwGepPubgM/MuilYIi35L6CbRp+VbSGmIy -GUOGoWa3uykcMOm4hIK6bbFOGUTixbwIjRfxzuPfPLqIK+aQ5kBSUdDhK9LHpNOM -n0RihXBoRfE3VfnuWVcetp/FG7B5PTgCvP0Ss9QivTV/OQmi1juPa1ONmtZodZTz -eV2mDvZLQKFIInOQE/6dxMn+yrmYlQdV2nEiJU1yiKp5601OklqeX0BO1rWQy283 -AUwbAS5ZBmQeF4KmDZtEphdOTEDmu5YTyDhIvSK58Rq+iQq+CLmaYH3BAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBABV90+TvW47WUdsZpy0eZayjWgIZvKqpWVcYI4Px -1zEGMVJvg8TPjPujGIdhkhxbabklqy/+s/im4ev9MnIGG0wckoYaJgH9KvtD/Br9 -3SpexmN9mQMO8/8299TWJBjS1q5UYjktvbuKFGpizs3+y4n88UmcXRh8y2Z1oglZ -WuXn5A5BJkpXONI3U615mXTf0CLnpbU//4z5VQe2AylksOgo3y7DHXz3iPOh15TN -EnDz7Pms0i8tswSbmS+NU2Clv7ACHhstdPoEqiN/V9gpjon1n+fBXaqMhaXI9C9b -NV9l5AW1utBAc/zlzRnKYtw/yrDW00KAN2FJbGefThJWPCYUlBx5hcCl1C8ObjIz -4b2+2TLdnwkMeeb8FV6mzTaQVWQ5Yr+ffQBqDhahEwjGyUOjzqFtGSlujWKLT4g1 -T9XnVr8KKU6UWDeHDp1lz8S9wo2l5DJN/S6u/SB9RXBOgzFVO9EWnbxkpR4YqdwK -WNP+Xhw9AO+DVX+/zK0PHF4f1z85E30R/V/CmvSx07jaXxK+ixcCykfb0DRvyVyr -WyVxz72LeJnsqWBSjBlwGslPsOzucA6RfN2b7/9rTObglKoKbEV/dSKoRZ34hFcV -nuiwRbVjVXH1az8FU8o+nG+anKW/jpVn4NcabYiHWH6qL+W3ZRTcWkyOOsSHHdOS -Hdil +ADCCAgoCggIBANewSXGnuCUsPcOnXPq7SUFTLaSM62x2FnJrzb6rne8KYQ615l6D +d2Nm7MrttHWJUBQS6iDCsEGlF/AWYO5adVuZ+Xf+S+NoWMXPTUuJYq+5VEeAS8PM +IriksA8Npn0hAMNTDrd/eNXQ5W4zLQOqUWnKcuE0P1M7gI3/rfX9/JXkZfUmkQGK +OSva3qJHOcG7Bc7vqbJnkFebIw87e2iHxNnUf5IoJmrUaOMdFiQyHBBoJyTVJ3wp +Ufr6Q2+d0sIyes9PV33DbB8DyKGdOfbLg4YmKsnAvnypC0p2Xw9yAnHlQX27Ngcq +tfzcOXx3QlNPxQDF3oNHzi8GD7ysex1z7PRIsZlLVQLshAdOfA+naktPezj52R8V +BtWaxgVFI7IA5X21reS25t01k/GXNcyIJxW5KSz00b1h8+mpz0n0R3Mz3HuZybAX +g5bnZ+91jOeQmTt08eMXjwAGClxcOqfrssfDvOnUSZjDpzEGDaVuFGVPA9hR/eKN +Bfo659rv45pYhtxoHLz1LJWoZ1uegmKrGF1w16K05k5mpzwH6fzqDzzbF1xyynGX +yfbIqsvsBniuWGmhMjlfT5+l0VG2GgsD7Yijv6SV0YZrVf85iA5q6XdKTBuKYmin +ZEbneEjw9kc9myMeC5ik7wHuksA/BQcja1TPwB4ZRbPEcfi2iFxbtsSzAgMBAAEw +DQYJKoZIhvcNAQELBQADggIBAGdcqEI2l/dKxu9vPuRC2/VRgjgDBN4UJJCY111T +2A7GsGzd7lRhtxB5ZzClF77UiRJG+cvFai00c9+L3wp8qy4sZWY4MaJIWoKRh72Q +sRiH8AskeIl3uvvvaH86bbmpDo7M48Cs/zXZo9VhLzD8ZuHcS1mdjkOcnQzkbSzR +YeM9ActeuJRmsdQ+gSzCTvFqmGutL6xvM8b9a6PwyY5nPxS+eh0/7KNp+EXBvp0U +MWp6mMfq22nAwAQRLbvh5f+a/4GSwg73By6hwnsgb7tpBBJ6ppnKAIALRf7l5JwS +V0LM5Vnpp4J4JjdYyQzk2xkxi+UGIP1IRigbeWc4K3qgg6BUUkfSf4W9oJD4JCa2 +cOsqnKqFxTwXT4b9j9qsPpg7mUQ2+UtU4Lv3h/7sXpbpx0ldb2Hnaq+JqUz0l/7c +54y3+nzke7I4CWKtLJUSamQiyOC3CBVkRX0YEYUBhMXim6dKAfiOEV6K3bwiU+YZ +aDe0lEeLbzAp87DKRTAvDYhRMIFtD3g2qmYrWpQ4gj8vSEorNAfg3kVHMFRGlk9o +jaFduAz0hKk+QG5SgePXMph5ZRXGRq0FnDbF2gZ7WV+jZiIhsYGJ43+RBWHh4HO4 +P4h9eOWQG8AxpDRmOo2KmyPbV0V/eltC4N0oOAmWz+i0qqulnpG4dOzQKpinRBBr +jPt5 -----END CERTIFICATE----- diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.csr b/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.csr index 30ac376794..b783896725 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.csr +++ b/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.csr @@ -2,27 +2,27 @@ MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGQ2xp ZW50MRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQDKPQJVW6ipNDSN1OCD4VwEawP/RwrVukyvGzY/iqgREzydDlehKRQt -QFBvIemaUMtZQFXITDl181SMXoyed1qtmgTBC5eymoXhFAM20DakgcS+3GOtZbJN -a3dK8kNNeu4/7TVeYdxR+GWsA+77dqBrXuA8YqY/oBUMfzFw9Y9rziptEjusayHU -loO/R0ZzG+piTArU3OpL1+Vwzd2r8K4Z3bDymURIbNXoupYWOIqdze9N+ezAerzR -e3rgDEFOymdLmWW49JaiDU/uo8BCesoZGTPSCym8QvPiAIQgDrLtmyl7ZIQ0jVft -ya98fD0VpYZQorRrfWvPw5U9ESH3F0B0ZmO4XZzKrfu7yYqOeqB3Mr9vvGqfgq1q -+Tn7EbkL0rN3m59c4Q4ptALKSjn3cBnqT7m4DPzLopWCIt+S+gm0aflW0hpiMhlD -hqFmt7spHDDpuISCum2xThlE4sW8CI0X8c7j3zy6iCvmkOZAUlHQ4SvSx6TTjJ9E -YoVwaEXxN1X57llXHrafxRuweT04Arz9ErPUIr01fzkJotY7j2tTjZrWaHWU83ld -pg72S0ChSCJzkBP+ncTJ/sq5mJUHVdpxIiVNcoiqeetNTpJanl9ATta1kMtvNwFM -GwEuWQZkHheCpg2bRKYXTkxA5ruWE8g4SL0iufEavokKvgi5mmB9wQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAGsOxCfMBI11h5BOvDgKpVlAhxHlwyitXGPQHcsr -tjOQi0CRnkcrUMZcgnjX3OPCD3ngjZJW02m82BrN7WJJpSLzEKpnKP6Y91BXfHma -3qPFmMNkXCZ8WRjp6K/l98z9j+lFksN5y2BJCqf8oL1iURPYuHlgRK3LhpR4LOPt -JrJYwAML4hr1g93ejdwGc1LjNx8dyAriCM7h7IwhYGgnT1kYu/shVgT6SH0+ixAq -PNIOekCJH75k9C/QP/hPPARbAzD5of69haLeAcABik/cH/RRuDHTTVxgHFfV/W8r -BWwf7IIxX0iEPCQWxW1Q5SfzOmP9ICLFln4s38MgEGIyGqxgfkSi3nuLkwKTLB1j -NppTiO7Da4Vvso85hdLqNXvE3J6VSiu2c0oDf/ZZYkSizEzt9ESPPp3VcNj2MDbr -CxwhzV018wovlTunUSwKWvRn+syT10bnzZX/+QarZ7mfq57DPfMHNiiPM1ej26eE -Z7A3R3J67H4Ifp5Ua9jdga6x0RfOBRDuZv2N861eVs+9jSIC+hmrvQ1TbTvzHFVB -KYE1UBDRNijuGwsYgZ74vPKLGgA7cFs9X2JXzKc/0Y9opgBltZlNBF97XZSLDw1v -VaPCUVqOU6VKamPX8nVhkpHoUdDSl08T+VKwP5Da4oJHmSZMzxRQLl2TZnIru14+ -uVcP +ggIKAoICAQDXsElxp7glLD3Dp1z6u0lBUy2kjOtsdhZya82+q53vCmEOteZeg3dj +ZuzK7bR1iVAUEuogwrBBpRfwFmDuWnVbmfl3/kvjaFjFz01LiWKvuVRHgEvDzCK4 +pLAPDaZ9IQDDUw63f3jV0OVuMy0DqlFpynLhND9TO4CN/631/fyV5GX1JpEBijkr +2t6iRznBuwXO76myZ5BXmyMPO3toh8TZ1H+SKCZq1GjjHRYkMhwQaCck1Sd8KVH6 ++kNvndLCMnrPT1d9w2wfA8ihnTn2y4OGJirJwL58qQtKdl8PcgJx5UF9uzYHKrX8 +3Dl8d0JTT8UAxd6DR84vBg+8rHsdc+z0SLGZS1UC7IQHTnwPp2pLT3s4+dkfFQbV +msYFRSOyAOV9ta3ktubdNZPxlzXMiCcVuSks9NG9YfPpqc9J9EdzM9x7mcmwF4OW +52fvdYznkJk7dPHjF48ABgpcXDqn67LHw7zp1EmYw6cxBg2lbhRlTwPYUf3ijQX6 +Oufa7+OaWIbcaBy89SyVqGdbnoJiqxhdcNeitOZOZqc8B+n86g882xdccspxl8n2 +yKrL7AZ4rlhpoTI5X0+fpdFRthoLA+2Io7+kldGGa1X/OYgOaul3SkwbimJop2RG +53hI8PZHPZsjHguYpO8B7pLAPwUHI2tUz8AeGUWzxHH4tohcW7bEswIDAQABoAAw +DQYJKoZIhvcNAQELBQADggIBACboOarzimaArw3lDm6ET5yiU7NxTWtnWwFUOoSh +qS2cvumnCokUlrDyMSSKoHl2i2biUd9uiHuEqlh0yufNgnTsyAXLg0UiBHAv5Tos +Esc5A+JTV5ehy+Zrjpl3Ayh8difS8hJEBjMhH+7rCN3rhpvwkTSaXDCQTBzWPhQ1 +R0EIho/SNOh5mXQKAUWwhtleI0sEJC/PqezGfN+w+URHnzE7YMwg02bvoMxBEror +YVddG4o0nIyd6CPg++K7TBzYGGOf1CUCrI9S1bBn3jcv2mq5YgZMdLEa0HkA9XzU +J/dTSGz5pJbkoaX9IHv8a3uoc+V1jdNWZRmTUYG/cNoAFISoG+uuJLgesF5l+vxx +GUwkE6wj4bNYR/Pqy5963oDmA3ndBzR1wtCZqIsLX3t3A9fLLtIEgeN/XDSvNDBs +YdwBrx2HTatK7QCJ5e+4ACs6Wc2c1nnDviPddpxUgl0pHKcMbT+xNk7bY5fjl5Qr +wzuBNgvQcsZxNNvI8bs13k/eBmKrKOV2WUP1mHRzSoxPX3gzGRSWCe/7QR51oWlB +Qkb6OGVGLCKPnhIKFeZ6G1Qv8q7/hOOlmWGO4bN7s5fjAKEsm3JV1xrsqSKRofRG +JfdPjQD88jewIAk6xGSMKmc4usQN+y/IfU8yZ57MHSHULccA1Wl/VXfgKCAxS5fK +uXtm -----END CERTIFICATE REQUEST----- diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.key b/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.key index fd649acf54..58414d8d59 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.key +++ b/experimental/packages/exporter-trace-otlp-grpc/test/certs/client.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -MIIJKQIBAAKCAgEAyj0CVVuoqTQ0jdTgg+FcBGsD/0cK1bpMrxs2P4qoERM8nQ5X -oSkULUBQbyHpmlDLWUBVyEw5dfNUjF6MnndarZoEwQuXspqF4RQDNtA2pIHEvtxj -rWWyTWt3SvJDTXruP+01XmHcUfhlrAPu+3aga17gPGKmP6AVDH8xcPWPa84qbRI7 -rGsh1JaDv0dGcxvqYkwK1NzqS9flcM3dq/CuGd2w8plESGzV6LqWFjiKnc3vTfns -wHq80Xt64AxBTspnS5lluPSWog1P7qPAQnrKGRkz0gspvELz4gCEIA6y7Zspe2SE -NI1X7cmvfHw9FaWGUKK0a31rz8OVPREh9xdAdGZjuF2cyq37u8mKjnqgdzK/b7xq -n4Ktavk5+xG5C9Kzd5ufXOEOKbQCyko593AZ6k+5uAz8y6KVgiLfkvoJtGn5VtIa -YjIZQ4ahZre7KRww6biEgrptsU4ZROLFvAiNF/HO4988uogr5pDmQFJR0OEr0sek -04yfRGKFcGhF8TdV+e5ZVx62n8UbsHk9OAK8/RKz1CK9NX85CaLWO49rU42a1mh1 -lPN5XaYO9ktAoUgic5AT/p3Eyf7KuZiVB1XacSIlTXKIqnnrTU6SWp5fQE7WtZDL -bzcBTBsBLlkGZB4XgqYNm0SmF05MQOa7lhPIOEi9IrnxGr6JCr4IuZpgfcECAwEA -AQKCAgAOu17+JM0mdj0Vz9oDAVmYoMsLv3sUkpufbdYHzuvrQoF511+ex8VGfpbd -YZUIvrXxbHRTQOo2o2EXUJPhv0QFvWB3R4bnZcY23SRWy9gPJ7zTQm6oZO4WIavw -87DfZgMQ+RCYLXzFI9kULL0t6DhLWf/vpigCHoEqBeHuHpUx/zSr+VYLe0pdmBFE -z8ZcAD6UpoFrfCQ9Hh8Clpx9N+0WyUVohq2osPTsHRttxvSiBixWe8w5QTeb8ujC -hWIEgU4A/c2hKYAHkfyun5MTxKoQJfvWYyXJJv9pCSyWwTtbf6AH8wyGX312Pujf -opU4jHQ6T3/hDKPb4J1wc10MCM+TCfF7aiBjOWkmJMJUxIpcKa8tCdeujFWnNbUo -zjdFPsa2Cpou84sal+uebQd0w/Qn7xRh093aHBI3Y2NINwBnpOK/hvV9Jo3nT1UT -EMiGP4okyhnG9BOKHJ7cuTVhH2Lezy6+4VyTsyVYvo5Zf4WUuimXcG3ibMJ17QoA -U2u5kJgNc0uJIhhGZIuIYKlVl9TjRtO6NYph+IppvFCqBL3rma/ytxl66Z6nSvSx -BwUvuHuDTEue6+L75KEiSF+Gj4WG5eIDdlEOh2/j65juPDLT0o3zYdwnCI0hDazS -h7ovGpBO9FQejES4c2+U/oBApoWwxcFdKW+7AW5oenleJhdJeQKCAQEA6Rgx+dnY -lyn5VTOJsCSupWnhQebleFco+SRBwB0DReqRyw8jdBP5YPJyHgvAxpCcZpowv59d -lLHSwl6k2zlkCBEIaSMXZYHawgt7Ht34ioGi0b6sOjGC87BTlC2YnKYD0dJy0C9b -8q2yq4EOgTCWUcubZNaOV+TjGrqh3LkHsOTki5cahEnR03p+GBTFW+JGOz1OGAYx -qt4xZuE+NpQY9ATqKdgRcd9TmHePm1ESNDdEMbawk3KpDyqjybEXuyWLg+KSh9wM -aNnRB5njOVHg8mgs3vmIQss+HTrfMZU74UbNFeiCeTag+dnjzwM/IKwdMIVAN+f8 -ZciA5jFFr1bgYwKCAQEA3hyVv0EaiERuYJS2Ibj769rTmUGItKKkfOa40OiHosXZ -1vx2CQUDcKcdsBn0ajX6nsib/NbV38FlE1tOvDhPPaMAkGDs2RU3y/cQtmEMh8wA -bTscOD7aJ7yhgtF/gZEprcqRcRsKTV3R4IKvTbGSFn2foSch/oVBdGk+3UU3zH6z -nGeyYYIe3y/k1EAHV3chCDTwk/XH75M9+R7MXeJ4t6OhAgKKT6XJnkTtujhXHMEM -aoqa9pejDFAHkhddXqSuGHlasqnInhOOwFRHgHNdJFp7Z/OHrit1VbltsK4+ZdC8 -LaJQpl3xOitXuc/D3yS5NQ+CsWQl5iLINsOUHxU4iwKCAQEArJAy/2udg1uZsM/0 -0Sh2+xLFpspPe6XbOYbz/kv8Tlh4EsJkVt0qs/EJNuEwmFAa2YKxMEvFNf3nr+nt -VjbIrYgel+dYvNdDooBpZ9Kg27lZVro4OuTIs6wIVBzlbKMjFMUeJq3I/oJFUd67 -ZD0aK/f2VNLakotq7jDY/9UjsnviDs2Q3frgkhWPIDjQW1PK9rROCk8bmgngvO9n -5XQCfTTePpgtYgYZlzh8YlnEhk+b9snvM1mhew7wLrMihHQpMzwbiuUHcuA+dcgh -hh/tzsf84B4QGJLqqy0Ya1a1+/M0hVGati4RQqdilbErnP6OpYsgncLrAldLxh8Y -HdTNTQKCAQEAp+ZJ2LKZIOtB2OZxq5pPbWIU1GQyuAG+f+BVUy6D4arYWmirvXO5 -vv3FNmrYVTWKx170c7PfJu7lvjUmlqemVvySH5H1WMBuVlPkoUlJlJnEtM2bLnVs -qd8w5FgDn+kg7YwUV8DOD9/dGG8Rn5Sczz2VXtfbHbCT4zDv4YpCfOZGVfQZZxZa -yfJFc6EXK6oVIUQLnH2N7u+KSHhcmpfpE0CxJHjRHxY/C9IlNsECMO1JunweWkwU -Z+lTX78jyLiKFlweELLBwaUdIwxSpKoQfbucT99K8IFPiEbMwWNmLccViRWLC8g1 -4vgCr6Z79YGoM5EPBZOkBozCdotvu/NpswKCAQAmEKgiBRnupScDQLE31QxSEyHZ -NUnheQ6SMYGjCrneD6LFgr8sK1iS8+PHjC4ngE40yh98speocH8oXgTfUap/7kcn -MEy70yZDGT2wGhcRVO4ivwwCP7NDic7eak22LF9QFn0qn0qAvU2NsdywtSBrRxPE -UF4uaTYs8gLTvlr+5qm5duk+P+hKL/OhOU9GQ3GMYbS/axTU7rkM1Mr+OM3oaKIZ -4Hz9JB0sGgrwpyXRnK4k5mjeUkJ9tx8a5Ky1pyd4Tob492+pdUJBsUXeqii8ZgKi -iCe4lWY9FnS13UC4AViWRaHu793h7xFoibevfXeqErByQ4ByDVPi2QJqIZcd +MIIJKQIBAAKCAgEA17BJcae4JSw9w6dc+rtJQVMtpIzrbHYWcmvNvqud7wphDrXm +XoN3Y2bsyu20dYlQFBLqIMKwQaUX8BZg7lp1W5n5d/5L42hYxc9NS4lir7lUR4BL +w8wiuKSwDw2mfSEAw1MOt3941dDlbjMtA6pRacpy4TQ/UzuAjf+t9f38leRl9SaR +AYo5K9reokc5wbsFzu+psmeQV5sjDzt7aIfE2dR/kigmatRo4x0WJDIcEGgnJNUn +fClR+vpDb53SwjJ6z09XfcNsHwPIoZ059suDhiYqycC+fKkLSnZfD3ICceVBfbs2 +Byq1/Nw5fHdCU0/FAMXeg0fOLwYPvKx7HXPs9EixmUtVAuyEB058D6dqS097OPnZ +HxUG1ZrGBUUjsgDlfbWt5Lbm3TWT8Zc1zIgnFbkpLPTRvWHz6anPSfRHczPce5nJ +sBeDludn73WM55CZO3Tx4xePAAYKXFw6p+uyx8O86dRJmMOnMQYNpW4UZU8D2FH9 +4o0F+jrn2u/jmliG3GgcvPUslahnW56CYqsYXXDXorTmTmanPAfp/OoPPNsXXHLK +cZfJ9siqy+wGeK5YaaEyOV9Pn6XRUbYaCwPtiKO/pJXRhmtV/zmIDmrpd0pMG4pi +aKdkRud4SPD2Rz2bIx4LmKTvAe6SwD8FByNrVM/AHhlFs8Rx+LaIXFu2xLMCAwEA +AQKCAgEAsoTbVPGvjTzf5ieI4pHO4P2aYn6sgHoAvDWT9gOPVYEusgFGKeYAE8rl +pFQ4L6w2FldNZ04cmkit1m5/TeibB/UaMQHOB+uexiJ9ZE7S2oS3R/LdQrKb7l2I +xvzSVvDQ89mz7ZbZCYe7zYkX8devSLNigBlBbH9sOJttfZP50opXBSAllrOz/CNM +b94p5LoJ5awhtWLYaloiG4Js8yikenLSH8ORgIxMP+YcJFtBNScvduHhq3d7vhIT +bLeg8FDdquaNkK8Ft2nnTjSW/DiXpJnEgnZAc2dqy/fLWDpR4bkRiqI/5pCoTiBs +iCMhR1lXwfsD3364Hd2TeuL7h3YioMxSz35o2FbnhdVvRETDUnDajr16sJa/2D8c +9Yl9VcfOfdroK+XIDnp5lE4fXyevz7gY3DKSENSQW3tYEFtjoj0lLLaFhRuWvxk1 +jsYsWMrVq2GFlvks11ePQkrfyv/sAsLd5iBB1bzfLpmnbstwZJcJZGtaSYLygItR +O2wngCRe5Tq6RHTFBqklCnC+a2DIl0LwiYCIPTxmtsYkdNNjIiHoHokUiq5CsjpQ +p+HfN6l93wSadv1HI5yz1AlbgVRPV0xtKc6fGM15diEfUNcPD/U8N5JiMdpMgtam +VyWKMopsG2pTfdxMjXfxWrrhOz9Q3MoU6gYtWoxgChYU+Cl9n0kCggEBAPhX4bbH +w3v0SqplsUwNVIca3faHDtvffORkFk1fUmpzbnZ1t4Mls58yiOkscU7U/54ZiVKD +artNJL9LjLva0ZhtNtTczqbufRfLyHcJehbzjOwIqSEcugf6yUNwO/6oEYcs+6HY +HIt0j1fwH6/QwWXRtLzzhO6avggsf7zgbiE14a+Z1T87WSPg/xJi+IWwDL/HT7XI +P27afnxfv1lJsYSLxPkX6EaUzXJompykBNiyGdYuk2mxQ8gPjbvg84p6gDfKmVVR +zxCMOwBBvflIClGH/LjSPAXbqk/TOo8O9wJE2RITePID6Y7I1ZzZHqYRJxPLipW6 +/oMCvQ/UYvbIXbcCggEBAN5Wq078E7vKfvUPNeMTCpz9cP3UamzPs16bt0tiFDsP +fozBixjOb+tvY5zMN/WiOe/FZTKaf5sijVcyjQqlLDSy1DhPtDxhdO9zCT0u34kH +1Q8oThGhsBSKrcaLJKE339DjbFgJ/vmIWE6KXvV9r3BKraIx9BqR7/5C8Hmuvn9o +FBlrVcYpNl9Aamx4PC/H9d8rZxKvico+Hb+DygEnFG4Ui3ylkEi9NVHYrExAF4vK +qK2LHAAJ5KvU+G3aXjdGJvtJTNXON+uvYbJWVk3A3Lkz+AMTm05EBvgdgh/EfhaY +7yIHVEU6/PEsgiz1R4E8Y36L7iC7hyIYH3ralohckOUCggEAEMpoUWJaPjQ7JCAy +B5FTKLtRTIy/HXCT0iFOPLb4LIhXbJzy5mQTK+1Pwmwl0Q2nprnVRgXqnnVNyb1C +66SUzTh9H5E6S6EORiCaEipK3ehjm8XOIZX+ofF70Bpzg/k7Dielb8Db1TXxRyHO +EqYLnWW7UZcpYrSFqqnPjSaja41oD+ZXu6m4kitxM34LjYZkpkbEhebfGxCcwq36 +kv/fh7WngKv0IWmIJncaFQMl7LzF8Gw/vUKl8Y3TqGNCNBeqOZtyGImqdVT13EOV +o5gSUobeOGTGeCLs9e6zI98AJmAfSRCV+c736JZ9ktg/MT0xpi351bvJ33O88qgK +dOMBKwKCAQAXJAQea2QOZowCK3wbTy8KmeI5uPL+sjtj/Gb+ZI3ge8NbGQXGJi5F +3ckLV8H3QdQv3Waj9qqTVexKCAvf8MMCFR67YahLpIUMKvfqM0e2tmb5deNyOFbg +PHLLuE2urecQkasEGr478HHocsRhXpx03oDl4bcbUNceqo7my0YucoGtB5vczQtI +rKam9XimLHStrpHCwxxfPUnRVgEfT5bzwhWmeoDi4TZ8d0WvhfgtZ4FY1qKqal0v +eTIGFPU7YYTLIJzrn9P4Jr/PVOcUnp8ac4s7nr3KTpA/IKsbbVMGPRKegw7FSddr +ros57KltjQB5+kxlgb8V0FbubXO/a4r1AoIBAQC6GfLZDflLbmGx9cd7OV3nLm5m +hlfKuKwkYa7gKLGgR56/eKbqy/SY+y4K4xQLiNgVyayuUSqd8+fupESaG8J+kY6N +3K7LjdWzYzIJDYnonyqueqsn437CltWG0iBjpPZztexAiI8qk/jVniwIEOHzc4Cb +tPCP51NBbj0dSP9EFB+LbHh2F+zO0DkraA4P+bvKA6GLtfRPfqBi2rz9VVIvV0oR +sM6qfGJVECOxAc5seFSUO8RzEoNf5KQ+ATeRhWJQqGIhw+lP23w1rDv8FOWgxoxw +9O4IfGsSH6V+KYMN7wDx1Sebpw2IosCoGOjWHSH7mJcWy/uqocAirdf5fEeE -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/certs/regenerate.sh b/experimental/packages/exporter-trace-otlp-grpc/test/certs/regenerate.sh index e1f1af5b54..84637be753 100755 --- a/experimental/packages/exporter-trace-otlp-grpc/test/certs/regenerate.sh +++ b/experimental/packages/exporter-trace-otlp-grpc/test/certs/regenerate.sh @@ -8,15 +8,15 @@ rm ca.crt ca.key client.crt client.csr client.key server.crt server.csr server.key -openssl genrsa -nodes -des3 -out ca.key 4096 -openssl req -nodes -new -x509 -days 365 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" +openssl genrsa -out ca.key 4096 +openssl req -new -x509 -days 365 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" -openssl genrsa -nodes -des3 -out server.key 4096 -openssl req -nodes -new -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" -openssl x509 -req -nodes -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt -openssl rsa -nodes -in server.key -out server.key +openssl genrsa -out server.key 4096 +openssl req -new -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" +openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt +openssl rsa -in server.key -out server.key -openssl genrsa -nodes -des3 -out client.key 4096 -openssl req -nodes -new -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" -openssl x509 -nodes -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt -openssl rsa -nodes -in client.key -out client.key +openssl genrsa -out client.key 4096 +openssl req -new -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" +openssl x509 -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt +openssl rsa -in client.key -out client.key diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.crt b/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.crt index da8b6beedd..ace156a29e 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.crt +++ b/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.crt @@ -1,31 +1,31 @@ -----BEGIN CERTIFICATE----- MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjIwNjA4MDk1NDAwWhcN -MjMwNjA4MDk1NDAwWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjMwNjA4MTY0NDI0WhcN +MjQwNjA3MTY0NDI0WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZT ZXJ2ZXIxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAKF4wbhjwTd048CdtquNjhuVGIvPxpdNaCPXbSJN9joRqRwp0vt4 -DnRfLWda34UzZ9fxXN4HTgYrzLYkrdOUhvourhjka2mjcs1kOjlfFeGwgJe8LTVG -6qE+LdJFw4xPd53dZtsN1dQaj7e/GlK4jNI69qtq16dnFswjbzAI62or9MHdzY4F -fEFReMr25kGSo+/nNwI21PbiMhZ+OSTuoSgomx6JmXUYG9+uZFZTrE+fn47jMK4w -Bv1W+U2D1w2Aof01lyfQQ/giMY6XUAIPHIyBEvFyF1sdU+ZJzubl3vPGzf84If8+ -31iYsYEoqR3vwYs7+fmAWXOcXnjL8N0QqZPT37fsKLF1l+WCxhWLMlc8x9Kq8Gez -mOJRrR3j5Ui+ux6TpQV3aIXj3ykUIeDIIwRPNsDrwzJLNG28YVMV1rz4+V2/MsQ4 -ML1MilP3ZB9uxUN391XulLxsQI0olv+LZqKYnqqeHbFDt61Hr4WmefqKqB4rlO1j -WH4SLCEykzToFQpK9MQpPmUJ2UZrudN3flJGZ8bpnGu2gA2rgqfejB52D5jpZTzT -RU9OZp1v6JWjjRh3vcqVSin0mPLEXQj11cpKOBzIBEjqoPtpnjH8SQd9mb7n/o5q -8gLSuTcOqn3lLH3DvLTBilsmNcIbBItpC6QGc5EVqPlAJKIvLvOGb6B5AgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAEdYvhg/TGjtzlJIqUv1qfyJr6gOm9Ydoz1WDaau -HJTkmI7vCeHUDxnhXEq1lYKt89XvUHsfI0lkCV2Gt+wppsL3ZZIGsv0C70nIPTIT -egPoBeUpqk1ZtPN3VEvgD3GDjAJzuvaL1Uhw9Yt4qKxP6ozyRfhObbTSomLNplui -LGGd6PqVF1vDAx6Ubw/LaNQzVjzQsMm4AgafakIh4c9aA3zxyZvUwAvT7ZVElMHK -moEudZQzL9Cx/Y9Pgv+z3JcXpT7UbDWSB/dVi5ZgcTtzHaYKAMFaunxNYqwWoicf -zB1uk2QOLgfxteWBjeaNl9UfXShGm+iGRoVVL7VrayO6+ScGchUGN5h1qR4xzWpA -2QKSb7t1oEW/GtrV6AD3jJUjcna4LP6DdpY/0IocgU5KonR0eFUNrZA8hUsXquQ0 -/Cx9d7ktdEDudeS4tJywF1CI3IcIZQ2vExJ+NjdlAFIVFkaqFFLhv/cCcGaBpH7X -6dc5bOoqyOgX97yBJJX9Joz6ZoAp2XO1tvycxj2g84V90lDsbTurmyuoR8yTcBbE -FNseKWNRi4fmsB1etz/HX3h1qUPP1ze+fY4C2zPleIB6uSKM5ZfODpMDejHQRF29 -YshoFbAJ19zOHYY+5LYHoLGJlN34TJ4ouPpAtRIQu4ebQZwMxddU1759sCIIwkHe -V5d5 +ADCCAgoCggIBAKtVnxPqCZheCuqePfLknxc+6MeyYkf494U8WWeZo+yirYV3zY70 +1KhKZ+M+XDqhrBXc7IQHZd2KKxYBGnrv9yvbllmtZRdnk3hnn8B4eNh3w5gCRKPo +GSTeiNN7WEIRwYZNkr8AWgeoYT1jN8SAMn5+qSqKSd62Z1BPJNi0eQmTVxgLZqzx +92AWBZQl9rOme+1zV6ohKcR22Of3yUl6476L1rYYcX0DXp0QFkhK0TFKNt3cHxqq +WTRuMTnyCj7woWRtwclWTdO2buAkJe8cIde6rcbaUAX9jTdkbAgYAB9MctEKqasO +MqFyMzweS3sG9oUnmd0/GRL9as314xTZuz8fFnfj5l0BN6thVMmvEEYU3rTLQRKf +AKWzI2VrU+5wIxN8O/4ZbriQ5ae13p6TDYilSZ6kMxSzfOM/A00hlA+DKMS0o8g8 +V9Y3wcl3aSSjoZbH7XS/uDEueodudz9V3HxCk7Wc41SpunQPFprmPDWtjiW0jcMD +3kHV819r2F8aidKN94Q+3KI+N/mwn1QdDVsquiCq0wbR54i3CoAkQbi5YeUdEZD6 +/mNLs/BABgzSbANw7Fn1Pd9gY/JIsRhMskcFRqXe9tOqKk8/GxMv/r9MgJn6HHlk +iDa3OZsoOtFbjjOPFoy/Xq9YMi4ODnJkEhe7BSsVl/wkDAUdg7Zfu8XVAgMBAAEw +DQYJKoZIhvcNAQELBQADggIBAEft+R+qGyKffiiJpYWLPn0C9SmpjZiWPK331n57 +Nk3GA8u9gRgD1gyqqLr19r86nLArF8jcB/nChPB1A9ysW3xyTNvpOlAwYvEjxWR2 +tJr8wiDucAd+SnQud6e+5PI5e8LnyxYoeoZ+i6hMbhNV70NthoINHMAQx+5NeSpa +Q0GJ4d0XA3W/8Pu6oK7O0QkVovVut73Koz5DqsF91zFJp7SjVKaCnnjRKyU8wbg5 +uTO0TRheEtx3AeEXNps5Yhq0daLTnmnuFeyaJHm2F1QuBmma1TTwIF3HDclv2wLn +Jp+MWG9yoN9oEJLqS/AvDu1BltPSuvnYgLZr7cl0os+TEqpzxroa4ziE98dEiy0D +K4YQ59UTz6C8Ps0uX0hcs3jsvZOkBWptusvJBfZN59xLJAVmF2igkgIBKoiXvXmv +fXDx0hsOBg2IPe2O8lLHlFKlJZlMc+prH1iD0Xv6HefSP4L1eZHU37zjrRf/GiNX +r6GoEhJR2pKEoZQT81xpYp/w+qjzWcTl/mLD6FEePRzV92h3ubjRWBB36UhLtnEG +LJgp7yq3aGu7rg9rnuz8J6DG8DStE9rNuRjkV1O2C/PvR97XmVoIqbrMlxX9MUQJ +XxLm5dqBz7EVuhDJSyp4zCkDYsOj1y/SLL2O3cTyQQeZg6jlqripNqWnviAdTWe5 +JIPp -----END CERTIFICATE----- diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.csr b/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.csr index d8ab7deb4b..b421a7a60c 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.csr +++ b/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.csr @@ -2,27 +2,27 @@ MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGU2Vy dmVyMRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQCheMG4Y8E3dOPAnbarjY4blRiLz8aXTWgj120iTfY6EakcKdL7eA50 -Xy1nWt+FM2fX8VzeB04GK8y2JK3TlIb6Lq4Y5Gtpo3LNZDo5XxXhsICXvC01Ruqh -Pi3SRcOMT3ed3WbbDdXUGo+3vxpSuIzSOvaratenZxbMI28wCOtqK/TB3c2OBXxB -UXjK9uZBkqPv5zcCNtT24jIWfjkk7qEoKJseiZl1GBvfrmRWU6xPn5+O4zCuMAb9 -VvlNg9cNgKH9NZcn0EP4IjGOl1ACDxyMgRLxchdbHVPmSc7m5d7zxs3/OCH/Pt9Y -mLGBKKkd78GLO/n5gFlznF54y/DdEKmT09+37CixdZflgsYVizJXPMfSqvBns5ji -Ua0d4+VIvrsek6UFd2iF498pFCHgyCMETzbA68MySzRtvGFTFda8+PldvzLEODC9 -TIpT92QfbsVDd/dV7pS8bECNKJb/i2aimJ6qnh2xQ7etR6+Fpnn6iqgeK5TtY1h+ -EiwhMpM06BUKSvTEKT5lCdlGa7nTd35SRmfG6ZxrtoANq4Kn3owedg+Y6WU800VP -Tmadb+iVo40Yd73KlUop9JjyxF0I9dXKSjgcyARI6qD7aZ4x/EkHfZm+5/6OavIC -0rk3Dqp95Sx9w7y0wYpbJjXCGwSLaQukBnORFaj5QCSiLy7zhm+geQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBADoGwPR/TLe0PwsB2orIjrHnsZLYzcHxh9JdRaCO -Q07NvbocAqN3nIiHaUI/IqZG3aiBQb7i98maE2fcFVgsMoRVLB2GsQw+bzoPF+45 -kbtff4L1mHEt8AIIL063AepTetAMUfojpoRI0JG6pChzHDxuud++kPrz50wR5eEk -OhDjX46qh8VxExH3rfU+VDY/FvXMJaMLa76HOmY93g/p+C6T+SiTrs+QEPqWsMKa -eHJTTP0PZx8ikdT64aJpDiOmXVthymPPSZvDEWzlJ7RF8y0p+SoqPM3Pv8/M7zq7 -2dRL6UABTMGtBMEtj5DDZYWTl+1O8Yn4xhjHBcDT3ug3IvnCKCpX2ufi+wJzaWEu -QFAL+N5Sc1rZxklqWKprQeGBiEIE3UXdDA6Xvom85gLoaWoH6nMFvDNab+zJl4Ty -0Iiciq9jzUq4eda/TjgPxDs6RNlJxSXs1lASUR0Jx+Nb9wH2R1n6XQJhcOrz6nJ/ -T+/INYf5VrUdvf9P0PRub7Ga962fBDUG6WQx3PPjy/iEmffN/nsBXXzvQiw7ObW4 -eNCQob2H/3lAdxOs2txKhTCgUV9CzUb2P4Uq4s26n0yA6qpVG6Jgp14s+kVrgFYQ -KjhoFMWXtN3YqETnVNe6A9PEwkSpCm/JyGTm524ok0KyrXo1nSm1WKZqEIQCpp2D -vQFY +ggIKAoICAQCrVZ8T6gmYXgrqnj3y5J8XPujHsmJH+PeFPFlnmaPsoq2Fd82O9NSo +SmfjPlw6oawV3OyEB2XdiisWARp67/cr25ZZrWUXZ5N4Z5/AeHjYd8OYAkSj6Bkk +3ojTe1hCEcGGTZK/AFoHqGE9YzfEgDJ+fqkqiknetmdQTyTYtHkJk1cYC2as8fdg +FgWUJfazpnvtc1eqISnEdtjn98lJeuO+i9a2GHF9A16dEBZIStExSjbd3B8aqlk0 +bjE58go+8KFkbcHJVk3Ttm7gJCXvHCHXuq3G2lAF/Y03ZGwIGAAfTHLRCqmrDjKh +cjM8Hkt7BvaFJ5ndPxkS/WrN9eMU2bs/HxZ34+ZdATerYVTJrxBGFN60y0ESnwCl +syNla1PucCMTfDv+GW64kOWntd6ekw2IpUmepDMUs3zjPwNNIZQPgyjEtKPIPFfW +N8HJd2kko6GWx+10v7gxLnqHbnc/Vdx8QpO1nONUqbp0Dxaa5jw1rY4ltI3DA95B +1fNfa9hfGonSjfeEPtyiPjf5sJ9UHQ1bKrogqtMG0eeItwqAJEG4uWHlHRGQ+v5j +S7PwQAYM0mwDcOxZ9T3fYGPySLEYTLJHBUal3vbTqipPPxsTL/6/TICZ+hx5ZIg2 +tzmbKDrRW44zjxaMv16vWDIuDg5yZBIXuwUrFZf8JAwFHYO2X7vF1QIDAQABoAAw +DQYJKoZIhvcNAQELBQADggIBAJCMEdjKyklN2izvOhd7+JMXm/ClW3hjowbu+csO +JNz8NqUNLrKJjFyV3yAUGWuyp3z982S+XGfcm3nU7n9AJOjT4DLJId6opOtA6CSp +KTRgVZmeViL6O6UqBLTacz5DDjwMQXxszc+QpU53cMT6Y7VMvIOhQ6AmIvz1v71u +5gaYmlbfXVlmiPHEKRsQG9/DNIPe1mHP0p+S9qYKmCx7Jlpee7IstW/hNjt7alDn +uFaxFjxmCCSdWaMRyMW/qNRks9q3VdhJPan+amFeXceoEG7SOKiFiOc8A7DribSm +iKc2YlOw14xqc+cJutiKBvoBMri2eh1JgCbPT4ufVGFpbDkfYwAJxWx44Eg0X90j +gJUw8IRuHQZkEYss6jwFMFcOqjpe+AqrssOl4GZmu5gcaiUnj8PkSVZLTOrLilPg +sSDjzmoHdv4QcBppTrjj6PyR5Xd6DeGasWkMPvIPjiPN3mOhfxJ3C87atMqOhTLx +em7vFOBegAW6g40J9JD1XMoI/zFnTU8NevZQgCyx/Tq1XNRmUeMA6y/qpfTNKi/f +F7v/7nDWoxBgpOw3J0E9R+6rxD7Cjb2RWZEf20ZGdNBlPE+UG9c9b3HC3IHiwRHb +L9Fi0251w+fkaPX8dojQKErCEknqJ1SCP5S5F5g1QCQby22Y7LQsggMMf94s/wQX +4uMh -----END CERTIFICATE REQUEST----- diff --git a/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.key b/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.key index 9147802e7d..80b9cea7bf 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.key +++ b/experimental/packages/exporter-trace-otlp-grpc/test/certs/server.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -MIIJKAIBAAKCAgEAoXjBuGPBN3TjwJ22q42OG5UYi8/Gl01oI9dtIk32OhGpHCnS -+3gOdF8tZ1rfhTNn1/Fc3gdOBivMtiSt05SG+i6uGORraaNyzWQ6OV8V4bCAl7wt -NUbqoT4t0kXDjE93nd1m2w3V1BqPt78aUriM0jr2q2rXp2cWzCNvMAjraiv0wd3N -jgV8QVF4yvbmQZKj7+c3AjbU9uIyFn45JO6hKCibHomZdRgb365kVlOsT5+fjuMw -rjAG/Vb5TYPXDYCh/TWXJ9BD+CIxjpdQAg8cjIES8XIXWx1T5knO5uXe88bN/zgh -/z7fWJixgSipHe/Bizv5+YBZc5xeeMvw3RCpk9Pft+wosXWX5YLGFYsyVzzH0qrw -Z7OY4lGtHePlSL67HpOlBXdohePfKRQh4MgjBE82wOvDMks0bbxhUxXWvPj5Xb8y -xDgwvUyKU/dkH27FQ3f3Ve6UvGxAjSiW/4tmopieqp4dsUO3rUevhaZ5+oqoHiuU -7WNYfhIsITKTNOgVCkr0xCk+ZQnZRmu503d+UkZnxumca7aADauCp96MHnYPmOll -PNNFT05mnW/olaONGHe9ypVKKfSY8sRdCPXVyko4HMgESOqg+2meMfxJB32Zvuf+ -jmryAtK5Nw6qfeUsfcO8tMGKWyY1whsEi2kLpAZzkRWo+UAkoi8u84ZvoHkCAwEA -AQKCAgB16ox1TgvEpszHVaUXZJk5VUkGmKXqyfFZ8zDUU2CTiWAYnAZh84uCuhqb -FoaSbDbSQIVT8rus0AF/pgt2rklfnAUxUmWKUH0+tom6adC97roJlLbi6DXhqFmn -66Bg74tnsk4xe8oCSZ9YTOs5K2JTCBIoni58JlFEpD/HMUxRTWZAyOwaYbEathdj -CKifjCnBwPSv3kDpRcfUGzs52DXB8N1OkKeLFh8M2vqU/CeiQewwWYKsQZBpI0GN -tNCwIJarJZ6LyZBJPRc5jRA1YLm1dXDS90FNHX6udonsnkORfEXksiZJkq1hsqg1 -rO7LWNHbDuJ+rJcmUTPAPRZZKZjbnXEd9dHIPu/fg+vKUa/xuIkpaY5ZuV+SGMpg -QOHknz8mIOMAvnz1emAsR/yEflCN+ht5nmpwDnmVBNGSUV8D+8UgSLFWIFiqszJT -VNaYhUjEN6fR+VZ9WqF8jt9ZbnvfQipWkHVoGnA/bU+wb1duogVFfiKzHr1xyZzg -wG23vEIoXGhgHpTmZTjdQI3oc67TlAfCq6s6onI5z52xPn1O5Lk9H/7bIeEhvDWJ -1h9t7vcENk4RJNVh6gOEsuH/ECztWEXc7Nkv/8keJORuE50EOjwmc532aKEjqUCQ -6c7v28P3/n9XYZCG6K9mKlV1uK8Nhp4j4hVKyr+/uOgAAJq7AQKCAQEAzR97NpjH -7Bdy+ij+r8LpcUzkf3y1f+s3LABB4AjA2viVZP1CZIWpOli5JBEMo7rXUFmrVGUs -fMlyCxlc4PWDMIOkPn9GPmVUuuYQPjlM7ZZ8seLyBut/qHUBGbEKiKsuYkXAmOE1 -lVIJxyc1e39UxM+wL3PCwHKfSOjhFSOmMea8kzDBko5H4/os+l0vWUUQm+MreI6v -aqNPBKwwUxUyf3KVaB4BC7+2X/WIFNVzPQbYP0FmdesRYeA86JMSxWusP8NEIG71 -bhRGbvar4YSlgzgoX/vMDiR1EIIDSsAx5RL+xkjBCt4fqx5TdrszX1QLqFSmRwgF -8RkXVC8HG/vFGQKCAQEAyYWWipxWdhQnTkZ560BA4xSwX6usIHfoejbhcWdeMs8w -kH0ZmOnZFlZZ5hn+j6DY68q2OqQphbnutU5HOpc9vLUZjni72ZFSq6+fgxa8FQHm -j5VXeQ/NNxV9xjoEBV9/+CPbwBLAkSxd/luCyoU8cpwDxwMzJ638Z06yCY5jdDup -hT7OKw9HY4HUtJECGl2R3XdB8Gd/CnG22+coIGPFJSeY+5sOx35jkUgCApQl0QC3 -YS9v9IXVyyQVVN8eELoRFvjaty42n4rfYuS+bKe5MAOaAmkpRmXw8EZp/I/64jnh -ZjkQpEckvwnv9jLNfzRvedi+6WOY9/A2K9SjtrXCYQKCAQBV+x87uHj85qtkXvC7 -Hfmaa3/QTKcL0r3SrNzwGts0LkT5CwvcdQaFlZEtpBPnQbdlT+D4RFyMhihOrLf4 -+BCgsl2TcOgx2WnV2f/vBTfQ02a7bgTDj814AGuQqFxhA1gzC0f7DVPXnobIuw+5 -D5upz+DrUxvMbX+FIVDP+px8iFp9XE+XrhpGXqSh4ZOqWL/oiCW9qBmxmnjR3Zd4 -DAeZ0p78AK+xjA/XU2VSTlK6vvbANRrMzNcBbuw5FQUmScbvB1u0OK6aENehRbaw -lliGk3ChIzvapb+IRuc4Wy3O9tJirTZ15rvhj5muyDN1fxZP3gPA/IT5FepoeDoD -qdppAoIBABgz6huloSC3VO0qu7PMWL6tGm2zEY4ouIwNEVBsaLzTc3K3A58A3ui2 -4D8pehBH8iWHiBFM7Au6g/fUeeuIhIqoeXRJ/c2ojXQ/OHom/dnMC6PM/N92TWBD -PYLULu1yRc1IiTjtR6Fn4bYNyYyHKfZd1HpPYRJv6/OAWROavUkVbUuqelpjkGBc -FG7HR6hg+obNruavl2tqstqATapuMRxAQDhfrAu7mzu0mUE0B8KtQljyuJB2jnHC -WKmDznmVzz2iD6qWa0sIA8I91Lz5+9zPYezOMn3Y+nHxEwOZSzlmWDLNwbjpLnmf -OOmpulJ/uq+4n10qcBG/ENJ8zFjCRaECggEBALwBdMtxRd3YimcfYKMUPmLgNHY8 -GqIcRZ4QhboUbuhB2ykn3WnXNpF7SH8UQBVxUmusyxdZ4NWWpQ7CqvqpPL54cW/r -qZUb5S4qPN03sv+yZwQYohqzAZci/uexeltezmQ704WxUUdcL5uQoRsTqDm32+pN -/DQHvENLDqaDuN9hp7daFKdcq4mLFoXYm5aoA76yhxQI0EBhYjMiHz6PDZ8lzi+F -NduMOC9rcW2StDRyO++BcCexBjTSo7nlYbpO5kWW9VlC5TAabh8JL5+GJ9uT90Vf -GNqYVneFCCnsGeqJIXkzKn7eeygKjf6KCX94OA3O4z4ro/H+Gllv6eKSipc= +MIIJKQIBAAKCAgEAq1WfE+oJmF4K6p498uSfFz7ox7JiR/j3hTxZZ5mj7KKthXfN +jvTUqEpn4z5cOqGsFdzshAdl3YorFgEaeu/3K9uWWa1lF2eTeGefwHh42HfDmAJE +o+gZJN6I03tYQhHBhk2SvwBaB6hhPWM3xIAyfn6pKopJ3rZnUE8k2LR5CZNXGAtm +rPH3YBYFlCX2s6Z77XNXqiEpxHbY5/fJSXrjvovWthhxfQNenRAWSErRMUo23dwf +GqpZNG4xOfIKPvChZG3ByVZN07Zu4CQl7xwh17qtxtpQBf2NN2RsCBgAH0xy0Qqp +qw4yoXIzPB5Lewb2hSeZ3T8ZEv1qzfXjFNm7Px8Wd+PmXQE3q2FUya8QRhTetMtB +Ep8ApbMjZWtT7nAjE3w7/hluuJDlp7XenpMNiKVJnqQzFLN84z8DTSGUD4MoxLSj +yDxX1jfByXdpJKOhlsftdL+4MS56h253P1XcfEKTtZzjVKm6dA8WmuY8Na2OJbSN +wwPeQdXzX2vYXxqJ0o33hD7coj43+bCfVB0NWyq6IKrTBtHniLcKgCRBuLlh5R0R +kPr+Y0uz8EAGDNJsA3DsWfU932Bj8kixGEyyRwVGpd7206oqTz8bEy/+v0yAmfoc +eWSINrc5myg60VuOM48WjL9er1gyLg4OcmQSF7sFKxWX/CQMBR2Dtl+7xdUCAwEA +AQKCAgAaeE7sV7MFzDmph6sQdIuznq998qxGbEtpVSqG2/C8ZWGjhh/G30JfgadN +L1w2XrXkZs5Pk4kEUg1YB/GcXqh0KSewUR6WIBVje7btmG8rGk2olWkfXYNM8+h1 +q8+13WJlqmRqh9Zg6n2ja0m5XQjwDAd8oALLmqiZerC5niA4/39sIo7JV1Sdjqlr ++vWDScxJohFAIoF+bdIS/HAnnwnCbX5Ngbc+1h9u6oZWwuBQ2iNh4VkY2IqRlBic +2C0HDkwQ5PgUb/X0KHI2xL7rkxATcS7Z0u6cDlEb5rLeCT8zlq8CZsBRwg7GbItH +1XJZ3niFl9momc/45Bf1G/DqTr0jwZ3I5wSUFQCBuI/F41YnyscWq1BoigCxeD6f +VvZUUfkJ/Vy3hghO/2JF5sDCVEYcdesnKDVteZNmTNVKNOZhkomLt0ouCdla0pgn +yq4Yw0oSdz98F0IyTSciWpw2JH/5Hd2vxBLY+8svgAxHnWImqq4lcW4SJgQECzF2 +Ju55uTrciubnuf5WjwoI2uT4KYhhxKp6tiX9fbecMMEMksYgRw9IuaMIP8lkmfjn +WCdyfgbIgJ9xAgeljbHOm5wEcwvs8h+6Z8PCTS1+ZBiwVVQyb4hDptnMY5yu8MfQ +934RzVezD9oJRn0OgJGe7wwwdkSWr+isYO/u0Va5lgVEzTHYHQKCAQEA2E2AGZy8 +XKRDauYyiuEldGi8qCHtDzFo5w5Ni12t9QARFQzL60mvKPSN/hjtUGpL0y+ZmAaC +cRBSyQGjd11vh83z0YUKN9+12ugGufpakgJ2jz+U1i2WXj+M4IB7sdwZk+GV0Itf +UKo1AnvneE+QmeQzx9FcFT0L7pK9ajyBpRLBoNBAy7xy0YeaI+ziA6qaET53yQqn +eNiuvCFEB1pKE7aR2sJ7A6JmghIJr5wtjwOtyD1pOjmaI+F7xCFYRvgBmCX93uov +1TBO53PHj8GYp3AaArj2LgRACiFP+JtbvNaCJQDbvL5SJZULx5r5i8nbAAyjBmHz +6Pxqf7a70yXOhwKCAQEAysdjICPGYIwOM+9ziez0wsYvGCV/KF30FQY2JnZB46bK +UCh5LxWc3qsbdjgzjDPrR3rBEz0j65OuhIekMuIwm61jDtA6L6tpGxzntZKBHWh3 +2PSV1jeb0OBzCf4gy0O58P7LYZRI0b1OuClWEHSe4vJHfxEDSTFT3Cn10AlT+OBU +NoQdk7CX3O9ISkfSZJ32MdNCUHu+9DKhb52gpXhiQNkRwBPStywj8XeXs7cZJs3v ++10BIL4kr/JwHEZS8h+CIb0zerKaJlhyot8JIPIwo4ebn8S5KJUKo4S3uON3QMZl +5w+Ry+3Io4Dnf5b1NH3Qp3fAx/pxruX2lKBU7XUjwwKCAQEAtNDskfyNFaCXXwh6 +HdCiX9KiSqa5pea2+9fgCO3R2qoonYEqAlGBZGozPMOXto51PmBfNE/UwTFVEwUU +olbwQgVvmaluZlDTk+A8p0Fabw4yEAOlpvlK5xSW7qFZRdBpbU65zzCDCEqQr7fm +QpO4nHzAsHwaTwLOM6xlPSbBdb3dMVKFqAqrrO5/cyK1uTznOB0RQ3VtlD8Gquvg +E4ltvVb0THwhG2Op73emsy+KgjAgGPEFQxAeA3qd3NHHGuR9aLPxqmP4gm20uBT4 +MPs0Ylv60mXOHZ+d7Rn14Sv2H0DuYIJ8LianQxV6WGz7yNiAA2WM7mv52r0PRh36 +m0LShwKCAQBiu66SKZkfzVHlC8Qv9gY/CAxKL4e4efasfffDxnTSiZWcbfiDanyV +Fq8qYrcGnwkCJsz3tx9URvYEZZ8Xf3a3djbzMYQDTezBXNOdXxYq4YDpTD3grfba +P08EII6LKhDRPN5+RpsmNIytssLLBF2QlvMk9X2qF7CDVJLxlnkihue6G53jGWr4 +EjIaqNnST+9d10VEttwFPtnH5PIhX3pHpOm1onFI6t8dZWOiB5bhhAhDVceEz9BB +M0RPIBam+Zx9HQiBx5Cy9wHqN7rUJdh050RpCHo3PkqNz8M87NRV38QiOzx8FO1K +XytYvoHp6xC7Wd2uAU11IVdsipyPeifNAoIBAQCw47tJyyss2FqqXGl6IDEXFk12 +mcgrRuPnohAF7Z49/jp5wruYd8heyQdMGk8Z3l+OSFsdMIKxNDWbPuItxK/pCVRM +OooNEdM2uHAighJR9x9/kXFB3j7YuqbTbEz7MvLd+AJVfUos+zwcTuj7q72XGMsb +Gt4jRsrgeDA+paiavKKWyGgw125xXUx1xOUvhGJfL+MB3XTHdOb9nyaDANMw4MN2 +Ff18SMRkj0NzqmRaoEPg5dP0ORcpWJjM5R7Qt6FLnyfx2dhWNltyBBtgSTEVAjoN +Gcr4EgpmFEpA3aaG5QmYYJ/b9m2mWUpnr1iVmeDvadKu9IAi7LgPpV26ar4D -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-trace-otlp-http/README.md b/experimental/packages/exporter-trace-otlp-http/README.md index f5944a047b..141a4a2765 100644 --- a/experimental/packages/exporter-trace-otlp-http/README.md +++ b/experimental/packages/exporter-trace-otlp-http/README.md @@ -5,8 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides exporter for web and node to be used with OTLP (`http/json`) compatible receivers. -Compatible with [opentelemetry-collector][opentelemetry-collector-url] versions `>=0.48 <=0.50`. +This module provides a trace-exporter for OTLP (http/json) using protocol version `v0.20.0`. ## Installation diff --git a/experimental/packages/exporter-trace-otlp-http/package.json b/experimental/packages/exporter-trace-otlp-http/package.json index 1c38a1fd54..9e55231aa6 100644 --- a/experimental/packages/exporter-trace-otlp-http/package.json +++ b/experimental/packages/exporter-trace-otlp-http/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-trace-otlp-http", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry Collector Trace Exporter allows user to send collected traces to the OpenTelemetry Collector", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -26,7 +26,7 @@ "test:browser": "nyc karma start --single-run", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -63,41 +63,44 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", "cpx": "1.5.0", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/exporter-trace-otlp-http", "sideEffects": false diff --git a/experimental/packages/exporter-trace-otlp-http/test/certs/ca.crt b/experimental/packages/exporter-trace-otlp-http/test/certs/ca.crt deleted file mode 100644 index 529ce2f7b8..0000000000 --- a/experimental/packages/exporter-trace-otlp-http/test/certs/ca.crt +++ /dev/null @@ -1,33 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFozCCA4ugAwIBAgIUa6OxgyEYxNjpjac0jTAKn+IkGTYwDQYJKoZIhvcNAQEL -BQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQHDBFPcGVuVGVs -ZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9vdDENMAsGA1UECwwEVGVzdDELMAkGA1UE -AwwCY2EwHhcNMjEwNjA3MjAxMDExWhcNMjIwNjA3MjAxMDExWjBhMQswCQYDVQQG -EwJDTDELMAkGA1UECAwCUk0xGjAYBgNVBAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0w -CwYDVQQKDARSb290MQ0wCwYDVQQLDARUZXN0MQswCQYDVQQDDAJjYTCCAiIwDQYJ -KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMbVyp3NCtDwKpGbV+MCML63o+vGVhpd -Dlt3ncpcwz0FMK6UJDXzTe4joKCaezWto3Bmhb28Lezcf8AdzmTdnoENAaqUX2SE -giGVoeaJ/M1hW1IiOffa9zIMkt6cwf8MUUMl5kTRMdAqmpikNqN0rqNpaGuqBYf9 -kvDy3hw+dj19hKEeEXI2zt/HYDOBHYgpalWiOS8qwj0zSfxAUeura+eXKMlx0JOY -h5N25OUH1oLt1flhyuHnwRThKbvyMnL36Ey+G7uCFH0hQSGO0BLhg1LPDWG1PmTn -KzsvqaIgDF/tMCXykvaWcsSxrhvsNeOFFmmkKp1ECVOFgFYsGuK8lJlEvm6Owrvz -4X69L0phCJtaCCaSUFdybqx+G2ZKLZNqTtnMw/3YECp37KyrRd75Gy1UrU031+XC -Fpt4pHw+3isjAOf1bj32F2Ed7aaqVqM2A7m8AgA0m22J/f+jBzmv6UJN/kvfFXzC -0lbX6b1fGj49vU9WEO/o+F3qaH/c50HPf45AB2d4pWbDl5alXZei58ZyEemBndlv -XcGPtVR9S/5rphlX1vAIOT7ePWgUVkAi5fB/rLVGyC1FwA0zYvdyj9CVigJNs29G -yftsvMynF8TL7/qCIGNz72qtW/Pn227OI4WamvYhX6fJwJirXwTEQhAfKXljocI/ -Liqxx15Sfs+3AgMBAAGjUzBRMB0GA1UdDgQWBBSMocah0cTqX4owoPL4+zV1pe5F -QzAfBgNVHSMEGDAWgBSMocah0cTqX4owoPL4+zV1pe5FQzAPBgNVHRMBAf8EBTAD -AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQCIpnaYSMXT+nrdOgw2zKHTk47wANGf6nfK -76VwsQfzVkJm/tzEgq+saEznGRW1ttdQfXHJM3NCfneVhjXDkihrHsxiL4S+5OMq -cusp2tKupGXlxwOt7tsAhH5j4SQLyEUiWMmm/Wvwtx2HWuNO8LZGhoAcUrT7r94f -vqr3tYyb3D06/rBRj2QcybYGJHsQAULEQvmWJvCveh5gqxkRjDJlwmqV/lIarPCt -diKbsZqHJMNaRMbgsxV8hVSvD6RKtBG+K8hpuHF2ZKfzb7Yt1IDPtUGCL811ykzh -2PjumjaQ2JCP6vtYAhTS1r/+cbOi+4v5JzF+kxHxFc9vK/gzBT88174S2MQaqwhF -jQiS3YfElLXkr37E9gxMKLDanbFsxPPiXO96s0RSjNK2mzSbz/gfmsjGqxKNq3t1 -IwAfjePmmx4FJ1O/FwOA5RWE+KRhzNucktjxz39oZrnqtPeTqHnAivNOyK3XB68v -5HRjP79TrzIbLCauyJD/qM5UtCRXW2La1rsH8lIBtcxUcZOkvDnE6Po44D5hH2kQ -swRqF9Vy7PL9MWJPTgn4+WFLNoBe+nMY82y7xstRv7c2ctXpAxSWxIXgBN+B9nXo -3Lqpgg0UkjTiCp13Mejq/7DYAw+/Ou8bxWs3BuCQvFcG2+FBMWh0dL1FxVq3BPyq -oveTgr1sfQ== ------END CERTIFICATE----- diff --git a/experimental/packages/exporter-trace-otlp-http/test/certs/ca.key b/experimental/packages/exporter-trace-otlp-http/test/certs/ca.key deleted file mode 100644 index df94d44c38..0000000000 --- a/experimental/packages/exporter-trace-otlp-http/test/certs/ca.key +++ /dev/null @@ -1,54 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -Proc-Type: 4,ENCRYPTED -DEK-Info: DES-EDE3-CBC,7EE0C188F59416E9 - -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 ------END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-trace-otlp-http/test/certs/client.crt b/experimental/packages/exporter-trace-otlp-http/test/certs/client.crt deleted file mode 100644 index b1519dede6..0000000000 --- a/experimental/packages/exporter-trace-otlp-http/test/certs/client.crt +++ /dev/null @@ -1,31 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV -BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjEwNjA3MjAxMDExWhcN -MjIwNjA3MjAxMDExWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV -BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZD -bGllbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAN1or7F+548RpVIgdrzYmuWgKMfWsO5FhgqpGp+xuoVgMMTlZM3i -yiarMnAE0G6ZVMwqCeXkiUGL9QLatJ1S/HO2sWLUkWaPD7X7O4k1yGtl6UsRcr4K -+YBUbucxfrCQjaWKlBc1GMBrDyY/u/rl0CIYu3GtegniN6HG6rBXC2e98DVctQ3M -r/RXB9DWqMC2KW2X92X+FyWqTfGjv8wjRnhQdDNXPA/PCembzhfCL8VlmG65rDiz -VQxiTotTOCmaxULdF307jorMTLIHZVV2OnAA/udeDcxITnKcksLiRKKAiHUXMIPq -RGxNtLX1sdBD/FoQ28sr8o6Ko7qb3uaA4CZhp2I4RR925oZISyObzY3QxrlafN4g -hFnWkTFJY0K+43cxta8K3gAnQXxN/BANDEydS1YM9adqYbt09wctSUjMqJHGZWnn -IVOged+/DEIW9EmyLSPM1DC1s1owOrgwBXzHRRNXuUFjZPPrMC8TkBexNjsapLjr -nE/xa5cB80DIntkM8ysfLU6p39NihM2hmeyI2YS8osheElXEL3dz5vM8Wzv28qgF -PvGpdYz6cAibE9qJ+oT416dVc+9G6i1fcBl7X8w+KUGVFsRnftovwjoSToGlckqg -dv1Tsf6FBDpSMro3BbGogpDhkSxy//eWvzejjHBemz06Kh2DGkKhnT9rAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAIGWBdgWOoqGIy0fuSbqQgjgrhDrPGBV15TfvB4T -84xfk9YZxdRKkG3J65uLffTnnotZs6gqLx6MfosR6zQYhSK27fTXpJJdRaI55kgT -2e/xNCe867Bz/3nW+vwWIGTuFn6hFq9f8HNLZMpHu3DClj7AB7ga6qp1uFWIn5oq -xC4da8/JTR6FY2srIktyH5Vr64FnhtX9cLSa/U7df7asZjRUm6ndPS49X01G6BJQ -vH0RO1caCCbpDVqPwJnAf3BXD1MkKsNe4hULt25XCxSsyM7v0Ru4KcSSGxiYHowQ -+VzRdJVYe8ytpcg1eVlWutOlDXGLaeGNQ0/u5OEQ8iqZvp1/qiq/LQIRZlxa+ZlL -vsVAgOxolRpm6W01cYCCWX8utsrMq8lKjMIal0SZhj6oP/rwtH8UVRhqhrQyAn6y -K6IYGLGvXGacJYuHpcAFQ0f8LUCCs0kxN/zZOZ98atF0MvgUWKZFNgrvcX5se8iV -kS/7UHH4Ie9ZO6Hv9IvnElOfZY9dnFPNxcbWnA7U0kLa5CWh8CD55ScAGHrvcz3O -JXPW0SHb2xZmXDTfgmS4vMI5PYDyipSCoUDClA3BPr/dkAVssj8SMikJZWhVvDrK -IcKRHpkmrzLJbatxeDNlCtLRSAXeuTheLqqSA2HACReNYkQLPd5V7mY6uRw3d3o6 -3rKe ------END CERTIFICATE----- diff --git a/experimental/packages/exporter-trace-otlp-http/test/certs/client.csr b/experimental/packages/exporter-trace-otlp-http/test/certs/client.csr deleted file mode 100644 index 2d99fab566..0000000000 --- a/experimental/packages/exporter-trace-otlp-http/test/certs/client.csr +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH -DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGQ2xp -ZW50MRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQDdaK+xfuePEaVSIHa82JrloCjH1rDuRYYKqRqfsbqFYDDE5WTN4som -qzJwBNBumVTMKgnl5IlBi/UC2rSdUvxztrFi1JFmjw+1+zuJNchrZelLEXK+CvmA -VG7nMX6wkI2lipQXNRjAaw8mP7v65dAiGLtxrXoJ4jehxuqwVwtnvfA1XLUNzK/0 -VwfQ1qjAtiltl/dl/hclqk3xo7/MI0Z4UHQzVzwPzwnpm84Xwi/FZZhuuaw4s1UM -Yk6LUzgpmsVC3Rd9O46KzEyyB2VVdjpwAP7nXg3MSE5ynJLC4kSigIh1FzCD6kRs -TbS19bHQQ/xaENvLK/KOiqO6m97mgOAmYadiOEUfduaGSEsjm82N0Ma5WnzeIIRZ -1pExSWNCvuN3MbWvCt4AJ0F8TfwQDQxMnUtWDPWnamG7dPcHLUlIzKiRxmVp5yFT -oHnfvwxCFvRJsi0jzNQwtbNaMDq4MAV8x0UTV7lBY2Tz6zAvE5AXsTY7GqS465xP -8WuXAfNAyJ7ZDPMrHy1Oqd/TYoTNoZnsiNmEvKLIXhJVxC93c+bzPFs79vKoBT7x -qXWM+nAImxPaifqE+NenVXPvRuotX3AZe1/MPilBlRbEZ37aL8I6Ek6BpXJKoHb9 -U7H+hQQ6UjK6NwWxqIKQ4ZEscv/3lr83o4xwXps9OiodgxpCoZ0/awIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAE8wUkuBEsxe96X3U2vjWCfD/hB30cF69UZ2NlR6 -2UIZbjvewIy43ozr2uaCk1+US21NaaXKinNrZ0VElWKLVXWkZidfuoGEz0gY+XDF -qyjlfaYlCTexPUSh14nbpLsT0DXvHa5KI3Kq2ly/sciVB78SlH3sRzmJt/qkoaIN -f6PI2Unoqf8vJ1xvQr9z/ODc06MoX5g+ezM2vShZ+P7773bSVL6bIEVl/9yFFAyu -OHL+uwUdBYBk3NS4xKyXWXhG58AyNvGYWIO0tWTYmIVVuL2JDrNGY4QdIDQBoj+4 -hppmh0mYbvDCXolKjUVFC0wHRACaRCN1WLIKP8heE0vZsvXq/7ssuP3DtCDHRadk -pHn+6CpEwbT4bCNsW4bsci9v82npoY6YJKW8mokR+1dhcari6g1W2R80VCuWmB6E -ntJFZpILjPrCf8QCjs9Act0l87xx3+5K0LpFHQiKHygTbOrzE8++Lds+6yC/uzp/ -QtdLC20/iQMJ5GaOxSCwzBe1dUhC+ABF1/ZN1p9wgKFTFQMR+B/bR5q9l/d2AyMY -1pTorKIX7yg14OHehzL0s1tVq3QEtNl14c84hLh0m4Rf7nmRRcKDP8l6EwDujJVD -nR8cHM8ajiyC9tjjdyiQ32NLgzo+6OGiugctUxfw/ZLp7Qr0mT07IvPLcqBiRAC6 -E+9O ------END CERTIFICATE REQUEST----- diff --git a/experimental/packages/exporter-trace-otlp-http/test/certs/client.key b/experimental/packages/exporter-trace-otlp-http/test/certs/client.key deleted file mode 100644 index 00f82cfeeb..0000000000 --- a/experimental/packages/exporter-trace-otlp-http/test/certs/client.key +++ /dev/null @@ -1,51 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -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 ------END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-trace-otlp-http/test/certs/regenerate.sh b/experimental/packages/exporter-trace-otlp-http/test/certs/regenerate.sh deleted file mode 100755 index 9e2e972c99..0000000000 --- a/experimental/packages/exporter-trace-otlp-http/test/certs/regenerate.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env sh -# -# Usage: regenerate.sh -# -# regenerate.sh regenerates certificates that are used to test gRPC with TLS -# Make sure you run it in test/certs directory. -# It also serves as a documentation on how existing certificates were generated. - -rm ca.crt ca.key client.crt client.csr client.key server.crt server.csr server.key - -openssl genrsa -des3 -out ca.key 4096 -openssl req -new -x509 -days 365 -sha256 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" - -openssl genrsa -des3 -out server.key 4096 -openssl req -new -sha256 -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" -openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt -openssl rsa -in server.key -out server.key - -openssl genrsa -des3 -out client.key 4096 -openssl req -new -sha256 -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" -openssl x509 -req -days 365 -sha256 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt -openssl rsa -in client.key -out client.key diff --git a/experimental/packages/exporter-trace-otlp-http/test/certs/server.crt b/experimental/packages/exporter-trace-otlp-http/test/certs/server.crt deleted file mode 100644 index 55f0c3dbb9..0000000000 --- a/experimental/packages/exporter-trace-otlp-http/test/certs/server.crt +++ /dev/null @@ -1,31 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV -BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjEwNjA3MjAxMDExWhcN -MjIwNjA3MjAxMDExWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV -BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZT -ZXJ2ZXIxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBALaskMk0FpoAZ8eHpOiNYIW2yOeizGsvJ7PsNZujbUFQ/f7/AYTZ -CBQ9Hc8lKz+3YHklZnTsAJW6QLCBKSgsrjPAXA25zBFQazUuKb+QrjoIqeaq8D8w -6iHL7zdHsplbWZjYrnPjLWPqoc1ga6H0p8NsH7eC6hFXJRp2ZilyZXUR4jvyMc3D -2q/MXoI0VvQ3tI/QaLrU2iaN0DZBsyJhr4B/jNzOYzGAuVieEyV52wFnOsUlJDNp -jsT/v1/Q8JrjOXSb+ko/74VlSLTCauoPSsiUb1ra0Tbu3Z0E6b7vlFKeZaOxwUyW -eLi6YT6Z9ZTOEJuiJan/7STprK1NrqL+OPneK1A0Plr10hY76SptAu2fTqgGOFGo -QkxTosnsppiSkCVaDiLKCVr4DQzBm/0CLoSgXk4fJNhiNrIT+b35gX8Xmm3hUq+U -GanZyXhJYfojBUuhPJFAUKpUUjSsiRU8Dj8R7nIZT+cUWvslYmrOG4ZjCnpIXnoo -pAjFlaZkv62/tEGwJmyBkGk2lYzn9Ka1G/aO92IjfzypUlSKXCntTxLD6BzWNF7/ -qjt19XTOWPjChQHQcYXmlTSNUvUQ09HMaRIUe5MCexlWYleX6lVG6XtMwOb06w5O -ynVuMHjiAGfkjLrUkGQqSxHrS2v/af1J7F+CIClNgI+q2pz5dYWYMaCFAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAAaVSzyc6jFBLORHUcxkP8DheyTl8m2sWIb+x732 -DkM2qp8oEAKwhJ/AWLFGCqsjyW5ep8fgpTHQgT7braEEUKKnGUbIqUPy1IBz+lSf -LoT7qD92eiMGXOrzcHWnV02PRM3mF5cmLMNu5aMUoIArG5dO1LTSxl5/ybx2l4Zy -qXcT7wJtrA6F0EmuXRzwFBIVZdxlLbI+S4SsvfKXernGatB3Mjotivvqi2SeOd8p -1tuqEyQaaIJ1s6u7vyTcAHDd0OIxSqpTu3SwaHAXhkzMi7+TRGgfQUuljkNKkKfj -N02siSNjIuKzE/DSW6yV0OFL/FCNPyvzs8CKTMwfyrrvA0UAspkFCWZFXFlA+uLs -0at4SmPecOsc+O8ATon9nUyXh06anBwtp03aXX6Mr/7UIRRPHF70BY7MDV4OvvQt -PD0osFo0uEHubflCnPBUdMrQN9KbELVJeV7G0Xj2fHTAVoEnCmSpow+LB1ehWGbR -M3U8q9wlpXi4Awhr19kRcSdE/JzI7eu9MqjsazfUdAtCcgg4dHixOre8oXgauhZ5 -jMOv9lUI6Glf61xt8mamicohSf9CFyH5PgZqRM0aSacdJ7jH6EitABOx21ZqwiBp -o4W37lV55oy+N0r7yxaNy/mSUUcjsQo6kGw/4cMpYTSEzRMtfwYPOS1DeTl9zArE -7TBI ------END CERTIFICATE----- diff --git a/experimental/packages/exporter-trace-otlp-http/test/certs/server.csr b/experimental/packages/exporter-trace-otlp-http/test/certs/server.csr deleted file mode 100644 index 0c5e9291bf..0000000000 --- a/experimental/packages/exporter-trace-otlp-http/test/certs/server.csr +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH -DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGU2Vy -dmVyMRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQC2rJDJNBaaAGfHh6TojWCFtsjnosxrLyez7DWbo21BUP3+/wGE2QgU -PR3PJSs/t2B5JWZ07ACVukCwgSkoLK4zwFwNucwRUGs1Lim/kK46CKnmqvA/MOoh -y+83R7KZW1mY2K5z4y1j6qHNYGuh9KfDbB+3guoRVyUadmYpcmV1EeI78jHNw9qv -zF6CNFb0N7SP0Gi61NomjdA2QbMiYa+Af4zczmMxgLlYnhMledsBZzrFJSQzaY7E -/79f0PCa4zl0m/pKP++FZUi0wmrqD0rIlG9a2tE27t2dBOm+75RSnmWjscFMlni4 -umE+mfWUzhCboiWp/+0k6aytTa6i/jj53itQND5a9dIWO+kqbQLtn06oBjhRqEJM -U6LJ7KaYkpAlWg4iygla+A0MwZv9Ai6EoF5OHyTYYjayE/m9+YF/F5pt4VKvlBmp -2cl4SWH6IwVLoTyRQFCqVFI0rIkVPA4/Ee5yGU/nFFr7JWJqzhuGYwp6SF56KKQI -xZWmZL+tv7RBsCZsgZBpNpWM5/SmtRv2jvdiI388qVJUilwp7U8Sw+gc1jRe/6o7 -dfV0zlj4woUB0HGF5pU0jVL1ENPRzGkSFHuTAnsZVmJXl+pVRul7TMDm9OsOTsp1 -bjB44gBn5Iy61JBkKksR60tr/2n9SexfgiApTYCPqtqc+XWFmDGghQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAIJ7KMLIZbomgrup1rrizG3aU4bREy6HfHZ9Ylcr -Lo1vdL5/UZH3AHVhoccb0ua3qXDtsc8pDQAXIMzBu8BjfpbwCvrgz7YXsNsBU9zV -el8p394QB20WoPHebYDBUXPiq3JhLfjzOXBS9Ke3MBl1jDamOFmZW8dg8EpowIXv -ODFP8sErFb7Bmq7x2d0EJyX7+HydBiRWRa376oXcZ/VLl/CnNzpJeACFWPI4d0lg -P5nsadtdLyAwXF6cRQx3pOdN0sS5b3llXX3jVwGzm+kNjVTDWJiJmqWfwIF15pPr -bypoUmPpeQ4I9F+oFm9+Ff776PemqBD7NSJdG0iHRndm3oa6o2bTpn9ZypCO1Skv -UWr3ATduFylA3/YeoN6dQwP4Ol+3WJ2UbXzTbmEfoSEzmwMI5MTidOuA62A0afyN -VM0SjHaLvfD1mK4w+3BKdUivYh4TWbcLU7s1SeDwYiEP6DFZHLBPHDcNLz77d6nQ -zgvOgXqeNfk9uI5NdYBMbtdHW/mwGgEfPlDkKbY2KveOJjLlTM1EduGFsYHAXyhI -SiYozrbFeS5ts4f1EZ5tVT73KBv97MiQkKhBoVXtF1CHPUP1LTkGxtH2uoDiVfDi -r1OkRzoO05pHAh2o+4gujThsc0d3T5mmoeSySs56lgqDmC4blXNOS0kBZ4+I2u7A -C2YH ------END CERTIFICATE REQUEST----- diff --git a/experimental/packages/exporter-trace-otlp-http/test/certs/server.key b/experimental/packages/exporter-trace-otlp-http/test/certs/server.key deleted file mode 100644 index 9fa740554a..0000000000 --- a/experimental/packages/exporter-trace-otlp-http/test/certs/server.key +++ /dev/null @@ -1,51 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -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 ------END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-trace-otlp-proto/README.md b/experimental/packages/exporter-trace-otlp-proto/README.md index efd22d2abf..0be283bebe 100644 --- a/experimental/packages/exporter-trace-otlp-proto/README.md +++ b/experimental/packages/exporter-trace-otlp-proto/README.md @@ -5,8 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides exporter for node to be used with OTLP (`http/protobuf`) compatible receivers. -Compatible with [opentelemetry-collector][opentelemetry-collector-url] versions `>=0.32 <=0.50`. +This module provides a trace-exporter for OTLP (http/protobuf) using protocol version `v0.20.0`. ## Installation diff --git a/experimental/packages/exporter-trace-otlp-proto/package.json b/experimental/packages/exporter-trace-otlp-proto/package.json index bfe610b4d2..5f0deff40b 100644 --- a/experimental/packages/exporter-trace-otlp-proto/package.json +++ b/experimental/packages/exporter-trace-otlp-proto/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-trace-otlp-proto", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry Collector Exporter allows user to send collected traces to the OpenTelemetry Collector using protobuf over HTTP", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -24,7 +24,7 @@ "test:browser": "nyc karma start --single-run", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -62,16 +62,18 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", "cpx": "1.5.0", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -80,12 +82,13 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "@opentelemetry/otlp-proto-exporter-base": "0.39.1", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "@opentelemetry/otlp-proto-exporter-base": "0.40.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/exporter-trace-otlp-proto", "sideEffects": false diff --git a/experimental/packages/exporter-trace-otlp-proto/test/certs/ca.crt b/experimental/packages/exporter-trace-otlp-proto/test/certs/ca.crt deleted file mode 100644 index d54d3fc5d3..0000000000 --- a/experimental/packages/exporter-trace-otlp-proto/test/certs/ca.crt +++ /dev/null @@ -1,33 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFozCCA4ugAwIBAgIUJy5SEslTLFkUTocZvXO1+3qd+c8wDQYJKoZIhvcNAQEL -BQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQHDBFPcGVuVGVs -ZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9vdDENMAsGA1UECwwEVGVzdDELMAkGA1UE -AwwCY2EwHhcNMjEwNjA3MjAyNzUxWhcNMjIwNjA3MjAyNzUxWjBhMQswCQYDVQQG -EwJDTDELMAkGA1UECAwCUk0xGjAYBgNVBAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0w -CwYDVQQKDARSb290MQ0wCwYDVQQLDARUZXN0MQswCQYDVQQDDAJjYTCCAiIwDQYJ -KoZIhvcNAQEBBQADggIPADCCAgoCggIBALHeRFPaPJhHNCwMkcGZMGNaoskj8Qw6 -Ar2PQVC5YzByrNWaxv4HcPArHxbfsMTHJsV8vZfN2K3AQCNsPNVy/YfBFwYbkr5J -K7KeiFSAw8mDz+Hr2NETvQA5xbxTROaBYlNxQirIUtGc0sl0OXinKEsuO5/CqB0V -aPTCmdY0iMNIKtGywSc10XzWSBIzwpqVXMDIjXGPDrl2AvytAm+vwhDB51TSCKmz -ZKAiK3s4VsMmmAWDPvOqItO8QHvyKTswwb5REKXZ455GBzLWM+6+UDr4VVCKlHXe -PydKjXgKwaap/goxo3/lyGdbsbY/BrNDEvKfOhvSwZWaroXvu8R/R9d53Gjh76v8 -v1pXJEo7OzWhVvMxb18/ZonCoX7F40V8uw8fmcoQlUY9/c9JFo5+UiuhmW6acD1F -JBGMbSwVy0MbqledEAkSpIulgapnJSAf4gFxBq1UXjXC9iJNTDlCafY+DQjrhMSx -pjb9FjZAjqkdFyxWwdfNmE6kaXVPbxuOaYVbUXF+w1DoC+TsAni3E6WmVI6WR89G -rvZOHuAj3EJhiVwZuM/f2HpaVfaFmOHS+pWqYgaF1nFC7bOOl+JPcfgdOpFITuPM -QulBt1P1f6eGS4G8js2uW74UQNed0qXk8bmQ6Gie4NUS5sG38yCf+inK/4ykmLtW -jQYHlLKI+WVtAgMBAAGjUzBRMB0GA1UdDgQWBBTUC1DWnOpOOqICf/lXsL/tZjmf -4zAfBgNVHSMEGDAWgBTUC1DWnOpOOqICf/lXsL/tZjmf4zAPBgNVHRMBAf8EBTAD -AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQBNP5wgbkuM5iUPIhg043xEBnD4kR7iGaZX -bVIyWoLXRbtpjPyCAeBzcDjVgq3i2vs3jGXJ+p2RkEftIDbCrsgdK/SuPQjsXe7t -uxEUf6sNLzwCF3vtxFwoDbeE0EGWJMDgpkzWgGKLOT4mF1VG3tUNQrzEmOVfZXA9 -/WLopGMk4zAuUn45Bbsf49MYzYyWBTZ7I0IBaTFeQ+vFsGD8FphlKIJYX+gv0Lxi -KLPKbNnSAZVXveU12uHrg5p/710tU/BHK7vZiB46R0yuIbT3FJHzr+jGFUsyz3N4 -Ro8x6HlRL8CApNDgTxW5i7hxBRuB3j9iuv1hfB7N5HLAGymwHGzLwJWAb/FbUbEC -sbIvVW6GkUtkDvOREM9VyTfPp2Ix+unnRjGbm984zk1YGF/nq5ztTlwRo3pHrOxh -6BF4XPtSiG6tpA20hokrnMY5cmYbeUNUWQcnQXdwUgpfdvss5r6PRhHUz2UgZmRm -/Jpq4/TE54HCt6j+OWeZyFOHWXwgJDPdco3CgXol3la0wNT7bbNBO8M7ZY3J80Fe -7PkceQyyjcHIym2fSiJECUA0IdrovykMg3LXENDUcX/TuMzLqM7DMHzAnG4i4lot -hzh4MdC8MzLbiyNl/GKiJTsnhn8nzjAqFV0qSdwp6iSo6GdYbMoVewa3x/BPFLQD -gYCn3pHgIg== ------END CERTIFICATE----- diff --git a/experimental/packages/exporter-trace-otlp-proto/test/certs/ca.key b/experimental/packages/exporter-trace-otlp-proto/test/certs/ca.key deleted file mode 100644 index 1a770f08f8..0000000000 --- a/experimental/packages/exporter-trace-otlp-proto/test/certs/ca.key +++ /dev/null @@ -1,54 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -Proc-Type: 4,ENCRYPTED -DEK-Info: DES-EDE3-CBC,356304F34E38896B - -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 ------END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-trace-otlp-proto/test/certs/client.crt b/experimental/packages/exporter-trace-otlp-proto/test/certs/client.crt deleted file mode 100644 index f02b0ec199..0000000000 --- a/experimental/packages/exporter-trace-otlp-proto/test/certs/client.crt +++ /dev/null @@ -1,31 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV -BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjEwNjA3MjAyNzUzWhcN -MjIwNjA3MjAyNzUzWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV -BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZD -bGllbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAKbADNm8Jv7nlNpSa3A+wAXr5fMPF2Uxum+7Hujt5XabfUiFOSEQ -Qj5Rd3aXxtjrXB102E5oeWJrnUIzRfn0ICRKGudpOgKRL22iwNlIuy7wYz2qa7Vy -jdwsP+xjn4sfWqiDe8ssGrVzQy8/XunoWy+NXROiCE5F51GPMKDrdtVkvvtKGQFe -ThjBP+RrT6dSOn7JCUclwQS/SPlhKopeGygBRtK3fQY5hb0xcIEvzp/qpRqOjyIk -VknJSvaB3Q52Bm8qVvHePkDa3Jg8Lg11G1E2R9zOG8eIQ2A78Cc8RJh5ltDiHHBv -HE4ToC5r0I4pPdwgZYzqI876fNK/4DXmhznUofSwGLx3ST1d0k4Vj+u8u5NvUGrg -9AE47RS0BAqUFQzqqMOjSDXw3rlYEaC0JMy2T36qil8Ti484cIOPY9+rqityAc1y -pbhbATrtf96UEeDQLdA4ygafUXWsutLMG2zSrrZxt2xW8f3H0ifsnICxNHbxi+fe -vAqCek23+iWH+i2tgflHbe7hPwAIByVaNylk/FLV4D4YQbG1hVZ+svex0APXWxLn -T1Z75vYmGhpBQLctyqtq0Ytj0gczEfwaaEXZBcuh7PMepQmBxEj2J71vfp2edowc -LWTWZ0+aBOUh6xTcVeWdyrmEsqrSetTgZxKYt6PNyXP8S93nVuJMCNupAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBADZwq3V+Wm0PNFy02rJmo/fNpcjSmtVYA3BabQCo -KvayqBvm1QfwVzLpji0caZBnztVWf35nAQ0q51jZ/WjNrFg3/g6j8yzwPp7rX5Nv -88VKD2eekjj1wft93K40in2onxzaCchsLo2Jk6wSAt9AkGWM6yTnyvMSSjM3llu1 -m/5OGrUrEGFvjyBUSewBVJalSlMhXMb2PvnT3dzArYDWku+e1rkVSHff6sWrG3AC -D0xDN8JyeLTCfKoPeTsFgVqIz8GyGwenVERj2XrDMncM3o/o1fjT9clHovUVIBVP -SLM7nRB0oqVsau7Syq4xQJ0BZcCXCMD91w+DAHUi85X75C4fpRkaJcPB0oVqEog2 -ZtcyTE/aAsHJGwC7PEpgsQYOpApb2pnfZnhABb8pTBeK/dldrqIW3OJeRCzthh6w -N0p/pxfPXS2Xg5lDlSUoZNWmNObBOpBVevUlMJ+WhK6oFwfkfTbH7z0+o3k70XMZ -mb0R2nXIjZrbU/baGKOUVw9iqQNoRr5DBoInSFuuriTwyHU+O2MVL/UZCZ7TeY4o -5FyGh5+51eWqjt+uyHbJPBeYMoECj4S1PXbMvZSSqI+MR8RdUrEX0F25r60QjLe/ -ETKhZTeqM6GO8DG9WdlaWPDtZ08ZYrKgx4iIN1mu0ytYi0z8QRRvyJ9jBeLa7Lii -/0ud ------END CERTIFICATE----- diff --git a/experimental/packages/exporter-trace-otlp-proto/test/certs/client.csr b/experimental/packages/exporter-trace-otlp-proto/test/certs/client.csr deleted file mode 100644 index 234045e9ea..0000000000 --- a/experimental/packages/exporter-trace-otlp-proto/test/certs/client.csr +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH -DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGQ2xp -ZW50MRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQCmwAzZvCb+55TaUmtwPsAF6+XzDxdlMbpvux7o7eV2m31IhTkhEEI+ -UXd2l8bY61wddNhOaHlia51CM0X59CAkShrnaToCkS9tosDZSLsu8GM9qmu1co3c -LD/sY5+LH1qog3vLLBq1c0MvP17p6FsvjV0ToghORedRjzCg63bVZL77ShkBXk4Y -wT/ka0+nUjp+yQlHJcEEv0j5YSqKXhsoAUbSt30GOYW9MXCBL86f6qUajo8iJFZJ -yUr2gd0OdgZvKlbx3j5A2tyYPC4NdRtRNkfczhvHiENgO/AnPESYeZbQ4hxwbxxO -E6Aua9COKT3cIGWM6iPO+nzSv+A15oc51KH0sBi8d0k9XdJOFY/rvLuTb1Bq4PQB -OO0UtAQKlBUM6qjDo0g18N65WBGgtCTMtk9+qopfE4uPOHCDj2Pfq6orcgHNcqW4 -WwE67X/elBHg0C3QOMoGn1F1rLrSzBts0q62cbdsVvH9x9In7JyAsTR28Yvn3rwK -gnpNt/olh/otrYH5R23u4T8ACAclWjcpZPxS1eA+GEGxtYVWfrL3sdAD11sS509W -e+b2JhoaQUC3LcqratGLY9IHMxH8GmhF2QXLoezzHqUJgcRI9ie9b36dnnaMHC1k -1mdPmgTlIesU3FXlncq5hLKq0nrU4GcSmLejzclz/Evd51biTAjbqQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAKZZVROndJS2TZj/oyaEXjg3+vsVxve7JnlGFiQR -4de+ISUnRTJrTmdN3ocaRRjTp/I7VyIfvQf9chDyyjNz90HSvWI9PntzWkFY/Hk6 -eblj5dPftZHSWhpkNVdjI9tZEl6IOi0uyIzskPDQqm3VX36RApbpO1KglGIANpYx -/DKzt3k4go82u51pKA+KnCaUzI6CqNAsHW1nMBc2zunzBf6hfnlBJ+FEKkz/4Hje -5hR0+QLQr1I8jkvUxN3Qjd7mZJfCLuZiinYejStUs3r8KRA3ZIyPV+4tHqcSTC7J -aE20KCQT8iMYBfMZ3BvMZQYbfheTVeMlQSiOqP5iO9IOoAmgAfX+LNsf0tZ6pBgS -03b+tXZ6GL1qDuAZSRMbb8DmUbBoQI2b1LnP0v2fxe8Cuqm2UJLXBZXY6tOytE8j -ReTSX7Y37AVh17zwNPOOCoJtzUWzEmx6nvizlsB7DBTlbQ/tAKcBubCjTSn2A6yL -ibb0Q9Szjuz3q+zugaYDGEFkK8vjiTzpzpj0wH8VH18q16DcJykBGC1OTTgM66FK -8/toW3ocgAjHPJvd8TxWFaT+hM4VxlFST1Y7/oBnQmSVLtv/6pUGRZsV1ByfPBnD -Bvn7Dqcs8mtZOnw6XX7gQ/qmfMzzE5VQnHh4iPvZ7ULvEgVcz6DbXjjGgEhQQcMq -s7bV ------END CERTIFICATE REQUEST----- diff --git a/experimental/packages/exporter-trace-otlp-proto/test/certs/client.key b/experimental/packages/exporter-trace-otlp-proto/test/certs/client.key deleted file mode 100644 index f5ebbdc625..0000000000 --- a/experimental/packages/exporter-trace-otlp-proto/test/certs/client.key +++ /dev/null @@ -1,51 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -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 ------END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-trace-otlp-proto/test/certs/regenerate.sh b/experimental/packages/exporter-trace-otlp-proto/test/certs/regenerate.sh deleted file mode 100755 index 728c0cbfb3..0000000000 --- a/experimental/packages/exporter-trace-otlp-proto/test/certs/regenerate.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env sh -# -# Usage: regenerate.sh -# -# regenerate.sh regenerates certificates that are used to test gRPC with TLS -# Make sure you run it in test/certs directory. -# It also serves as a documentation on how existing certificates were generated. - -rm ca.crt ca.key client.crt client.csr client.key server.crt server.csr server.key - -openssl genrsa -des3 -out ca.key 4096 -openssl req -new -x509 -days 365 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" - -openssl genrsa -des3 -out server.key 4096 -openssl req -new -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" -openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt -openssl rsa -in server.key -out server.key - -openssl genrsa -des3 -out client.key 4096 -openssl req -new -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" -openssl x509 -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt -openssl rsa -in client.key -out client.key diff --git a/experimental/packages/exporter-trace-otlp-proto/test/certs/server.crt b/experimental/packages/exporter-trace-otlp-proto/test/certs/server.crt deleted file mode 100644 index 8e76b7b4a6..0000000000 --- a/experimental/packages/exporter-trace-otlp-proto/test/certs/server.crt +++ /dev/null @@ -1,31 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV -BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjEwNjA3MjAyNzUyWhcN -MjIwNjA3MjAyNzUyWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV -BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZT -ZXJ2ZXIxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAJqjWwLE9Q+qc8xBMQnif6D8GoxRNGzHQlW0lxGmx0OK+irwBqNC -gdmpjn9gKh4SkJL179W7r2pyc7zZw0wzl0Up/4rHb+Z7H55shgmMaxI0pxLdUUwf -0OsqOQWE4sUE3ku5QIGX0zw1M9RuS6wDphZXXuvhMH8+1sZXsDQE40eAaTGUln9k -l7ZBKpaHgMOp+sTHSpkncKXW4ZhH8F9jSCgHNrNCY8R2PiEI2nB1iIAO4B4AUHYh -9X8O1Ke4eAxG7AEQL/QskErX0Y99oBsd6YzOliVBHnIrLerCGnjpapHI9QqeCUI9 -ToV1AiexBCS0O7yHYAhHifZ3GTBM2wNpK0A7sIWW3fKBGEKlf3K09kTbxMNjRaeZ -r5cryJubFrOPu5cqqGqzA8UGUyCEEE//p+PP2Csfb9bviHXzS74jC3tD0cdJw+rn -xvXd71FuhDMjJBnkJwyCBXzlrtbcHVF5H0DHfuUmVffE9BvfeIGzkX8B2ZxFtxU7 -40WEml1YU06jfEmIlojBDOq0Py5BoPAvqEvFOHCzECszkJrjQbEdGWepeBBliXPa -YcEWR6K13PhmDqm/c99x2hpVl8dyAWK5dX86DVtTsrIBz6rgitAN4kPrl5eWVmZp -gf1VFwFZfEjS4SOV/qxbkJDls/r+tD6JhlC1dNT+XVooVq/DgON+Zkk1AgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAFmiQCJLSCLoH/sUbjdcZo5R96jGaaqodv4Prktv -aJ0ruWxLi3NJumfKlHoQZ2oZHU3Ujw0U3G8jHtU3V9v5ThIOMsUl/MY6qQJCaO0V -4QvEWvFJ3GwyZvnd/xDFMVGcRCmwehQZqyFpqCTJ2KTTRKIoxkj7O0oboWlwNpVQ -7/pyIWRvdB7AE/ldY1KuHn5Oj+nXMacB23zPcJ++IHAcL8AlHjrKmskYlqpswWON -xuwG5ilWpLYeoZ3WP1fxG/2Xoe+036eKEXhRHECb3fofGDXZ0ElPAqpMSH/hS2/l -1Eif+p6vy8np9zqSsFmEq74uRPZo7TrBKa8FYufCkB5VxOV31SaP8yj1G+nHCVa1 -O1h7uI7IQpSLsrEldf1FFkJSy6F6qx17uremRUpEPkfyi1/t3vjWPB7wZHetAho4 -uVDBbo85CsM9eKPr7ynWJzEEbefLKRxdpKp/cUvxMxDxZeEStGrIENc4qNYQN6aR -fc3WrczAoOsLMicSye21n7j0OApz+TnbSgt5+ane+oSschiBmx1LaJLFkDTiKA5w -h+3sws4I8dL0YTdtdacPZgtuLWSjN0xTdhD7idfqatrQA5bTJjoTnEBmdIUVp8X4 -wOo03t3lf+LQDjIHps41Mo/BVSqZbWuXA53rfxQ49JsGfoUfm3L1domYB4tlTWRq -s2Wb ------END CERTIFICATE----- diff --git a/experimental/packages/exporter-trace-otlp-proto/test/certs/server.csr b/experimental/packages/exporter-trace-otlp-proto/test/certs/server.csr deleted file mode 100644 index 45c77ba43f..0000000000 --- a/experimental/packages/exporter-trace-otlp-proto/test/certs/server.csr +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH -DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGU2Vy -dmVyMRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQCao1sCxPUPqnPMQTEJ4n+g/BqMUTRsx0JVtJcRpsdDivoq8AajQoHZ -qY5/YCoeEpCS9e/Vu69qcnO82cNMM5dFKf+Kx2/mex+ebIYJjGsSNKcS3VFMH9Dr -KjkFhOLFBN5LuUCBl9M8NTPUbkusA6YWV17r4TB/PtbGV7A0BONHgGkxlJZ/ZJe2 -QSqWh4DDqfrEx0qZJ3Cl1uGYR/BfY0goBzazQmPEdj4hCNpwdYiADuAeAFB2IfV/ -DtSnuHgMRuwBEC/0LJBK19GPfaAbHemMzpYlQR5yKy3qwhp46WqRyPUKnglCPU6F -dQInsQQktDu8h2AIR4n2dxkwTNsDaStAO7CFlt3ygRhCpX9ytPZE28TDY0Wnma+X -K8ibmxazj7uXKqhqswPFBlMghBBP/6fjz9grH2/W74h180u+Iwt7Q9HHScPq58b1 -3e9RboQzIyQZ5CcMggV85a7W3B1ReR9Ax37lJlX3xPQb33iBs5F/AdmcRbcVO+NF -hJpdWFNOo3xJiJaIwQzqtD8uQaDwL6hLxThwsxArM5Ca40GxHRlnqXgQZYlz2mHB -Fkeitdz4Zg6pv3PfcdoaVZfHcgFiuXV/Og1bU7KyAc+q4IrQDeJD65eXllZmaYH9 -VRcBWXxI0uEjlf6sW5CQ5bP6/rQ+iYZQtXTU/l1aKFavw4DjfmZJNQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAI6upPY4cjckMgAGj5NvhP9vWykUUzQZyWHDK052 -ruSo9PAtqCJiYQwXu//8uOjfrDFcOYiET1cpZVPdyjRpfoGMtNje+ap4969UQsj6 -UXvFYgNTSnjBr7nKySH6SamfBABeu5+TjID/jyqFMpepk++GuWRcYPnM1GHObfGm -hRd+3gYbF3m+KA0qrBIoFbHstLkFaLs84Lf8gzDt48ZoN+9QjQKZZtKZvpZXlsag -6FsYcp9o+h/bFIluUINLs8oTfElml3y1G8IMCyNskEdF4Zi65Ml+QaXIk7SLN29Z -NlSZEwtDNJQJB+hOBtIC31cs53l0s7UtdaX6UjyfwswxWsUkvpPJDRs5beC2IUgM -W+PWwszK0BNFvmzGQ4KKWGDLe4YEf5Ss4grIqM4Kf6tpgicuZVyc6wHkB8secJR9 -JftUHBaHazaJFzd+oaQ677cd+Oj74Ht1qGKFmKykPS5GmQfC1CMMj1AkBmh4BnQg -oEdT8xpvhzEBaygJr7v01LViRAAFtM46vW4VkpCMxNSzIymlX8/sszlVChjWpWdE -lMOtlUQxtigbVqYldDx5AmFgGZyKTSi5GaoB9qVLr0tU8c/FodvgUuuzgAZfr3BD -P12EezgueK1oF2z7RCwfgKeEpjGq8wfNzG6AF/AdJGUiHk/yrlcTTLGORH9beBZh -CH0X ------END CERTIFICATE REQUEST----- diff --git a/experimental/packages/exporter-trace-otlp-proto/test/certs/server.key b/experimental/packages/exporter-trace-otlp-proto/test/certs/server.key deleted file mode 100644 index b00ffb89bf..0000000000 --- a/experimental/packages/exporter-trace-otlp-proto/test/certs/server.key +++ /dev/null @@ -1,51 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -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 ------END RSA PRIVATE KEY----- diff --git a/experimental/packages/opentelemetry-browser-detector/package.json b/experimental/packages/opentelemetry-browser-detector/package.json index fa3e4746a0..788fb3dd99 100644 --- a/experimental/packages/opentelemetry-browser-detector/package.json +++ b/experimental/packages/opentelemetry-browser-detector/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/opentelemetry-browser-detector", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry Resource Detector for Browser", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -20,7 +20,7 @@ "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, @@ -53,15 +53,17 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@types/mocha": "9.1.1", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -70,8 +72,9 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/browser-detector" } diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/README.md b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/README.md index 3aee8d08a4..7a257ba1b7 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/README.md +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/README.md @@ -5,8 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides exporter for node to be used with OTLP (`grpc`) compatible receivers. -Compatible with [opentelemetry-collector][opentelemetry-collector-url] versions `>=0.16 <=0.53`. +This module provides a metrics-exporter for OTLP (gRPC) using protocol version `v0.20.0`. ## Installation @@ -32,6 +31,7 @@ const { MeterProvider, PeriodicExportingMetricReader } = require('@opentelemetry const { OTLPMetricExporter } = require('@opentelemetry/exporter-metrics-otlp-grpc'); const collectorOptions = { // url is optional and can be omitted - default is http://localhost:4317 + // Unix domain sockets are also supported: 'unix:///path/to/socket.sock' url: 'http://:', }; @@ -70,7 +70,7 @@ In addition to settings passed to the constructor, the exporter also supports co | OTEL_EXPORTER_OTLP_CLIENT_KEY | The path to the file containing private client key to use when verifying an OTLP trace, metric or log client's TLS credentials. Must provide a client certificate/chain when providing a private client key. By default no client key file is used. | | OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE | The path to the file containing trusted client certificate/chain for clients private key to use when verifying an OTLP metric server's TLS credentials. Must provide a private client key when providing a certificate/chain. By default no chain file is used. | | OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE | The path to the file containing trusted client certificate/chain for clients private key to use when verifying an OTLP trace, metric and log server's TLS credentials. Must provide a private client key when providing a certificate/chain. By default no chain file is used. | -| OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE | The exporters aggregation temporality preference. Valid values are `cumulative`, and `delta`. `cumulative` selects cumulative temporality for all instrument kinds. `delta` selects delta aggregation temporality for Counter, Asynchronous Counter and Histogram instrument kinds, and selects cumulative aggregation for UpDownCounter and Asynchronous UpDownCounter instrument kinds. By default `cumulative` is used. | +| OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE | The exporters aggregation temporality preference. Valid values are `cumulative`, `delta`, and `lowmemory`. `cumulative` selects cumulative temporality for all instrument kinds. `delta` selects delta aggregation temporality for Counter, Asynchronous Counter and Histogram instrument kinds, and selects cumulative aggregation for UpDownCounter and Asynchronous UpDownCounter instrument kinds. `lowmemory` select delta aggregation temporality for Synchronous Counter and Histogram instrument kinds, and selects cumulative aggregation for Synchronous UpDownCounter, Asynchronous Counter and Asynchronous UpDownCounter instrument kinds. By default `cumulative` is used. | > Settings configured programmatically take precedence over environment variables. Per-signal environment variables take precedence over non-per-signal environment variables. diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/package.json b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/package.json index 85b92e6fcb..cebe38c3c9 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/package.json +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-metrics-otlp-grpc", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry Collector Metrics Exporter allows user to send collected metrics to the OpenTelemetry Collector", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -15,7 +15,7 @@ "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", "version": "node ../../../scripts/version-update.js", "watch": "tsc -w", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -47,17 +47,19 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@grpc/proto-loader": "^0.7.3", "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", "cpx": "1.5.0", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -67,12 +69,13 @@ }, "dependencies": { "@grpc/grpc-js": "^1.7.1", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.39.1", - "@opentelemetry/otlp-grpc-exporter-base": "0.39.1", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-metrics": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/exporter-metrics-otlp-http": "0.40.0", + "@opentelemetry/otlp-grpc-exporter-base": "0.40.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc", "sideEffects": false diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/OTLPMetricExporter.test.ts b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/OTLPMetricExporter.test.ts index 9e4e27ecb0..a85d2f342e 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/OTLPMetricExporter.test.ts +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/OTLPMetricExporter.test.ts @@ -35,15 +35,13 @@ import { setUp, shutdown, } from './metricsHelper'; -import { - AggregationTemporality, - ResourceMetrics, -} from '@opentelemetry/sdk-metrics'; +import { ResourceMetrics } from '@opentelemetry/sdk-metrics'; import { IExportMetricsServiceRequest, IResourceMetrics, } from '@opentelemetry/otlp-transformer'; import { VERSION } from '../src/version'; +import { AggregationTemporalityPreference } from '@opentelemetry/exporter-metrics-otlp-http'; const metricsServiceProtoPath = 'opentelemetry/proto/collector/metrics/v1/metrics_service.proto'; @@ -51,9 +49,11 @@ const includeDirs = [ path.resolve(__dirname, '../../otlp-grpc-exporter-base/protos'), ]; -const address = 'localhost:1502'; +const httpAddr = 'https://localhost:1502'; +const udsAddr = 'unix:///tmp/otlp-metrics.sock'; type TestParams = { + address?: string; useTLS?: boolean; metadata?: grpc.Metadata; }; @@ -61,10 +61,11 @@ type TestParams = { const metadata = new grpc.Metadata(); metadata.set('k', 'v'); -const testOTLPMetricExporter = (params: TestParams) => - describe(`OTLPMetricExporter - node ${ - params.useTLS ? 'with' : 'without' - } TLS, ${params.metadata ? 'with' : 'without'} metadata`, () => { +const testOTLPMetricExporter = (params: TestParams) => { + const { address = httpAddr, useTLS, metadata } = params; + return describe(`OTLPMetricExporter - node ${ + useTLS ? 'with' : 'without' + } TLS, ${metadata ? 'with' : 'without'} metadata, target ${address}`, () => { let collectorExporter: OTLPMetricExporter; let server: grpc.Server; let exportedData: IResourceMetrics[] | undefined; @@ -102,7 +103,7 @@ const testOTLPMetricExporter = (params: TestParams) => }, } ); - const credentials = params.useTLS + const credentials = useTLS ? grpc.ServerCredentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), [ @@ -113,10 +114,15 @@ const testOTLPMetricExporter = (params: TestParams) => ] ) : grpc.ServerCredentials.createInsecure(); - server.bindAsync(address, credentials, () => { - server.start(); - done(); - }); + const serverAddr = new URL(address); + server.bindAsync( + serverAddr.protocol === 'https:' ? serverAddr.host : address, + credentials, + () => { + server.start(); + done(); + } + ); }); }); @@ -125,7 +131,7 @@ const testOTLPMetricExporter = (params: TestParams) => }); beforeEach(async () => { - const credentials = params.useTLS + const credentials = useTLS ? grpc.credentials.createSsl( fs.readFileSync('./test/certs/ca.crt'), fs.readFileSync('./test/certs/client.key'), @@ -133,10 +139,10 @@ const testOTLPMetricExporter = (params: TestParams) => ) : grpc.credentials.createInsecure(); collectorExporter = new OTLPMetricExporter({ - url: 'https://' + address, + url: address, credentials, - metadata: params.metadata, - temporalityPreference: AggregationTemporality.CUMULATIVE, + metadata: metadata, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); setUp(); @@ -187,19 +193,23 @@ const testOTLPMetricExporter = (params: TestParams) => it('should warn about headers', () => { collectorExporter = new OTLPMetricExporter({ - url: `http://${address}`, + url: address, headers: { foo: 'bar', }, - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); const args = warnStub.args[0]; assert.strictEqual(args[0], 'Headers cannot be set when using grpc'); }); it('should warn about path in url', () => { + if (new URL(address).protocol === 'unix:') { + // Skip this test for UDS + return; + } collectorExporter = new OTLPMetricExporter({ - url: `http://${address}/v1/metrics`, - temporalityPreference: AggregationTemporality.CUMULATIVE, + url: `${address}/v1/metrics`, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); const args = warnStub.args[0]; assert.strictEqual( @@ -261,13 +271,14 @@ const testOTLPMetricExporter = (params: TestParams) => assert.ok(typeof resource !== 'undefined', "resource doesn't exist"); ensureResourceIsCorrect(resource); - ensureMetadataIsCorrect(reqMetadata, params.metadata); + ensureMetadataIsCorrect(reqMetadata, metadata); done(); }, 500); }); }); }); +}; describe('OTLPMetricExporter - node (getDefaultUrl)', () => { it('should default to localhost', done => { @@ -281,7 +292,7 @@ describe('OTLPMetricExporter - node (getDefaultUrl)', () => { const url = 'http://foo.bar.com'; const collectorExporter = new OTLPMetricExporter({ url, - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); setTimeout(() => { assert.strictEqual(collectorExporter._otlpExporter.url, 'foo.bar.com'); @@ -330,7 +341,7 @@ describe('when configuring via environment', () => { envSource.OTEL_EXPORTER_OTLP_METRICS_HEADERS = 'foo=boo'; const collectorExporter = new OTLPMetricExporter({ metadata, - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); assert.deepStrictEqual( collectorExporter._otlpExporter.metadata?.get('foo'), @@ -352,3 +363,5 @@ describe('when configuring via environment', () => { testOTLPMetricExporter({ useTLS: true }); testOTLPMetricExporter({ useTLS: false }); testOTLPMetricExporter({ metadata }); +// skip UDS tests on windows +process.platform !== 'win32' && testOTLPMetricExporter({ address: udsAddr }); diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/ca.crt b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/ca.crt index 79e43541a2..c194f04954 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/ca.crt +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/ca.crt @@ -1,33 +1,33 @@ -----BEGIN CERTIFICATE----- -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 -QXqKvEKERA== +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMm3OXVbMd0t2r4x+Pg4fecPeFhRzsg6 +sp7AM4UYlhb0Xkx8ij3q0E47uQM/OSari6qi7p1Un6nzgaXmhosaNkVXaKV4dQ4g +zKqrvC2+nTYU4lwss4Rx32CQxOKXEvN5FPwLTNo903PP3wqJyVt8syN0CDW953m/ +hUdkNaOe/lXmDJ9TmTTGyuPZFSlNlufbaNsBUM5chVFgBYDQIVy0jls8MiYLfao5 +tfprj+yS+lnTDl54dDTVVyAgV22SY65cnUgvO4bu3nzhS/h2Xg4/6/yAuYaRI7GQ +xvlA4pzx+aLaRDTJKiszRrHbQFv4PY+MmkVxvg2Oka4Vc2XMgDM87H0bd+beO8NH +Tf7UHU5AmIr2j2R27LWeELOqanm1HYn2VK182lD7OwQ5u5yqZZuke8bMMPJQEPUm +EwhIgXMVIlGps2+rDUEalPYkQ/BmAcs2g7fywW3RhIWCacggKoee1x9a6oiUM5yi +oDJ6T/C4WUQzIVebdMC25zBBlxcy8fK4Yus/DFTqM/eXPl4NVzbH/yB5tlU2GU0Q +V4tpGL1jsUy4b7r1bzuYVNfnKrarUGFF5TIHuvDo3voJNGb4hWBH/JdttG/9NaWA +HomZ8CUWR+gNEzyPkwq7upkiblKxJV7HKo79Eex+dlWa+Ru1F3kwYE200Y+a/wOF +Rj4+PfMu7WvpAgMBAAGjUzBRMB0GA1UdDgQWBBSwH/Wk2wTc+MEPAEornj1eGKra +0zAfBgNVHSMEGDAWgBSwH/Wk2wTc+MEPAEornj1eGKra0zAPBgNVHRMBAf8EBTAD +AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQCNkzOjjqH3qeQ0wT/Has5PSoWwRwq+B1JT +gg29bgEMD6dVkLdzgEuRVVkMtc/tCZAkA02pc0VN8+lNLW7ckNU/QhMTQYn+FgMR +cG86vR9loTnwUrxR4dS6Nbx1sQ7hpe2GZkWpTNmjh1duHBNHv9nS2JmMkRypqRne +oAI3/th1Qlrtl/zDn02/+P5/av0YJcMOcnRkULHnI62cbXHa2iPd/nENgH2xC6CA +EuYN/bnmOEUPeKljU1IZS6asjGMLdWLmpLs7oOcHGLD3pax+om69Pmn7rps8Z071 +WsJDHFCftItCUrg4KWwpXr77Vq4WAN2tOBdDHEZsbES6a54+7sc1QKOVSWwPuGEd +ShFHhTzoaB0dpwm6kLdYsEkC8JLIjV+Ikg5X3VTDITjUlHoJf2mxCGOzBiCnUr75 +Am0eBqlVcc/2aVk1tcVS9N7reY/KcMaAJvI314O9I94pYdIIm5jw3UmA9Y6HmpN0 +vYtQUF2sS5W82XoFD8bpOq/bx1o2ib2x32dfPQkVgd4sbmpsyN62Fy1HpHwXtXno +xGVaDzGSWj/7RyYyKhNmp3nfQsU0Tt6iVkM+N30vl2heZqEUgXxCG9qHVzWv9z6x +AJzuafjM8tviROpiHkvzsmq7uDhksGooKCi+m+eoEBJrd0J4gjngAi1NYjTsB2GT +4mvPz05UkA== -----END CERTIFICATE----- diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/ca.key b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/ca.key index b991da8086..00ccb04622 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/ca.key +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/ca.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -MIIJKQIBAAKCAgEAv9gm7E0Y0jPCirVqVvhn+U/j4lFLWIgvIQn3wdzDaB9b6di4 -gYDRdfu/BVGjuFK0IRBFY/gq13N8mR816JxZQCegJMpN/0sNrG8Gvz/jHsMX/tOR -gikre64Bdp2XeTPdHoIDUy546d1sTH1ca11pzXvgB3mIgCc/V+bjmy8WKYXALS5g -/A2WJYn/XJUXJL2sMrQMAhvDFGAWX0USuijI+lUDIB60K8UAvjnwSykQ33yIzdwX -HUussmaZqWbhgt5g+ZxFyfR4qac/XAaeWTjLgMUSwd74c0zsvz+ZYsN+Ke6BteyX -82ymSPwA/f6Z5sJTlCE7n1SPld6YXiBB4Dqe/9s9JD7vYQQIq7E23ZQDqHZkojxq -Fs1KONl5UusXEtEkkeqRSNkK+aEC7gwS0dRyuwPAWQ2vZrEuZB6j+Z4zwB0+VRPM -SL+yXqRSCpTyCjjWwquhoLgAF7RH+BsyEzPptHDF1+Xc+W1FiQPJCE45B9ApC6fM -jxMt21yJXkpe3EjZs9t2sp22dgx7ebti0a8IJVpj9MhmhhZhtYYUPCYFHHnb3CnU -KCy+4bffXCs0EVF7caSlp+vHdlOHk8DAjfLtiW8hzk1uhBdo0nnRoi0vq1RXYQQA -Xn12LStN34m6wKaVosScl8pbaloMBLGqEnRj55iNGKzdZ1NrESe/zwt6KoECAwEA -AQKCAgAIjnB1+55OycY0f5DlniCtCvYkAvI0WaaYd6RYPits+nEUBfl8tS0icP79 -Er4Vm4KzMtGVet0WTO1SuwShgk+sv9exrGA8MbHDbhRD9WqA1by9PdxwjLuGwaUJ -EFBQNJL5KF1TmXAFJj4NT04O79SnOI4uZypCZP27Qu4F3tzDL1b57Oagd06qD/SW -wYONvPPwMv2SHoDd6Mc2qpMCQI1uNNp11Ui95wR4d4cTIxrAjQJhBB73zIdAUbkq -yA7o0lhK6cBnGINFNdNqnFT1r8XL0X5brUExi03H3eNOd1+qKRwZ7Bp+3eqwuKSm -r3NXynUF11Gccp4Q1iO/lvq5MIQk23GNNBmbanR2FDl7wZYhM8gU7kHaI0thUTfl -WkeFysuC+nJWzhugzuI7zIbp1d5sYdUpAoaYIpHMgWkfkt8hTsBqJd8MBU+3VWcH -DmSVVFYEGp1j8FgDZi6XXrU3GrP9nq3nHeJZt/89TwpuE0yABWLJHhHwrrjNt75I -nI8fp4sPGcv3RVkwvms4UN3xGVi4LV2ELcMVsA7aeF9REf+zCBStQQyxcN4lB4Dg -wDAqU3JTvea4JDA47oxQwSA2HKVLt9aTBeWBKW8D4fkPRMXQKz9sJ6b2Sao/kmru -s4uqBkZU+57t9UghVnK0stoIGEPxcJS3bBmE2Bm6l0RhCVqhQQKCAQEA4lPaZnZp -MklscjXRhW9qoQRzd6qFFMksRiGputBbX5YgGkBrguoxbvLF0Y0k4j+/sLmrikOq -R5OLE9KBgDROxDDTzgvXnNlE6LYhbyzfVfnxmP9nG2YgUtTzX+GtlGLFoVzONgAo -4NX5pO0+Qm9vXo9rEMW5rIt7dRVME5QFyxD2G84nIGbEXn2ZUQ2Ek32qWYC19SIK -Uh6HrB6u9d4+UpuhMuXyCQJ2bozDsizlZ4rPKdIK8cDj6JbIVBn8lE/yM8vQgN4y -WcyYfR/7c3uXhJeBk8cBQFR2ORhmnABYEMXFbyZxC3maiWiXnjEIshQuRqxPeWvc -2xV2lE5wc0d8WQKCAQEA2P7zsjdTEtSoXwJzOLc0eFbsnXF/7cuzzacieSeedIHw -uP3Qxe5uHgDbtBwyLR5gzv5fEWy6pYQoX13dAt+ilDHFvGhBz5TRd8odC+CxPi33 -SmEw9ubim1dhzeroIFnM24nPo6XZME3Qgaa0b+4WvvOHd34NqF1/TEJhqfwgnUA7 -tAEVZwZ30pqVLOqK6ik4K+q60OE26lAYSWGWiBqEI5kYkbDzANPP8raA6FnkCynl -dZ5ymG2lAUvD2pFwoHDkd3qGYnTmuMcdFhj52s1OT3qPjseZ9xt5wY6eomBTOIG4 -NBnKPceSG23QQb1Ew0WAskqVdN8ykmInq3FXyVw6aQKCAQEAgMnwlK+66tenM1J2 -uLSO+7NZtXW+JvbXD81mFR0tcbYu7GFODIARwy247aagn3JhNUJiX9pjUjmeQZhf -AsJBNBkI3c4VUna8ZKQHYIkrSXRiS4rCdG/n4tq05xG3waF3DnyOB2KN4GtClNw/ -unRI7ok0BqZNIud4SEbnNJjdtxEeyvHDiAeSpKZaESpdD8TJpAa/BA/ryZD/6SzI -qLZfxogy8ZCx6viQxhWp4oDzxbjSa9zPR4RY7Gio9FqZRRg9HcZUDpDiHAF1oHYL -k0p4DQZdwObUSnQFljXRZeI4Ossfr0EzwLDhBGIVLPqAFT2wm5y/2LtNQQn0oS4F -hUPfeQKCAQEAyjjWvMgIOC1Md7Zd0IYTdO509cj3UpGaj9XpL4U3ixYpUwzeygaI -QpfEJ9Z7AEcmKuEtkZyFWIiP40gjFnF5Hqg/wXRbmGr0xrDpXs9X/j1yDrQCoKXM -mr3VXMRE7Rki65lDkxuVCwoJfTnxP7pfIjbrkPU9HyF654OZZoOblVBuEzNLUcba -Vb9PtBsjuFMPkQXgcZbgyX45E/HJCi/D4zTii6ue2q+KRIPGIELdXXX+7BzsaJcN -xeZosEEH980dbScXI5wUBDEzLwu5lSnth+4M6R+koX/OeQ5DUcl45Nkm5A8AxZA9 -3if5g7ox4dTcucr9+3uhsn+cvo4TJIk5uQKCAQAkItjcGLVqEhMDPqqey8+d2A5L -eyHyc9HBTpVPhiTdk655CluPbn2WYztaviE88lJmN1bmBZpUjNirQN1MZq1C22l1 -5xoUoRNGpx84f23K3i0uJYUdQHeOwgt4GVRMjeIhvax1WHVoZIClbmYgzCWQERGC -WnKEq2EgMCFTt25Dwyb7Zce/YV1oCYlrJ9Nu9bhmn9TU8fGYPuUcy2h03Xf/Zi/v -5OsVitrLlX3q9Vhbatrc9MUU5rsvC3woMOdgZb3XoFB9H/M9At6oGkPcHY6miosr -+c5GErlfQe0uonTp71HXRRvGDMo9oTUkZ4kjy6iKrsNTjq+iUEC2t9l9iZLh +MIIJKQIBAAKCAgEAybc5dVsx3S3avjH4+Dh95w94WFHOyDqynsAzhRiWFvReTHyK +PerQTju5Az85JquLqqLunVSfqfOBpeaGixo2RVdopXh1DiDMqqu8Lb6dNhTiXCyz +hHHfYJDE4pcS83kU/AtM2j3Tc8/fConJW3yzI3QINb3neb+FR2Q1o57+VeYMn1OZ +NMbK49kVKU2W59to2wFQzlyFUWAFgNAhXLSOWzwyJgt9qjm1+muP7JL6WdMOXnh0 +NNVXICBXbZJjrlydSC87hu7efOFL+HZeDj/r/IC5hpEjsZDG+UDinPH5otpENMkq +KzNGsdtAW/g9j4yaRXG+DY6RrhVzZcyAMzzsfRt35t47w0dN/tQdTkCYivaPZHbs +tZ4Qs6pqebUdifZUrXzaUPs7BDm7nKplm6R7xsww8lAQ9SYTCEiBcxUiUamzb6sN +QRqU9iRD8GYByzaDt/LBbdGEhYJpyCAqh57XH1rqiJQznKKgMnpP8LhZRDMhV5t0 +wLbnMEGXFzLx8rhi6z8MVOoz95c+Xg1XNsf/IHm2VTYZTRBXi2kYvWOxTLhvuvVv +O5hU1+cqtqtQYUXlMge68Oje+gk0ZviFYEf8l220b/01pYAeiZnwJRZH6A0TPI+T +Cru6mSJuUrElXscqjv0R7H52VZr5G7UXeTBgTbTRj5r/A4VGPj498y7ta+kCAwEA +AQKCAgEAvpLhsTN4d8ujtz+FRhYxNQTToTWhFGEIcp2Jzzw8SPGUydR70yWuqcsY +761itFssOAl5QKE7u5g4q+GQyYj5Lyf20SZuCOwKEVDxF5LX+sleVtFQxVfEP/pm +WOF8YRTLM5kFgccZqHgC9HTbDRlSMbOlMgj50XeVVq6hUrWa+tK+qCSWQVtzQjLN +IFmSsfkEJq0mh+C3f/slF98LNgfL2vyTMIh4sEOX30CSGGOALS8Oi0hoGaZZixuj +Hf1JOel8Gz+skL3K69b7LIHAONxBeyyumykyvMbYhZK8xqSCQk7OU8Sel3P5XX2U +X4+3sZCYC/X7JdnFXuAbR1ke4cm0botnzZM+nVYdtWqBpW3lly33lmMXFvcj6m/U +m9iSqKIw58sHF2v5cStsjnzZ5nznB+jcsHMf0syeZS7V5ASKeiYEp/5RDc3iEmvd +mbb5hU0pd0bmaLtW7yGdFcBsOgDezbq/BkMlQJqtzUsjC+Ot/FxRSO7qMtIF2u0A +OgQwaarTvh8ItdA89Qx1oKKvod415htj/CSHqaEhsYGp9V2t2uiaN5a1Gt7tu+BL +HsOWRZh3n1+73mMXQEoosj8CvoSHhXOtBq4zL/3ICvTGfUBwqes4lvp7p4WKczS7 +ORRPRnl+80383pzlEnuKnYJ2iWYipye047sTIq6HmH8+DhEhdPUCggEBAPf3mMbk +PzglXhveUug/YJ3cTpd2vzbHDU8y1EPCrGHTwx5dUWSCVnv9h8Lrjr4/Aulk0ORw +w9n11Z9GHs7l0W3g6w2WlNF3/e1NQYyILnp8Zyl5onCjcxxlm/jsnrLemoX24+oK +34r+K6X/LHX/3qqq+hf+J6EefTzXAmYisSsB9FfCc8r7U6YUaWqAcdpq30tkj5Tt +1gEUferlcaVuZNEHVczIbiTvukMYtKO3pkzFmn5g3JKTfdakTW8tAEz4FBR+IaX6 +mvv3BcE/tc78yAn22hnY/RMpXAmLoOuVo/JUtQZT9DTKQZqDGhaKwIMjw/zjJsAv +MR0uqvKwubqc9dsCggEBANBAD+2B7QQtVsnjUZgVI5nHUptczJ9qOURNrCToqe+S +zkuwWhxWud5Q1ZgSH1xr/KIgSuHzqVnV/CRGsyo/VZmg0gsSHI5PToL7TqPPwCxV +KM2wbwA24gN2v4Lkk53xq2ezcQ5qh2avJVFiftyRrzfSvzzB6yJ5bF4fW697OLlV +9my+rnlF6DO4J8eGGw5NEYZT0x1JQhNz+oFsZOUxB5scst5IzP7uFAlDjmybqkdh +sBLe5uPdK0+v1LSXw5CJK7YdJ2rAHp5eDALKJs3P3BX4fdngMufuALtVxLsLt9Wz +rQijz+b9WHrn4FCojC+cj+TftIvhHApeWtvkKSN6KosCggEBAPOHa7gJ+jy+Fkrw +ciQ9+jmPYHBI40p8+4lItkdGLd52By8PHxzDFQT43hiFF8+oOsfVh4KTbQXm9kJS +r3crJh/vwWm69bUzT2N7eGD4bg1FmFuXZf2RyT+eWyyB1up8zO28p+H3g8wSC/Qf +RB8viBO9j5l4tpr6Qq05zNVaRP2kEcEO7IHxixmU+mLqeua0B1EYFhuB6adt5KyJ +Yq/CV6kitxVD00jbV+cFoIMZnm3PtAdiQb6CtBfVjWcenyj4i2AE8C7+jK/gzvoY +BAqhICUJFvJDtWjYOdf2FbjJYhZhMthgI3qlGQESuNBivOcOfTEkNa6Rqn6qkqF/ +BylLdfkCggEAH5d4UxmAsT+HiPz5Jc8fJXb9ayA60nw0z83QrZC2Jufob8cDBIWL +kNRGctlc9JJVMusfMQPbzwsNQxuOlnwhKjshYhiPSG9zg59IIMWla5RHqlx3mlq5 +Erly+BJg6nb8/7BTGFLE06kCSkRc5m0bXaaU6EyqtQIilGzBZe+VfVgzF/AdW7xl +K2NmdXg8poC+hdg1kJ3KblULzZJ6A+LaOoeyAtKcdpf7ZiRfeM5smIOTSGmUMUEe +Duqno/XZ7xVAElJ95k3a1z+BJvMvy80aoCKgROskDdcnOUQbohx2+O5W85aWNX59 +a7e9ab8H9TkVAy2EoCu4K0KBGhaUvxMLXQKCAQAORESNb5Ne+bBHbrSA6nVMH0Ti +Gt9Nx2bgNLxgGPGHLIFkQPnR9akk8mm94T/Ow1y8Jrx/rE0bxR0ayVYbxLiF+Zqz +i/G+CYGg72j+PXdugo4ocfGf17BpqR577uqUAycvtsk50zTgxYyoob5HxdXcFjnH +PEiJBGSSSY1VJJlPxIftHLE6ULfwslyMkHPGBxh6NJe/nkM7obuQYMc7JGpNngLb +G5NF6b8nV5yJ7a5hhhSbArFWuzlfbRsZwgqadWFDChXiAyCbzE5ey5gUOs22K4Ax +M4Ky5evO6Srk3gtFGCWPqSxcDJk57DSy/on35IwerlQTI6Btz0OT6EmDWXOn -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.crt b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.crt index a411611e29..fd05c9c40b 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.crt +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.crt @@ -1,31 +1,31 @@ -----BEGIN CERTIFICATE----- MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjIwNjA4MDkwNDU3WhcN -MjMwNjA4MDkwNDU3WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjMwNjA4MTY0NDI2WhcN +MjQwNjA3MTY0NDI2WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZD bGllbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAKmJw3BpO3T+4AIiOwE6FYCge7+R4F300DAHKKsZfSpZWcoCYEs3 -cwhEuoE0cbupK/wPHc4imhL4cI97w0hMeupIGYEH5nhBRlFz++P9lj99Vya4DUhc -VGYo/5VqS6SJGLXIQX1QVN5u4HxX7zCsYLOxhpS/NkG0MtdHQHnhEiCi+zxINFsX -o2ESme5U7w8YDr/iS6+934Ym60euLRqLTvg3mc2KWEhC/x3L8M6hKBqwPaVI8nR1 -nr6uUnk9DvPX6C+yieYfReqhZm9QHrNFM5ZlZF7gqLjCDgW730Gb2vkmRje2a13Z -aqgFI1NwTZHr3b3eyotLjvCRfgEWSEHJ//MC7lFU1DTDiYvD96DoCDcRif1ZfMTC -EkKs3Y5xxUOZyM0KYud2zg3t3aTP0jD6XCxt52BOSUxE7QwdlaO3/BYMDYH1EiT0 -ksHkIqXONJrrDmZdwt/JzODkT5DWUYoCAJxNjsUhimf5P1ew4Fz0aKj389v8dvKr -6jCl5Q/LCqkMlrSANWCVGVBfjfKLc58HtPKB8HLO6YX9nPJ8e1AWo3uDWWBATMDz -TTOaM6YmSzvWfK1lahVKf3bACgr/HN9F7O1hu98FS0nxNQfHFHSpD0oi/aGOJ7mm -iX1wbJjtqfihEA/u/wDNfJuarwqAKrXMn80ROX2a88BTl50rQlAuNEolAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAHl20Cqv+gbgc79sQgoX28sJpvkoS3jVWRDCgUZm -pd37c6CoG6qntTV0ljtwWup6ji3L8L2ezNGKCoW9iijnL1vxNMU2ZUTZxu7lOtsr -bNvII8MlzT2cHAGq+ReU7K1SNNM5di5NuoURywcya/YIZpX1ZuyXZUn6/pX0xoG+ -KsLxSypUjWc+FQ56Dywg3q9rtfec7ub4VdUe95mYUv1nj/3/F1K8J2ynLLmIEYZk -JmI3+3WHDqED8M0APPwP1Ar94tq7R9GRYzlppa7qwSkzz5tLrkFccXszr5qKwchv -VR2HqKtxmzewp3Vy5RUvv/4xk0AV0+aSk9DV063dlxEpPQGjueddexNJoP+OZzM3 -1vRlXJedNEHqucReW7KhbQdtOppNPg8kHfFa3gqLyfRGCPNLotTcXJT7wyiTbBKa -uW6oKHLEZWJoQuIFnUYoP2r/+gbYj6HqG4LAhSXc70gI+G6zPdYqREQY8agaAAtm -cbPV46cbGnpV02CchTib+cVpRrwgGAFAomr87eX/ccjiXjZEsy0ln/0Du9dIzJOV -pWBha4puk5mwUr2WyGczdXQsyyHKEwPOs3SeOpv1sK5oG5U2iSn/oonuEZ3rUflm -9KprXBjFSp+2L51dCVufawru8oieK0jU10BtpoVakSNS5OcbJTP8NY3S3IKfNfY1 -gxCH +ADCCAgoCggIBANewSXGnuCUsPcOnXPq7SUFTLaSM62x2FnJrzb6rne8KYQ615l6D +d2Nm7MrttHWJUBQS6iDCsEGlF/AWYO5adVuZ+Xf+S+NoWMXPTUuJYq+5VEeAS8PM +IriksA8Npn0hAMNTDrd/eNXQ5W4zLQOqUWnKcuE0P1M7gI3/rfX9/JXkZfUmkQGK +OSva3qJHOcG7Bc7vqbJnkFebIw87e2iHxNnUf5IoJmrUaOMdFiQyHBBoJyTVJ3wp +Ufr6Q2+d0sIyes9PV33DbB8DyKGdOfbLg4YmKsnAvnypC0p2Xw9yAnHlQX27Ngcq +tfzcOXx3QlNPxQDF3oNHzi8GD7ysex1z7PRIsZlLVQLshAdOfA+naktPezj52R8V +BtWaxgVFI7IA5X21reS25t01k/GXNcyIJxW5KSz00b1h8+mpz0n0R3Mz3HuZybAX +g5bnZ+91jOeQmTt08eMXjwAGClxcOqfrssfDvOnUSZjDpzEGDaVuFGVPA9hR/eKN +Bfo659rv45pYhtxoHLz1LJWoZ1uegmKrGF1w16K05k5mpzwH6fzqDzzbF1xyynGX +yfbIqsvsBniuWGmhMjlfT5+l0VG2GgsD7Yijv6SV0YZrVf85iA5q6XdKTBuKYmin +ZEbneEjw9kc9myMeC5ik7wHuksA/BQcja1TPwB4ZRbPEcfi2iFxbtsSzAgMBAAEw +DQYJKoZIhvcNAQELBQADggIBAGdcqEI2l/dKxu9vPuRC2/VRgjgDBN4UJJCY111T +2A7GsGzd7lRhtxB5ZzClF77UiRJG+cvFai00c9+L3wp8qy4sZWY4MaJIWoKRh72Q +sRiH8AskeIl3uvvvaH86bbmpDo7M48Cs/zXZo9VhLzD8ZuHcS1mdjkOcnQzkbSzR +YeM9ActeuJRmsdQ+gSzCTvFqmGutL6xvM8b9a6PwyY5nPxS+eh0/7KNp+EXBvp0U +MWp6mMfq22nAwAQRLbvh5f+a/4GSwg73By6hwnsgb7tpBBJ6ppnKAIALRf7l5JwS +V0LM5Vnpp4J4JjdYyQzk2xkxi+UGIP1IRigbeWc4K3qgg6BUUkfSf4W9oJD4JCa2 +cOsqnKqFxTwXT4b9j9qsPpg7mUQ2+UtU4Lv3h/7sXpbpx0ldb2Hnaq+JqUz0l/7c +54y3+nzke7I4CWKtLJUSamQiyOC3CBVkRX0YEYUBhMXim6dKAfiOEV6K3bwiU+YZ +aDe0lEeLbzAp87DKRTAvDYhRMIFtD3g2qmYrWpQ4gj8vSEorNAfg3kVHMFRGlk9o +jaFduAz0hKk+QG5SgePXMph5ZRXGRq0FnDbF2gZ7WV+jZiIhsYGJ43+RBWHh4HO4 +P4h9eOWQG8AxpDRmOo2KmyPbV0V/eltC4N0oOAmWz+i0qqulnpG4dOzQKpinRBBr +jPt5 -----END CERTIFICATE----- diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.csr b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.csr index ecca8ff676..b783896725 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.csr +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.csr @@ -2,27 +2,27 @@ MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGQ2xp ZW50MRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQCpicNwaTt0/uACIjsBOhWAoHu/keBd9NAwByirGX0qWVnKAmBLN3MI -RLqBNHG7qSv8Dx3OIpoS+HCPe8NITHrqSBmBB+Z4QUZRc/vj/ZY/fVcmuA1IXFRm -KP+VakukiRi1yEF9UFTebuB8V+8wrGCzsYaUvzZBtDLXR0B54RIgovs8SDRbF6Nh -EpnuVO8PGA6/4kuvvd+GJutHri0ai074N5nNilhIQv8dy/DOoSgasD2lSPJ0dZ6+ -rlJ5PQ7z1+gvsonmH0XqoWZvUB6zRTOWZWRe4Ki4wg4Fu99Bm9r5JkY3tmtd2Wqo -BSNTcE2R69293sqLS47wkX4BFkhByf/zAu5RVNQ0w4mLw/eg6Ag3EYn9WXzEwhJC -rN2OccVDmcjNCmLnds4N7d2kz9Iw+lwsbedgTklMRO0MHZWjt/wWDA2B9RIk9JLB -5CKlzjSa6w5mXcLfyczg5E+Q1lGKAgCcTY7FIYpn+T9XsOBc9Gio9/Pb/Hbyq+ow -peUPywqpDJa0gDVglRlQX43yi3OfB7TygfByzumF/ZzyfHtQFqN7g1lgQEzA800z -mjOmJks71nytZWoVSn92wAoK/xzfReztYbvfBUtJ8TUHxxR0qQ9KIv2hjie5pol9 -cGyY7an4oRAP7v8AzXybmq8KgCq1zJ/NETl9mvPAU5edK0JQLjRKJQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAIFKW8OGRgWjrW1NWNwTCYeXfdl+GPywWjR1EKco -e7h5KJrlMsRLLpzQyBWQ+8LeqSWHv3KZRxkU9haK8DmZ5M8d8S17DeReX1XeFCsY -C6+4XsS+6Ozz+i+zF/3lSiiVLRg/vhWGSNWdwto3ek0a7Oqcf173gATnnEyKmnSy -/t51+34ZdS8QrOKT0+6RGe6Z0ECW3jPzgDeGSUFRd5HZTSSCDPdvvvTsu20yybNm -r7e65BMDUzCXAdCpaiM9hX2Scj1MRxbISqjKPy5wonqhzy72T50ObkaRBZ7Jou9X -gnqRmp5A4NKfX8DjhWJX+ggn4cP2oV8iuvidOM3A71ZeaZJ70iJQnrWswjJzK6LG -VcbI1nuCGcrWukx9jDFULsWLG1vSprFTSP4WoFWhRYWofHvlZ/wu5Ljkhs1q7hKa -QesXKVHdmDD+YPo6JfJwq8GPDYh/hDZTYKBEAeaFjmToILSXkxOTrfGigDx2PDIQ -bRUx8XDSvUgNdh3ZlW38iORsAixvSBki+zTCpNp5zaSdY0BtDB7DK3k7ivU9u93x -a/oHEHQbEDSUQ6Oiuo/wzsRHKsjHCkOI7BlSyxH3+KjooTSJNgKyTb7dm6aPUdvn -aV8wAA7irnnUbV8iogRaC0Ziry15EfkDbg02dVtxWDWdMIVuP7to3tcMv9gUP+Dd -uEEp +ggIKAoICAQDXsElxp7glLD3Dp1z6u0lBUy2kjOtsdhZya82+q53vCmEOteZeg3dj +ZuzK7bR1iVAUEuogwrBBpRfwFmDuWnVbmfl3/kvjaFjFz01LiWKvuVRHgEvDzCK4 +pLAPDaZ9IQDDUw63f3jV0OVuMy0DqlFpynLhND9TO4CN/631/fyV5GX1JpEBijkr +2t6iRznBuwXO76myZ5BXmyMPO3toh8TZ1H+SKCZq1GjjHRYkMhwQaCck1Sd8KVH6 ++kNvndLCMnrPT1d9w2wfA8ihnTn2y4OGJirJwL58qQtKdl8PcgJx5UF9uzYHKrX8 +3Dl8d0JTT8UAxd6DR84vBg+8rHsdc+z0SLGZS1UC7IQHTnwPp2pLT3s4+dkfFQbV +msYFRSOyAOV9ta3ktubdNZPxlzXMiCcVuSks9NG9YfPpqc9J9EdzM9x7mcmwF4OW +52fvdYznkJk7dPHjF48ABgpcXDqn67LHw7zp1EmYw6cxBg2lbhRlTwPYUf3ijQX6 +Oufa7+OaWIbcaBy89SyVqGdbnoJiqxhdcNeitOZOZqc8B+n86g882xdccspxl8n2 +yKrL7AZ4rlhpoTI5X0+fpdFRthoLA+2Io7+kldGGa1X/OYgOaul3SkwbimJop2RG +53hI8PZHPZsjHguYpO8B7pLAPwUHI2tUz8AeGUWzxHH4tohcW7bEswIDAQABoAAw +DQYJKoZIhvcNAQELBQADggIBACboOarzimaArw3lDm6ET5yiU7NxTWtnWwFUOoSh +qS2cvumnCokUlrDyMSSKoHl2i2biUd9uiHuEqlh0yufNgnTsyAXLg0UiBHAv5Tos +Esc5A+JTV5ehy+Zrjpl3Ayh8difS8hJEBjMhH+7rCN3rhpvwkTSaXDCQTBzWPhQ1 +R0EIho/SNOh5mXQKAUWwhtleI0sEJC/PqezGfN+w+URHnzE7YMwg02bvoMxBEror +YVddG4o0nIyd6CPg++K7TBzYGGOf1CUCrI9S1bBn3jcv2mq5YgZMdLEa0HkA9XzU +J/dTSGz5pJbkoaX9IHv8a3uoc+V1jdNWZRmTUYG/cNoAFISoG+uuJLgesF5l+vxx +GUwkE6wj4bNYR/Pqy5963oDmA3ndBzR1wtCZqIsLX3t3A9fLLtIEgeN/XDSvNDBs +YdwBrx2HTatK7QCJ5e+4ACs6Wc2c1nnDviPddpxUgl0pHKcMbT+xNk7bY5fjl5Qr +wzuBNgvQcsZxNNvI8bs13k/eBmKrKOV2WUP1mHRzSoxPX3gzGRSWCe/7QR51oWlB +Qkb6OGVGLCKPnhIKFeZ6G1Qv8q7/hOOlmWGO4bN7s5fjAKEsm3JV1xrsqSKRofRG +JfdPjQD88jewIAk6xGSMKmc4usQN+y/IfU8yZ57MHSHULccA1Wl/VXfgKCAxS5fK +uXtm -----END CERTIFICATE REQUEST----- diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.key b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.key index 298d5296dd..58414d8d59 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.key +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/client.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/regenerate.sh b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/regenerate.sh index e1f1af5b54..84637be753 100755 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/regenerate.sh +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/regenerate.sh @@ -8,15 +8,15 @@ rm ca.crt ca.key client.crt client.csr client.key server.crt server.csr server.key -openssl genrsa -nodes -des3 -out ca.key 4096 -openssl req -nodes -new -x509 -days 365 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" +openssl genrsa -out ca.key 4096 +openssl req -new -x509 -days 365 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" -openssl genrsa -nodes -des3 -out server.key 4096 -openssl req -nodes -new -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" -openssl x509 -req -nodes -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt -openssl rsa -nodes -in server.key -out server.key +openssl genrsa -out server.key 4096 +openssl req -new -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" +openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt +openssl rsa -in server.key -out server.key -openssl genrsa -nodes -des3 -out client.key 4096 -openssl req -nodes -new -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" -openssl x509 -nodes -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt -openssl rsa -nodes -in client.key -out client.key +openssl genrsa -out client.key 4096 +openssl req -new -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" +openssl x509 -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt +openssl rsa -in client.key -out client.key diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.crt b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.crt index 7ef4b0f546..ace156a29e 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.crt +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.crt @@ -1,31 +1,31 @@ -----BEGIN CERTIFICATE----- MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjIwNjA4MDkwNDU2WhcN -MjMwNjA4MDkwNDU2WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjMwNjA4MTY0NDI0WhcN +MjQwNjA3MTY0NDI0WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZT ZXJ2ZXIxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBANatB0qfIsBhphob6vkEB6sLc9QRs+EGX5ZCk3gWrp6j4Hw54I0v -wIP5HQuJtE8fiDR5xC4dWMWjfzmERfXJ8CYeWbD9zHsEsI15uz+lmlX+hTJKTyzW -PNtFN+IbYme+tzNQZBVxrHq6KxRqEDgKlFvI6L0oq0XjYmVt0AqRnoVRW1jqBoTd -KYfK1tNlWLuf6lEzphKzXZM0XTc9vIUxw+FWlogzJUB8boNbkVPrbwONQk6Cz+me -FD2D71dYMGr4MTypZtK8C0pjU32RwD82FNU2C7DHgSUncptfWKWjT3Xgu4r3vYDk -PDoHtAZaTs6S5YNDjoDUEC+hn42blv00LKgIiSfD22np3Bt/gzyd9XslIilk1dzP -u3uTPi9r/4m0pMeXurMOTlhjM5UTG87AugpQI4DXYen/UF7few26sENZMoOLNfqS -k+2rkvpkzDjRQSCHqNgRhefL79rO9S2Dlv3yadBn/h0Gra13WR4HfrxXZyuI9Fcf -jtXNo59qeeSzo8bQUYZRv2ANguWg1DU1EHR2cFyS0lyYdaCdgaNvuesKsAsxoAGH -lbm32fOSe8kcgVCte/ceMdvTFh9RK9Cq+iaQdub4xo2JYJveRKt/9I8yDpo95md9 -pt1vmuL/ArEG8pD7ykx7GOU7tefhnjOKpQt8FWih1S2KhXbul6xwc+rFAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAAAWLWmJViBn92u3A5oKA4960vHnTpN8FcJG3Has -gFteNsuU54ByuEjrXAgbqFmjJC36LD0s6S5vIsu4WQdB0n2t0c7TME26Ki9eMSaw -ikykg6a2Q906RvXkATHE+TuibYNeMOUkxVuPdiVRK2P6wvde2TrXgBYK7GVptJtb -Ih7CYdyJAUdqbDZO8NcTUybKgy4qj0dxseptU2Kcr6wc+Q6xRtmxeHS1Rvu9xEbY -VsTGNfdqns+15pNowfYchukIk+ibR5tdK8tpHkUcb+Uugb4pYYl3QwyRySrAtKhV -1ZXCfe3Al72GpcSc759XHzhmT4Ev1vjVn7BBE7seYRFzP0PwaWCw4ytKKr+lT2RM -5tbxiy9hiQgHXPIG1Hm+wJvk+T1eSxlWKPdxXB7Prz8WWiPg6A07bOiLFUGqaUSx -M8jCgZurNW3e0zdrY/ZBesw5GwgXsJqiosDtn15GIk+aGMGQXyM1Tk/Hel/cowLi -RSIZGTNnziFwmZ4wJizzqfZ+NCfAPQ/Jgr/RJnjCL4X2aVK5noS/ZR/4Ibxkw1IE -YyNagnqSXjjQG3CoB1gCkAJWZ37SXj9RE+P7CpI3x55vi/zEkdjQpL9NYzT9O7ON -6lMX+2B3ISCcCRp9NqFIndaXYQctA0qIsdKOMsh62F3jM4tZkeYwefLSTdzhQiaa -YocN +ADCCAgoCggIBAKtVnxPqCZheCuqePfLknxc+6MeyYkf494U8WWeZo+yirYV3zY70 +1KhKZ+M+XDqhrBXc7IQHZd2KKxYBGnrv9yvbllmtZRdnk3hnn8B4eNh3w5gCRKPo +GSTeiNN7WEIRwYZNkr8AWgeoYT1jN8SAMn5+qSqKSd62Z1BPJNi0eQmTVxgLZqzx +92AWBZQl9rOme+1zV6ohKcR22Of3yUl6476L1rYYcX0DXp0QFkhK0TFKNt3cHxqq +WTRuMTnyCj7woWRtwclWTdO2buAkJe8cIde6rcbaUAX9jTdkbAgYAB9MctEKqasO +MqFyMzweS3sG9oUnmd0/GRL9as314xTZuz8fFnfj5l0BN6thVMmvEEYU3rTLQRKf +AKWzI2VrU+5wIxN8O/4ZbriQ5ae13p6TDYilSZ6kMxSzfOM/A00hlA+DKMS0o8g8 +V9Y3wcl3aSSjoZbH7XS/uDEueodudz9V3HxCk7Wc41SpunQPFprmPDWtjiW0jcMD +3kHV819r2F8aidKN94Q+3KI+N/mwn1QdDVsquiCq0wbR54i3CoAkQbi5YeUdEZD6 +/mNLs/BABgzSbANw7Fn1Pd9gY/JIsRhMskcFRqXe9tOqKk8/GxMv/r9MgJn6HHlk +iDa3OZsoOtFbjjOPFoy/Xq9YMi4ODnJkEhe7BSsVl/wkDAUdg7Zfu8XVAgMBAAEw +DQYJKoZIhvcNAQELBQADggIBAEft+R+qGyKffiiJpYWLPn0C9SmpjZiWPK331n57 +Nk3GA8u9gRgD1gyqqLr19r86nLArF8jcB/nChPB1A9ysW3xyTNvpOlAwYvEjxWR2 +tJr8wiDucAd+SnQud6e+5PI5e8LnyxYoeoZ+i6hMbhNV70NthoINHMAQx+5NeSpa +Q0GJ4d0XA3W/8Pu6oK7O0QkVovVut73Koz5DqsF91zFJp7SjVKaCnnjRKyU8wbg5 +uTO0TRheEtx3AeEXNps5Yhq0daLTnmnuFeyaJHm2F1QuBmma1TTwIF3HDclv2wLn +Jp+MWG9yoN9oEJLqS/AvDu1BltPSuvnYgLZr7cl0os+TEqpzxroa4ziE98dEiy0D +K4YQ59UTz6C8Ps0uX0hcs3jsvZOkBWptusvJBfZN59xLJAVmF2igkgIBKoiXvXmv +fXDx0hsOBg2IPe2O8lLHlFKlJZlMc+prH1iD0Xv6HefSP4L1eZHU37zjrRf/GiNX +r6GoEhJR2pKEoZQT81xpYp/w+qjzWcTl/mLD6FEePRzV92h3ubjRWBB36UhLtnEG +LJgp7yq3aGu7rg9rnuz8J6DG8DStE9rNuRjkV1O2C/PvR97XmVoIqbrMlxX9MUQJ +XxLm5dqBz7EVuhDJSyp4zCkDYsOj1y/SLL2O3cTyQQeZg6jlqripNqWnviAdTWe5 +JIPp -----END CERTIFICATE----- diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.csr b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.csr index 8485c97579..b421a7a60c 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.csr +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.csr @@ -2,27 +2,27 @@ MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGU2Vy dmVyMRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQDWrQdKnyLAYaYaG+r5BAerC3PUEbPhBl+WQpN4Fq6eo+B8OeCNL8CD -+R0LibRPH4g0ecQuHVjFo385hEX1yfAmHlmw/cx7BLCNebs/pZpV/oUySk8s1jzb -RTfiG2JnvrczUGQVcax6uisUahA4CpRbyOi9KKtF42JlbdAKkZ6FUVtY6gaE3SmH -ytbTZVi7n+pRM6YSs12TNF03PbyFMcPhVpaIMyVAfG6DW5FT628DjUJOgs/pnhQ9 -g+9XWDBq+DE8qWbSvAtKY1N9kcA/NhTVNguwx4ElJ3KbX1ilo0914LuK972A5Dw6 -B7QGWk7OkuWDQ46A1BAvoZ+Nm5b9NCyoCIknw9tp6dwbf4M8nfV7JSIpZNXcz7t7 -kz4va/+JtKTHl7qzDk5YYzOVExvOwLoKUCOA12Hp/1Be33sNurBDWTKDizX6kpPt -q5L6ZMw40UEgh6jYEYXny+/azvUtg5b98mnQZ/4dBq2td1keB368V2criPRXH47V -zaOfannks6PG0FGGUb9gDYLloNQ1NRB0dnBcktJcmHWgnYGjb7nrCrALMaABh5W5 -t9nzknvJHIFQrXv3HjHb0xYfUSvQqvomkHbm+MaNiWCb3kSrf/SPMg6aPeZnfabd -b5ri/wKxBvKQ+8pMexjlO7Xn4Z4ziqULfBVoodUtioV27pescHPqxQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAC8troDBxaOg6dnv4xXJqiQxYJxU5YDc6lTb2xp5 -+OsvW3FYs7B3NKXfro4AkkaU5vyQQlSR3VIu5DroUvlm34uhWnkejbl6p7wv+uIu -hRuu1eYT3TdA+iv2JIB8OtBhAPfxYSBcga0hLugcqVydX5WvQTkZuIbi1MsHeq4L -hKMxG5ZlnMNsBo4rNo+UOfbdzkCqtxeuE0s+WcYeDQdeAJC37JlDbefO9hC+tnwT -3hi7UEhCo+pk/ttTy4uUOaph2nU7ZyYyhd8ZTSWBoHmMKb8YewMv21vRiB2gmh1F -1n1PdS+ehbbtleTfucHay41Po/pLrfYJ1p5rDgKYu6kNq7YNoL020G/1ei9DBA5v -RJs2qtL1KEhh5ZzPbtrGN6tkdoZ6miSfE5gcvGqm7hMd86Pzxid4mftQMjrEjj94 -OzVbu+EIPE7//8irP8YcvMvPeVZrl3Uu8eS1h43DkNyjVv5kqDqOsHKnKuJbVgkF -O6GPjcKqrKVqTEttC+0eXasnt0EwnEBEsSLtsKp3Lr5aq2Ez6TtyQbBOunoTOTd/ -h1c6DXcL7zmLMOnPzuVjHYoH3sNmGRD9Xils61e0xfr3dHYZFBt9bu/3wFwAkKrW -NH7kde+GKwMc3UyllVMTXUXq3VTxd93kYtuYZpcC5HmUEvZcakmL91z8eyFWJ3u8 -+WGc +ggIKAoICAQCrVZ8T6gmYXgrqnj3y5J8XPujHsmJH+PeFPFlnmaPsoq2Fd82O9NSo +SmfjPlw6oawV3OyEB2XdiisWARp67/cr25ZZrWUXZ5N4Z5/AeHjYd8OYAkSj6Bkk +3ojTe1hCEcGGTZK/AFoHqGE9YzfEgDJ+fqkqiknetmdQTyTYtHkJk1cYC2as8fdg +FgWUJfazpnvtc1eqISnEdtjn98lJeuO+i9a2GHF9A16dEBZIStExSjbd3B8aqlk0 +bjE58go+8KFkbcHJVk3Ttm7gJCXvHCHXuq3G2lAF/Y03ZGwIGAAfTHLRCqmrDjKh +cjM8Hkt7BvaFJ5ndPxkS/WrN9eMU2bs/HxZ34+ZdATerYVTJrxBGFN60y0ESnwCl +syNla1PucCMTfDv+GW64kOWntd6ekw2IpUmepDMUs3zjPwNNIZQPgyjEtKPIPFfW +N8HJd2kko6GWx+10v7gxLnqHbnc/Vdx8QpO1nONUqbp0Dxaa5jw1rY4ltI3DA95B +1fNfa9hfGonSjfeEPtyiPjf5sJ9UHQ1bKrogqtMG0eeItwqAJEG4uWHlHRGQ+v5j +S7PwQAYM0mwDcOxZ9T3fYGPySLEYTLJHBUal3vbTqipPPxsTL/6/TICZ+hx5ZIg2 +tzmbKDrRW44zjxaMv16vWDIuDg5yZBIXuwUrFZf8JAwFHYO2X7vF1QIDAQABoAAw +DQYJKoZIhvcNAQELBQADggIBAJCMEdjKyklN2izvOhd7+JMXm/ClW3hjowbu+csO +JNz8NqUNLrKJjFyV3yAUGWuyp3z982S+XGfcm3nU7n9AJOjT4DLJId6opOtA6CSp +KTRgVZmeViL6O6UqBLTacz5DDjwMQXxszc+QpU53cMT6Y7VMvIOhQ6AmIvz1v71u +5gaYmlbfXVlmiPHEKRsQG9/DNIPe1mHP0p+S9qYKmCx7Jlpee7IstW/hNjt7alDn +uFaxFjxmCCSdWaMRyMW/qNRks9q3VdhJPan+amFeXceoEG7SOKiFiOc8A7DribSm +iKc2YlOw14xqc+cJutiKBvoBMri2eh1JgCbPT4ufVGFpbDkfYwAJxWx44Eg0X90j +gJUw8IRuHQZkEYss6jwFMFcOqjpe+AqrssOl4GZmu5gcaiUnj8PkSVZLTOrLilPg +sSDjzmoHdv4QcBppTrjj6PyR5Xd6DeGasWkMPvIPjiPN3mOhfxJ3C87atMqOhTLx +em7vFOBegAW6g40J9JD1XMoI/zFnTU8NevZQgCyx/Tq1XNRmUeMA6y/qpfTNKi/f +F7v/7nDWoxBgpOw3J0E9R+6rxD7Cjb2RWZEf20ZGdNBlPE+UG9c9b3HC3IHiwRHb +L9Fi0251w+fkaPX8dojQKErCEknqJ1SCP5S5F5g1QCQby22Y7LQsggMMf94s/wQX +4uMh -----END CERTIFICATE REQUEST----- diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.key b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.key index 2dcd9159c5..80b9cea7bf 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.key +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/test/certs/server.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/README.md b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/README.md index 0645aa1219..ba449280b0 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/README.md +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/README.md @@ -5,8 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides exporter for web and node to be used with OTLP (`http/json`) compatible receivers. -Compatible with [opentelemetry-collector][opentelemetry-collector-url] versions `>=0.52 <=0.53`. +This module provides a metrics-exporter for OTLP (http/json) using protocol version `v0.20.0`. ## Installation @@ -81,7 +80,7 @@ In addition to settings passed to the constructor, the exporter also supports co |---------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | OTEL_EXPORTER_OTLP_ENDPOINT | The endpoint to send metrics to. This will also be used for the traces exporter if `OTEL_EXPORTER_OTLP_TRACES_ENDPOINT` is not configured. By default `http://localhost:4318` will be used. `/v1/metrics` will be automatically appended to configured values. | | OTEL_EXPORTER_OTLP_METRICS_ENDPOINT | The endpoint to send metrics to. By default `https://localhost:4318/v1/metrics` will be used. `v1/metrics` will not be appended automatically and has to be added explicitly. | -| OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE | The exporters aggregation temporality preference. Valid values are `cumulative`, and `delta`. `cumulative` selects cumulative temporality for all instrument kinds. `delta` selects delta aggregation temporality for Counter, Asynchronous Counter and Histogram instrument kinds, and selects cumulative aggregation for UpDownCounter and Asynchronous UpDownCounter instrument kinds. By default `cumulative` is used. | +| OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE | The exporters aggregation temporality preference. Valid values are `cumulative`, `delta`, and `lowmemory`. `cumulative` selects cumulative temporality for all instrument kinds. `delta` selects delta aggregation temporality for Counter, Asynchronous Counter and Histogram instrument kinds, and selects cumulative aggregation for UpDownCounter and Asynchronous UpDownCounter instrument kinds. `lowmemory` selects delta aggregation temporality for Counter and Histogram instrument kinds, and selects cumulative aggregation for UpDownCounter, Asynchronous Counter and Asynchronous UpDownCounter instrument kinds. By default `cumulative` is used. | > Settings configured programmatically take precedence over environment variables. Per-signal environment variables take > precedence over non-per-signal environment variables. diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/package.json b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/package.json index 7ddbd94874..e26bbcd17b 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/package.json +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-metrics-otlp-http", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry Collector Metrics Exporter allows user to send collected metrics to the OpenTelemetry Collector", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -26,7 +26,7 @@ "test:browser": "nyc karma start --single-run", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -63,41 +63,44 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", "cpx": "1.5.0", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "peerDependencies": { "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-metrics": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-metrics-otlp-http", "sideEffects": false diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/OTLPMetricExporterBase.ts b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/OTLPMetricExporterBase.ts index bbebe6cd1f..21177777f6 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/OTLPMetricExporterBase.ts +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/OTLPMetricExporterBase.ts @@ -22,7 +22,10 @@ import { PushMetricExporter, ResourceMetrics, } from '@opentelemetry/sdk-metrics'; -import { OTLPMetricExporterOptions } from './OTLPMetricExporterOptions'; +import { + AggregationTemporalityPreference, + OTLPMetricExporterOptions, +} from './OTLPMetricExporterOptions'; import { OTLPExporterBase } from '@opentelemetry/otlp-exporter-base'; import { IExportMetricsServiceRequest } from '@opentelemetry/otlp-transformer'; import { diag } from '@opentelemetry/api'; @@ -45,6 +48,21 @@ export const DeltaTemporalitySelector: AggregationTemporalitySelector = ( } }; +export const LowMemoryTemporalitySelector: AggregationTemporalitySelector = ( + instrumentType: InstrumentType +) => { + switch (instrumentType) { + case InstrumentType.COUNTER: + case InstrumentType.HISTOGRAM: + return AggregationTemporality.DELTA; + case InstrumentType.UP_DOWN_COUNTER: + case InstrumentType.OBSERVABLE_UP_DOWN_COUNTER: + case InstrumentType.OBSERVABLE_COUNTER: + case InstrumentType.OBSERVABLE_GAUGE: + return AggregationTemporality.CUMULATIVE; + } +}; + function chooseTemporalitySelectorFromEnvironment() { const env = getEnv(); const configuredTemporality = @@ -56,6 +74,9 @@ function chooseTemporalitySelectorFromEnvironment() { if (configuredTemporality === 'delta') { return DeltaTemporalitySelector; } + if (configuredTemporality === 'lowmemory') { + return LowMemoryTemporalitySelector; + } diag.warn( `OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE is set to '${env.OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE}', but only 'cumulative' and 'delta' are allowed. Using default ('cumulative') instead.` @@ -64,12 +85,18 @@ function chooseTemporalitySelectorFromEnvironment() { } function chooseTemporalitySelector( - temporalityPreference?: AggregationTemporality + temporalityPreference?: + | AggregationTemporalityPreference + | AggregationTemporality ): AggregationTemporalitySelector { // Directly passed preference has priority. if (temporalityPreference != null) { - if (temporalityPreference === AggregationTemporality.DELTA) { + if (temporalityPreference === AggregationTemporalityPreference.DELTA) { return DeltaTemporalitySelector; + } else if ( + temporalityPreference === AggregationTemporalityPreference.LOWMEMORY + ) { + return LowMemoryTemporalitySelector; } return CumulativeTemporalitySelector; } @@ -86,7 +113,7 @@ export class OTLPMetricExporterBase< > implements PushMetricExporter { public _otlpExporter: T; - protected _aggregationTemporalitySelector: AggregationTemporalitySelector; + private _aggregationTemporalitySelector: AggregationTemporalitySelector; constructor(exporter: T, config?: OTLPMetricExporterOptions) { this._otlpExporter = exporter; diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/OTLPMetricExporterOptions.ts b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/OTLPMetricExporterOptions.ts index 32529efee1..e03bde4e75 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/OTLPMetricExporterOptions.ts +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/OTLPMetricExporterOptions.ts @@ -14,9 +14,17 @@ * limitations under the License. */ -import { AggregationTemporality } from '@opentelemetry/sdk-metrics'; import { OTLPExporterConfigBase } from '@opentelemetry/otlp-exporter-base'; +import { AggregationTemporality } from '@opentelemetry/sdk-metrics'; export interface OTLPMetricExporterOptions extends OTLPExporterConfigBase { - temporalityPreference?: AggregationTemporality; + temporalityPreference?: + | AggregationTemporalityPreference + | AggregationTemporality; +} + +export enum AggregationTemporalityPreference { + DELTA, + CUMULATIVE, + LOWMEMORY, } diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/test/browser/CollectorMetricExporter.test.ts b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/test/browser/CollectorMetricExporter.test.ts index 7dbc7cc889..053376b032 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/test/browser/CollectorMetricExporter.test.ts +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/test/browser/CollectorMetricExporter.test.ts @@ -22,10 +22,7 @@ import { Histogram, } from '@opentelemetry/api'; import { ExportResultCode, hrTimeToNanoseconds } from '@opentelemetry/core'; -import { - AggregationTemporality, - ResourceMetrics, -} from '@opentelemetry/sdk-metrics'; +import { ResourceMetrics } from '@opentelemetry/sdk-metrics'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { OTLPMetricExporter } from '../../src/platform/browser'; @@ -44,7 +41,10 @@ import { setUp, shutdown, } from '../metricsHelper'; -import { OTLPMetricExporterOptions } from '../../src'; +import { + AggregationTemporalityPreference, + OTLPMetricExporterOptions, +} from '../../src'; import { OTLPExporterConfigBase } from '@opentelemetry/otlp-exporter-base'; import { IExportMetricsServiceRequest } from '@opentelemetry/otlp-transformer'; @@ -102,7 +102,7 @@ describe('OTLPMetricExporter - web', () => { beforeEach(() => { collectorExporter = new OTLPMetricExporter({ url: 'http://foo.bar.com', - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); }); @@ -230,7 +230,7 @@ describe('OTLPMetricExporter - web', () => { (window.navigator as any).sendBeacon = false; collectorExporter = new OTLPMetricExporter({ url: 'http://foo.bar.com', - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); // Overwrites the start time to make tests consistent Object.defineProperty(collectorExporter, '_startTime', { @@ -386,7 +386,7 @@ describe('OTLPMetricExporter - web', () => { beforeEach(() => { collectorExporterConfig = { headers: customHeaders, - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }; server = sinon.fakeServer.create(); }); @@ -518,7 +518,7 @@ describe('when configuring via environment', () => { envSource.OTEL_EXPORTER_OTLP_HEADERS = 'foo=bar'; const collectorExporter = new OTLPMetricExporter({ headers: {}, - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); assert.strictEqual( collectorExporter['_otlpExporter']['_headers'].foo, @@ -531,7 +531,7 @@ describe('when configuring via environment', () => { envSource.OTEL_EXPORTER_OTLP_METRICS_HEADERS = 'foo=boo'; const collectorExporter = new OTLPMetricExporter({ headers: {}, - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); assert.strictEqual( collectorExporter['_otlpExporter']['_headers'].foo, diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/test/node/CollectorMetricExporter.test.ts b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/test/node/CollectorMetricExporter.test.ts index 042e5ebb4b..0844e5a9f2 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/test/node/CollectorMetricExporter.test.ts +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/test/node/CollectorMetricExporter.test.ts @@ -20,8 +20,10 @@ import * as assert from 'assert'; import * as http from 'http'; import * as sinon from 'sinon'; import { + AggregationTemporalityPreference, CumulativeTemporalitySelector, DeltaTemporalitySelector, + LowMemoryTemporalitySelector, OTLPMetricExporterOptions, } from '../../src'; @@ -42,6 +44,7 @@ import { import { MockedResponse } from './nodeHelpers'; import { AggregationTemporality, + InstrumentType, ResourceMetrics, } from '@opentelemetry/sdk-metrics'; import { PassThrough, Stream } from 'stream'; @@ -105,6 +108,116 @@ describe('OTLPMetricExporter - node with json over http', () => { }); }); + describe('temporality', () => { + it('should use the right temporality when Cumulative preference is selected', () => { + const exporter = new OTLPMetricExporter({ + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, + }); + + assert.equal( + exporter.selectAggregationTemporality(InstrumentType.COUNTER), + AggregationTemporality.CUMULATIVE, + 'Counter' + ); + assert.equal( + exporter.selectAggregationTemporality(InstrumentType.HISTOGRAM), + AggregationTemporality.CUMULATIVE, + 'Histogram' + ); + assert.equal( + exporter.selectAggregationTemporality(InstrumentType.UP_DOWN_COUNTER), + AggregationTemporality.CUMULATIVE, + 'UpDownCounter' + ); + assert.equal( + exporter.selectAggregationTemporality( + InstrumentType.OBSERVABLE_COUNTER + ), + AggregationTemporality.CUMULATIVE, + 'Asynchronous Counter' + ); + assert.equal( + exporter.selectAggregationTemporality( + InstrumentType.OBSERVABLE_UP_DOWN_COUNTER + ), + AggregationTemporality.CUMULATIVE, + 'Asynchronous UpDownCounter' + ); + }); + + it('should use the right temporality when Delta preference is selected', () => { + const exporter = new OTLPMetricExporter({ + temporalityPreference: AggregationTemporalityPreference.DELTA, + }); + + assert.equal( + exporter.selectAggregationTemporality(InstrumentType.COUNTER), + AggregationTemporality.DELTA, + 'Counter' + ); + assert.equal( + exporter.selectAggregationTemporality(InstrumentType.HISTOGRAM), + AggregationTemporality.DELTA, + 'Histogram' + ); + assert.equal( + exporter.selectAggregationTemporality(InstrumentType.UP_DOWN_COUNTER), + AggregationTemporality.CUMULATIVE, + 'UpDownCounter' + ); + assert.equal( + exporter.selectAggregationTemporality( + InstrumentType.OBSERVABLE_COUNTER + ), + AggregationTemporality.DELTA, + 'Asynchronous Counter' + ); + assert.equal( + exporter.selectAggregationTemporality( + InstrumentType.OBSERVABLE_UP_DOWN_COUNTER + ), + AggregationTemporality.CUMULATIVE, + 'Asynchronous UpDownCounter' + ); + }); + + it('should use the right temporality when LowMemory preference is selected', () => { + const exporter = new OTLPMetricExporter({ + temporalityPreference: AggregationTemporalityPreference.LOWMEMORY, + }); + + assert.equal( + exporter.selectAggregationTemporality(InstrumentType.COUNTER), + AggregationTemporality.DELTA, + 'Counter' + ); + assert.equal( + exporter.selectAggregationTemporality(InstrumentType.HISTOGRAM), + AggregationTemporality.DELTA, + 'Histogram' + ); + assert.equal( + exporter.selectAggregationTemporality(InstrumentType.UP_DOWN_COUNTER), + AggregationTemporality.CUMULATIVE, + 'UpDownCounter' + ); + assert.equal( + exporter.selectAggregationTemporality( + InstrumentType.OBSERVABLE_COUNTER + ), + AggregationTemporality.CUMULATIVE, + 'Asynchronous Counter' + ); + assert.equal( + exporter.selectAggregationTemporality( + InstrumentType.OBSERVABLE_UP_DOWN_COUNTER + ), + AggregationTemporality.CUMULATIVE, + 'Asynchronous UpDownCounter' + ); + }); + }); + describe('when configuring via environment', () => { const envSource = process.env; it('should use url defined in env that ends with root path and append version and signal path', () => { @@ -230,6 +343,21 @@ describe('OTLPMetricExporter - node with json over http', () => { ); } }); + it('should use low memory temporality defined via env', () => { + for (const envValue of [ + 'lowmemory', + 'LOWMEMORY', + 'LoWMeMOrY', + 'lowmemory ', + ]) { + envSource.OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE = envValue; + const exporter = new OTLPMetricExporter(); + assert.strictEqual( + exporter['_aggregationTemporalitySelector'], + LowMemoryTemporalitySelector + ); + } + }); it('should configure cumulative temporality with invalid value in env', () => { for (const envValue of ['invalid', ' ']) { envSource.OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE = envValue; @@ -244,7 +372,7 @@ describe('OTLPMetricExporter - node with json over http', () => { envSource.OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE = 'cumulative'; const exporter = new OTLPMetricExporter({ - temporalityPreference: AggregationTemporality.DELTA, + temporalityPreference: AggregationTemporalityPreference.DELTA, }); assert.strictEqual( exporter['_aggregationTemporalitySelector'], @@ -264,7 +392,7 @@ describe('OTLPMetricExporter - node with json over http', () => { url: 'http://foo.bar.com', keepAlive: true, httpAgentOptions: { keepAliveMsecs: 2000 }, - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }; collectorExporter = new OTLPMetricExporter(collectorExporterConfig); @@ -485,7 +613,7 @@ describe('OTLPMetricExporter - node with json over http', () => { const url = 'http://foo.bar.com'; const collectorExporter = new OTLPMetricExporter({ url, - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }); setTimeout(() => { assert.strictEqual(collectorExporter._otlpExporter.url, url); diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/README.md b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/README.md index 6a2e160bac..0056d2f3ca 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/README.md +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/README.md @@ -5,8 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides exporter for node to be used with OTLP (`http/protobuf`) compatible receivers. -Compatible with [opentelemetry-collector][opentelemetry-collector-url] versions `>=0.32 <=0.53`. +This module provides a metrics-exporter for OTLP (http/protobuf) using protocol version `v0.20.0`. ## Installation @@ -51,7 +50,7 @@ In addition to settings passed to the constructor, the exporter also supports co |---------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | OTEL_EXPORTER_OTLP_ENDPOINT | The endpoint to send metrics to. This will also be used for the traces exporter if `OTEL_EXPORTER_OTLP_TRACES_ENDPOINT` is not configured. By default `http://localhost:4318` will be used. `/v1/metrics` will be automatically appended to configured values. | | OTEL_EXPORTER_OTLP_METRICS_ENDPOINT | The endpoint to send metrics to. By default `https://localhost:4318/v1/metrics` will be used. `v1/metrics` will not be appended automatically and has to be added explicitly. | -| OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE | The exporters aggregation temporality preference. Valid values are `cumulative`, and `delta`. `cumulative` selects cumulative temporality for all instrument kinds. `delta` selects delta aggregation temporality for Counter, Asynchronous Counter and Histogram instrument kinds, and selects cumulative aggregation for UpDownCounter and Asynchronous UpDownCounter instrument kinds. By default `cumulative` is used. | +| OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE | The exporters aggregation temporality preference. Valid values are `cumulative`, `delta` and `lowmemory`. `cumulative` selects cumulative temporality for all instrument kinds. `delta` selects delta aggregation temporality for Counter, Asynchronous Counter and Histogram instrument kinds, and selects cumulative aggregation for UpDownCounter and Asynchronous UpDownCounter instrument kinds. `lowmemory` selects delta aggregation temporality for Counter and Histogram instrument kinds, and selects cumulative aggregation for UpDownCounter, Asynchronous Counter and Asynchronous UpDownCounter instrument kinds. By default `cumulative` is used. | > Settings configured programmatically take precedence over environment variables. Per-signal environment variables take > precedence over non-per-signal environment variables. diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/package.json b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/package.json index d384051e56..f10cf504ca 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/package.json +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-metrics-otlp-proto", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry Collector Metrics Exporter allows user to send collected metrics to the OpenTelemetry Collector using protobuf over HTTP", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -15,7 +15,7 @@ "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", "version": "node ../../../scripts/version-update.js", "watch": "tsc -w", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -47,16 +47,18 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", "cpx": "1.5.0", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -65,13 +67,14 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.39.1", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "@opentelemetry/otlp-proto-exporter-base": "0.39.1", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-metrics": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/exporter-metrics-otlp-http": "0.40.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "@opentelemetry/otlp-proto-exporter-base": "0.40.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-metrics-otlp-proto", "sideEffects": false diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/test/OTLPMetricExporter.test.ts b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/test/OTLPMetricExporter.test.ts index d3270b6a9f..4d4856481d 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/test/OTLPMetricExporter.test.ts +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/test/OTLPMetricExporter.test.ts @@ -38,11 +38,11 @@ import { setUp, shutdown, } from './metricsHelper'; +import { ResourceMetrics } from '@opentelemetry/sdk-metrics'; import { - AggregationTemporality, - ResourceMetrics, -} from '@opentelemetry/sdk-metrics'; -import { OTLPMetricExporterOptions } from '@opentelemetry/exporter-metrics-otlp-http'; + AggregationTemporalityPreference, + OTLPMetricExporterOptions, +} from '@opentelemetry/exporter-metrics-otlp-http'; import { Stream, PassThrough } from 'stream'; import { OTLPExporterNodeConfigBase } from '@opentelemetry/otlp-exporter-base'; import { IExportMetricsServiceRequest } from '@opentelemetry/otlp-transformer'; @@ -176,7 +176,7 @@ describe('OTLPMetricExporter - node with proto over http', () => { url: 'http://foo.bar.com', keepAlive: true, httpAgentOptions: { keepAliveMsecs: 2000 }, - temporalityPreference: AggregationTemporality.CUMULATIVE, + temporalityPreference: AggregationTemporalityPreference.CUMULATIVE, }; collectorExporter = new OTLPMetricExporter(collectorExporterConfig); setUp(); diff --git a/experimental/packages/opentelemetry-exporter-prometheus/package.json b/experimental/packages/opentelemetry-exporter-prometheus/package.json index 144c4e62d8..8ae497886f 100644 --- a/experimental/packages/opentelemetry-exporter-prometheus/package.json +++ b/experimental/packages/opentelemetry-exporter-prometheus/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-prometheus", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry Exporter Prometheus provides a metrics endpoint for Prometheus", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -16,7 +16,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, @@ -44,14 +44,16 @@ }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@opentelemetry/semantic-conventions": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, @@ -59,9 +61,10 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-metrics": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-prometheus", "sideEffects": false diff --git a/experimental/packages/opentelemetry-exporter-prometheus/src/PrometheusExporter.ts b/experimental/packages/opentelemetry-exporter-prometheus/src/PrometheusExporter.ts index 2a7cb5fb43..8f84c5134c 100644 --- a/experimental/packages/opentelemetry-exporter-prometheus/src/PrometheusExporter.ts +++ b/experimental/packages/opentelemetry-exporter-prometheus/src/PrometheusExporter.ts @@ -33,7 +33,7 @@ export class PrometheusExporter extends MetricReader { port: 9464, endpoint: '/metrics', prefix: '', - appendTimestamp: true, + appendTimestamp: false, }; private readonly _host?: string; diff --git a/experimental/packages/opentelemetry-exporter-prometheus/src/PrometheusSerializer.ts b/experimental/packages/opentelemetry-exporter-prometheus/src/PrometheusSerializer.ts index 75b29bb61b..7dc424a2b7 100644 --- a/experimental/packages/opentelemetry-exporter-prometheus/src/PrometheusSerializer.ts +++ b/experimental/packages/opentelemetry-exporter-prometheus/src/PrometheusSerializer.ts @@ -176,7 +176,7 @@ export class PrometheusSerializer { private _prefix: string | undefined; private _appendTimestamp: boolean; - constructor(prefix?: string, appendTimestamp = true) { + constructor(prefix?: string, appendTimestamp = false) { if (prefix) { this._prefix = prefix + '_'; } diff --git a/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusExporter.test.ts b/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusExporter.test.ts index 55061be083..b4c6f0ade0 100644 --- a/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusExporter.test.ts +++ b/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusExporter.test.ts @@ -21,12 +21,12 @@ import * as sinon from 'sinon'; import * as http from 'http'; import { PrometheusExporter } from '../src'; import { - mockedHrTimeMs, mockHrTime, sdkLanguage, sdkName, sdkVersion, serviceName, + mockedHrTimeMs, } from './util'; import { SinonStubbedInstance } from 'sinon'; @@ -290,7 +290,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP counter_total a test description', '# TYPE counter_total counter', - `counter_total{key1="attributeValue1"} 10 ${mockedHrTimeMs}`, + 'counter_total{key1="attributeValue1"} 10', '', ]); }); @@ -320,7 +320,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP metric_observable_gauge a test description', '# TYPE metric_observable_gauge gauge', - `metric_observable_gauge{pid="123",core="1"} 0.999 ${mockedHrTimeMs}`, + 'metric_observable_gauge{pid="123",core="1"} 0.999', '', ]); }); @@ -340,8 +340,8 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP counter_total a test description', '# TYPE counter_total counter', - `counter_total{counterKey1="attributeValue1"} 10 ${mockedHrTimeMs}`, - `counter_total{counterKey1="attributeValue2"} 20 ${mockedHrTimeMs}`, + 'counter_total{counterKey1="attributeValue1"} 10', + 'counter_total{counterKey1="attributeValue2"} 20', '', ]); }); @@ -389,7 +389,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP counter_total description missing', '# TYPE counter_total counter', - `counter_total{key1="attributeValue1"} 10 ${mockedHrTimeMs}`, + 'counter_total{key1="attributeValue1"} 10', '', ]); }); @@ -406,7 +406,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP counter_bad_name_total description missing', '# TYPE counter_bad_name_total counter', - `counter_bad_name_total{key1="attributeValue1"} 10 ${mockedHrTimeMs}`, + 'counter_bad_name_total{key1="attributeValue1"} 10', '', ]); }); @@ -424,7 +424,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP counter a test description', '# TYPE counter gauge', - `counter{key1="attributeValue1"} 20 ${mockedHrTimeMs}`, + 'counter{key1="attributeValue1"} 20', '', ]); }); @@ -453,7 +453,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP metric_observable_counter a test description', '# TYPE metric_observable_counter counter', - `metric_observable_counter{key1="attributeValue1"} 20 ${mockedHrTimeMs}`, + 'metric_observable_counter{key1="attributeValue1"} 20', '', ]); }); @@ -484,7 +484,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP metric_observable_up_down_counter a test description', '# TYPE metric_observable_up_down_counter gauge', - `metric_observable_up_down_counter{key1="attributeValue1"} 20 ${mockedHrTimeMs}`, + 'metric_observable_up_down_counter{key1="attributeValue1"} 20', '', ]); }); @@ -503,19 +503,24 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP test_histogram a test description', '# TYPE test_histogram histogram', - `test_histogram_count{key1="attributeValue1"} 1 ${mockedHrTimeMs}`, - `test_histogram_sum{key1="attributeValue1"} 20 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="0"} 0 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="5"} 0 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="10"} 0 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="25"} 1 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="50"} 1 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="75"} 1 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="100"} 1 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="250"} 1 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="500"} 1 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="1000"} 1 ${mockedHrTimeMs}`, - `test_histogram_bucket{key1="attributeValue1",le="+Inf"} 1 ${mockedHrTimeMs}`, + 'test_histogram_count{key1="attributeValue1"} 1', + 'test_histogram_sum{key1="attributeValue1"} 20', + 'test_histogram_bucket{key1="attributeValue1",le="0"} 0', + 'test_histogram_bucket{key1="attributeValue1",le="5"} 0', + 'test_histogram_bucket{key1="attributeValue1",le="10"} 0', + 'test_histogram_bucket{key1="attributeValue1",le="25"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="50"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="75"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="100"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="250"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="500"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="750"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="1000"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="2500"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="5000"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="7500"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="10000"} 1', + 'test_histogram_bucket{key1="attributeValue1",le="+Inf"} 1', '', ]); }); @@ -557,7 +562,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP test_prefix_counter_total description missing', '# TYPE test_prefix_counter_total counter', - `test_prefix_counter_total{key1="attributeValue1"} 10 ${mockedHrTimeMs}`, + 'test_prefix_counter_total{key1="attributeValue1"} 10', '', ]); @@ -586,7 +591,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP counter_total description missing', '# TYPE counter_total counter', - `counter_total{key1="attributeValue1"} 10 ${mockedHrTimeMs}`, + 'counter_total{key1="attributeValue1"} 10', '', ]); @@ -615,7 +620,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP counter_total description missing', '# TYPE counter_total counter', - `counter_total{key1="attributeValue1"} 10 ${mockedHrTimeMs}`, + 'counter_total{key1="attributeValue1"} 10', '', ]); @@ -627,10 +632,10 @@ describe('PrometheusExporter', () => { ); }); - it('should export a metric without timestamp', done => { + it('should export a metric with timestamp', done => { exporter = new PrometheusExporter( { - appendTimestamp: false, + appendTimestamp: true, }, async () => { setup(exporter); @@ -644,7 +649,7 @@ describe('PrometheusExporter', () => { ...serializedDefaultResourceLines, '# HELP counter_total description missing', '# TYPE counter_total counter', - 'counter_total{key1="attributeValue1"} 10', + `counter_total{key1="attributeValue1"} 10 ${mockedHrTimeMs}`, '', ]); diff --git a/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusSerializer.test.ts b/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusSerializer.test.ts index 5495ca0a8b..1a39aae003 100644 --- a/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusSerializer.test.ts +++ b/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusSerializer.test.ts @@ -118,17 +118,17 @@ describe('PrometheusSerializer', () => { it('should serialize metrics with singular data type', async () => { const serializer = new PrometheusSerializer(); const result = await testSerializer(serializer); + assert.strictEqual(result, 'test_total{foo1="bar1",foo2="bar2"} 1\n'); + }); + + it('should serialize metrics with singular data type with timestamp', async () => { + const serializer = new PrometheusSerializer(undefined, true); + const result = await testSerializer(serializer); assert.strictEqual( result, `test_total{foo1="bar1",foo2="bar2"} 1 ${mockedHrTimeMs}\n` ); }); - - it('should serialize metrics with singular data type without timestamp', async () => { - const serializer = new PrometheusSerializer(undefined, false); - const result = await testSerializer(serializer); - assert.strictEqual(result, 'test_total{foo1="bar1",foo2="bar2"} 1\n'); - }); }); describe('Histogram', () => { @@ -168,20 +168,6 @@ describe('PrometheusSerializer', () => { it('should serialize metrics with histogram data type', async () => { const serializer = new PrometheusSerializer(); const result = await testSerializer(serializer); - assert.strictEqual( - result, - `test_count{foo1="bar1",foo2="bar2"} 1 ${mockedHrTimeMs}\n` + - `test_sum{foo1="bar1",foo2="bar2"} 5 ${mockedHrTimeMs}\n` + - `test_bucket{foo1="bar1",foo2="bar2",le="1"} 0 ${mockedHrTimeMs}\n` + - `test_bucket{foo1="bar1",foo2="bar2",le="10"} 1 ${mockedHrTimeMs}\n` + - `test_bucket{foo1="bar1",foo2="bar2",le="100"} 1 ${mockedHrTimeMs}\n` + - `test_bucket{foo1="bar1",foo2="bar2",le="+Inf"} 1 ${mockedHrTimeMs}\n` - ); - }); - - it('serialize metric record with sum aggregator without timestamp', async () => { - const serializer = new PrometheusSerializer(undefined, false); - const result = await testSerializer(serializer); assert.strictEqual( result, 'test_count{foo1="bar1",foo2="bar2"} 1\n' + @@ -192,6 +178,20 @@ describe('PrometheusSerializer', () => { 'test_bucket{foo1="bar1",foo2="bar2",le="+Inf"} 1\n' ); }); + + it('serialize metric record with sum aggregator with timestamp', async () => { + const serializer = new PrometheusSerializer(undefined, true); + const result = await testSerializer(serializer); + assert.strictEqual( + result, + `test_count{foo1="bar1",foo2="bar2"} 1 ${mockedHrTimeMs}\n` + + `test_sum{foo1="bar1",foo2="bar2"} 5 ${mockedHrTimeMs}\n` + + `test_bucket{foo1="bar1",foo2="bar2",le="1"} 0 ${mockedHrTimeMs}\n` + + `test_bucket{foo1="bar1",foo2="bar2",le="10"} 1 ${mockedHrTimeMs}\n` + + `test_bucket{foo1="bar1",foo2="bar2",le="100"} 1 ${mockedHrTimeMs}\n` + + `test_bucket{foo1="bar1",foo2="bar2",le="+Inf"} 1 ${mockedHrTimeMs}\n` + ); + }); }); }); @@ -233,20 +233,20 @@ describe('PrometheusSerializer', () => { result, '# HELP test_total foobar\n' + '# TYPE test_total counter\n' + - `test_total{val="1"} 1 ${mockedHrTimeMs}\n` + - `test_total{val="2"} 1 ${mockedHrTimeMs}\n` + 'test_total{val="1"} 1\n' + + 'test_total{val="2"} 1\n' ); }); - it('should serialize metric record without timestamp', async () => { - const serializer = new PrometheusSerializer(undefined, false); + it('should serialize metric record with timestamp', async () => { + const serializer = new PrometheusSerializer(undefined, true); const result = await testSerializer(serializer); assert.strictEqual( result, '# HELP test_total foobar\n' + '# TYPE test_total counter\n' + - 'test_total{val="1"} 1\n' + - 'test_total{val="2"} 1\n' + `test_total{val="1"} 1 ${mockedHrTimeMs}\n` + + `test_total{val="2"} 1 ${mockedHrTimeMs}\n` ); }); }); @@ -287,20 +287,20 @@ describe('PrometheusSerializer', () => { result, '# HELP test_total foobar\n' + '# TYPE test_total gauge\n' + - `test_total{val="1"} 1 ${mockedHrTimeMs}\n` + - `test_total{val="2"} 1 ${mockedHrTimeMs}\n` + 'test_total{val="1"} 1\n' + + 'test_total{val="2"} 1\n' ); }); - it('serialize metric record without timestamp', async () => { - const serializer = new PrometheusSerializer(undefined, false); + it('serialize metric record with timestamp', async () => { + const serializer = new PrometheusSerializer(undefined, true); const result = await testSerializer(serializer); assert.strictEqual( result, '# HELP test_total foobar\n' + '# TYPE test_total gauge\n' + - 'test_total{val="1"} 1\n' + - 'test_total{val="2"} 1\n' + `test_total{val="1"} 1 ${mockedHrTimeMs}\n` + + `test_total{val="2"} 1 ${mockedHrTimeMs}\n` ); }); }); @@ -341,20 +341,20 @@ describe('PrometheusSerializer', () => { result, '# HELP test_total foobar\n' + '# TYPE test_total gauge\n' + - `test_total{val="1"} 1 ${mockedHrTimeMs}\n` + - `test_total{val="2"} 1 ${mockedHrTimeMs}\n` + 'test_total{val="1"} 1\n' + + 'test_total{val="2"} 1\n' ); }); - it('serialize metric record without timestamp', async () => { - const serializer = new PrometheusSerializer(undefined, false); + it('serialize metric record with timestamp', async () => { + const serializer = new PrometheusSerializer(undefined, true); const result = await testSerializer(serializer); assert.strictEqual( result, '# HELP test_total foobar\n' + '# TYPE test_total gauge\n' + - 'test_total{val="1"} 1\n' + - 'test_total{val="2"} 1\n' + `test_total{val="1"} 1 ${mockedHrTimeMs}\n` + + `test_total{val="2"} 1 ${mockedHrTimeMs}\n` ); }); }); @@ -399,18 +399,18 @@ describe('PrometheusSerializer', () => { result, '# HELP test foobar\n' + '# TYPE test histogram\n' + - `test_count{val="1"} 3 ${mockedHrTimeMs}\n` + - `test_sum{val="1"} 175 ${mockedHrTimeMs}\n` + - `test_bucket{val="1",le="1"} 0 ${mockedHrTimeMs}\n` + - `test_bucket{val="1",le="10"} 1 ${mockedHrTimeMs}\n` + - `test_bucket{val="1",le="100"} 2 ${mockedHrTimeMs}\n` + - `test_bucket{val="1",le="+Inf"} 3 ${mockedHrTimeMs}\n` + - `test_count{val="2"} 1 ${mockedHrTimeMs}\n` + - `test_sum{val="2"} 5 ${mockedHrTimeMs}\n` + - `test_bucket{val="2",le="1"} 0 ${mockedHrTimeMs}\n` + - `test_bucket{val="2",le="10"} 1 ${mockedHrTimeMs}\n` + - `test_bucket{val="2",le="100"} 1 ${mockedHrTimeMs}\n` + - `test_bucket{val="2",le="+Inf"} 1 ${mockedHrTimeMs}\n` + 'test_count{val="1"} 3\n' + + 'test_sum{val="1"} 175\n' + + 'test_bucket{val="1",le="1"} 0\n' + + 'test_bucket{val="1",le="10"} 1\n' + + 'test_bucket{val="1",le="100"} 2\n' + + 'test_bucket{val="1",le="+Inf"} 3\n' + + 'test_count{val="2"} 1\n' + + 'test_sum{val="2"} 5\n' + + 'test_bucket{val="2",le="1"} 0\n' + + 'test_bucket{val="2",le="10"} 1\n' + + 'test_bucket{val="2",le="100"} 1\n' + + 'test_bucket{val="2",le="+Inf"} 1\n' ); }); @@ -448,16 +448,16 @@ describe('PrometheusSerializer', () => { result, '# HELP test foobar\n' + '# TYPE test histogram\n' + - `test_count{val="1"} 3 ${mockedHrTimeMs}\n` + - `test_bucket{val="1",le="1"} 0 ${mockedHrTimeMs}\n` + - `test_bucket{val="1",le="10"} 1 ${mockedHrTimeMs}\n` + - `test_bucket{val="1",le="100"} 2 ${mockedHrTimeMs}\n` + - `test_bucket{val="1",le="+Inf"} 3 ${mockedHrTimeMs}\n` + - `test_count{val="2"} 1 ${mockedHrTimeMs}\n` + - `test_bucket{val="2",le="1"} 0 ${mockedHrTimeMs}\n` + - `test_bucket{val="2",le="10"} 1 ${mockedHrTimeMs}\n` + - `test_bucket{val="2",le="100"} 1 ${mockedHrTimeMs}\n` + - `test_bucket{val="2",le="+Inf"} 1 ${mockedHrTimeMs}\n` + 'test_count{val="1"} 3\n' + + 'test_bucket{val="1",le="1"} 0\n' + + 'test_bucket{val="1",le="10"} 1\n' + + 'test_bucket{val="1",le="100"} 2\n' + + 'test_bucket{val="1",le="+Inf"} 3\n' + + 'test_count{val="2"} 1\n' + + 'test_bucket{val="2",le="1"} 0\n' + + 'test_bucket{val="2",le="10"} 1\n' + + 'test_bucket{val="2",le="100"} 1\n' + + 'test_bucket{val="2",le="+Inf"} 1\n' ); }); }); @@ -518,7 +518,7 @@ describe('PrometheusSerializer', () => { '# HELP test_total description missing\n' + `# UNIT test_total ${unitOfMetric}\n` + '# TYPE test_total counter\n' + - `test_total 1 ${mockedHrTimeMs}\n` + 'test_total 1\n' ); }); @@ -533,7 +533,7 @@ describe('PrometheusSerializer', () => { serializedDefaultResource + '# HELP test_total description missing\n' + '# TYPE test_total counter\n' + - `test_total 1 ${mockedHrTimeMs}\n` + 'test_total 1\n' ); }); @@ -541,14 +541,14 @@ describe('PrometheusSerializer', () => { const serializer = new PrometheusSerializer(); const result = await getCounterResult('test', serializer); - assert.strictEqual(result, `test_total 1 ${mockedHrTimeMs}\n`); + assert.strictEqual(result, 'test_total 1\n'); }); it('should not rename metric of type counter when name contains _total suffix', async () => { const serializer = new PrometheusSerializer(); const result = await getCounterResult('test_total', serializer); - assert.strictEqual(result, `test_total 1 ${mockedHrTimeMs}\n`); + assert.strictEqual(result, 'test_total 1\n'); }); }); @@ -594,7 +594,7 @@ describe('PrometheusSerializer', () => { counter.add(1); }); - assert.strictEqual(result, `test_total 1 ${mockedHrTimeMs}\n`); + assert.strictEqual(result, 'test_total 1\n'); }); it('should serialize non-string attribute values in JSON representations', async () => { @@ -615,7 +615,7 @@ describe('PrometheusSerializer', () => { assert.strictEqual( result, - `test_total{true="true",false="false",array="[1,null,null,2]",object="{}",Infinity="null",NaN="null",null="null",undefined=""} 1 ${mockedHrTimeMs}\n` + 'test_total{true="true",false="false",array="[1,null,null,2]",object="{}",Infinity="null",NaN="null",null="null",undefined=""} 1\n' ); }); @@ -634,7 +634,7 @@ describe('PrometheusSerializer', () => { assert.strictEqual( result, - `test{foo1="bar1",foo2="bar2"} ${esac[1]} ${mockedHrTimeMs}\n` + `test{foo1="bar1",foo2="bar2"} ${esac[1]}\n` ); } }); @@ -662,7 +662,7 @@ describe('PrometheusSerializer', () => { 'backslashN="\u005c\u005c\u006e",' + 'backslashDoubleQuote="\u005c\u005c\u005c\u0022",' + 'backslashLineFeed="\u005c\u005c\u005c\u006e"' + - `} 1 ${mockedHrTimeMs}\n` + '} 1\n' ); }); @@ -678,10 +678,7 @@ describe('PrometheusSerializer', () => { } as unknown as MetricAttributes); }); - assert.strictEqual( - result, - `test_total{account_id="123456"} 1 ${mockedHrTimeMs}\n` - ); + assert.strictEqual(result, 'test_total{account_id="123456"} 1\n'); }); }); diff --git a/experimental/packages/opentelemetry-instrumentation-fetch/package.json b/experimental/packages/opentelemetry-instrumentation-fetch/package.json index 29479c7c8f..c8f1bfcb39 100644 --- a/experimental/packages/opentelemetry-instrumentation-fetch/package.json +++ b/experimental/packages/opentelemetry-instrumentation-fetch/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-fetch", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry fetch automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -18,7 +18,7 @@ "tdd": "karma start", "test:browser": "nyc karma start --single-run", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "node ../../../scripts/version-update.js", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, @@ -54,42 +54,45 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-zone": "1.13.0", - "@opentelemetry/propagator-b3": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/context-zone": "1.14.0", + "@opentelemetry/propagator-b3": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/instrumentation": "0.39.1", - "@opentelemetry/sdk-trace-web": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/sdk-trace-web": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-fetch", "sideEffects": false diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/README.md b/experimental/packages/opentelemetry-instrumentation-grpc/README.md index 2aa6038c03..8916054eb4 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/README.md +++ b/experimental/packages/opentelemetry-instrumentation-grpc/README.md @@ -5,7 +5,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This module provides automatic instrumentation for [`grpc`](https://grpc.github.io/grpc/node/) and [`@grpc/grpc-js`](https://grpc.io/blog/grpc-js-1.0/). Currently, version [`1.x`](https://www.npmjs.com/package/grpc?activeTab=versions) of `grpc` and version [`1.x`](https://www.npmjs.com/package/@grpc/grpc-js?activeTab=versions) of `@grpc/grpc-js` is supported. +This module provides automatic instrumentation for [`@grpc/grpc-js`](https://grpc.io/blog/grpc-js-1.0/). Currently, version [`1.x`](https://www.npmjs.com/package/@grpc/grpc-js?activeTab=versions) of `@grpc/grpc-js` is supported. For automatic instrumentation see the [@opentelemetry/sdk-trace-node](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) package. @@ -18,7 +18,7 @@ npm install --save @opentelemetry/instrumentation-grpc ## Usage -OpenTelemetry gRPC Instrumentation allows the user to automatically collect trace data and export them to the backend of choice, to give observability to distributed systems when working with [gRPC](https://www.npmjs.com/package/grpc) or ([grpc-js](https://www.npmjs.com/package/@grpc/grpc-js)). +OpenTelemetry gRPC Instrumentation allows the user to automatically collect trace data and export them to the backend of choice, to give observability to distributed systems when working with ([grpc-js](https://www.npmjs.com/package/@grpc/grpc-js)). To load a specific instrumentation (**gRPC** in this case), specify it in the Node Tracer's configuration. @@ -38,15 +38,15 @@ registerInstrumentations({ ``` -See [examples/grpc](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc) or [examples/grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) for examples. +See [examples/grpc-js](https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/grpc-js) for examples. ### gRPC Instrumentation Options gRPC instrumentation accepts the following configuration: -| Options | Type | Description | -|----------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| [`ignoreGrpcMethods`](https://github.com/open-telemetry/opentelemetry-js/blob/main/experimental/packages/opentelemetry-instrumentation-grpc/src/types.ts#L25) | `IgnoreMatcher[]` | gRPC instrumentation will not trace any methods that match anything in this list. You may pass a string (case-insensitive match), a `RegExp` object, or a filter function. | +| Options | Type | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| [`ignoreGrpcMethods`](https://github.com/open-telemetry/opentelemetry-js/blob/main/experimental/packages/opentelemetry-instrumentation-grpc/src/types.ts#L25) | `IgnoreMatcher[]` | gRPC instrumentation will not trace any methods that match anything in this list. You may pass a string (case-insensitive match), a `RegExp` object, or a filter function. | | [`metadataToSpanAttributes`](https://github.com/open-telemetry/opentelemetry-js/blob/main/experimental/packages/opentelemetry-instrumentation-grpc/src/types.ts#L27) | `object` | List of case insensitive metadata to convert to span attributes. Client and server (outgoing requests, incoming responses) metadata attributes will be converted to span attributes in the form of `rpc.{request\response}.metadata.metadata_key`, e.g. `rpc.response.metadata.date` | ## Useful links diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/package.json b/experimental/packages/opentelemetry-instrumentation-grpc/package.json index 1e63a6dd06..f8b247ffa6 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/package.json +++ b/experimental/packages/opentelemetry-instrumentation-grpc/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-grpc", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry grpc automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -16,10 +16,9 @@ "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "node ../../../scripts/version-update.js", - "peer-api-check": "node ../../../scripts/peer-api-check.js", - "postinstall": "node -e \"console.log(\\\"\\x1b[95m%s\\x1b[0m\\\", \\\"@opentelemetry/instrumentation-grpc - warning: The package 'grpc' (https://www.npmjs.com/package/grpc) is deprecated. It will no longer be instrumented in the next release of '@opentelemetry/instrumentation-grpc'. Please migrate to '@grpc/grpc-js' (https://www.npmjs.com/package/@grpc/grpc-js) to continue receiving telemetry.\\\");\"" + "peer-api-check": "node ../../../scripts/peer-api-check.js" }, "keywords": [ "opentelemetry", @@ -49,21 +48,21 @@ "@grpc/grpc-js": "^1.7.1", "@grpc/proto-loader": "^0.7.3", "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-async-hooks": "1.13.0", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/sdk-trace-node": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/context-async-hooks": "1.14.0", + "@opentelemetry/core": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/sdk-trace-node": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/semver": "7.3.9", - "@types/sinon": "10.0.13", + "@types/semver": "7.5.0", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "grpc": "1.24.11", - "mocha": "10.0.0", - "node-pre-gyp": "0.17.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "semver": "7.3.5", - "sinon": "15.0.0", + "semver": "7.5.3", + "sinon": "15.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, @@ -71,8 +70,9 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/instrumentation": "0.39.1", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-grpc", "sideEffects": false diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/clientUtils.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/clientUtils.ts index 8c98a10936..c61edf771b 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/clientUtils.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/clientUtils.ts @@ -14,27 +14,24 @@ * limitations under the License. */ -import { GrpcJsInstrumentation } from './'; -import type { GrpcClientFunc, SendUnaryDataCallback } from './types'; -import { - Span, - SpanStatusCode, - SpanStatus, - propagation, - context, -} from '@opentelemetry/api'; +import type { EventEmitter } from 'events'; +import type { Span, SpanStatus } from '@opentelemetry/api'; +import type { Client, Metadata, ServiceError } from '@grpc/grpc-js'; import type * as grpcJs from '@grpc/grpc-js'; +import type { GrpcJsInstrumentation } from './'; +import type { GrpcClientFunc, SendUnaryDataCallback } from './types'; +import type { metadataCaptureType } from '../internal-types'; + +import { SpanStatusCode, propagation, context } from '@opentelemetry/api'; +import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +import { CALL_SPAN_ENDED } from './serverUtils'; +import { AttributeNames } from '../enums/AttributeNames'; +import { GRPC_STATUS_CODE_OK } from '../status-code'; import { _grpcStatusCodeToSpanStatus, _grpcStatusCodeToOpenTelemetryStatusCode, _methodIsIgnored, } from '../utils'; -import { CALL_SPAN_ENDED } from './serverUtils'; -import { EventEmitter } from 'events'; -import { AttributeNames } from '../enums/AttributeNames'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; -import { metadataCaptureType } from '../internal-types'; -import { GRPC_STATUS_CODE_OK } from '../status-code'; /** * Parse a package method list and return a list of methods to patch @@ -42,7 +39,7 @@ import { GRPC_STATUS_CODE_OK } from '../status-code'; */ export function getMethodsToWrap( this: GrpcJsInstrumentation, - client: typeof grpcJs.Client, + client: typeof Client, methods: { [key: string]: { originalName?: string } } ): string[] { const methodList: string[] = []; @@ -74,8 +71,8 @@ export function makeGrpcClientRemoteCall( metadataCapture: metadataCaptureType, original: GrpcClientFunc, args: unknown[], - metadata: grpcJs.Metadata, - self: grpcJs.Client + metadata: Metadata, + self: Client ): (span: Span) => EventEmitter { /** * Patches a callback so that the current span for this trace is also ended @@ -86,8 +83,8 @@ export function makeGrpcClientRemoteCall( callback: SendUnaryDataCallback ) { const wrappedFn: SendUnaryDataCallback = ( - err: grpcJs.ServiceError | null, - res: any + err: ServiceError | null, + res?: ResponseType ) => { if (err) { if (err.code) { @@ -145,7 +142,7 @@ export function makeGrpcClientRemoteCall( } }; context.bind(context.active(), call); - call.on('error', (err: grpcJs.ServiceError) => { + call.on('error', (err: ServiceError) => { if (call[CALL_SPAN_ENDED]) { return; } @@ -185,22 +182,22 @@ export function makeGrpcClientRemoteCall( */ export function getMetadata( this: GrpcJsInstrumentation, - grpcClient: typeof grpcJs, original: GrpcClientFunc, - args: Array -): grpcJs.Metadata { - let metadata: grpcJs.Metadata; + grpcClient: typeof grpcJs, + args: Array +): Metadata { + let metadata: Metadata; // This finds an instance of Metadata among the arguments. // A possible issue that could occur is if the 'options' parameter from // the user contains an '_internal_repr' as well as a 'getMap' function, // but this is an extremely rare case. - let metadataIndex = args.findIndex((arg: unknown | grpcJs.Metadata) => { + let metadataIndex = args.findIndex((arg: unknown | Metadata) => { return ( arg && typeof arg === 'object' && - (arg as grpcJs.Metadata)['internalRepr'] && // changed from _internal_repr in grpc --> @grpc/grpc-js https://github.com/grpc/grpc-node/blob/95289edcaf36979cccf12797cc27335da8d01f03/packages/grpc-js/src/metadata.ts#L88 - typeof (arg as grpcJs.Metadata).getMap === 'function' + (arg as Metadata)['internalRepr'] && // changed from _internal_repr in grpc --> @grpc/grpc-js https://github.com/grpc/grpc-node/blob/95289edcaf36979cccf12797cc27335da8d01f03/packages/grpc-js/src/metadata.ts#L88 + typeof (arg as Metadata).getMap === 'function' ); }); if (metadataIndex === -1) { @@ -214,7 +211,7 @@ export function getMetadata( } args.splice(metadataIndex, 0, metadata); } else { - metadata = args[metadataIndex] as grpcJs.Metadata; + metadata = args[metadataIndex] as Metadata; } return metadata; } @@ -224,8 +221,8 @@ export function getMetadata( * grpc receiver * @param metadata */ -export function setSpanContext(metadata: grpcJs.Metadata): void { +export function setSpanContext(metadata: Metadata): void { propagation.inject(context.active(), metadata, { - set: (metadata, k, v) => metadata.set(k, v as grpcJs.MetadataValue), + set: (meta, k, v) => meta.set(k, v), }); } diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/index.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/index.ts index 6608521bd6..72ad45e3bd 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/index.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/index.ts @@ -14,15 +14,21 @@ * limitations under the License. */ +import type { EventEmitter } from 'events'; + +import type { + Server, + serialize as Serialize, + deserialize as Deserialize, + Metadata, + Client, + ServiceDefinition, + loadPackageDefinition, + GrpcObject, +} from '@grpc/grpc-js'; import type * as grpcJs from '@grpc/grpc-js'; -import { - InstrumentationNodeModuleDefinition, - isWrapped, -} from '@opentelemetry/instrumentation'; -import { InstrumentationBase } from '@opentelemetry/instrumentation'; -import { GrpcInstrumentationConfig } from '../types'; -import { metadataCaptureType } from '../internal-types'; -import { + +import type { ServerCallWithMeta, SendUnaryDataCallback, ServerRegisterFunction, @@ -31,6 +37,9 @@ import { PackageDefinition, GrpcClientFunc, } from './types'; +import type { GrpcInstrumentationConfig } from '../types'; +import type { metadataCaptureType } from '../internal-types'; + import { context, propagation, @@ -39,6 +48,13 @@ import { SpanKind, trace, } from '@opentelemetry/api'; +import { + InstrumentationNodeModuleDefinition, + isWrapped, + InstrumentationBase, +} from '@opentelemetry/instrumentation'; +import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; + import { shouldNotTraceServerCall, handleServerFunction, @@ -49,10 +65,8 @@ import { makeGrpcClientRemoteCall, getMetadata, } from './clientUtils'; -import { EventEmitter } from 'events'; import { _extractMethodAndService, metadataCapture, URI_REGEX } from '../utils'; import { AttributeValues } from '../enums/AttributeValues'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; export class GrpcJsInstrumentation extends InstrumentationBase { private _metadataCapture: metadataCaptureType; @@ -80,7 +94,7 @@ export class GrpcJsInstrumentation extends InstrumentationBase { this._wrap( moduleExports.Server.prototype, 'register', - this._patchServer() as any + this._patchServer() ); // Patch Client methods if (isWrapped(moduleExports.makeGenericClientConstructor)) { @@ -143,11 +157,11 @@ export class GrpcJsInstrumentation extends InstrumentationBase { const config = this.getConfig(); instrumentation._diag.debug('patched gRPC server'); return function register( - this: grpcJs.Server, + this: Server, name: string, handler: HandleCall, - serialize: grpcJs.serialize, - deserialize: grpcJs.deserialize, + serialize: Serialize, + deserialize: Deserialize, type: string ): boolean { const originalRegisterResult = originalRegister.call( @@ -171,13 +185,7 @@ export class GrpcJsInstrumentation extends InstrumentationBase { ) { const self = this; - if ( - shouldNotTraceServerCall( - call.metadata, - name, - config.ignoreGrpcMethods - ) - ) { + if (shouldNotTraceServerCall(name, config.ignoreGrpcMethods)) { return handleUntracedServerFunction( type, originalFunc, @@ -220,14 +228,13 @@ export class GrpcJsInstrumentation extends InstrumentationBase { instrumentation._wrap( call, 'sendMetadata', - originalSendMetadata => - (responseMetadata: grpcJs.Metadata) => { - instrumentation._metadataCapture.server.captureResponseMetadata( - span, - responseMetadata - ); - originalSendMetadata.call(call, responseMetadata); - } + originalSendMetadata => (responseMetadata: Metadata) => { + instrumentation._metadataCapture.server.captureResponseMetadata( + span, + responseMetadata + ); + originalSendMetadata.call(call, responseMetadata); + } ); context.with(trace.setSpan(context.active(), span), () => { @@ -246,7 +253,7 @@ export class GrpcJsInstrumentation extends InstrumentationBase { } ); return originalRegisterResult; - } as typeof grpcJs.Server.prototype.register; + } as typeof Server.prototype.register; }; } @@ -263,8 +270,8 @@ export class GrpcJsInstrumentation extends InstrumentationBase { return (original: MakeClientConstructorFunction) => { instrumentation._diag.debug('patching client'); return function makeClientConstructor( - this: typeof grpcJs.Client, - methods: grpcJs.ServiceDefinition, + this: typeof Client, + methods: ServiceDefinition, serviceName: string, options?: object ) { @@ -286,18 +293,18 @@ export class GrpcJsInstrumentation extends InstrumentationBase { private _patchLoadPackageDefinition(grpcClient: typeof grpcJs) { const instrumentation = this; instrumentation._diag.debug('patching loadPackageDefinition'); - return (original: typeof grpcJs.loadPackageDefinition) => { + return (original: typeof loadPackageDefinition) => { return function patchedLoadPackageDefinition( this: null, packageDef: PackageDefinition ) { - const result: grpcJs.GrpcObject = original.call( + const result: GrpcObject = original.call( this, packageDef - ) as grpcJs.GrpcObject; + ) as GrpcObject; instrumentation._patchLoadedPackage(grpcClient, result); return result; - } as typeof grpcJs.loadPackageDefinition; + } as typeof loadPackageDefinition; }; } @@ -310,13 +317,13 @@ export class GrpcJsInstrumentation extends InstrumentationBase { const instrumentation = this; return (original: GrpcClientFunc) => { instrumentation._diag.debug('patch all client methods'); - function clientMethodTrace(this: grpcJs.Client) { + function clientMethodTrace(this: Client) { const name = `grpc.${original.path.replace('/', '')}`; const args = [...arguments]; const metadata = getMetadata.call( instrumentation, - grpcClient, original, + grpcClient, args ); const { service, method } = _extractMethodAndService(original.path); @@ -369,7 +376,7 @@ export class GrpcJsInstrumentation extends InstrumentationBase { */ private _patchLoadedPackage( grpcClient: typeof grpcJs, - result: grpcJs.GrpcObject + result: GrpcObject ): void { Object.values(result).forEach(service => { if (typeof service === 'function') { @@ -380,11 +387,7 @@ export class GrpcJsInstrumentation extends InstrumentationBase { ); } else if (typeof service.format !== 'string') { // GrpcObject - this._patchLoadedPackage.call( - this, - grpcClient, - service as grpcJs.GrpcObject - ); + this._patchLoadedPackage.call(this, grpcClient, service as GrpcObject); } }); } diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/serverUtils.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/serverUtils.ts index ecfbc3d957..ad07828e68 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/serverUtils.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/serverUtils.ts @@ -20,21 +20,31 @@ * error event should be processed. */ -import { context, Span, SpanStatusCode } from '@opentelemetry/api'; -import type * as grpcJs from '@grpc/grpc-js'; +import type { + ClientReadableStream, + handleBidiStreamingCall, + handleServerStreamingCall, + handleUnaryCall, + ServiceError, +} from '@grpc/grpc-js'; +import type { Span } from '@opentelemetry/api'; + import type { ServerCallWithMeta, SendUnaryDataCallback, GrpcEmitter, HandleCall, } from './types'; +import type { IgnoreMatcher } from '../types'; + +import { context, SpanStatusCode } from '@opentelemetry/api'; +import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; + import { _grpcStatusCodeToOpenTelemetryStatusCode, _methodIsIgnored, } from '../utils'; -import { IgnoreMatcher } from '../types'; import { AttributeNames } from '../enums/AttributeNames'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; import { GRPC_STATUS_CODE_OK } from '../status-code'; export const CALL_SPAN_ENDED = Symbol('opentelemetry call span ended'); @@ -46,8 +56,8 @@ function serverStreamAndBidiHandler( span: Span, call: GrpcEmitter, original: - | grpcJs.handleBidiStreamingCall - | grpcJs.handleServerStreamingCall + | handleBidiStreamingCall + | handleServerStreamingCall ): void { let spanEnded = false; const endSpan = () => { @@ -79,7 +89,7 @@ function serverStreamAndBidiHandler( endSpan(); }); - call.on('error', (err: grpcJs.ServiceError) => { + call.on('error', (err: ServiceError) => { if (call[CALL_SPAN_ENDED]) { return; } @@ -111,11 +121,11 @@ function clientStreamAndUnaryHandler( call: ServerCallWithMeta, callback: SendUnaryDataCallback, original: - | grpcJs.handleUnaryCall - | grpcJs.ClientReadableStream + | handleUnaryCall + | ClientReadableStream ): void { const patchedCallback: SendUnaryDataCallback = ( - err: grpcJs.ServiceError | null, + err: ServiceError | null, value?: ResponseType ) => { if (err) { @@ -166,8 +176,8 @@ export function handleServerFunction( call, callback, originalFunc as - | grpcJs.handleUnaryCall - | grpcJs.ClientReadableStream + | handleUnaryCall + | ClientReadableStream ); case 'serverStream': case 'server_stream': @@ -176,8 +186,8 @@ export function handleServerFunction( span, call, originalFunc as - | grpcJs.handleBidiStreamingCall - | grpcJs.handleServerStreamingCall + | handleBidiStreamingCall + | handleServerStreamingCall ); default: break; @@ -212,7 +222,6 @@ export function handleUntracedServerFunction( * Returns true if the server call should not be traced. */ export function shouldNotTraceServerCall( - metadata: grpcJs.Metadata, methodName: string, ignoreGrpcMethods?: IgnoreMatcher[] ): boolean { diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/types.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/types.ts index e0ae1545d2..e9f15b45ab 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/types.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc-js/types.ts @@ -14,29 +14,38 @@ * limitations under the License. */ -import type * as grpcJs from '@grpc/grpc-js'; import type { EventEmitter } from 'events'; import type { CALL_SPAN_ENDED } from './serverUtils'; +import type { + requestCallback, + ServerUnaryCall, + ServerReadableStream, + ServerWritableStream, + ServerDuplexStream, + Metadata, + Server, + makeGenericClientConstructor, +} from '@grpc/grpc-js'; /** * Server Unary callback type */ -export type SendUnaryDataCallback = grpcJs.requestCallback; +export type SendUnaryDataCallback = requestCallback; /** * Intersection type of all grpc server call types */ export type ServerCall = - | grpcJs.ServerUnaryCall - | grpcJs.ServerReadableStream - | grpcJs.ServerWritableStream - | grpcJs.ServerDuplexStream; + | ServerUnaryCall + | ServerReadableStream + | ServerWritableStream + | ServerDuplexStream; /** * {@link ServerCall} ServerCall extended with misc. missing utility types */ export type ServerCallWithMeta = ServerCall & { - metadata: grpcJs.Metadata; + metadata: Metadata; }; /** @@ -53,10 +62,9 @@ export type GrpcClientFunc = ((...args: unknown[]) => GrpcEmitter) & { responseStream: boolean; }; -export type ServerRegisterFunction = typeof grpcJs.Server.prototype.register; +export type ServerRegisterFunction = typeof Server.prototype.register; -export type MakeClientConstructorFunction = - typeof grpcJs.makeGenericClientConstructor; +export type MakeClientConstructorFunction = typeof makeGenericClientConstructor; export type { HandleCall } from '@grpc/grpc-js/build/src/server-call'; export type { PackageDefinition } from '@grpc/grpc-js/build/src/make-client'; diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/clientUtils.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/clientUtils.ts deleted file mode 100644 index af56330a85..0000000000 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/clientUtils.ts +++ /dev/null @@ -1,202 +0,0 @@ -/* - * Copyright The OpenTelemetry Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import type * as grpcTypes from 'grpc'; -import type * as events from 'events'; -import { SendUnaryDataCallback, GrpcClientFunc } from './types'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; -import { context, Span, SpanStatusCode, propagation } from '@opentelemetry/api'; -import { - _grpcStatusCodeToSpanStatus, - _grpcStatusCodeToOpenTelemetryStatusCode, - findIndex, -} from '../utils'; -import { AttributeNames } from '../enums/AttributeNames'; -import { metadataCaptureType } from '../internal-types'; -import { GRPC_STATUS_CODE_OK } from '../status-code'; - -/** - * This method handles the client remote call - */ -export const makeGrpcClientRemoteCall = function ( - metadataCapture: metadataCaptureType, - original: GrpcClientFunc, - args: any[], - metadata: grpcTypes.Metadata, - self: grpcTypes.Client -) { - /** - * Patches a callback so that the current span for this trace is also ended - * when the callback is invoked. - */ - function patchedCallback( - span: Span, - callback: SendUnaryDataCallback, - _metadata: grpcTypes.Metadata - ) { - const wrappedFn = (err: grpcTypes.ServiceError, res: any) => { - if (err) { - if (err.code) { - span.setStatus(_grpcStatusCodeToSpanStatus(err.code)); - span.setAttribute(SemanticAttributes.RPC_GRPC_STATUS_CODE, err.code); - } - span.setAttributes({ - [AttributeNames.GRPC_ERROR_NAME]: err.name, - [AttributeNames.GRPC_ERROR_MESSAGE]: err.message, - }); - } else { - span.setStatus({ code: SpanStatusCode.UNSET }); - span.setAttribute( - SemanticAttributes.RPC_GRPC_STATUS_CODE, - GRPC_STATUS_CODE_OK - ); - } - - span.end(); - callback(err, res); - }; - return context.bind(context.active(), wrappedFn); - } - - return (span: Span) => { - if (!span) { - return original.apply(self, args); - } - - // if unary or clientStream - if (!original.responseStream) { - const callbackFuncIndex = findIndex(args, arg => { - return typeof arg === 'function'; - }); - if (callbackFuncIndex !== -1) { - args[callbackFuncIndex] = patchedCallback( - span, - args[callbackFuncIndex], - metadata - ); - } - } - - span.addEvent('sent'); - - setSpanContext(metadata); - const call = original.apply(self, args); - - (call as unknown as events.EventEmitter).on( - 'metadata', - responseMetadata => { - metadataCapture.client.captureResponseMetadata(span, responseMetadata); - } - ); - - // if server stream or bidi - if (original.responseStream) { - // Both error and status events can be emitted - // the first one emitted set spanEnded to true - let spanEnded = false; - const endSpan = () => { - if (!spanEnded) { - span.end(); - spanEnded = true; - } - }; - context.bind(context.active(), call); - (call as unknown as events.EventEmitter).on( - 'error', - (err: grpcTypes.ServiceError) => { - span.setStatus({ - code: _grpcStatusCodeToOpenTelemetryStatusCode(err.code), - message: err.message, - }); - span.setAttributes({ - [AttributeNames.GRPC_ERROR_NAME]: err.name, - [AttributeNames.GRPC_ERROR_MESSAGE]: err.message, - }); - if (err.code != null) { - span.setAttribute( - SemanticAttributes.RPC_GRPC_STATUS_CODE, - err.code - ); - } - endSpan(); - } - ); - - (call as unknown as events.EventEmitter).on( - 'status', - (status: grpcTypes.StatusObject) => { - span.setStatus({ code: SpanStatusCode.UNSET }); - span.setAttribute( - SemanticAttributes.RPC_GRPC_STATUS_CODE, - status.code - ); - endSpan(); - } - ); - } - return call; - }; -}; - -export const getMetadata = function ( - grpcClient: typeof grpcTypes, - original: GrpcClientFunc, - args: any[] -): grpcTypes.Metadata { - let metadata: grpcTypes.Metadata; - - // This finds an instance of Metadata among the arguments. - // A possible issue that could occur is if the 'options' parameter from - // the user contains an '_internal_repr' as well as a 'getMap' function, - // but this is an extremely rare case. - let metadataIndex = findIndex(args, (arg: any) => { - return ( - arg && - typeof arg === 'object' && - arg._internal_repr && - typeof arg.getMap === 'function' - ); - }); - if (metadataIndex === -1) { - metadata = new grpcClient.Metadata(); - if (!original.requestStream) { - // unary or server stream - if (args.length === 0) { - // No argument (for the gRPC call) was provided, so we will have to - // provide one, since metadata cannot be the first argument. - // The internal representation of argument defaults to undefined - // in its non-presence. - // Note that we can't pass null instead of undefined because the - // serializer within gRPC doesn't accept it. - args.push(undefined); - } - metadataIndex = 1; - } else { - // client stream or bidi - metadataIndex = 0; - } - args.splice(metadataIndex, 0, metadata); - } else { - metadata = args[metadataIndex]; - } - return metadata; -}; - -const setSpanContext = function (metadata: grpcTypes.Metadata): void { - propagation.inject(context.active(), metadata, { - set: (metadata, k, v) => metadata.set(k, v as grpcTypes.MetadataValue), - }); -}; diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/index.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/index.ts deleted file mode 100644 index fbeac0395e..0000000000 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/index.ts +++ /dev/null @@ -1,403 +0,0 @@ -/* - * Copyright The OpenTelemetry Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import type * as grpcTypes from 'grpc'; -import { - InstrumentationNodeModuleDefinition, - InstrumentationNodeModuleFile, - InstrumentationBase, - isWrapped, -} from '@opentelemetry/instrumentation'; -import { - GrpcInternalClientTypes, - ServerCallWithMeta, - SendUnaryDataCallback, - GrpcClientFunc, -} from './types'; -import { GrpcInstrumentationConfig } from '../types'; -import { metadataCaptureType } from '../internal-types'; -import { - context, - propagation, - SpanOptions, - SpanKind, - trace, -} from '@opentelemetry/api'; -import { - clientStreamAndUnaryHandler, - shouldNotTraceServerCall, - serverStreamAndBidiHandler, -} from './serverUtils'; -import { makeGrpcClientRemoteCall, getMetadata } from './clientUtils'; -import { - _extractMethodAndService, - _methodIsIgnored, - metadataCapture, - URI_REGEX, -} from '../utils'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; -import { AttributeValues } from '../enums/AttributeValues'; - -/** - * Holding reference to grpc module here to access constant of grpc modules - * instead of just requiring it avoid directly depending on grpc itself. - */ -let grpcClient: typeof grpcTypes; - -export class GrpcNativeInstrumentation extends InstrumentationBase< - typeof grpcTypes -> { - private _metadataCapture: metadataCaptureType; - - constructor( - name: string, - version: string, - config?: GrpcInstrumentationConfig - ) { - super(name, version, config); - this._metadataCapture = this._createMetadataCapture(); - } - - init() { - return [ - new InstrumentationNodeModuleDefinition( - 'grpc', - ['1.*'], - (moduleExports, version) => { - this._diag.debug(`Applying patch for grpc@${version}`); - grpcClient = moduleExports; - - if (isWrapped(moduleExports.Server.prototype.register)) { - this._unwrap(moduleExports.Server.prototype, 'register'); - } - this._wrap( - moduleExports.Server.prototype, - 'register', - this._patchServer() as any - ); - // Wrap the externally exported client constructor - if (isWrapped(moduleExports.makeGenericClientConstructor)) { - this._unwrap(moduleExports, 'makeGenericClientConstructor'); - } - this._wrap( - moduleExports, - 'makeGenericClientConstructor', - this._patchClient() - ); - return moduleExports; - }, - (moduleExports, version) => { - if (moduleExports === undefined) return; - this._diag.debug(`Removing patch for grpc@${version}`); - - this._unwrap(moduleExports.Server.prototype, 'register'); - }, - this._getInternalPatchs() - ), - ]; - } - - override getConfig(): GrpcInstrumentationConfig { - return super.getConfig(); - } - - override setConfig(config?: GrpcInstrumentationConfig): void { - super.setConfig(config); - this._metadataCapture = this._createMetadataCapture(); - } - - private _getInternalPatchs() { - const onPatch = ( - moduleExports: GrpcInternalClientTypes, - version?: string - ) => { - this._diag.debug(`Applying internal patch for grpc@${version}`); - if (isWrapped(moduleExports.makeClientConstructor)) { - this._unwrap(moduleExports, 'makeClientConstructor'); - } - this._wrap(moduleExports, 'makeClientConstructor', this._patchClient()); - return moduleExports; - }; - const onUnPatch = ( - moduleExports?: GrpcInternalClientTypes, - version?: string - ) => { - if (moduleExports === undefined) return; - this._diag.debug(`Removing internal patch for grpc@${version}`); - this._unwrap(moduleExports, 'makeClientConstructor'); - }; - return [ - new InstrumentationNodeModuleFile( - 'grpc/src/node/src/client.js', - ['0.13 - 1.6'], - onPatch, - onUnPatch - ), - new InstrumentationNodeModuleFile( - 'grpc/src/client.js', - ['^1.7'], - onPatch, - onUnPatch - ), - ]; - } - - private _patchServer() { - const instrumentation = this; - return (originalRegister: typeof grpcTypes.Server.prototype.register) => { - instrumentation._diag.debug('patched gRPC server'); - - return function register( - this: grpcTypes.Server & { handlers: any }, - name: string, - handler: grpcTypes.handleCall, - serialize: grpcTypes.serialize, - deserialize: grpcTypes.deserialize, - type: string - ) { - const originalResult = originalRegister.apply(this, arguments as any); - const handlerSet = this.handlers[name]; - - instrumentation._wrap( - handlerSet, - 'func', - (originalFunc: grpcTypes.handleCall) => { - return function func( - this: typeof handlerSet, - call: ServerCallWithMeta, - callback: SendUnaryDataCallback - ) { - const self = this; - if (shouldNotTraceServerCall.call(instrumentation, call, name)) { - switch (type) { - case 'unary': - case 'client_stream': - return (originalFunc as Function).call( - self, - call, - callback - ); - case 'server_stream': - case 'bidi': - return (originalFunc as Function).call(self, call); - default: - return originalResult; - } - } - const spanName = `grpc.${name.replace('/', '')}`; - const spanOptions: SpanOptions = { - kind: SpanKind.SERVER, - }; - - instrumentation._diag.debug( - `patch func: ${JSON.stringify(spanOptions)}` - ); - - context.with( - propagation.extract(context.active(), call.metadata, { - get: (metadata, key) => metadata.get(key).map(String), - keys: metadata => Object.keys(metadata.getMap()), - }), - () => { - const { service, method } = _extractMethodAndService(name); - - const span = instrumentation.tracer - .startSpan(spanName, spanOptions) - .setAttributes({ - [SemanticAttributes.RPC_SYSTEM]: - AttributeValues.RPC_SYSTEM, - [SemanticAttributes.RPC_METHOD]: method, - [SemanticAttributes.RPC_SERVICE]: service, - }); - - instrumentation._metadataCapture.server.captureRequestMetadata( - span, - call.metadata - ); - - instrumentation._wrap( - call as any, - 'sendMetadata', - originalSendMetadata => - (responseMetadata: grpcTypes.Metadata) => { - instrumentation._metadataCapture.server.captureResponseMetadata( - span, - responseMetadata - ); - originalSendMetadata.call(call, responseMetadata); - } - ); - - context.with(trace.setSpan(context.active(), span), () => { - switch (type) { - case 'unary': - case 'client_stream': - return clientStreamAndUnaryHandler( - span, - call, - callback, - originalFunc, - self - ); - case 'server_stream': - case 'bidi': - return serverStreamAndBidiHandler( - span, - call, - originalFunc, - self - ); - default: - break; - } - }); - } - ); - }; - } - ); - - return originalResult; - }; - }; - } - - private _patchClient() { - const instrumentation = this; - return (original: typeof grpcTypes.makeGenericClientConstructor): never => { - instrumentation._diag.debug('patching client'); - return function makeClientConstructor( - this: typeof grpcTypes.Client, - methods: { [key: string]: { originalName?: string } }, - _serviceName: string, - _options: grpcTypes.GenericClientOptions - ) { - const client = original.apply(this, arguments as any); - instrumentation._massWrap( - client.prototype as never, - instrumentation._getMethodsToWrap(client, methods) as never[], - instrumentation._getPatchedClientMethods() as any - ); - return client; - } as never; - }; - } - - private _getMethodsToWrap( - client: typeof grpcTypes.Client, - methods: { [key: string]: { originalName?: string } } - ): string[] { - const methodList: string[] = []; - - // For a method defined in .proto as "UnaryMethod" - Object.entries(methods).forEach(([name, { originalName }]) => { - if (!_methodIsIgnored(name, this.getConfig().ignoreGrpcMethods)) { - methodList.push(name); // adds camel case method name: "unaryMethod" - if ( - originalName && - // eslint-disable-next-line no-prototype-builtins - client.prototype.hasOwnProperty(originalName) && - name !== originalName // do not add duplicates - ) { - // adds original method name: "UnaryMethod", - methodList.push(originalName); - } - } - }); - return methodList; - } - - private _getPatchedClientMethods() { - const instrumentation = this; - return (original: GrpcClientFunc) => { - instrumentation._diag.debug('patch all client methods'); - function clientMethodTrace(this: grpcTypes.Client) { - const name = `grpc.${(original.path as string | undefined)?.replace( - '/', - '' - )}`; - const args = Array.prototype.slice.call(arguments); - const metadata = getMetadata(grpcClient, original, args); - const { service, method } = _extractMethodAndService(original.path); - const span = instrumentation.tracer - .startSpan(name, { - kind: SpanKind.CLIENT, - }) - .setAttributes({ - [SemanticAttributes.RPC_SYSTEM]: AttributeValues.RPC_SYSTEM, - [SemanticAttributes.RPC_METHOD]: method, - [SemanticAttributes.RPC_SERVICE]: service, - }); - // set net.peer.* from target (e.g., "dns:otel-productcatalogservice:8080") as a hint to APMs - const parsedUri = URI_REGEX.exec(this.getChannel().getTarget()); - if (parsedUri != null && parsedUri.groups != null) { - span.setAttribute( - SemanticAttributes.NET_PEER_NAME, - parsedUri.groups['name'] - ); - span.setAttribute( - SemanticAttributes.NET_PEER_PORT, - parseInt(parsedUri.groups['port']) - ); - } - - instrumentation._metadataCapture.client.captureRequestMetadata( - span, - metadata - ); - - return context.with(trace.setSpan(context.active(), span), () => - makeGrpcClientRemoteCall( - instrumentation._metadataCapture, - original, - args, - metadata, - this - )(span) - ); - } - Object.assign(clientMethodTrace, original); - return clientMethodTrace; - }; - } - - private _createMetadataCapture(): metadataCaptureType { - const config = this.getConfig(); - - return { - client: { - captureRequestMetadata: metadataCapture( - 'request', - config.metadataToSpanAttributes?.client?.requestMetadata ?? [] - ), - captureResponseMetadata: metadataCapture( - 'response', - config.metadataToSpanAttributes?.client?.responseMetadata ?? [] - ), - }, - server: { - captureRequestMetadata: metadataCapture( - 'request', - config.metadataToSpanAttributes?.server?.requestMetadata ?? [] - ), - captureResponseMetadata: metadataCapture( - 'response', - config.metadataToSpanAttributes?.server?.responseMetadata ?? [] - ), - }, - }; - } -} diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/serverUtils.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/serverUtils.ts deleted file mode 100644 index d97a947443..0000000000 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/serverUtils.ts +++ /dev/null @@ -1,136 +0,0 @@ -/* - * Copyright The OpenTelemetry Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import type * as grpcTypes from 'grpc'; -import { SendUnaryDataCallback, ServerCallWithMeta } from './types'; -import { GrpcNativeInstrumentation } from './'; -import { context, Span, SpanStatusCode } from '@opentelemetry/api'; -import { - _grpcStatusCodeToOpenTelemetryStatusCode, - _grpcStatusCodeToSpanStatus, - _methodIsIgnored, -} from '../utils'; -import { AttributeNames } from '../enums/AttributeNames'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; -import { GRPC_STATUS_CODE_OK } from '../status-code'; - -export const clientStreamAndUnaryHandler = function ( - span: Span, - call: ServerCallWithMeta, - callback: SendUnaryDataCallback, - original: - | grpcTypes.handleCall - | grpcTypes.ClientReadableStream, - self: {} -) { - function patchedCallback( - err: grpcTypes.ServiceError, - value: any, - trailer: grpcTypes.Metadata, - flags: grpcTypes.writeFlags - ) { - if (err) { - if (err.code) { - span.setStatus({ - code: _grpcStatusCodeToOpenTelemetryStatusCode(err.code), - message: err.message, - }); - span.setAttribute(SemanticAttributes.RPC_GRPC_STATUS_CODE, err.code); - } - span.setAttributes({ - [AttributeNames.GRPC_ERROR_NAME]: err.name, - [AttributeNames.GRPC_ERROR_MESSAGE]: err.message, - }); - } else { - span.setStatus({ code: SpanStatusCode.UNSET }); - span.setAttribute( - SemanticAttributes.RPC_GRPC_STATUS_CODE, - GRPC_STATUS_CODE_OK - ); - } - span.addEvent('received'); - - // end the span - span.end(); - return callback(err, value, trailer, flags); - } - - context.bind(context.active(), call); - return (original as Function).call(self, call, patchedCallback); -}; - -export const serverStreamAndBidiHandler = function ( - span: Span, - call: ServerCallWithMeta, - original: grpcTypes.handleCall, - self: {} -) { - let spanEnded = false; - const endSpan = () => { - if (!spanEnded) { - spanEnded = true; - span.end(); - } - }; - - context.bind(context.active(), call); - call.on('finish', () => { - span.setStatus(_grpcStatusCodeToSpanStatus(call.status.code)); - span.setAttribute( - SemanticAttributes.RPC_GRPC_STATUS_CODE, - call.status.code - ); - - // if there is an error, span will be ended on error event, otherwise end it here - if (call.status.code === 0) { - span.addEvent('finished'); - endSpan(); - } - }); - - call.on('error', (err: grpcTypes.ServiceError) => { - span.setStatus({ - code: _grpcStatusCodeToOpenTelemetryStatusCode(err.code), - message: err.message, - }); - span.addEvent('finished with error'); - span.setAttributes({ - [AttributeNames.GRPC_ERROR_NAME]: err.name, - [AttributeNames.GRPC_ERROR_MESSAGE]: err.message, - }); - if (err.code != null) { - span.setAttribute(SemanticAttributes.RPC_GRPC_STATUS_CODE, err.code); - } - endSpan(); - }); - - return (original as any).call(self, call); -}; - -/** - * Returns true if the server call should not be traced. - */ -export const shouldNotTraceServerCall = function ( - this: GrpcNativeInstrumentation, - call: ServerCallWithMeta, - name: string -): boolean { - const parsedName = name.split('/'); - return _methodIsIgnored( - parsedName[parsedName.length - 1] || name, - this.getConfig().ignoreGrpcMethods - ); -}; diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/types.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/types.ts deleted file mode 100644 index ef3e4ef9bb..0000000000 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/grpc/types.ts +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright The OpenTelemetry Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import type * as grpcTypes from 'grpc'; -import * as events from 'events'; - -export type SendUnaryDataCallback = ( - error: grpcTypes.ServiceError | null, - value?: any, - trailer?: grpcTypes.Metadata, - flags?: grpcTypes.writeFlags -) => void; - -interface GrpcStatus { - code: number; - details: string; - metadata: grpcTypes.Metadata; -} - -export type ServerCall = - | typeof grpcTypes.ServerUnaryCall - | typeof grpcTypes.ServerReadableStream - | typeof grpcTypes.ServerWritableStream - | typeof grpcTypes.ServerDuplexStream; - -export type ServerCallWithMeta = ServerCall & { - metadata: grpcTypes.Metadata; - status: GrpcStatus; - request?: unknown; -} & events.EventEmitter; - -export type GrpcClientFunc = typeof Function & { - path: string; - requestStream: boolean; - responseStream: boolean; -}; - -export type GrpcInternalClientTypes = { - makeClientConstructor: typeof grpcTypes.makeGenericClientConstructor; -}; diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/index.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/index.ts index 26ea0efdb4..5e1bb947d1 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/index.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/src/index.ts @@ -15,4 +15,4 @@ */ export * from './instrumentation'; -export { GrpcInstrumentationConfig } from './types'; +export type { GrpcInstrumentationConfig } from './types'; diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/instrumentation.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/instrumentation.ts index c2a8946f97..bb6e095cf7 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/instrumentation.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/src/instrumentation.ts @@ -14,17 +14,16 @@ * limitations under the License. */ -import { GrpcInstrumentationConfig } from './types'; +import type { GrpcInstrumentationConfig } from './types'; +import type { MeterProvider, TracerProvider } from '@opentelemetry/api'; + import { VERSION } from './version'; -import { GrpcNativeInstrumentation } from './grpc'; import { GrpcJsInstrumentation } from './grpc-js'; -import * as api from '@opentelemetry/api'; /** The metadata key under which span context is stored as a binary value. */ export const GRPC_TRACE_KEY = 'grpc-trace-bin'; export class GrpcInstrumentation { - private _grpcNativeInstrumentation: GrpcNativeInstrumentation; private _grpcJsInstrumentation: GrpcJsInstrumentation; public readonly instrumentationName: string = @@ -37,16 +36,10 @@ export class GrpcInstrumentation { this.instrumentationVersion, config ); - this._grpcNativeInstrumentation = new GrpcNativeInstrumentation( - this.instrumentationName, - this.instrumentationVersion, - config - ); } public setConfig(config?: GrpcInstrumentationConfig) { this._grpcJsInstrumentation.setConfig(config); - this._grpcNativeInstrumentation.setConfig(config); } /** @@ -66,29 +59,25 @@ export class GrpcInstrumentation { enable() { this._grpcJsInstrumentation.enable(); - this._grpcNativeInstrumentation.enable(); } disable() { this._grpcJsInstrumentation.disable(); - this._grpcNativeInstrumentation.disable(); } /** * Sets MeterProvider to this plugin * @param meterProvider */ - public setMeterProvider(meterProvider: api.MeterProvider) { + public setMeterProvider(meterProvider: MeterProvider) { this._grpcJsInstrumentation.setMeterProvider(meterProvider); - this._grpcNativeInstrumentation.setMeterProvider(meterProvider); } /** * Sets TraceProvider to this plugin * @param tracerProvider */ - public setTracerProvider(tracerProvider: api.TracerProvider) { + public setTracerProvider(tracerProvider: TracerProvider) { this._grpcJsInstrumentation.setTracerProvider(tracerProvider); - this._grpcNativeInstrumentation.setTracerProvider(tracerProvider); } } diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/internal-types.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/internal-types.ts index ebc17ae1d4..50d337b636 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/internal-types.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/src/internal-types.ts @@ -14,29 +14,16 @@ * limitations under the License. */ -import { Span } from '@opentelemetry/api'; -import type * as grpcJsTypes from '@grpc/grpc-js'; -import type * as grpcTypes from 'grpc'; +import type { Span } from '@opentelemetry/api'; +import type { Metadata } from '@grpc/grpc-js'; export type metadataCaptureType = { client: { - captureRequestMetadata: ( - span: Span, - metadata: grpcJsTypes.Metadata | grpcTypes.Metadata - ) => void; - captureResponseMetadata: ( - span: Span, - metadata: grpcJsTypes.Metadata | grpcTypes.Metadata - ) => void; + captureRequestMetadata: (span: Span, metadata: Metadata) => void; + captureResponseMetadata: (span: Span, metadata: Metadata) => void; }; server: { - captureRequestMetadata: ( - span: Span, - metadata: grpcJsTypes.Metadata | grpcTypes.Metadata - ) => void; - captureResponseMetadata: ( - span: Span, - metadata: grpcJsTypes.Metadata | grpcTypes.Metadata - ) => void; + captureRequestMetadata: (span: Span, metadata: Metadata) => void; + captureResponseMetadata: (span: Span, metadata: Metadata) => void; }; }; diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/src/utils.ts b/experimental/packages/opentelemetry-instrumentation-grpc/src/utils.ts index 8d031107dd..3cfbfc1f55 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/src/utils.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/src/utils.ts @@ -14,10 +14,10 @@ * limitations under the License. */ -import { SpanStatusCode, SpanStatus, Span } from '@opentelemetry/api'; -import type * as grpcTypes from 'grpc'; -import type * as grpcJsTypes from '@grpc/grpc-js'; -import { IgnoreMatcher } from './types'; +import { SpanStatusCode } from '@opentelemetry/api'; +import type { SpanStatus, Span } from '@opentelemetry/api'; +import type { status as GrpcStatus, Metadata } from '@grpc/grpc-js'; +import type { IgnoreMatcher } from './types'; // e.g., "dns:otel-productcatalogservice:8080" or "otel-productcatalogservice:8080" or "127.0.0.1:8080" export const URI_REGEX = @@ -26,7 +26,7 @@ export const URI_REGEX = // Equivalent to lodash _.findIndex export const findIndex: (args: T[], fn: (arg: T) => boolean) => number = ( args, - fn: Function + fn ) => { let index = -1; for (const arg of args) { @@ -43,7 +43,7 @@ export const findIndex: (args: T[], fn: (arg: T) => boolean) => number = ( * @param status */ export const _grpcStatusCodeToOpenTelemetryStatusCode = ( - status?: grpcTypes.status | grpcJsTypes.status + status?: GrpcStatus ): SpanStatusCode => { if (status !== undefined && status === 0) { return SpanStatusCode.UNSET; @@ -128,7 +128,7 @@ export function metadataCapture( ]) ); - return (span: Span, metadata: grpcJsTypes.Metadata | grpcTypes.Metadata) => { + return (span: Span, metadata: Metadata) => { for (const [ capturedMetadata, normalizedMetadata, @@ -137,7 +137,7 @@ export function metadataCapture( .get(capturedMetadata) .flatMap(value => (typeof value === 'string' ? value.toString() : [])); - if (metadataValues === undefined || metadataValues === []) { + if (metadataValues === undefined || metadataValues.length === 0) { continue; } diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/test/grpc-js.test.ts b/experimental/packages/opentelemetry-instrumentation-grpc/test/grpc-js.test.ts index 624d267a21..b7e2210298 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/test/grpc-js.test.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/test/grpc-js.test.ts @@ -21,8 +21,8 @@ const instrumentation = new GrpcInstrumentation(); instrumentation.enable(); instrumentation.disable(); -import * as grpcJs from '@grpc/grpc-js'; +import '@grpc/grpc-js'; describe('#grpc-js', () => { - runTests(instrumentation, 'grpc', grpcJs, 12346); + runTests(instrumentation, 'grpc', 12346); }); diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/test/helper.ts b/experimental/packages/opentelemetry-instrumentation-grpc/test/helper.ts index 58855a6a5f..693cdeab46 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/test/helper.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/test/helper.ts @@ -32,8 +32,21 @@ import { } from '@opentelemetry/sdk-trace-base'; import * as assert from 'assert'; import * as protoLoader from '@grpc/proto-loader'; -import type * as grpcNapi from 'grpc'; -import type * as grpcJs from '@grpc/grpc-js'; +import { + status as GrpcStatus, + requestCallback, + ServerUnaryCall, + ServerReadableStream, + ServerWritableStream, + ServerDuplexStream, + Client, + Metadata, + ServiceError, + Server, + ServerCredentials, + credentials, + loadPackageDefinition, +} from '@grpc/grpc-js'; import { assertPropagation, assertSpan } from './utils/assertionUtils'; import { promisify } from 'util'; import type { GrpcInstrumentation } from '../src'; @@ -54,25 +67,7 @@ interface TestRequestResponse { num: number; } -type ServiceError = grpcNapi.ServiceError | grpcJs.ServiceError; -type Client = grpcNapi.Client | grpcJs.Client; -type Server = grpcNapi.Server | grpcJs.Server; -type ServerUnaryCall = - | grpcNapi.ServerUnaryCall - | grpcJs.ServerUnaryCall; -type RequestCallback = grpcJs.requestCallback; -type ServerReadableStream = - | grpcNapi.ServerReadableStream - | grpcJs.ServerReadableStream; -type ServerWriteableStream = - | grpcNapi.ServerWriteableStream - | grpcJs.ServerWritableStream; -type ServerDuplexStream = - | grpcNapi.ServerDuplexStream - | grpcJs.ServerDuplexStream; -type Metadata = grpcNapi.Metadata | grpcJs.Metadata; - -type TestGrpcClient = (typeof grpcJs | typeof grpcNapi)['Client'] & { +type TestGrpcClient = Client & { unaryMethodWithMetadata: any; unaryMethod: any; UnaryMethod: any; @@ -117,10 +112,9 @@ const checkEqual = export const runTests = ( plugin: GrpcInstrumentation, moduleName: string, - grpc: typeof grpcNapi | typeof grpcJs, grpcPort: number ) => { - const MAX_ERROR_STATUS = grpc.status.UNAUTHENTICATED; + const MAX_ERROR_STATUS = GrpcStatus.UNAUTHENTICATED; const grpcClient = { unaryMethodWithMetadata: ( @@ -146,7 +140,7 @@ export const runTests = ( unaryMethod: ( client: TestGrpcClient, request: TestRequestResponse, - metadata: Metadata = new grpc.Metadata() + metadata = new Metadata() ): Promise => { return new Promise((resolve, reject) => { return client.unaryMethod( @@ -166,7 +160,7 @@ export const runTests = ( UnaryMethod: ( client: TestGrpcClient, request: TestRequestResponse, - metadata: Metadata = new grpc.Metadata() + metadata = new Metadata() ): Promise => { return new Promise((resolve, reject) => { return client.UnaryMethod( @@ -186,7 +180,7 @@ export const runTests = ( camelCaseMethod: ( client: TestGrpcClient, request: TestRequestResponse, - metadata: Metadata = new grpc.Metadata() + metadata = new Metadata() ): Promise => { return new Promise((resolve, reject) => { return client.camelCaseMethod( @@ -206,7 +200,7 @@ export const runTests = ( clientStreamMethod: ( client: TestGrpcClient, request: TestRequestResponse[], - metadata: Metadata = new grpc.Metadata() + metadata = new Metadata() ): Promise => { return new Promise((resolve, reject) => { const writeStream = client.clientStreamMethod( @@ -230,7 +224,7 @@ export const runTests = ( serverStreamMethod: ( client: TestGrpcClient, request: TestRequestResponse, - metadata: Metadata = new grpc.Metadata() + metadata = new Metadata() ): Promise => { return new Promise((resolve, reject) => { const result: TestRequestResponse[] = []; @@ -251,7 +245,7 @@ export const runTests = ( bidiStreamMethod: ( client: TestGrpcClient, request: TestRequestResponse[], - metadata: Metadata = new grpc.Metadata() + metadata = new Metadata() ): Promise => { return new Promise((resolve, reject) => { const result: TestRequestResponse[] = []; @@ -289,11 +283,8 @@ export const runTests = ( return result; }; - async function startServer( - grpc: typeof grpcJs | typeof grpcNapi, - proto: any - ) { - const server = new grpc.Server(); + async function startServer(proto: any) { + const server = new Server(); function getError(msg: string, code: number): ServiceError | null { const err: ServiceError = { @@ -302,6 +293,7 @@ export const runTests = ( message: msg, code, details: msg, + metadata: new Metadata(), }; return err; } @@ -313,56 +305,49 @@ export const runTests = ( // This method returns the request unaryMethodWithMetadata( - call: ServerUnaryCall, - callback: RequestCallback + call: ServerUnaryCall, + callback: requestCallback ) { - const serverMetadata: any = new grpc.Metadata(); + const serverMetadata = new Metadata(); serverMetadata.add('server_metadata_key', 'server_metadata_value'); call.sendMetadata(serverMetadata); call.request.num <= MAX_ERROR_STATUS ? callback( - getError( - 'Unary Method with Metadata Error', - call.request.num - ) as grpcJs.ServiceError + getError('Unary Method with Metadata Error', call.request.num) ) : callback(null, { num: call.request.num }); }, // This method returns the request - unaryMethod(call: ServerUnaryCall, callback: RequestCallback) { + unaryMethod( + call: ServerUnaryCall, + callback: requestCallback + ) { call.request.num <= MAX_ERROR_STATUS - ? callback( - getError( - 'Unary Method Error', - call.request.num - ) as grpcJs.ServiceError - ) + ? callback(getError('Unary Method Error', call.request.num)) : callback(null, { num: call.request.num }); }, // This method returns the request - camelCaseMethod(call: ServerUnaryCall, callback: RequestCallback) { + camelCaseMethod( + call: ServerUnaryCall, + callback: requestCallback + ) { call.request.num <= MAX_ERROR_STATUS - ? callback( - getError( - 'Unary Method Error', - call.request.num - ) as grpcJs.ServiceError - ) + ? callback(getError('Unary Method Error', call.request.num)) : callback(null, { num: call.request.num }); }, // This method sums the requests clientStreamMethod( - call: ServerReadableStream, - callback: RequestCallback + call: ServerReadableStream, + callback: requestCallback ) { let sum = 0; let hasError = false; - let code = grpc.status.OK; + let code = GrpcStatus.OK; call.on('data', (data: TestRequestResponse) => { sum += data.num; if (data.num <= MAX_ERROR_STATUS) { @@ -379,7 +364,7 @@ export const runTests = ( // This method returns an array that replicates the request, request.num of // times - serverStreamMethod: (call: ServerWriteableStream) => { + serverStreamMethod: (call: ServerWritableStream) => { const result = replicate(call.request); if (call.request.num <= MAX_ERROR_STATUS) { @@ -396,7 +381,7 @@ export const runTests = ( }, // This method returns the request - bidiStreamMethod: (call: ServerDuplexStream) => { + bidiStreamMethod: (call: ServerDuplexStream) => { call.on('data', (data: TestRequestResponse) => { if (data.num <= MAX_ERROR_STATUS) { call.emit( @@ -416,16 +401,16 @@ export const runTests = ( await bindAwait.call( server, 'localhost:' + grpcPort, - grpc.ServerCredentials.createInsecure() as grpcJs.ServerCredentials + ServerCredentials.createInsecure() ); server.start(); return server; } - function createClient(grpc: typeof grpcJs | typeof grpcNapi, proto: any) { + function createClient(proto: any) { return new proto.GrpcTester( 'localhost:' + grpcPort, - grpc.credentials.createInsecure() + credentials.createInsecure() ); } @@ -514,7 +499,7 @@ export const runTests = ( ) => { const validations = { name: `grpc.pkg_test.GrpcTester/${methodName}`, - status: grpc.status.OK, + status: GrpcStatus.OK, netPeerName: 'localhost', netPeerPort: grpcPort, }; @@ -544,7 +529,7 @@ export const runTests = ( }; const ClientServerValidationTest = ( - method: typeof methodList[0], + method: (typeof methodList)[0], provider: NodeTracerProvider, checkSpans = true, attributesValidation?: { @@ -588,7 +573,7 @@ export const runTests = ( }; const ErrorValidationTest = ( - method: typeof methodList[0], + method: (typeof methodList)[0], provider: NodeTracerProvider, checkSpans = true, attributesValidation?: { @@ -646,7 +631,7 @@ export const runTests = ( }; const runTestWithAttributeValidation = ( - method: typeof methodList[0], + method: (typeof methodList)[0], provider: NodeTracerProvider, checkSpans = true, attributesValidation: { @@ -664,7 +649,7 @@ export const runTests = ( }; const runTest = ( - method: typeof methodList[0], + method: (typeof methodList)[0], provider: NodeTracerProvider, checkSpans = true ) => { @@ -678,7 +663,7 @@ export const runTests = ( request instanceof Array ? [{ num: code }, ...request] : { num: code }; const runErrorTest = ( - method: typeof methodList[0], + method: (typeof methodList)[0], key: string, errorCode: number, provider: NodeTracerProvider @@ -761,7 +746,7 @@ export const runTests = ( }); }; - const runClientMethodTest = (method: typeof methodList[0]) => { + const runClientMethodTest = (method: (typeof methodList)[0]) => { it(`should assign original properties for grpc remote method ${method.methodName}`, async () => { const patchedClientMethod = (client as any)[method.methodName]; const properties = Object.keys(patchedClientMethod); @@ -781,10 +766,10 @@ export const runTests = ( plugin.enable(); const packageDefinition = await protoLoader.load(PROTO_PATH, options); - const proto = grpc.loadPackageDefinition(packageDefinition).pkg_test; + const proto = loadPackageDefinition(packageDefinition).pkg_test; - server = await startServer(grpc, proto); - client = createClient(grpc, proto); + server = await startServer(proto); + client = createClient(proto); }); after(done => { @@ -803,9 +788,9 @@ export const runTests = ( methodList.forEach(method => { describe(`Test error raising for grpc remote ${method.description}`, () => { - Object.keys(grpc.status).forEach((statusKey: string) => { - const errorCode = Number(grpc.status[statusKey as any]); - if (errorCode > grpc.status.OK) { + Object.keys(GrpcStatus).forEach((statusKey: string) => { + const errorCode = Number(GrpcStatus[statusKey as any]); + if (errorCode > GrpcStatus.OK) { runErrorTest(method, statusKey, errorCode, provider); } }); @@ -824,10 +809,10 @@ export const runTests = ( plugin.disable(); const packageDefinition = await protoLoader.load(PROTO_PATH, options); - const proto = grpc.loadPackageDefinition(packageDefinition).pkg_test; + const proto = loadPackageDefinition(packageDefinition).pkg_test; - server = await startServer(grpc, proto); - client = createClient(grpc, proto); + server = await startServer(proto); + client = createClient(proto); }); after(done => { @@ -858,10 +843,10 @@ export const runTests = ( plugin.enable(); const packageDefinition = await protoLoader.load(PROTO_PATH, options); - const proto = grpc.loadPackageDefinition(packageDefinition).pkg_test; + const proto = loadPackageDefinition(packageDefinition).pkg_test; - server = await startServer(grpc, proto); - client = createClient(grpc, proto); + server = await startServer(proto); + client = createClient(proto); }); after(done => { @@ -902,10 +887,10 @@ export const runTests = ( plugin.enable(); const packageDefinition = await protoLoader.load(PROTO_PATH, options); - const proto = grpc.loadPackageDefinition(packageDefinition).pkg_test; + const proto = loadPackageDefinition(packageDefinition).pkg_test; - server = await startServer(grpc, proto); - client = createClient(grpc, proto); + server = await startServer(proto); + client = createClient(proto); }); after(done => { @@ -932,9 +917,9 @@ export const runTests = ( plugin.enable(); const packageDefinition = await protoLoader.load(PROTO_PATH, options); - const proto = grpc.loadPackageDefinition(packageDefinition).pkg_test; + const proto = loadPackageDefinition(packageDefinition).pkg_test; - client = createClient(grpc, proto); + client = createClient(proto); }); after(done => { @@ -954,7 +939,7 @@ export const runTests = ( const provider = new NodeTracerProvider(); provider.addSpanProcessor(new SimpleSpanProcessor(memoryExporter)); - const clientMetadata: Metadata = new grpc.Metadata(); + const clientMetadata = new Metadata(); clientMetadata.add('client_metadata_key', 'client_metadata_value'); const customMetadataMethod: TestGrpcCall = { @@ -989,10 +974,10 @@ export const runTests = ( plugin.enable(); const packageDefinition = await protoLoader.load(PROTO_PATH, options); - const proto = grpc.loadPackageDefinition(packageDefinition).pkg_test; + const proto = loadPackageDefinition(packageDefinition).pkg_test; - server = await startServer(grpc, proto); - client = createClient(grpc, proto); + server = await startServer(proto); + client = createClient(proto); }); after(done => { diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/test/utils/assertionUtils.ts b/experimental/packages/opentelemetry-instrumentation-grpc/test/utils/assertionUtils.ts index 24d4bf7af8..1b7966639e 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/test/utils/assertionUtils.ts +++ b/experimental/packages/opentelemetry-instrumentation-grpc/test/utils/assertionUtils.ts @@ -16,8 +16,7 @@ import { SpanKind, SpanStatusCode } from '@opentelemetry/api'; import * as assert from 'assert'; -import type * as grpc from 'grpc'; -import type * as grpcJs from '@grpc/grpc-js'; +import type { status as GrpcStatus } from '@grpc/grpc-js'; import { ReadableSpan } from '@opentelemetry/sdk-trace-base'; import { hrTimeToMilliseconds, @@ -26,7 +25,7 @@ import { import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; export const grpcStatusCodeToOpenTelemetryStatusCode = ( - status: grpc.status | grpcJs.status + status: GrpcStatus ): SpanStatusCode => { if (status !== undefined && status === 0) { return SpanStatusCode.UNSET; @@ -40,7 +39,7 @@ export const assertSpan = ( kind: SpanKind, validations: { name: string; - status: grpc.status | grpcJs.status; + status: GrpcStatus; netPeerName?: string; netPeerPort?: number; } diff --git a/experimental/packages/opentelemetry-instrumentation-http/package.json b/experimental/packages/opentelemetry-instrumentation-http/package.json index b46eef6a18..c39d34ace9 100644 --- a/experimental/packages/opentelemetry-instrumentation-http/package.json +++ b/experimental/packages/opentelemetry-instrumentation-http/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-http", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry http/https automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -16,7 +16,7 @@ "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "node ../../../scripts/version-update.js", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, @@ -46,25 +46,27 @@ }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-async-hooks": "1.13.0", - "@opentelemetry/sdk-metrics": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/sdk-trace-node": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/context-async-hooks": "1.14.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/sdk-trace-node": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", "@types/request-promise-native": "1.0.18", - "@types/semver": "7.3.9", - "@types/sinon": "10.0.13", - "@types/superagent": "4.1.13", + "@types/semver": "7.5.0", + "@types/sinon": "10.0.15", + "@types/superagent": "4.1.18", "axios": "1.4.0", "codecov": "3.8.3", - "mocha": "10.0.0", - "nock": "13.0.11", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", + "nock": "13.3.1", "nyc": "15.1.0", "request": "2.88.2", "request-promise-native": "1.0.9", - "sinon": "15.0.0", - "superagent": "8.0.0", + "sinon": "15.1.2", + "superagent": "8.0.9", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, @@ -72,10 +74,11 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/instrumentation": "0.39.1", - "@opentelemetry/semantic-conventions": "1.13.0", - "semver": "^7.3.5" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "semver": "^7.5.1", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http", "sideEffects": false diff --git a/experimental/packages/opentelemetry-instrumentation-http/src/utils.ts b/experimental/packages/opentelemetry-instrumentation-http/src/utils.ts index a563e29471..a70dd3de85 100644 --- a/experimental/packages/opentelemetry-instrumentation-http/src/utils.ts +++ b/experimental/packages/opentelemetry-instrumentation-http/src/utils.ts @@ -403,11 +403,12 @@ export const getOutgoingRequestAttributesOnResponse = ( response: IncomingMessage ): SpanAttributes => { const { statusCode, statusMessage, httpVersion, socket } = response; - const { remoteAddress, remotePort } = socket; - const attributes: SpanAttributes = { - [SemanticAttributes.NET_PEER_IP]: remoteAddress, - [SemanticAttributes.NET_PEER_PORT]: remotePort, - }; + const attributes: SpanAttributes = {}; + if (socket) { + const { remoteAddress, remotePort } = socket; + attributes[SemanticAttributes.NET_PEER_IP] = remoteAddress; + attributes[SemanticAttributes.NET_PEER_PORT] = remotePort; + } setResponseContentLengthAttribute(response, attributes); if (statusCode) { @@ -529,17 +530,20 @@ export const getIncomingRequestAttributesOnResponse = ( // since it may be detached from the response object in keep-alive mode const { socket } = request; const { statusCode, statusMessage } = response; - const { localAddress, localPort, remoteAddress, remotePort } = socket; - const rpcMetadata = getRPCMetadata(context.active()); - const attributes: SpanAttributes = { - [SemanticAttributes.NET_HOST_IP]: localAddress, - [SemanticAttributes.NET_HOST_PORT]: localPort, - [SemanticAttributes.NET_PEER_IP]: remoteAddress, - [SemanticAttributes.NET_PEER_PORT]: remotePort, - [SemanticAttributes.HTTP_STATUS_CODE]: statusCode, - [AttributeNames.HTTP_STATUS_TEXT]: (statusMessage || '').toUpperCase(), - }; + const rpcMetadata = getRPCMetadata(context.active()); + const attributes: SpanAttributes = {}; + if (socket) { + const { localAddress, localPort, remoteAddress, remotePort } = socket; + attributes[SemanticAttributes.NET_HOST_IP] = localAddress; + attributes[SemanticAttributes.NET_HOST_PORT] = localPort; + attributes[SemanticAttributes.NET_PEER_IP] = remoteAddress; + attributes[SemanticAttributes.NET_PEER_PORT] = remotePort; + } + attributes[SemanticAttributes.HTTP_STATUS_CODE] = statusCode; + attributes[AttributeNames.HTTP_STATUS_TEXT] = ( + statusMessage || '' + ).toUpperCase(); if (rpcMetadata?.type === RPCType.HTTP && rpcMetadata.route !== undefined) { attributes[SemanticAttributes.HTTP_ROUTE] = rpcMetadata.route; diff --git a/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json b/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json index 4bf5707caf..4eb469da07 100644 --- a/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json +++ b/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-xml-http-request", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry XMLHttpRequest automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -18,7 +18,7 @@ "tdd": "karma start", "test:browser": "nyc karma start --single-run", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "node ../../../scripts/version-update.js", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, @@ -54,42 +54,45 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-zone": "1.13.0", - "@opentelemetry/propagator-b3": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/context-zone": "1.14.0", + "@opentelemetry/propagator-b3": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/instrumentation": "0.39.1", - "@opentelemetry/sdk-trace-web": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/sdk-trace-web": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-xml-http-request", "sideEffects": false diff --git a/experimental/packages/opentelemetry-instrumentation/package.json b/experimental/packages/opentelemetry-instrumentation/package.json index 4164952821..944258ad8f 100644 --- a/experimental/packages/opentelemetry-instrumentation/package.json +++ b/experimental/packages/opentelemetry-instrumentation/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation", - "version": "0.39.1", + "version": "0.40.0", "description": "Base class for node which OpenTelemetry instrumentation modules extend", "author": "OpenTelemetry Authors", "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation", @@ -54,7 +54,7 @@ "test:browser": "nyc karma start --single-run", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "node ../../../scripts/version-update.js", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, @@ -72,42 +72,45 @@ }, "dependencies": { "@types/shimmer": "^1.0.2", - "import-in-the-middle": "1.3.5", - "require-in-the-middle": "^7.1.0", - "semver": "^7.3.2", - "shimmer": "^1.2.1" + "import-in-the-middle": "1.4.1", + "require-in-the-middle": "^7.1.1", + "semver": "^7.5.1", + "shimmer": "^1.2.1", + "tslib": "^2.3.1" }, "peerDependencies": { "@opentelemetry/api": "^1.3.0" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@opentelemetry/sdk-metrics": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/semver": "7.3.9", - "@types/sinon": "10.0.13", + "@types/semver": "7.5.0", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", "cpx": "1.5.0", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "engines": { "node": ">=14" diff --git a/experimental/packages/opentelemetry-instrumentation/src/platform/browser/index.ts b/experimental/packages/opentelemetry-instrumentation/src/platform/browser/index.ts index 24c76056a1..0b238b42b8 100644 --- a/experimental/packages/opentelemetry-instrumentation/src/platform/browser/index.ts +++ b/experimental/packages/opentelemetry-instrumentation/src/platform/browser/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export * from './instrumentation'; +export { InstrumentationBase } from './instrumentation'; diff --git a/experimental/packages/opentelemetry-instrumentation/src/platform/index.ts b/experimental/packages/opentelemetry-instrumentation/src/platform/index.ts index cdaf8858ce..1fc5f5e14a 100644 --- a/experimental/packages/opentelemetry-instrumentation/src/platform/index.ts +++ b/experimental/packages/opentelemetry-instrumentation/src/platform/index.ts @@ -14,4 +14,10 @@ * limitations under the License. */ -export * from './node'; +export { + InstrumentationBase, + InstrumentationModuleDefinition, + InstrumentationModuleFile, + InstrumentationNodeModuleDefinition, + InstrumentationNodeModuleFile, +} from './node'; diff --git a/experimental/packages/opentelemetry-instrumentation/src/platform/node/index.ts b/experimental/packages/opentelemetry-instrumentation/src/platform/node/index.ts index 842797c341..d3df10491f 100644 --- a/experimental/packages/opentelemetry-instrumentation/src/platform/node/index.ts +++ b/experimental/packages/opentelemetry-instrumentation/src/platform/node/index.ts @@ -13,7 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -export * from './instrumentation'; -export * from './instrumentationNodeModuleDefinition'; -export * from './instrumentationNodeModuleFile'; -export * from './types'; +export { InstrumentationBase } from './instrumentation'; +export { InstrumentationNodeModuleDefinition } from './instrumentationNodeModuleDefinition'; +export { InstrumentationNodeModuleFile } from './instrumentationNodeModuleFile'; +export { + InstrumentationModuleDefinition, + InstrumentationModuleFile, +} from './types'; diff --git a/experimental/packages/opentelemetry-instrumentation/src/types_internal.ts b/experimental/packages/opentelemetry-instrumentation/src/types_internal.ts index 016be0ad36..2cff387711 100644 --- a/experimental/packages/opentelemetry-instrumentation/src/types_internal.ts +++ b/experimental/packages/opentelemetry-instrumentation/src/types_internal.ts @@ -20,7 +20,7 @@ import { Instrumentation } from './types'; export type InstrumentationOption = | typeof InstrumentationBase - | typeof InstrumentationBase[] + | (typeof InstrumentationBase)[] | Instrumentation | Instrumentation[]; diff --git a/experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs b/experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs index f09097cd79..715dbdbff2 100644 --- a/experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs +++ b/experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs @@ -18,7 +18,7 @@ import * as assert from 'assert'; import { InstrumentationBase, InstrumentationNodeModuleDefinition, -} from '../../build/src/index.js'; +} from '../../build/src/platform/index.js'; import * as exported from 'test-esm-module'; class TestInstrumentationWrapFn extends InstrumentationBase { diff --git a/experimental/packages/opentelemetry-sdk-node/package.json b/experimental/packages/opentelemetry-sdk-node/package.json index b6dd740713..5db8e3ced7 100644 --- a/experimental/packages/opentelemetry-sdk-node/package.json +++ b/experimental/packages/opentelemetry-sdk-node/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/sdk-node", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry SDK for Node.js", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -15,7 +15,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, @@ -44,35 +44,38 @@ "access": "public" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-jaeger": "1.13.0", - "@opentelemetry/exporter-trace-otlp-grpc": "0.39.1", - "@opentelemetry/exporter-trace-otlp-http": "0.39.1", - "@opentelemetry/exporter-trace-otlp-proto": "0.39.1", - "@opentelemetry/exporter-zipkin": "1.13.0", - "@opentelemetry/instrumentation": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-metrics": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/sdk-trace-node": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/exporter-jaeger": "1.14.0", + "@opentelemetry/exporter-trace-otlp-grpc": "0.40.0", + "@opentelemetry/exporter-trace-otlp-http": "0.40.0", + "@opentelemetry/exporter-trace-otlp-proto": "0.40.0", + "@opentelemetry/exporter-zipkin": "1.14.0", + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/sdk-trace-node": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "peerDependencies": { "@opentelemetry/api": ">=1.3.0 <1.5.0" }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-async-hooks": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/context-async-hooks": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/semver": "7.3.9", - "@types/sinon": "10.0.13", + "@types/semver": "7.5.0", + "@types/sinon": "10.0.15", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "semver": "7.3.5", - "sinon": "15.0.0", + "semver": "7.5.3", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/experimental/packages/otlp-exporter-base/package.json b/experimental/packages/otlp-exporter-base/package.json index 8671fffcb9..de1a701996 100644 --- a/experimental/packages/otlp-exporter-base/package.json +++ b/experimental/packages/otlp-exporter-base/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/otlp-exporter-base", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry OTLP Exporter base (for internal use only)", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -27,7 +27,7 @@ "test:browser": "nyc karma start --single-run", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile" }, "keywords": [ @@ -61,19 +61,22 @@ "access": "public" }, "dependencies": { - "@opentelemetry/core": "1.13.0" + "@opentelemetry/core": "1.14.0", + "tslib": "^2.3.1" }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "mocha": "10.0.0", - "nock": "13.0.11", + "lerna": "7.1.1", + "mocha": "10.2.0", + "nock": "13.3.1", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/experimental/packages/otlp-exporter-base/test/certs/ca.crt b/experimental/packages/otlp-exporter-base/test/certs/ca.crt deleted file mode 100644 index 529ce2f7b8..0000000000 --- a/experimental/packages/otlp-exporter-base/test/certs/ca.crt +++ /dev/null @@ -1,33 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFozCCA4ugAwIBAgIUa6OxgyEYxNjpjac0jTAKn+IkGTYwDQYJKoZIhvcNAQEL -BQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQHDBFPcGVuVGVs -ZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9vdDENMAsGA1UECwwEVGVzdDELMAkGA1UE -AwwCY2EwHhcNMjEwNjA3MjAxMDExWhcNMjIwNjA3MjAxMDExWjBhMQswCQYDVQQG -EwJDTDELMAkGA1UECAwCUk0xGjAYBgNVBAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0w -CwYDVQQKDARSb290MQ0wCwYDVQQLDARUZXN0MQswCQYDVQQDDAJjYTCCAiIwDQYJ -KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMbVyp3NCtDwKpGbV+MCML63o+vGVhpd -Dlt3ncpcwz0FMK6UJDXzTe4joKCaezWto3Bmhb28Lezcf8AdzmTdnoENAaqUX2SE -giGVoeaJ/M1hW1IiOffa9zIMkt6cwf8MUUMl5kTRMdAqmpikNqN0rqNpaGuqBYf9 -kvDy3hw+dj19hKEeEXI2zt/HYDOBHYgpalWiOS8qwj0zSfxAUeura+eXKMlx0JOY -h5N25OUH1oLt1flhyuHnwRThKbvyMnL36Ey+G7uCFH0hQSGO0BLhg1LPDWG1PmTn -KzsvqaIgDF/tMCXykvaWcsSxrhvsNeOFFmmkKp1ECVOFgFYsGuK8lJlEvm6Owrvz -4X69L0phCJtaCCaSUFdybqx+G2ZKLZNqTtnMw/3YECp37KyrRd75Gy1UrU031+XC -Fpt4pHw+3isjAOf1bj32F2Ed7aaqVqM2A7m8AgA0m22J/f+jBzmv6UJN/kvfFXzC -0lbX6b1fGj49vU9WEO/o+F3qaH/c50HPf45AB2d4pWbDl5alXZei58ZyEemBndlv -XcGPtVR9S/5rphlX1vAIOT7ePWgUVkAi5fB/rLVGyC1FwA0zYvdyj9CVigJNs29G -yftsvMynF8TL7/qCIGNz72qtW/Pn227OI4WamvYhX6fJwJirXwTEQhAfKXljocI/ -Liqxx15Sfs+3AgMBAAGjUzBRMB0GA1UdDgQWBBSMocah0cTqX4owoPL4+zV1pe5F -QzAfBgNVHSMEGDAWgBSMocah0cTqX4owoPL4+zV1pe5FQzAPBgNVHRMBAf8EBTAD -AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQCIpnaYSMXT+nrdOgw2zKHTk47wANGf6nfK -76VwsQfzVkJm/tzEgq+saEznGRW1ttdQfXHJM3NCfneVhjXDkihrHsxiL4S+5OMq -cusp2tKupGXlxwOt7tsAhH5j4SQLyEUiWMmm/Wvwtx2HWuNO8LZGhoAcUrT7r94f -vqr3tYyb3D06/rBRj2QcybYGJHsQAULEQvmWJvCveh5gqxkRjDJlwmqV/lIarPCt -diKbsZqHJMNaRMbgsxV8hVSvD6RKtBG+K8hpuHF2ZKfzb7Yt1IDPtUGCL811ykzh -2PjumjaQ2JCP6vtYAhTS1r/+cbOi+4v5JzF+kxHxFc9vK/gzBT88174S2MQaqwhF -jQiS3YfElLXkr37E9gxMKLDanbFsxPPiXO96s0RSjNK2mzSbz/gfmsjGqxKNq3t1 -IwAfjePmmx4FJ1O/FwOA5RWE+KRhzNucktjxz39oZrnqtPeTqHnAivNOyK3XB68v -5HRjP79TrzIbLCauyJD/qM5UtCRXW2La1rsH8lIBtcxUcZOkvDnE6Po44D5hH2kQ -swRqF9Vy7PL9MWJPTgn4+WFLNoBe+nMY82y7xstRv7c2ctXpAxSWxIXgBN+B9nXo -3Lqpgg0UkjTiCp13Mejq/7DYAw+/Ou8bxWs3BuCQvFcG2+FBMWh0dL1FxVq3BPyq -oveTgr1sfQ== ------END CERTIFICATE----- diff --git a/experimental/packages/otlp-exporter-base/test/certs/ca.key b/experimental/packages/otlp-exporter-base/test/certs/ca.key deleted file mode 100644 index df94d44c38..0000000000 --- a/experimental/packages/otlp-exporter-base/test/certs/ca.key +++ /dev/null @@ -1,54 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -Proc-Type: 4,ENCRYPTED -DEK-Info: DES-EDE3-CBC,7EE0C188F59416E9 - -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 ------END RSA PRIVATE KEY----- diff --git a/experimental/packages/otlp-exporter-base/test/certs/client.crt b/experimental/packages/otlp-exporter-base/test/certs/client.crt deleted file mode 100644 index b1519dede6..0000000000 --- a/experimental/packages/otlp-exporter-base/test/certs/client.crt +++ /dev/null @@ -1,31 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV -BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjEwNjA3MjAxMDExWhcN -MjIwNjA3MjAxMDExWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV -BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZD -bGllbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAN1or7F+548RpVIgdrzYmuWgKMfWsO5FhgqpGp+xuoVgMMTlZM3i -yiarMnAE0G6ZVMwqCeXkiUGL9QLatJ1S/HO2sWLUkWaPD7X7O4k1yGtl6UsRcr4K -+YBUbucxfrCQjaWKlBc1GMBrDyY/u/rl0CIYu3GtegniN6HG6rBXC2e98DVctQ3M -r/RXB9DWqMC2KW2X92X+FyWqTfGjv8wjRnhQdDNXPA/PCembzhfCL8VlmG65rDiz -VQxiTotTOCmaxULdF307jorMTLIHZVV2OnAA/udeDcxITnKcksLiRKKAiHUXMIPq -RGxNtLX1sdBD/FoQ28sr8o6Ko7qb3uaA4CZhp2I4RR925oZISyObzY3QxrlafN4g -hFnWkTFJY0K+43cxta8K3gAnQXxN/BANDEydS1YM9adqYbt09wctSUjMqJHGZWnn -IVOged+/DEIW9EmyLSPM1DC1s1owOrgwBXzHRRNXuUFjZPPrMC8TkBexNjsapLjr -nE/xa5cB80DIntkM8ysfLU6p39NihM2hmeyI2YS8osheElXEL3dz5vM8Wzv28qgF -PvGpdYz6cAibE9qJ+oT416dVc+9G6i1fcBl7X8w+KUGVFsRnftovwjoSToGlckqg -dv1Tsf6FBDpSMro3BbGogpDhkSxy//eWvzejjHBemz06Kh2DGkKhnT9rAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAIGWBdgWOoqGIy0fuSbqQgjgrhDrPGBV15TfvB4T -84xfk9YZxdRKkG3J65uLffTnnotZs6gqLx6MfosR6zQYhSK27fTXpJJdRaI55kgT -2e/xNCe867Bz/3nW+vwWIGTuFn6hFq9f8HNLZMpHu3DClj7AB7ga6qp1uFWIn5oq -xC4da8/JTR6FY2srIktyH5Vr64FnhtX9cLSa/U7df7asZjRUm6ndPS49X01G6BJQ -vH0RO1caCCbpDVqPwJnAf3BXD1MkKsNe4hULt25XCxSsyM7v0Ru4KcSSGxiYHowQ -+VzRdJVYe8ytpcg1eVlWutOlDXGLaeGNQ0/u5OEQ8iqZvp1/qiq/LQIRZlxa+ZlL -vsVAgOxolRpm6W01cYCCWX8utsrMq8lKjMIal0SZhj6oP/rwtH8UVRhqhrQyAn6y -K6IYGLGvXGacJYuHpcAFQ0f8LUCCs0kxN/zZOZ98atF0MvgUWKZFNgrvcX5se8iV -kS/7UHH4Ie9ZO6Hv9IvnElOfZY9dnFPNxcbWnA7U0kLa5CWh8CD55ScAGHrvcz3O -JXPW0SHb2xZmXDTfgmS4vMI5PYDyipSCoUDClA3BPr/dkAVssj8SMikJZWhVvDrK -IcKRHpkmrzLJbatxeDNlCtLRSAXeuTheLqqSA2HACReNYkQLPd5V7mY6uRw3d3o6 -3rKe ------END CERTIFICATE----- diff --git a/experimental/packages/otlp-exporter-base/test/certs/client.csr b/experimental/packages/otlp-exporter-base/test/certs/client.csr deleted file mode 100644 index 2d99fab566..0000000000 --- a/experimental/packages/otlp-exporter-base/test/certs/client.csr +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH -DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGQ2xp -ZW50MRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQDdaK+xfuePEaVSIHa82JrloCjH1rDuRYYKqRqfsbqFYDDE5WTN4som -qzJwBNBumVTMKgnl5IlBi/UC2rSdUvxztrFi1JFmjw+1+zuJNchrZelLEXK+CvmA -VG7nMX6wkI2lipQXNRjAaw8mP7v65dAiGLtxrXoJ4jehxuqwVwtnvfA1XLUNzK/0 -VwfQ1qjAtiltl/dl/hclqk3xo7/MI0Z4UHQzVzwPzwnpm84Xwi/FZZhuuaw4s1UM -Yk6LUzgpmsVC3Rd9O46KzEyyB2VVdjpwAP7nXg3MSE5ynJLC4kSigIh1FzCD6kRs -TbS19bHQQ/xaENvLK/KOiqO6m97mgOAmYadiOEUfduaGSEsjm82N0Ma5WnzeIIRZ -1pExSWNCvuN3MbWvCt4AJ0F8TfwQDQxMnUtWDPWnamG7dPcHLUlIzKiRxmVp5yFT -oHnfvwxCFvRJsi0jzNQwtbNaMDq4MAV8x0UTV7lBY2Tz6zAvE5AXsTY7GqS465xP -8WuXAfNAyJ7ZDPMrHy1Oqd/TYoTNoZnsiNmEvKLIXhJVxC93c+bzPFs79vKoBT7x -qXWM+nAImxPaifqE+NenVXPvRuotX3AZe1/MPilBlRbEZ37aL8I6Ek6BpXJKoHb9 -U7H+hQQ6UjK6NwWxqIKQ4ZEscv/3lr83o4xwXps9OiodgxpCoZ0/awIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAE8wUkuBEsxe96X3U2vjWCfD/hB30cF69UZ2NlR6 -2UIZbjvewIy43ozr2uaCk1+US21NaaXKinNrZ0VElWKLVXWkZidfuoGEz0gY+XDF -qyjlfaYlCTexPUSh14nbpLsT0DXvHa5KI3Kq2ly/sciVB78SlH3sRzmJt/qkoaIN -f6PI2Unoqf8vJ1xvQr9z/ODc06MoX5g+ezM2vShZ+P7773bSVL6bIEVl/9yFFAyu -OHL+uwUdBYBk3NS4xKyXWXhG58AyNvGYWIO0tWTYmIVVuL2JDrNGY4QdIDQBoj+4 -hppmh0mYbvDCXolKjUVFC0wHRACaRCN1WLIKP8heE0vZsvXq/7ssuP3DtCDHRadk -pHn+6CpEwbT4bCNsW4bsci9v82npoY6YJKW8mokR+1dhcari6g1W2R80VCuWmB6E -ntJFZpILjPrCf8QCjs9Act0l87xx3+5K0LpFHQiKHygTbOrzE8++Lds+6yC/uzp/ -QtdLC20/iQMJ5GaOxSCwzBe1dUhC+ABF1/ZN1p9wgKFTFQMR+B/bR5q9l/d2AyMY -1pTorKIX7yg14OHehzL0s1tVq3QEtNl14c84hLh0m4Rf7nmRRcKDP8l6EwDujJVD -nR8cHM8ajiyC9tjjdyiQ32NLgzo+6OGiugctUxfw/ZLp7Qr0mT07IvPLcqBiRAC6 -E+9O ------END CERTIFICATE REQUEST----- diff --git a/experimental/packages/otlp-exporter-base/test/certs/client.key b/experimental/packages/otlp-exporter-base/test/certs/client.key deleted file mode 100644 index 00f82cfeeb..0000000000 --- a/experimental/packages/otlp-exporter-base/test/certs/client.key +++ /dev/null @@ -1,51 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -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 ------END RSA PRIVATE KEY----- diff --git a/experimental/packages/otlp-exporter-base/test/certs/regenerate.sh b/experimental/packages/otlp-exporter-base/test/certs/regenerate.sh deleted file mode 100755 index 9e2e972c99..0000000000 --- a/experimental/packages/otlp-exporter-base/test/certs/regenerate.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env sh -# -# Usage: regenerate.sh -# -# regenerate.sh regenerates certificates that are used to test gRPC with TLS -# Make sure you run it in test/certs directory. -# It also serves as a documentation on how existing certificates were generated. - -rm ca.crt ca.key client.crt client.csr client.key server.crt server.csr server.key - -openssl genrsa -des3 -out ca.key 4096 -openssl req -new -x509 -days 365 -sha256 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" - -openssl genrsa -des3 -out server.key 4096 -openssl req -new -sha256 -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" -openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt -openssl rsa -in server.key -out server.key - -openssl genrsa -des3 -out client.key 4096 -openssl req -new -sha256 -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" -openssl x509 -req -days 365 -sha256 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt -openssl rsa -in client.key -out client.key diff --git a/experimental/packages/otlp-exporter-base/test/certs/server.crt b/experimental/packages/otlp-exporter-base/test/certs/server.crt deleted file mode 100644 index 55f0c3dbb9..0000000000 --- a/experimental/packages/otlp-exporter-base/test/certs/server.crt +++ /dev/null @@ -1,31 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV -BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjEwNjA3MjAxMDExWhcN -MjIwNjA3MjAxMDExWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV -BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZT -ZXJ2ZXIxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBALaskMk0FpoAZ8eHpOiNYIW2yOeizGsvJ7PsNZujbUFQ/f7/AYTZ -CBQ9Hc8lKz+3YHklZnTsAJW6QLCBKSgsrjPAXA25zBFQazUuKb+QrjoIqeaq8D8w -6iHL7zdHsplbWZjYrnPjLWPqoc1ga6H0p8NsH7eC6hFXJRp2ZilyZXUR4jvyMc3D -2q/MXoI0VvQ3tI/QaLrU2iaN0DZBsyJhr4B/jNzOYzGAuVieEyV52wFnOsUlJDNp -jsT/v1/Q8JrjOXSb+ko/74VlSLTCauoPSsiUb1ra0Tbu3Z0E6b7vlFKeZaOxwUyW -eLi6YT6Z9ZTOEJuiJan/7STprK1NrqL+OPneK1A0Plr10hY76SptAu2fTqgGOFGo -QkxTosnsppiSkCVaDiLKCVr4DQzBm/0CLoSgXk4fJNhiNrIT+b35gX8Xmm3hUq+U -GanZyXhJYfojBUuhPJFAUKpUUjSsiRU8Dj8R7nIZT+cUWvslYmrOG4ZjCnpIXnoo -pAjFlaZkv62/tEGwJmyBkGk2lYzn9Ka1G/aO92IjfzypUlSKXCntTxLD6BzWNF7/ -qjt19XTOWPjChQHQcYXmlTSNUvUQ09HMaRIUe5MCexlWYleX6lVG6XtMwOb06w5O -ynVuMHjiAGfkjLrUkGQqSxHrS2v/af1J7F+CIClNgI+q2pz5dYWYMaCFAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAAaVSzyc6jFBLORHUcxkP8DheyTl8m2sWIb+x732 -DkM2qp8oEAKwhJ/AWLFGCqsjyW5ep8fgpTHQgT7braEEUKKnGUbIqUPy1IBz+lSf -LoT7qD92eiMGXOrzcHWnV02PRM3mF5cmLMNu5aMUoIArG5dO1LTSxl5/ybx2l4Zy -qXcT7wJtrA6F0EmuXRzwFBIVZdxlLbI+S4SsvfKXernGatB3Mjotivvqi2SeOd8p -1tuqEyQaaIJ1s6u7vyTcAHDd0OIxSqpTu3SwaHAXhkzMi7+TRGgfQUuljkNKkKfj -N02siSNjIuKzE/DSW6yV0OFL/FCNPyvzs8CKTMwfyrrvA0UAspkFCWZFXFlA+uLs -0at4SmPecOsc+O8ATon9nUyXh06anBwtp03aXX6Mr/7UIRRPHF70BY7MDV4OvvQt -PD0osFo0uEHubflCnPBUdMrQN9KbELVJeV7G0Xj2fHTAVoEnCmSpow+LB1ehWGbR -M3U8q9wlpXi4Awhr19kRcSdE/JzI7eu9MqjsazfUdAtCcgg4dHixOre8oXgauhZ5 -jMOv9lUI6Glf61xt8mamicohSf9CFyH5PgZqRM0aSacdJ7jH6EitABOx21ZqwiBp -o4W37lV55oy+N0r7yxaNy/mSUUcjsQo6kGw/4cMpYTSEzRMtfwYPOS1DeTl9zArE -7TBI ------END CERTIFICATE----- diff --git a/experimental/packages/otlp-exporter-base/test/certs/server.csr b/experimental/packages/otlp-exporter-base/test/certs/server.csr deleted file mode 100644 index 0c5e9291bf..0000000000 --- a/experimental/packages/otlp-exporter-base/test/certs/server.csr +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH -DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGU2Vy -dmVyMRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQC2rJDJNBaaAGfHh6TojWCFtsjnosxrLyez7DWbo21BUP3+/wGE2QgU -PR3PJSs/t2B5JWZ07ACVukCwgSkoLK4zwFwNucwRUGs1Lim/kK46CKnmqvA/MOoh -y+83R7KZW1mY2K5z4y1j6qHNYGuh9KfDbB+3guoRVyUadmYpcmV1EeI78jHNw9qv -zF6CNFb0N7SP0Gi61NomjdA2QbMiYa+Af4zczmMxgLlYnhMledsBZzrFJSQzaY7E -/79f0PCa4zl0m/pKP++FZUi0wmrqD0rIlG9a2tE27t2dBOm+75RSnmWjscFMlni4 -umE+mfWUzhCboiWp/+0k6aytTa6i/jj53itQND5a9dIWO+kqbQLtn06oBjhRqEJM -U6LJ7KaYkpAlWg4iygla+A0MwZv9Ai6EoF5OHyTYYjayE/m9+YF/F5pt4VKvlBmp -2cl4SWH6IwVLoTyRQFCqVFI0rIkVPA4/Ee5yGU/nFFr7JWJqzhuGYwp6SF56KKQI -xZWmZL+tv7RBsCZsgZBpNpWM5/SmtRv2jvdiI388qVJUilwp7U8Sw+gc1jRe/6o7 -dfV0zlj4woUB0HGF5pU0jVL1ENPRzGkSFHuTAnsZVmJXl+pVRul7TMDm9OsOTsp1 -bjB44gBn5Iy61JBkKksR60tr/2n9SexfgiApTYCPqtqc+XWFmDGghQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAIJ7KMLIZbomgrup1rrizG3aU4bREy6HfHZ9Ylcr -Lo1vdL5/UZH3AHVhoccb0ua3qXDtsc8pDQAXIMzBu8BjfpbwCvrgz7YXsNsBU9zV -el8p394QB20WoPHebYDBUXPiq3JhLfjzOXBS9Ke3MBl1jDamOFmZW8dg8EpowIXv -ODFP8sErFb7Bmq7x2d0EJyX7+HydBiRWRa376oXcZ/VLl/CnNzpJeACFWPI4d0lg -P5nsadtdLyAwXF6cRQx3pOdN0sS5b3llXX3jVwGzm+kNjVTDWJiJmqWfwIF15pPr -bypoUmPpeQ4I9F+oFm9+Ff776PemqBD7NSJdG0iHRndm3oa6o2bTpn9ZypCO1Skv -UWr3ATduFylA3/YeoN6dQwP4Ol+3WJ2UbXzTbmEfoSEzmwMI5MTidOuA62A0afyN -VM0SjHaLvfD1mK4w+3BKdUivYh4TWbcLU7s1SeDwYiEP6DFZHLBPHDcNLz77d6nQ -zgvOgXqeNfk9uI5NdYBMbtdHW/mwGgEfPlDkKbY2KveOJjLlTM1EduGFsYHAXyhI -SiYozrbFeS5ts4f1EZ5tVT73KBv97MiQkKhBoVXtF1CHPUP1LTkGxtH2uoDiVfDi -r1OkRzoO05pHAh2o+4gujThsc0d3T5mmoeSySs56lgqDmC4blXNOS0kBZ4+I2u7A -C2YH ------END CERTIFICATE REQUEST----- diff --git a/experimental/packages/otlp-exporter-base/test/certs/server.key b/experimental/packages/otlp-exporter-base/test/certs/server.key deleted file mode 100644 index 9fa740554a..0000000000 --- a/experimental/packages/otlp-exporter-base/test/certs/server.key +++ /dev/null @@ -1,51 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIJKQIBAAKCAgEAtqyQyTQWmgBnx4ek6I1ghbbI56LMay8ns+w1m6NtQVD9/v8B -hNkIFD0dzyUrP7dgeSVmdOwAlbpAsIEpKCyuM8BcDbnMEVBrNS4pv5CuOgip5qrw -PzDqIcvvN0eymVtZmNiuc+MtY+qhzWBrofSnw2wft4LqEVclGnZmKXJldRHiO/Ix -zcPar8xegjRW9De0j9BoutTaJo3QNkGzImGvgH+M3M5jMYC5WJ4TJXnbAWc6xSUk -M2mOxP+/X9DwmuM5dJv6Sj/vhWVItMJq6g9KyJRvWtrRNu7dnQTpvu+UUp5lo7HB -TJZ4uLphPpn1lM4Qm6Ilqf/tJOmsrU2uov44+d4rUDQ+WvXSFjvpKm0C7Z9OqAY4 -UahCTFOiyeymmJKQJVoOIsoJWvgNDMGb/QIuhKBeTh8k2GI2shP5vfmBfxeabeFS -r5QZqdnJeElh+iMFS6E8kUBQqlRSNKyJFTwOPxHuchlP5xRa+yVias4bhmMKekhe -eiikCMWVpmS/rb+0QbAmbIGQaTaVjOf0prUb9o73YiN/PKlSVIpcKe1PEsPoHNY0 -Xv+qO3X1dM5Y+MKFAdBxheaVNI1S9RDT0cxpEhR7kwJ7GVZiV5fqVUbpe0zA5vTr -Dk7KdW4weOIAZ+SMutSQZCpLEetLa/9p/UnsX4IgKU2Aj6ranPl1hZgxoIUCAwEA -AQKCAgAzcuLMaEk9UoPoJIIDpV3cCyEGbEmanotWF1752Mt6q+79lKC+48lsudHd -d6B4r5MSS8BRie6YPP7fN2F6GStvE+xZSUz6S2YGclv7winv2mTPvLExevtWTXOw -ZBcfLiVL8SshJIiyLXEowNFPqfJeDePY8ZwvChY/H72iSr/cew72xz3TsCe1f5/W -mBstaUsHfjEg/bX7SdGsllB3jH+7dzEbN12koZaSKONHmMxf1s0snUtW15IIVed2 -ewho9zpFZ3DU3LD/JwmVL3ShO3FakMPUGPD3wcrU4H9c8Wka49XIhtXkVjTmAkhF -M2OBZ5Ax5TcqbBREYzPpE4nuCh/Ndj8j7WKgnTh6xqhHwwxM2JK2IyckUaxuEP+Z -fY8+eIXB4DO62Cys4rb8ZwMzRogpvxIn0rLJMl1kS4pdUtHEf1Kb+c4nX9aBHwIB -UCH/UFuR3LRpqte7S7Aspory7gDUqZPQTubvdKq/heTDW8URUZoJKuyAMAGDZZ28 -ThTx1jceLtz49DjIYKkmF8LPZWIbHGd0xffmc2u0l3I2/LZUfXggYe9a10p6vYpf -ZImvJQB3CdOUrfZs1OXZB2yyO1jZPHp5KgWJeZT3ldc4ifJfGEMfj98Z8juq9RxC -qjnmNN1iqcOFvJzW3xAjbq6/1j9aEiI/9xiRjbwIwa5mG+E7uQKCAQEA2KOwjvMG -26/mC42B4BQ2MzotWKV+AnrzVqhLLDej9S66ZHlGDjrGab2r40DK0wFhyvYA7vs7 -ZWdS7xEACB8SX0FZW1aU2awkfnVVyA37LkwxrdO5cZl/O+EA3DFa4IoYfywQeYDM -fkhModamiwkA2agcu3oN5O5v6q3Eag6x0zWA1NqWQspDq3Qd0IxiGvv2isiPje11 -HTxuFiaiVwVNu8kdzNN0KnxfHB4klIE6LsaCb6shnUigCsnEmaBhepXOJGHZtfLD -/T4oUcOr4xi0/l9VcOSMqf0WLnMAaglYkGvDE1hgp2kdxi67z1Kibe1OrJ+SKHZK -I3/odmFacxw1DwKCAQEA190Vf/pjHF1+VzSKhNT5+5sc3idm++WWGrgN5RDksi5t -u9XIrg4kgA3fN9i8tv4WY7xdbl80rJwErO4qsJJk8Cuna+idklHE23cxJjdZfW9C -Dp4KYqdwSKGvUvg0D7zPvuKIMuPKu28hyWpoTQ1nEgGL/9FvK4aBUSrtmrLCrtGh -gyB0yGOcU/4j0uh1wJPiolAl60ze8LgdnDJx070eNtompYXo8AMIJmXuvV1PeWzy -BJAn2aLAyklO569aIMvLrCUS6mlF6PXKGZdxF4yiUgMJnDtoE/TT4RQ2Y24/Meeq -keTjTghSymSGQ2wsKVCyOX7loFvXinBj0wFrjNXZKwKCAQAPr2JUJ0Ji24xzX658 -k9oMwXSRC4JhGZfOuWaf7/NeCCEUrzckRpshAsuUK5fDyUDUWhVdODFnuSBnELsI -238QCII4u78RN4Z45XPthR2fj4K1TDQMBooQwsy2JJio0zbM1lrnAS1NI1zxBsKO -JHu8RpC1/jNNVPojaqti5md3nFMUljL06QIXQtP5yoA75exGxhimtP+au0pZLjjo -xgiHxRr0PocVoGWeeow5eFXHFzZQcXqAkcaMoWkrmlIUdw4y0ibaJpaMGlj++oTS -b3KDTFG6V8HbeOiHOmpYQw73feXk26w70r+GHtIYQ6pg/SKKGw+RAGeDxHoHQCs1 -VGB/AoIBAQDSzRQx5lLjYGoAv06GaXW2P8PxLoljdNEhRpxLFjQ/zRdcV2mikC0U -4HccEow4J+m1fD3BizflWHc4aV1HEa+A2yCkQIWgXjngGIXmzCaYWA4qOCvsK5d7 -VmngnII63CgEQTTAfbN9VwmnqEIy/OOqsdgF+oCWAMRIf6OJbwivsAgKBagGCUCg -xY42aMyVQ9YOrDZbkrYkXaiM4LZIEGdxKZiUDDFuMYfD98ctJfJ2oe22hxBjeIzM -/soPdy6M2HgNpCbUw/mBhoXWeA348V2SuWSpLVp2IqDHLPXwI7mTAqmPz/YqPfab -r49uSDTYI/XoMAQOlaHnj9nsNXbSEgQBAoIBAQC6RnqNrsHki+CGdddEtRdxYVtf -ZEP3rc5xIEe3zG4L0FfjYxWk/aOW5Xl4akm6ddudEgndpJxa6T6ut4geMDIfSrvL -r2t/7WZ31fpAtwnI7exV6D230dWnSWf0u0sQc23TJhTSKd4R+Mm8WLzJQHY0rm3y -jOL0bWrEm5BXOcewXeSzQkcYbrViniHUv1OQDmNdTGw+bLCyM3fY3Ud2oBJGTfTw -wDoyG6D6zdLztGxTQQ2C39DXdRelGhYwrz2MlKJK5K2EVNLJ8O91c+VjvxKKJmJ1 -fkxF7omyNBh5dBnvFC/jFuxVL+PRqnvO0SH1YH1Y9eiqNhXrds0B4U+/YBDZ ------END RSA PRIVATE KEY----- diff --git a/experimental/packages/otlp-grpc-exporter-base/.eslintignore b/experimental/packages/otlp-grpc-exporter-base/.eslintignore index 378eac25d3..345f1a599e 100644 --- a/experimental/packages/otlp-grpc-exporter-base/.eslintignore +++ b/experimental/packages/otlp-grpc-exporter-base/.eslintignore @@ -1 +1,2 @@ build +src/generated diff --git a/experimental/packages/otlp-grpc-exporter-base/package.json b/experimental/packages/otlp-grpc-exporter-base/package.json index 97f8940ef6..4956fbee14 100644 --- a/experimental/packages/otlp-grpc-exporter-base/package.json +++ b/experimental/packages/otlp-grpc-exporter-base/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/otlp-grpc-exporter-base", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry OTLP-gRPC Exporter base (for internal use only)", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -19,7 +19,7 @@ "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", "version": "node ../../../scripts/version-update.js", "watch": "npm run protos && tsc -w", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile" }, "keywords": [ @@ -48,20 +48,22 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@opentelemetry/otlp-transformer": "0.39.1", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/otlp-transformer": "0.40.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", "cpx": "1.5.0", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "protobufjs-cli": "1.0.2", - "sinon": "15.0.0", + "protobufjs-cli": "1.1.1", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -71,9 +73,10 @@ }, "dependencies": { "@grpc/grpc-js": "^1.7.1", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "protobufjs": "^7.2.2" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "protobufjs": "^7.2.3", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-grpc-exporter-base", "sideEffects": false diff --git a/experimental/packages/otlp-grpc-exporter-base/protos b/experimental/packages/otlp-grpc-exporter-base/protos index c5c8b28012..1608f92cf0 160000 --- a/experimental/packages/otlp-grpc-exporter-base/protos +++ b/experimental/packages/otlp-grpc-exporter-base/protos @@ -1 +1 @@ -Subproject commit c5c8b28012583fda55b0cb16f73a820722171d49 +Subproject commit 1608f92cf08119f9aec237c910b200d1317ec696 diff --git a/experimental/packages/otlp-grpc-exporter-base/src/LogsExportServiceClient.ts b/experimental/packages/otlp-grpc-exporter-base/src/LogsExportServiceClient.ts index 148fca31a1..b867743cea 100644 --- a/experimental/packages/otlp-grpc-exporter-base/src/LogsExportServiceClient.ts +++ b/experimental/packages/otlp-grpc-exporter-base/src/LogsExportServiceClient.ts @@ -16,9 +16,11 @@ import * as root from './generated/root'; import * as grpc from '@grpc/grpc-js'; -import { IExportLogsServiceRequest } from '@opentelemetry/otlp-transformer'; +import { + IExportLogsServiceRequest, + IExportLogsServiceResponse, +} from '@opentelemetry/otlp-transformer'; import { ExportType } from './internal-types'; -import IExportLogsServiceResponse = root.opentelemetry.proto.collector.logs.v1.IExportLogsServiceResponse; const responseType = root.opentelemetry.proto.collector.logs.v1 .ExportLogsServiceResponse as ExportType; diff --git a/experimental/packages/otlp-grpc-exporter-base/src/MetricsExportServiceClient.ts b/experimental/packages/otlp-grpc-exporter-base/src/MetricsExportServiceClient.ts index 9a791ca2f3..7f81be6087 100644 --- a/experimental/packages/otlp-grpc-exporter-base/src/MetricsExportServiceClient.ts +++ b/experimental/packages/otlp-grpc-exporter-base/src/MetricsExportServiceClient.ts @@ -16,9 +16,11 @@ import * as root from './generated/root'; import * as grpc from '@grpc/grpc-js'; -import { IExportMetricsServiceRequest } from '@opentelemetry/otlp-transformer'; +import { + IExportMetricsServiceRequest, + IExportMetricsServiceResponse, +} from '@opentelemetry/otlp-transformer'; import { ExportType } from './internal-types'; -import IExportMetricsServiceResponse = root.opentelemetry.proto.collector.metrics.v1.IExportMetricsServiceResponse; const responseType = root.opentelemetry.proto.collector.metrics.v1 .ExportMetricsServiceResponse as ExportType; diff --git a/experimental/packages/otlp-grpc-exporter-base/src/TraceExportServiceClient.ts b/experimental/packages/otlp-grpc-exporter-base/src/TraceExportServiceClient.ts index 6a150a24b1..d332e4f4da 100644 --- a/experimental/packages/otlp-grpc-exporter-base/src/TraceExportServiceClient.ts +++ b/experimental/packages/otlp-grpc-exporter-base/src/TraceExportServiceClient.ts @@ -16,9 +16,11 @@ import * as root from './generated/root'; import * as grpc from '@grpc/grpc-js'; -import { IExportTraceServiceRequest } from '@opentelemetry/otlp-transformer'; +import { + IExportTraceServiceRequest, + IExportTraceServiceResponse, +} from '@opentelemetry/otlp-transformer'; import { ExportType } from './internal-types'; -import IExportTraceServiceResponse = root.opentelemetry.proto.collector.trace.v1.IExportTraceServiceResponse; const responseType = root.opentelemetry.proto.collector.trace.v1 .ExportTraceServiceResponse as ExportType; diff --git a/experimental/packages/otlp-grpc-exporter-base/src/util.ts b/experimental/packages/otlp-grpc-exporter-base/src/util.ts index 7e1d58dff7..78809466c9 100644 --- a/experimental/packages/otlp-grpc-exporter-base/src/util.ts +++ b/experimental/packages/otlp-grpc-exporter-base/src/util.ts @@ -125,6 +125,9 @@ export function validateAndNormalizeUrl(url: string): string { url = `https://${url}`; } const target = new URL(url); + if (target.protocol === 'unix:') { + return url; + } if (target.pathname && target.pathname !== '/') { diag.warn( 'URL path should not be set when using grpc, the path part of the URL will be ignored.' diff --git a/experimental/packages/otlp-grpc-exporter-base/test/certs/ca.crt b/experimental/packages/otlp-grpc-exporter-base/test/certs/ca.crt index b6db7d0dd2..c194f04954 100644 --- a/experimental/packages/otlp-grpc-exporter-base/test/certs/ca.crt +++ b/experimental/packages/otlp-grpc-exporter-base/test/certs/ca.crt @@ -1,33 +1,33 @@ -----BEGIN CERTIFICATE----- -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 -T0JDHso8+A== +KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMm3OXVbMd0t2r4x+Pg4fecPeFhRzsg6 +sp7AM4UYlhb0Xkx8ij3q0E47uQM/OSari6qi7p1Un6nzgaXmhosaNkVXaKV4dQ4g +zKqrvC2+nTYU4lwss4Rx32CQxOKXEvN5FPwLTNo903PP3wqJyVt8syN0CDW953m/ +hUdkNaOe/lXmDJ9TmTTGyuPZFSlNlufbaNsBUM5chVFgBYDQIVy0jls8MiYLfao5 +tfprj+yS+lnTDl54dDTVVyAgV22SY65cnUgvO4bu3nzhS/h2Xg4/6/yAuYaRI7GQ +xvlA4pzx+aLaRDTJKiszRrHbQFv4PY+MmkVxvg2Oka4Vc2XMgDM87H0bd+beO8NH +Tf7UHU5AmIr2j2R27LWeELOqanm1HYn2VK182lD7OwQ5u5yqZZuke8bMMPJQEPUm +EwhIgXMVIlGps2+rDUEalPYkQ/BmAcs2g7fywW3RhIWCacggKoee1x9a6oiUM5yi +oDJ6T/C4WUQzIVebdMC25zBBlxcy8fK4Yus/DFTqM/eXPl4NVzbH/yB5tlU2GU0Q +V4tpGL1jsUy4b7r1bzuYVNfnKrarUGFF5TIHuvDo3voJNGb4hWBH/JdttG/9NaWA +HomZ8CUWR+gNEzyPkwq7upkiblKxJV7HKo79Eex+dlWa+Ru1F3kwYE200Y+a/wOF +Rj4+PfMu7WvpAgMBAAGjUzBRMB0GA1UdDgQWBBSwH/Wk2wTc+MEPAEornj1eGKra +0zAfBgNVHSMEGDAWgBSwH/Wk2wTc+MEPAEornj1eGKra0zAPBgNVHRMBAf8EBTAD +AQH/MA0GCSqGSIb3DQEBCwUAA4ICAQCNkzOjjqH3qeQ0wT/Has5PSoWwRwq+B1JT +gg29bgEMD6dVkLdzgEuRVVkMtc/tCZAkA02pc0VN8+lNLW7ckNU/QhMTQYn+FgMR +cG86vR9loTnwUrxR4dS6Nbx1sQ7hpe2GZkWpTNmjh1duHBNHv9nS2JmMkRypqRne +oAI3/th1Qlrtl/zDn02/+P5/av0YJcMOcnRkULHnI62cbXHa2iPd/nENgH2xC6CA +EuYN/bnmOEUPeKljU1IZS6asjGMLdWLmpLs7oOcHGLD3pax+om69Pmn7rps8Z071 +WsJDHFCftItCUrg4KWwpXr77Vq4WAN2tOBdDHEZsbES6a54+7sc1QKOVSWwPuGEd +ShFHhTzoaB0dpwm6kLdYsEkC8JLIjV+Ikg5X3VTDITjUlHoJf2mxCGOzBiCnUr75 +Am0eBqlVcc/2aVk1tcVS9N7reY/KcMaAJvI314O9I94pYdIIm5jw3UmA9Y6HmpN0 +vYtQUF2sS5W82XoFD8bpOq/bx1o2ib2x32dfPQkVgd4sbmpsyN62Fy1HpHwXtXno +xGVaDzGSWj/7RyYyKhNmp3nfQsU0Tt6iVkM+N30vl2heZqEUgXxCG9qHVzWv9z6x +AJzuafjM8tviROpiHkvzsmq7uDhksGooKCi+m+eoEBJrd0J4gjngAi1NYjTsB2GT +4mvPz05UkA== -----END CERTIFICATE----- diff --git a/experimental/packages/otlp-grpc-exporter-base/test/certs/ca.key b/experimental/packages/otlp-grpc-exporter-base/test/certs/ca.key index 3a12f603d4..00ccb04622 100644 --- a/experimental/packages/otlp-grpc-exporter-base/test/certs/ca.key +++ b/experimental/packages/otlp-grpc-exporter-base/test/certs/ca.key @@ -1,54 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -Proc-Type: 4,ENCRYPTED -DEK-Info: DES-EDE3-CBC,723F7ADBF5E86DF0 - -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 -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/otlp-grpc-exporter-base/test/certs/client.crt b/experimental/packages/otlp-grpc-exporter-base/test/certs/client.crt index cbd324625f..fd05c9c40b 100644 --- a/experimental/packages/otlp-grpc-exporter-base/test/certs/client.crt +++ b/experimental/packages/otlp-grpc-exporter-base/test/certs/client.crt @@ -1,31 +1,31 @@ -----BEGIN CERTIFICATE----- MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjEwNjA3MjAyNzMzWhcN -MjIwNjA3MjAyNzMzWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjMwNjA4MTY0NDI2WhcN +MjQwNjA3MTY0NDI2WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZD bGllbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBAMBc1F9O8OcCu8xspnN1MNwccUZCx+lsh1F50T5D0INmxz3rXxin -TkM+QjFsJ09iF8MmgouI+yxmTayMlW733dUc/XQ9cV9GRwWVlF1RnoYp7mXVwMnz -o80s7CGWc+geliqeLUgzGIoq4bGTp1eEeB2KGJ/w8E2bTLs5a6B0pHhQuVXZ+Pq0 -E0Uzl2wPc+WwjeZyGRU4PbWzX6bN+R05Pfxq8PXhJ6Jnt0j8pNoF/XU6mOIYQyQb -THEKR8qB2SXo5+D1JOlRiofWtK4wsRH/wNm7j7tq75UezhOeqp6YU6MwGnea1loa -65K+DDG/rFyvxSlDS/53gjyKGSqYod8pevvytKjtUmw6xX5i5nFnf+wrKmMH6EDe -Hm63LReBv/CqCErYt4kV3NkdIuHmv7ZIdRfhDPdK8Q/kzAlRTX25wK/xWn5CqpSK -KCUwukEzccV266KU4sG63/4byv6zE62z8472P6u+OGSZlDxznL0BBg9iiHFYiopw -shBfFcszPCSOs1SO8XZH+6J5ypKBzBP7aAsyJflPHWGTUBACY9ZCU/7iwIF7YFPb -a/temVMLkg75oYGVow0Dlp55jQvrzMr7IaSBCxFUJEKf5u6GSNotJWmQdHYta5SH -Kj/rryFQV5qp9mBfia5DWnjHijFZTo+c/KLrgkmzfgbT4qVpnuxKahXNAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBAA2nZTbaa9z/LTNJijf0clu4ULPG4RrqHgQ1q/Wh -NbrNemrxTJ+ZAwCR1gTv4oZe9NBd+V1pDXDQBid8mBTbttVrQCHdjgHFpQKNeyiK -nd2OI4awYiTvGbgDCMHAW/yf+XKCocuSkyNRnmfe8PihFD9wx6+kl6XCJuIkF3Vw -MGKEIrW2WLAARtBZeKV2yhtuVhkNm2TNFPfNrNtk2gdGO8TkX0orOllAENopR+GV -uffuLiIi9KWj9XP9T+6bdZbG2eMJX8wUNIIma54/3XN3RMi2iV9ZxW+F0j6d9ryo -j8pJJfpiW4qh6Eqi6HyvrzgdndKhkVYiIwbX5S60mqL+KcaPghX2goWexMW94QlQ -Re3/IvOAzGpu5fLn//y2tAaO9hDUsyoIJtXcFJKLbfM+mK/Bac2niEyBpr9Rzqur -N43Ga2pOsM4P/4YcAO6tvs5htvh2ala6UDXeEZV9Z1Bc5bOHAWNp13BfWE01iLNC -5rIu0XuVo1aa0FeVdJL6IpVeEwnkzDDt/9LKgp2K8w71VAtUSOg23AEYJu+GFr4D -y+0bahUiNETrFaiCsXQYa9HHFrqhA/PGOGpyq6GrBkJxWpzuL3rQQicpHzVIQEmb -3aCcIBdA2RQwQk7Z3YI2EuFMkHAElCXXZBulvxY6kl1n+2UwWRlocDMYZdkzI3+X -Tw8x +ADCCAgoCggIBANewSXGnuCUsPcOnXPq7SUFTLaSM62x2FnJrzb6rne8KYQ615l6D +d2Nm7MrttHWJUBQS6iDCsEGlF/AWYO5adVuZ+Xf+S+NoWMXPTUuJYq+5VEeAS8PM +IriksA8Npn0hAMNTDrd/eNXQ5W4zLQOqUWnKcuE0P1M7gI3/rfX9/JXkZfUmkQGK +OSva3qJHOcG7Bc7vqbJnkFebIw87e2iHxNnUf5IoJmrUaOMdFiQyHBBoJyTVJ3wp +Ufr6Q2+d0sIyes9PV33DbB8DyKGdOfbLg4YmKsnAvnypC0p2Xw9yAnHlQX27Ngcq +tfzcOXx3QlNPxQDF3oNHzi8GD7ysex1z7PRIsZlLVQLshAdOfA+naktPezj52R8V +BtWaxgVFI7IA5X21reS25t01k/GXNcyIJxW5KSz00b1h8+mpz0n0R3Mz3HuZybAX +g5bnZ+91jOeQmTt08eMXjwAGClxcOqfrssfDvOnUSZjDpzEGDaVuFGVPA9hR/eKN +Bfo659rv45pYhtxoHLz1LJWoZ1uegmKrGF1w16K05k5mpzwH6fzqDzzbF1xyynGX +yfbIqsvsBniuWGmhMjlfT5+l0VG2GgsD7Yijv6SV0YZrVf85iA5q6XdKTBuKYmin +ZEbneEjw9kc9myMeC5ik7wHuksA/BQcja1TPwB4ZRbPEcfi2iFxbtsSzAgMBAAEw +DQYJKoZIhvcNAQELBQADggIBAGdcqEI2l/dKxu9vPuRC2/VRgjgDBN4UJJCY111T +2A7GsGzd7lRhtxB5ZzClF77UiRJG+cvFai00c9+L3wp8qy4sZWY4MaJIWoKRh72Q +sRiH8AskeIl3uvvvaH86bbmpDo7M48Cs/zXZo9VhLzD8ZuHcS1mdjkOcnQzkbSzR +YeM9ActeuJRmsdQ+gSzCTvFqmGutL6xvM8b9a6PwyY5nPxS+eh0/7KNp+EXBvp0U +MWp6mMfq22nAwAQRLbvh5f+a/4GSwg73By6hwnsgb7tpBBJ6ppnKAIALRf7l5JwS +V0LM5Vnpp4J4JjdYyQzk2xkxi+UGIP1IRigbeWc4K3qgg6BUUkfSf4W9oJD4JCa2 +cOsqnKqFxTwXT4b9j9qsPpg7mUQ2+UtU4Lv3h/7sXpbpx0ldb2Hnaq+JqUz0l/7c +54y3+nzke7I4CWKtLJUSamQiyOC3CBVkRX0YEYUBhMXim6dKAfiOEV6K3bwiU+YZ +aDe0lEeLbzAp87DKRTAvDYhRMIFtD3g2qmYrWpQ4gj8vSEorNAfg3kVHMFRGlk9o +jaFduAz0hKk+QG5SgePXMph5ZRXGRq0FnDbF2gZ7WV+jZiIhsYGJ43+RBWHh4HO4 +P4h9eOWQG8AxpDRmOo2KmyPbV0V/eltC4N0oOAmWz+i0qqulnpG4dOzQKpinRBBr +jPt5 -----END CERTIFICATE----- diff --git a/experimental/packages/otlp-grpc-exporter-base/test/certs/client.csr b/experimental/packages/otlp-grpc-exporter-base/test/certs/client.csr index e5de7b1912..b783896725 100644 --- a/experimental/packages/otlp-grpc-exporter-base/test/certs/client.csr +++ b/experimental/packages/otlp-grpc-exporter-base/test/certs/client.csr @@ -2,27 +2,27 @@ MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGQ2xp ZW50MRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQDAXNRfTvDnArvMbKZzdTDcHHFGQsfpbIdRedE+Q9CDZsc9618Yp05D -PkIxbCdPYhfDJoKLiPssZk2sjJVu993VHP10PXFfRkcFlZRdUZ6GKe5l1cDJ86PN -LOwhlnPoHpYqni1IMxiKKuGxk6dXhHgdihif8PBNm0y7OWugdKR4ULlV2fj6tBNF -M5dsD3PlsI3mchkVOD21s1+mzfkdOT38avD14SeiZ7dI/KTaBf11OpjiGEMkG0xx -CkfKgdkl6Ofg9STpUYqH1rSuMLER/8DZu4+7au+VHs4TnqqemFOjMBp3mtZaGuuS -vgwxv6xcr8UpQ0v+d4I8ihkqmKHfKXr78rSo7VJsOsV+YuZxZ3/sKypjB+hA3h5u -ty0Xgb/wqghK2LeJFdzZHSLh5r+2SHUX4Qz3SvEP5MwJUU19ucCv8Vp+QqqUiigl -MLpBM3HFduuilOLBut/+G8r+sxOts/OO9j+rvjhkmZQ8c5y9AQYPYohxWIqKcLIQ -XxXLMzwkjrNUjvF2R/uiecqSgcwT+2gLMiX5Tx1hk1AQAmPWQlP+4sCBe2BT22v7 -XplTC5IO+aGBlaMNA5aeeY0L68zK+yGkgQsRVCRCn+buhkjaLSVpkHR2LWuUhyo/ -668hUFeaqfZgX4muQ1p4x4oxWU6PnPyi64JJs34G0+KlaZ7sSmoVzQIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBAAtbvw2rrtnO5EeOF1Z+mJc9o3036liNbmCQTaC7 -Pf2yqo3Zk44L80R99sX5rDoq79MKEr//ED5C410EiCvzX42w330p7dasuoYRAwLw -YB0UwWnrKhm4SU20SC8zpnCUBL6K9lmXF2PJtkoMgFAnB8tIEc+DAr4hBIqh45vD -VgZ06GHH94/G6tIW3qNvi1mmvUYV0i6D3xBhcNAu6R/zopEYM3png24ZE2IlzZCX -x8hbYuMAqeQXSHQM9sKhXeb60GT8ns7d3P17S/TfpkTI7zRMkPhzsHC/Vp97xN/n -ojEEBY3MZJBPZj/q/buDfbp5x6H7/YxYdOKQKaGVWECGabISBcsg8NxaY++GKc+u -10C8O9KILRCJKGh8ze7chXx5n5+BPEoVVwhLn58eV7sOODvb4kZySUJHvFBb0ZM/ -7626K3443e5ZRkGXydvDIwPZgoiJ3L1L9+olL1cJ5rsRE6L5k6vPuJOeZITm4au2 -pE0THMHx/RjCMA1Lb/0BiDqbBHSh8hh+mHU7YXTq1Fxi2dSas0wAxcTBRs8TULsV -o57TmJqF+byiqwQvugyN7tndvWg9c+LDJHqitA5QC1GDXEi/bdjd7YeHRiL+ciVM -ZXXU9GT1O78O+84wbIDebahn8cifdGa7Kft7GftS3pCIyAjU9+eMXyT1JG3nssLr -4/ht +ggIKAoICAQDXsElxp7glLD3Dp1z6u0lBUy2kjOtsdhZya82+q53vCmEOteZeg3dj +ZuzK7bR1iVAUEuogwrBBpRfwFmDuWnVbmfl3/kvjaFjFz01LiWKvuVRHgEvDzCK4 +pLAPDaZ9IQDDUw63f3jV0OVuMy0DqlFpynLhND9TO4CN/631/fyV5GX1JpEBijkr +2t6iRznBuwXO76myZ5BXmyMPO3toh8TZ1H+SKCZq1GjjHRYkMhwQaCck1Sd8KVH6 ++kNvndLCMnrPT1d9w2wfA8ihnTn2y4OGJirJwL58qQtKdl8PcgJx5UF9uzYHKrX8 +3Dl8d0JTT8UAxd6DR84vBg+8rHsdc+z0SLGZS1UC7IQHTnwPp2pLT3s4+dkfFQbV +msYFRSOyAOV9ta3ktubdNZPxlzXMiCcVuSks9NG9YfPpqc9J9EdzM9x7mcmwF4OW +52fvdYznkJk7dPHjF48ABgpcXDqn67LHw7zp1EmYw6cxBg2lbhRlTwPYUf3ijQX6 +Oufa7+OaWIbcaBy89SyVqGdbnoJiqxhdcNeitOZOZqc8B+n86g882xdccspxl8n2 +yKrL7AZ4rlhpoTI5X0+fpdFRthoLA+2Io7+kldGGa1X/OYgOaul3SkwbimJop2RG +53hI8PZHPZsjHguYpO8B7pLAPwUHI2tUz8AeGUWzxHH4tohcW7bEswIDAQABoAAw +DQYJKoZIhvcNAQELBQADggIBACboOarzimaArw3lDm6ET5yiU7NxTWtnWwFUOoSh +qS2cvumnCokUlrDyMSSKoHl2i2biUd9uiHuEqlh0yufNgnTsyAXLg0UiBHAv5Tos +Esc5A+JTV5ehy+Zrjpl3Ayh8difS8hJEBjMhH+7rCN3rhpvwkTSaXDCQTBzWPhQ1 +R0EIho/SNOh5mXQKAUWwhtleI0sEJC/PqezGfN+w+URHnzE7YMwg02bvoMxBEror +YVddG4o0nIyd6CPg++K7TBzYGGOf1CUCrI9S1bBn3jcv2mq5YgZMdLEa0HkA9XzU +J/dTSGz5pJbkoaX9IHv8a3uoc+V1jdNWZRmTUYG/cNoAFISoG+uuJLgesF5l+vxx +GUwkE6wj4bNYR/Pqy5963oDmA3ndBzR1wtCZqIsLX3t3A9fLLtIEgeN/XDSvNDBs +YdwBrx2HTatK7QCJ5e+4ACs6Wc2c1nnDviPddpxUgl0pHKcMbT+xNk7bY5fjl5Qr +wzuBNgvQcsZxNNvI8bs13k/eBmKrKOV2WUP1mHRzSoxPX3gzGRSWCe/7QR51oWlB +Qkb6OGVGLCKPnhIKFeZ6G1Qv8q7/hOOlmWGO4bN7s5fjAKEsm3JV1xrsqSKRofRG +JfdPjQD88jewIAk6xGSMKmc4usQN+y/IfU8yZ57MHSHULccA1Wl/VXfgKCAxS5fK +uXtm -----END CERTIFICATE REQUEST----- diff --git a/experimental/packages/otlp-grpc-exporter-base/test/certs/client.key b/experimental/packages/otlp-grpc-exporter-base/test/certs/client.key index 9219944ca4..58414d8d59 100644 --- a/experimental/packages/otlp-grpc-exporter-base/test/certs/client.key +++ b/experimental/packages/otlp-grpc-exporter-base/test/certs/client.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/otlp-grpc-exporter-base/test/certs/regenerate.sh b/experimental/packages/otlp-grpc-exporter-base/test/certs/regenerate.sh index e1f1af5b54..84637be753 100755 --- a/experimental/packages/otlp-grpc-exporter-base/test/certs/regenerate.sh +++ b/experimental/packages/otlp-grpc-exporter-base/test/certs/regenerate.sh @@ -8,15 +8,15 @@ rm ca.crt ca.key client.crt client.csr client.key server.crt server.csr server.key -openssl genrsa -nodes -des3 -out ca.key 4096 -openssl req -nodes -new -x509 -days 365 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" +openssl genrsa -out ca.key 4096 +openssl req -new -x509 -days 365 -key ca.key -out ca.crt -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Root/OU=Test/CN=ca" -openssl genrsa -nodes -des3 -out server.key 4096 -openssl req -nodes -new -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" -openssl x509 -req -nodes -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt -openssl rsa -nodes -in server.key -out server.key +openssl genrsa -out server.key 4096 +openssl req -new -key server.key -out server.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Server/CN=localhost" +openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt +openssl rsa -in server.key -out server.key -openssl genrsa -nodes -des3 -out client.key 4096 -openssl req -nodes -new -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" -openssl x509 -nodes -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt -openssl rsa -nodes -in client.key -out client.key +openssl genrsa -out client.key 4096 +openssl req -new -key client.key -out client.csr -subj "/C=CL/ST=RM/L=OpenTelemetryTest/O=Test/OU=Client/CN=localhost" +openssl x509 -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out client.crt +openssl rsa -in client.key -out client.key diff --git a/experimental/packages/otlp-grpc-exporter-base/test/certs/server.crt b/experimental/packages/otlp-grpc-exporter-base/test/certs/server.crt index 09094e4526..ace156a29e 100644 --- a/experimental/packages/otlp-grpc-exporter-base/test/certs/server.crt +++ b/experimental/packages/otlp-grpc-exporter-base/test/certs/server.crt @@ -1,31 +1,31 @@ -----BEGIN CERTIFICATE----- MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v -dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjEwNjA3MjAyNzMyWhcN -MjIwNjA3MjAyNzMyWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjMwNjA4MTY0NDI0WhcN +MjQwNjA3MTY0NDI0WjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV BAcMEU9wZW5UZWxlbWV0cnlUZXN0MQ0wCwYDVQQKDARUZXN0MQ8wDQYDVQQLDAZT ZXJ2ZXIxEjAQBgNVBAMMCWxvY2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIP -ADCCAgoCggIBANaRv7jpdEedG0CQ/LoJEXuE32eZXzar45u05wq5CzqnUlYdHyx8 -cgCJJ44KThFXiOzgELFiiwjxmPo1CDLqGp8vEDHntvhxLhw/mFy/aa7YrCv1/1eX -0+cEvNUyoikjHKXECI7sV1ZVMrimGKXQNqRfub1JbJ+IzL+kp6MRtdA6GzxsU0Dg -Wwf7IQxtCQ4Tw3onJ3P3NZAkgz6zCVhOVkR7DuqGulzTQDa//mWwKQJie5wscURj -vLsJ0prS16Tc/5yXijwRjwx8ZEoDrJ5KszoMQwKIoLN7wHBo2r8/8RQsOGTVMJ1I -9kOkH3s9clswxCrnpzdNNmyIwTWaQ6CqpQpp0unGimF3VokanHhOhcpkWfzDArmU -jL4PIFBQBJvHIEKbuhZ4pUYL/6RtgEg2f3xVPe8s0hn/DzwJTgXqEX+TY7WvIKmH -0sMGZ9TZzWe9W64LM2/427+6pfgQOAJDHNLSYpmaa14R+630IMocdY6sj2hoZ9TK -8Ridqn+q+5kIpG/pP7bbzbzsotdzjNb6h7GBlsuyycoOfiP+C6Zs/yUZAAZEsSm0 -e4dXFCccurkXRL7cZJHC/agQhkkvcEP1TpmaygjbucME+h6H0G0St8yzBQwEJdkn -wNmfEhIdjmiX6u/fvPO6VJ5HBxgA5gONJlk+4EbiZTfl2rYauBFhloHzAgMBAAEw -DQYJKoZIhvcNAQELBQADggIBACIJLqVoH8oh8W0/0IF3sxH8LFsGByi0CUPo1JEB -1t3+FqyC7eFC9rDW12LfOKgiZl273OBpCHT8bx3OkoGZ4KwZsbsznyJv/X5OVYFH -5y5Lo8QNGWWMzXoK2JLlYJXZHMaJr5tTFOGqoIvC9C8ibLSAbL0MhtB9L5SvSxAm -mUOKZ/en7ZBepRex/s/rfCWYYTw2Ah02HZc8+H/J/aF3tvChI7Gx0anaSQxS48Ru -3eCaiaBEfoSGQvN9Jc+k1QJgJ4vZ8yi7ndl8pwW97YXo8Sg305ritqpnon+vemsV -rYoqHN+WV2/D0nqNu1AX8PldDvUYTfBtLfS7T5goN7abEIJCaTNmzU2ji0SqI9vJ -j4t9E9KcCKMshbciDrD7RPEPk3vogEDD3uygFwcPwUQfpCUFbRJOnTSH1oB/aUC4 -x9DnYSHBdDvaBmu0pBpoddJ+0pbw02P7YL9kPz5OnOAN06JP4McIYz5ytKoSt/m8 -Z7cUnvn7TRVNLuiapwpB0gtRmb9JY1q3pd63+X0SCaBEtUH+PWcRcS7eDsgMwEym -0CyANhCQYJjcKugIWLYtN/0/p2bIKcRmcH3iJiN2zZtP1AF6G7a4mp+21OynvFOc -3+ojTDGJxxD3uPtKEhJXRgYMOmfAEn3rgtoln1kkNYcd7f2EIulckwB2yeM1IMud -0le7 +ADCCAgoCggIBAKtVnxPqCZheCuqePfLknxc+6MeyYkf494U8WWeZo+yirYV3zY70 +1KhKZ+M+XDqhrBXc7IQHZd2KKxYBGnrv9yvbllmtZRdnk3hnn8B4eNh3w5gCRKPo +GSTeiNN7WEIRwYZNkr8AWgeoYT1jN8SAMn5+qSqKSd62Z1BPJNi0eQmTVxgLZqzx +92AWBZQl9rOme+1zV6ohKcR22Of3yUl6476L1rYYcX0DXp0QFkhK0TFKNt3cHxqq +WTRuMTnyCj7woWRtwclWTdO2buAkJe8cIde6rcbaUAX9jTdkbAgYAB9MctEKqasO +MqFyMzweS3sG9oUnmd0/GRL9as314xTZuz8fFnfj5l0BN6thVMmvEEYU3rTLQRKf +AKWzI2VrU+5wIxN8O/4ZbriQ5ae13p6TDYilSZ6kMxSzfOM/A00hlA+DKMS0o8g8 +V9Y3wcl3aSSjoZbH7XS/uDEueodudz9V3HxCk7Wc41SpunQPFprmPDWtjiW0jcMD +3kHV819r2F8aidKN94Q+3KI+N/mwn1QdDVsquiCq0wbR54i3CoAkQbi5YeUdEZD6 +/mNLs/BABgzSbANw7Fn1Pd9gY/JIsRhMskcFRqXe9tOqKk8/GxMv/r9MgJn6HHlk +iDa3OZsoOtFbjjOPFoy/Xq9YMi4ODnJkEhe7BSsVl/wkDAUdg7Zfu8XVAgMBAAEw +DQYJKoZIhvcNAQELBQADggIBAEft+R+qGyKffiiJpYWLPn0C9SmpjZiWPK331n57 +Nk3GA8u9gRgD1gyqqLr19r86nLArF8jcB/nChPB1A9ysW3xyTNvpOlAwYvEjxWR2 +tJr8wiDucAd+SnQud6e+5PI5e8LnyxYoeoZ+i6hMbhNV70NthoINHMAQx+5NeSpa +Q0GJ4d0XA3W/8Pu6oK7O0QkVovVut73Koz5DqsF91zFJp7SjVKaCnnjRKyU8wbg5 +uTO0TRheEtx3AeEXNps5Yhq0daLTnmnuFeyaJHm2F1QuBmma1TTwIF3HDclv2wLn +Jp+MWG9yoN9oEJLqS/AvDu1BltPSuvnYgLZr7cl0os+TEqpzxroa4ziE98dEiy0D +K4YQ59UTz6C8Ps0uX0hcs3jsvZOkBWptusvJBfZN59xLJAVmF2igkgIBKoiXvXmv +fXDx0hsOBg2IPe2O8lLHlFKlJZlMc+prH1iD0Xv6HefSP4L1eZHU37zjrRf/GiNX +r6GoEhJR2pKEoZQT81xpYp/w+qjzWcTl/mLD6FEePRzV92h3ubjRWBB36UhLtnEG +LJgp7yq3aGu7rg9rnuz8J6DG8DStE9rNuRjkV1O2C/PvR97XmVoIqbrMlxX9MUQJ +XxLm5dqBz7EVuhDJSyp4zCkDYsOj1y/SLL2O3cTyQQeZg6jlqripNqWnviAdTWe5 +JIPp -----END CERTIFICATE----- diff --git a/experimental/packages/otlp-grpc-exporter-base/test/certs/server.csr b/experimental/packages/otlp-grpc-exporter-base/test/certs/server.csr index bb61322340..b421a7a60c 100644 --- a/experimental/packages/otlp-grpc-exporter-base/test/certs/server.csr +++ b/experimental/packages/otlp-grpc-exporter-base/test/certs/server.csr @@ -2,27 +2,27 @@ MIIErzCCApcCAQAwajELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQH DBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEVGVzdDEPMA0GA1UECwwGU2Vy dmVyMRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw -ggIKAoICAQDWkb+46XRHnRtAkPy6CRF7hN9nmV82q+ObtOcKuQs6p1JWHR8sfHIA -iSeOCk4RV4js4BCxYosI8Zj6NQgy6hqfLxAx57b4cS4cP5hcv2mu2Kwr9f9Xl9Pn -BLzVMqIpIxylxAiO7FdWVTK4phil0DakX7m9SWyfiMy/pKejEbXQOhs8bFNA4FsH -+yEMbQkOE8N6Jydz9zWQJIM+swlYTlZEew7qhrpc00A2v/5lsCkCYnucLHFEY7y7 -CdKa0tek3P+cl4o8EY8MfGRKA6yeSrM6DEMCiKCze8BwaNq/P/EULDhk1TCdSPZD -pB97PXJbMMQq56c3TTZsiME1mkOgqqUKadLpxophd1aJGpx4ToXKZFn8wwK5lIy+ -DyBQUASbxyBCm7oWeKVGC/+kbYBINn98VT3vLNIZ/w88CU4F6hF/k2O1ryCph9LD -BmfU2c1nvVuuCzNv+Nu/uqX4EDgCQxzS0mKZmmteEfut9CDKHHWOrI9oaGfUyvEY -nap/qvuZCKRv6T+228287KLXc4zW+oexgZbLssnKDn4j/gumbP8lGQAGRLEptHuH -VxQnHLq5F0S+3GSRwv2oEIZJL3BD9U6ZmsoI27nDBPoeh9BtErfMswUMBCXZJ8DZ -nxISHY5ol+rv37zzulSeRwcYAOYDjSZZPuBG4mU35dq2GrgRYZaB8wIDAQABoAAw -DQYJKoZIhvcNAQELBQADggIBALQRbWtd7VIT7PI0g2TJY2nyFDZ+iNLlsqtlTQ+3 -9tDUNf911AyXGFBH2OaIg49UEl3Dn3ErAH6nZluZhRNjZRUYfE2dSEVYoeAA3SmE -FElARM1CX4dQUDnV++RLLRIKKGfcnwU+vSEWN4QfXs9qjI2UK80CBr6kPEt+bMfR -wUIax5HT1XLECoLph1rNza0h3WNk5ndEJMAt51U0JNAi6PwDF04ZfnX5E2RtiEjV -+3DPW1HYlX2hepkXVJPB568bbpmWLrmJsHjVZy4vmDoQi2bzS/QPsepgQ3aXxNel -vTxh0Or5SdIRRfNnP/Ov/aYjBxzkcKY83ADh7h1aqMOlUyFenHoMfTWnMYkeNY+1 -dOoLUS/ZNA6IH54UO7uY0uOcwCfRPYZzDxZI0IkjogX0aizixSs5duQx0ux3sUOo -a4zxMNPd89ppbCMZDS7biC7cOAsdDYXKcE5ijpc5CQXVo4/dA2xyfisRT7WUq9ay -vmQoYfMCAkGv47BVYhzASyPIXuFP2/HDbtnBvZ2aeSuMAwhHzj3vX9js2HGy7t2V -kj36LymQv+YBp9mV9/crSqy0DNFAYOWOuig0mQX/SPedGa4jf9v4OhANi+kzgxtQ -hBTcA0OtJyrVxesVGGK0YwaQIIZ8jwhsK3ljlZpOfVUflHl2/etME1DXtU37U9xA -fuw0 +ggIKAoICAQCrVZ8T6gmYXgrqnj3y5J8XPujHsmJH+PeFPFlnmaPsoq2Fd82O9NSo +SmfjPlw6oawV3OyEB2XdiisWARp67/cr25ZZrWUXZ5N4Z5/AeHjYd8OYAkSj6Bkk +3ojTe1hCEcGGTZK/AFoHqGE9YzfEgDJ+fqkqiknetmdQTyTYtHkJk1cYC2as8fdg +FgWUJfazpnvtc1eqISnEdtjn98lJeuO+i9a2GHF9A16dEBZIStExSjbd3B8aqlk0 +bjE58go+8KFkbcHJVk3Ttm7gJCXvHCHXuq3G2lAF/Y03ZGwIGAAfTHLRCqmrDjKh +cjM8Hkt7BvaFJ5ndPxkS/WrN9eMU2bs/HxZ34+ZdATerYVTJrxBGFN60y0ESnwCl +syNla1PucCMTfDv+GW64kOWntd6ekw2IpUmepDMUs3zjPwNNIZQPgyjEtKPIPFfW +N8HJd2kko6GWx+10v7gxLnqHbnc/Vdx8QpO1nONUqbp0Dxaa5jw1rY4ltI3DA95B +1fNfa9hfGonSjfeEPtyiPjf5sJ9UHQ1bKrogqtMG0eeItwqAJEG4uWHlHRGQ+v5j +S7PwQAYM0mwDcOxZ9T3fYGPySLEYTLJHBUal3vbTqipPPxsTL/6/TICZ+hx5ZIg2 +tzmbKDrRW44zjxaMv16vWDIuDg5yZBIXuwUrFZf8JAwFHYO2X7vF1QIDAQABoAAw +DQYJKoZIhvcNAQELBQADggIBAJCMEdjKyklN2izvOhd7+JMXm/ClW3hjowbu+csO +JNz8NqUNLrKJjFyV3yAUGWuyp3z982S+XGfcm3nU7n9AJOjT4DLJId6opOtA6CSp +KTRgVZmeViL6O6UqBLTacz5DDjwMQXxszc+QpU53cMT6Y7VMvIOhQ6AmIvz1v71u +5gaYmlbfXVlmiPHEKRsQG9/DNIPe1mHP0p+S9qYKmCx7Jlpee7IstW/hNjt7alDn +uFaxFjxmCCSdWaMRyMW/qNRks9q3VdhJPan+amFeXceoEG7SOKiFiOc8A7DribSm +iKc2YlOw14xqc+cJutiKBvoBMri2eh1JgCbPT4ufVGFpbDkfYwAJxWx44Eg0X90j +gJUw8IRuHQZkEYss6jwFMFcOqjpe+AqrssOl4GZmu5gcaiUnj8PkSVZLTOrLilPg +sSDjzmoHdv4QcBppTrjj6PyR5Xd6DeGasWkMPvIPjiPN3mOhfxJ3C87atMqOhTLx +em7vFOBegAW6g40J9JD1XMoI/zFnTU8NevZQgCyx/Tq1XNRmUeMA6y/qpfTNKi/f +F7v/7nDWoxBgpOw3J0E9R+6rxD7Cjb2RWZEf20ZGdNBlPE+UG9c9b3HC3IHiwRHb +L9Fi0251w+fkaPX8dojQKErCEknqJ1SCP5S5F5g1QCQby22Y7LQsggMMf94s/wQX +4uMh -----END CERTIFICATE REQUEST----- diff --git a/experimental/packages/otlp-grpc-exporter-base/test/certs/server.key b/experimental/packages/otlp-grpc-exporter-base/test/certs/server.key index ddac188c23..80b9cea7bf 100644 --- a/experimental/packages/otlp-grpc-exporter-base/test/certs/server.key +++ b/experimental/packages/otlp-grpc-exporter-base/test/certs/server.key @@ -1,51 +1,51 @@ -----BEGIN RSA PRIVATE KEY----- -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 -----END RSA PRIVATE KEY----- diff --git a/experimental/packages/otlp-grpc-exporter-base/test/util.test.ts b/experimental/packages/otlp-grpc-exporter-base/test/util.test.ts index c25f086f8c..967ece6716 100644 --- a/experimental/packages/otlp-grpc-exporter-base/test/util.test.ts +++ b/experimental/packages/otlp-grpc-exporter-base/test/util.test.ts @@ -47,6 +47,11 @@ describe('validateAndNormalizeUrl()', () => { input: 'https://api.datacat.io:1234', expected: 'api.datacat.io:1234', }, + { + name: 'should accept unix socket', + input: 'unix:///tmp/grpc.sock', + expected: 'unix:///tmp/grpc.sock', + }, { name: 'bad protocol should warn but return host:port', input: 'badproto://api.datacat.io:1234', diff --git a/experimental/packages/otlp-proto-exporter-base/package.json b/experimental/packages/otlp-proto-exporter-base/package.json index 29018d61b4..0587dc9de5 100644 --- a/experimental/packages/otlp-proto-exporter-base/package.json +++ b/experimental/packages/otlp-proto-exporter-base/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/otlp-proto-exporter-base", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenTelemetry OTLP-HTTP-protobuf Exporter base (for internal use only)", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -24,7 +24,7 @@ "submodule": "git submodule sync --recursive && git submodule update --init --recursive", "version": "node ../../../scripts/version-update.js", "watch": "npm run protos && tsc -w tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile" }, "keywords": [ @@ -59,16 +59,18 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "protobufjs-cli": "1.0.2", - "sinon": "15.0.0", + "protobufjs-cli": "1.1.1", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -77,9 +79,10 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.1", - "protobufjs": "^7.1.2" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/otlp-exporter-base": "0.40.0", + "protobufjs": "^7.2.3", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-proto-exporter-base", "sideEffects": false diff --git a/experimental/packages/otlp-proto-exporter-base/protos b/experimental/packages/otlp-proto-exporter-base/protos index c5c8b28012..1608f92cf0 160000 --- a/experimental/packages/otlp-proto-exporter-base/protos +++ b/experimental/packages/otlp-proto-exporter-base/protos @@ -1 +1 @@ -Subproject commit c5c8b28012583fda55b0cb16f73a820722171d49 +Subproject commit 1608f92cf08119f9aec237c910b200d1317ec696 diff --git a/experimental/packages/otlp-proto-exporter-base/src/platform/util.ts b/experimental/packages/otlp-proto-exporter-base/src/platform/util.ts index c6e1272816..2fe428b432 100644 --- a/experimental/packages/otlp-proto-exporter-base/src/platform/util.ts +++ b/experimental/packages/otlp-proto-exporter-base/src/platform/util.ts @@ -16,6 +16,7 @@ import * as root from '../generated/root'; import { ServiceClientType } from './types'; +import type * as protobuf from 'protobufjs'; export interface ExportRequestType unknown }> { create(properties?: T): R; diff --git a/experimental/packages/otlp-transformer/package.json b/experimental/packages/otlp-transformer/package.json index cc1e43642e..4e2a831389 100644 --- a/experimental/packages/otlp-transformer/package.json +++ b/experimental/packages/otlp-transformer/package.json @@ -4,7 +4,7 @@ "publishConfig": { "access": "public" }, - "version": "0.39.1", + "version": "0.40.0", "description": "Transform OpenTelemetry SDK data into OTLP", "module": "build/esm/index.js", "esnext": "build/esnext/index.js", @@ -13,6 +13,7 @@ "repository": "open-telemetry/opentelemetry-js", "scripts": { "prepublishOnly": "npm run compile", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", "lint": "eslint . --ext .ts", @@ -20,6 +21,7 @@ "tdd": "npm run test -- --watch-extensions ts --watch", "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", "test:browser": "nyc karma start --single-run", + "prewatch": "node ../../../scripts/version-update.js", "watch": "tsc --build -w tsconfig.json tsconfig.esm.json tsconfig.esnext.json", "peer-api-check": "node ../../../scripts/peer-api-check.js", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" @@ -56,19 +58,19 @@ }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@opentelemetry/api-logs": "0.39.1", - "@opentelemetry/sdk-logs": "0.39.1", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", @@ -76,12 +78,13 @@ "webpack": "4.46.0" }, "dependencies": { - "@opentelemetry/api-logs": "0.39.1", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-logs": "0.39.1", - "@opentelemetry/sdk-metrics": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0" + "@opentelemetry/api-logs": "0.40.0", + "@opentelemetry/core": "1.14.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-logs": "0.40.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-transformer", "sideEffects": false diff --git a/experimental/packages/otlp-transformer/src/common/types.ts b/experimental/packages/otlp-transformer/src/common/types.ts index 8b30231e74..159a595ba9 100644 --- a/experimental/packages/otlp-transformer/src/common/types.ts +++ b/experimental/packages/otlp-transformer/src/common/types.ts @@ -21,6 +21,12 @@ export interface IInstrumentationScope { /** InstrumentationScope version */ version?: string; + + /** InstrumentationScope attributes */ + attributes?: IKeyValue[]; + + /** InstrumentationScope droppedAttributesCount */ + droppedAttributesCount?: number; } /** Properties of a KeyValue. */ diff --git a/experimental/packages/otlp-transformer/src/logs/types.ts b/experimental/packages/otlp-transformer/src/logs/types.ts index 3d3e610bc7..05709af6f5 100644 --- a/experimental/packages/otlp-transformer/src/logs/types.ts +++ b/experimental/packages/otlp-transformer/src/logs/types.ts @@ -27,6 +27,19 @@ export interface IExportLogsServiceRequest { resourceLogs?: IResourceLogs[]; } +export interface IExportLogsServiceResponse { + /** ExportLogsServiceResponse partialSuccess */ + partialSuccess?: IExportLogsPartialSuccess; +} + +export interface IExportLogsPartialSuccess { + /** ExportLogsPartialSuccess rejectedLogRecords */ + rejectedLogRecords?: number; + + /** ExportLogsPartialSuccess errorMessage */ + errorMessage?: string; +} + /** Properties of a ResourceLogs. */ export interface IResourceLogs { /** ResourceLogs resource */ diff --git a/experimental/packages/otlp-transformer/src/metrics/types.ts b/experimental/packages/otlp-transformer/src/metrics/types.ts index 6db9c17a9b..2728ab1aba 100644 --- a/experimental/packages/otlp-transformer/src/metrics/types.ts +++ b/experimental/packages/otlp-transformer/src/metrics/types.ts @@ -22,6 +22,19 @@ export interface IExportMetricsServiceRequest { resourceMetrics: IResourceMetrics[]; } +export interface IExportMetricsServiceResponse { + /** ExportMetricsServiceResponse partialSuccess */ + partialSuccess?: IExportMetricsPartialSuccess; +} + +export interface IExportMetricsPartialSuccess { + /** ExportMetricsPartialSuccess rejectedDataPoints */ + rejectedDataPoints?: number; + + /** ExportMetricsPartialSuccess errorMessage */ + errorMessage?: string; +} + /** Properties of a ResourceMetrics. */ export interface IResourceMetrics { /** ResourceMetrics resource */ diff --git a/experimental/packages/otlp-transformer/src/trace/types.ts b/experimental/packages/otlp-transformer/src/trace/types.ts index 08e52c7a06..a6cfb82ad7 100644 --- a/experimental/packages/otlp-transformer/src/trace/types.ts +++ b/experimental/packages/otlp-transformer/src/trace/types.ts @@ -23,6 +23,19 @@ export interface IExportTraceServiceRequest { resourceSpans?: IResourceSpans[]; } +export interface IExportTraceServiceResponse { + /** ExportTraceServiceResponse partialSuccess */ + partialSuccess?: IExportTracePartialSuccess; +} + +export interface IExportTracePartialSuccess { + /** ExportLogsServiceResponse rejectedLogRecords */ + rejectedSpans?: number; + + /** ExportLogsServiceResponse errorMessage */ + errorMessage?: string; +} + /** Properties of a ResourceSpans. */ export interface IResourceSpans { /** ResourceSpans resource */ diff --git a/experimental/packages/sdk-logs/package.json b/experimental/packages/sdk-logs/package.json index f4222cb545..be245fbe15 100644 --- a/experimental/packages/sdk-logs/package.json +++ b/experimental/packages/sdk-logs/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/sdk-logs", - "version": "0.39.1", + "version": "0.40.0", "publishConfig": { "access": "public" }, @@ -41,7 +41,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "node ../../../scripts/version-update.js", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, @@ -73,25 +73,28 @@ }, "devDependencies": { "@opentelemetry/api": ">=1.4.0 <1.5.0", - "@opentelemetry/api-logs": "0.39.1", - "@types/mocha": "10.0.0", + "@opentelemetry/api-logs": "0.40.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "karma": "6.3.16", + "cross-var": "1.1.0", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "14.0.0", + "sinon": "15.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/resources": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/resources": "1.14.0", + "tslib": "^2.3.1" } } diff --git a/experimental/packages/shim-opencensus/README.md b/experimental/packages/shim-opencensus/README.md index e614fccf38..e79cfc0f43 100644 --- a/experimental/packages/shim-opencensus/README.md +++ b/experimental/packages/shim-opencensus/README.md @@ -15,7 +15,64 @@ npm install --save @opentelemetry/shim-opencensus ## Usage -TODO +### Installing the shim's require-in-the-middle hook + +This is the recommended way to use the shim. + +This package provides a `require-in-the-middle` hook which replaces OpenCensus's `CoreTracer` +class with a shim implementation that writes to the OpenTelemetry API. This will cause all +usage of OpenCensus's tracing methods (in OpenCensus instrumentation or your own custom +instrumentation) to be reported to OpenTelemetry. + +There are two options for installing the hook: + +1. Using Node's `--require` flag to load the register module: + + ```sh + node --require @opentelemetry/shim-opencensus/register ./app.js + ``` + +2. Programmatically: + + ```js + // Early in your application startup + require('@opentelemetry/shim-opencensus').installShim(); + ``` + + Note that this has to be run before any OpenCensus tracers have been created. + +### Replace OpenCensus tracer with the `ShimTracer` in your code + +Alternatively, you can replace any usage of OpenCensus tracers in your code with the `ShimTracer` directly. + +Before: + +```js +const tracing = require('@opencensus/nodejs'); +const tracer = tracing.start({samplingRate: 1}).tracer; + +// ... + +tracer.startRootSpan({name: 'main'}, rootSpan => { + rootSpan.end(); +}); +``` + +After: + +```js +const { trace } = require('@opentelemetry/api'); +const { ShimTracer } = require('@opentelemetry/shim-opencensus'); +const tracer = new ShimTracer(trace.getTracer('my-module')); + +// ... + +tracer.startRootSpan({name: 'main'}, rootSpan => { + rootSpan.end(); +}); +``` + +## Example See [examples/opencensus-shim](https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/examples/opencensus-shim) for a short example. diff --git a/experimental/packages/shim-opencensus/package.json b/experimental/packages/shim-opencensus/package.json index 202f8e2d67..636efed876 100644 --- a/experimental/packages/shim-opencensus/package.json +++ b/experimental/packages/shim-opencensus/package.json @@ -1,9 +1,13 @@ { "name": "@opentelemetry/shim-opencensus", - "version": "0.39.1", + "version": "0.40.0", "description": "OpenCensus to OpenTelemetry shim", "main": "build/src/index.js", "types": "build/src/index.d.ts", + "exports": { + ".": "./build/src/index.js", + "./register": "./build/src/register.js" + }, "repository": "open-telemetry/opentelemetry-js", "scripts": { "prepublishOnly": "npm run compile", @@ -16,7 +20,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../../scripts/version-update.js", "watch": "tsc --build --watch", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../../scripts/peer-api-check.js" }, @@ -44,17 +48,19 @@ "access": "public" }, "devDependencies": { - "@opentelemetry/context-async-hooks": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", "@opencensus/core": "0.1.0", "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", + "@opentelemetry/context-async-hooks": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", - "@types/sinon": "10.0.13", + "sinon": "15.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, @@ -63,9 +69,10 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "require-in-the-middle": "^7.0.0", - "semver": "^7.3.5" + "@opentelemetry/core": "1.14.0", + "require-in-the-middle": "^7.1.1", + "semver": "^7.5.1", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/shim-opencensus", "sideEffects": false diff --git a/experimental/packages/shim-opencensus/src/index.ts b/experimental/packages/shim-opencensus/src/index.ts index ccfe42e2f8..5df2f6c315 100644 --- a/experimental/packages/shim-opencensus/src/index.ts +++ b/experimental/packages/shim-opencensus/src/index.ts @@ -15,3 +15,4 @@ */ export { ShimTracer } from './ShimTracer'; +export { installShim, uninstallShim } from './shim'; diff --git a/integration-tests/propagation-validation-server/package.json b/integration-tests/propagation-validation-server/package.json index 88846f5d9f..880251c503 100644 --- a/integration-tests/propagation-validation-server/package.json +++ b/integration-tests/propagation-validation-server/package.json @@ -1,6 +1,6 @@ { "name": "propagation-validation-server", - "version": "1.13.0", + "version": "1.14.0", "description": "server for w3c tests", "main": "validation_server.js", "private": true, @@ -12,12 +12,13 @@ }, "dependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/context-async-hooks": "1.13.0", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", + "@opentelemetry/context-async-hooks": "1.14.0", + "@opentelemetry/core": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", "axios": "1.4.0", "body-parser": "1.19.0", - "express": "4.17.3" + "express": "4.17.3", + "tslib": "^2.3.1" }, "devDependencies": { "typescript": "4.4.4" diff --git a/lerna.json b/lerna.json index 14fb76982e..f0053f3ed7 100644 --- a/lerna.json +++ b/lerna.json @@ -6,7 +6,7 @@ "packages/*", "experimental/packages/*", "experimental/examples/*", - "experimental/backwards-compatability/*", + "experimental/backwards-compatibility/*", "integration-tests/*", "selenium-tests", "examples/otlp-exporter-node", diff --git a/package.json b/package.json index 0d232ef636..c0b6c172ef 100644 --- a/package.json +++ b/package.json @@ -63,23 +63,25 @@ "author": "OpenTelemetry Authors", "license": "Apache-2.0", "devDependencies": { - "@typescript-eslint/eslint-plugin": "5.3.1", - "@typescript-eslint/parser": "5.3.1", + "@typescript-eslint/eslint-plugin": "5.59.11", + "@typescript-eslint/parser": "5.59.11", "eslint": "8.22.0", "eslint-config-prettier": "8.5.0", "eslint-plugin-header": "3.1.1", "eslint-plugin-node": "11.1.0", "eslint-plugin-prettier": "4.2.1", "gh-pages": "5.0.0", - "lerna": "6.0.3", - "linkinator": "4.0.3", - "markdownlint-cli": "0.32.2", - "prettier": "2.8.0", - "semver": "7.3.5", + "lerna": "7.1.1", + "@lerna/legacy-package-management": "7.1.1", + "linkinator": "5.0.1", + "markdownlint-cli": "0.35.0", + "prettier": "2.8.8", + "semver": "7.5.3", "typedoc": "0.22.18", "typedoc-plugin-missing-exports": "1.0.0", "typedoc-plugin-resolve-crossmodule-references": "0.2.2", - "typescript": "4.4.4" + "typescript": "4.4.4", + "tslib": "^2.3.1" }, "changelog": { "repo": "open-telemetry/opentelemetry-js", diff --git a/packages/opentelemetry-context-async-hooks/package.json b/packages/opentelemetry-context-async-hooks/package.json index efda2f556d..64366b205c 100644 --- a/packages/opentelemetry-context-async-hooks/package.json +++ b/packages/opentelemetry-context-async-hooks/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/context-async-hooks", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry AsyncHooks-based Context Manager", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -15,7 +15,7 @@ "lint": "eslint . --ext .ts", "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -43,12 +43,17 @@ "publishConfig": { "access": "public" }, + "dependencies": { + "tslib": "^2.3.1" + }, "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", "codecov": "3.8.3", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/packages/opentelemetry-context-zone-peer-dep/package.json b/packages/opentelemetry-context-zone-peer-dep/package.json index dfcf81d491..9904e9da84 100644 --- a/packages/opentelemetry-context-zone-peer-dep/package.json +++ b/packages/opentelemetry-context-zone-peer-dep/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/context-zone-peer-dep", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry Context Zone with peer dependency for zone.js", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -18,7 +18,7 @@ "tdd": "karma start", "test:browser": "nyc karma start --single-run", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -53,36 +53,41 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", "@types/zone.js": "0.5.12", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", + "webpack-cli": "4.10.0", "zone.js": "0.11.4" }, "peerDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", "zone.js": "^0.10.2 || ^0.11.0" }, + "dependencies": { + "tslib": "^2.3.1" + }, "sideEffects": false, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-context-zone-peer-dep" } diff --git a/packages/opentelemetry-context-zone/package.json b/packages/opentelemetry-context-zone/package.json index 57d82fcbbc..84a937ce93 100644 --- a/packages/opentelemetry-context-zone/package.json +++ b/packages/opentelemetry-context-zone/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/context-zone", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry Context Zone", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -15,7 +15,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -50,31 +50,34 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", - "@types/mocha": "10.0.0", + "@babel/core": "7.22.5", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", - "karma": "6.3.16", + "cross-var": "1.1.0", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "dependencies": { - "@opentelemetry/context-zone-peer-dep": "1.13.0", - "zone.js": "^0.11.0" + "@opentelemetry/context-zone-peer-dep": "1.14.0", + "zone.js": "^0.11.0", + "tslib": "^2.3.1" }, "sideEffects": true, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-context-zone" diff --git a/packages/opentelemetry-core/package.json b/packages/opentelemetry-core/package.json index 5900c8d204..23e11a9e5c 100644 --- a/packages/opentelemetry-core/package.json +++ b/packages/opentelemetry-core/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/core", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry Core provides constants and utilities shared by all OpenTelemetry SDK packages.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -28,7 +28,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -65,22 +65,23 @@ }, "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "lerna": "6.0.3", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", @@ -90,7 +91,8 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core", "sideEffects": false diff --git a/packages/opentelemetry-core/src/utils/environment.ts b/packages/opentelemetry-core/src/utils/environment.ts index 1ab79176da..fda6e103b7 100644 --- a/packages/opentelemetry-core/src/utils/environment.ts +++ b/packages/opentelemetry-core/src/utils/environment.ts @@ -27,7 +27,7 @@ const DEFAULT_LIST_SEPARATOR = ','; const ENVIRONMENT_BOOLEAN_KEYS = ['OTEL_SDK_DISABLED'] as const; type ENVIRONMENT_BOOLEANS = { - [K in typeof ENVIRONMENT_BOOLEAN_KEYS[number]]?: boolean; + [K in (typeof ENVIRONMENT_BOOLEAN_KEYS)[number]]?: boolean; }; function isEnvVarABoolean(key: unknown): key is keyof ENVIRONMENT_BOOLEANS { @@ -63,7 +63,7 @@ const ENVIRONMENT_NUMBERS_KEYS = [ ] as const; type ENVIRONMENT_NUMBERS = { - [K in typeof ENVIRONMENT_NUMBERS_KEYS[number]]?: number; + [K in (typeof ENVIRONMENT_NUMBERS_KEYS)[number]]?: number; }; function isEnvVarANumber(key: unknown): key is keyof ENVIRONMENT_NUMBERS { @@ -78,7 +78,7 @@ const ENVIRONMENT_LISTS_KEYS = [ ] as const; type ENVIRONMENT_LISTS = { - [K in typeof ENVIRONMENT_LISTS_KEYS[number]]?: string[]; + [K in (typeof ENVIRONMENT_LISTS_KEYS)[number]]?: string[]; }; function isEnvVarAList(key: unknown): key is keyof ENVIRONMENT_LISTS { diff --git a/packages/opentelemetry-exporter-jaeger/package.json b/packages/opentelemetry-exporter-jaeger/package.json index 6dfc53b45c..3b4164d3f9 100644 --- a/packages/opentelemetry-exporter-jaeger/package.json +++ b/packages/opentelemetry-exporter-jaeger/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-jaeger", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry Exporter Jaeger allows user to send collected traces to Jaeger", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -16,7 +16,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -45,15 +45,17 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/resources": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/resources": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "mocha": "10.0.0", - "nock": "13.0.11", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", + "nock": "13.3.1", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, @@ -61,10 +63,11 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0", - "jaeger-client": "^3.15.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "jaeger-client": "^3.15.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-exporter-jaeger", "sideEffects": false diff --git a/packages/opentelemetry-exporter-zipkin/package.json b/packages/opentelemetry-exporter-zipkin/package.json index a6c0e26d47..bbe473b650 100644 --- a/packages/opentelemetry-exporter-zipkin/package.json +++ b/packages/opentelemetry-exporter-zipkin/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/exporter-zipkin", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry Zipkin Exporter allows the user to send collected traces to Zipkin.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -26,7 +26,7 @@ "test:browser": "nyc karma start --single-run", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -60,40 +60,43 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": "^1.0.0", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", - "nock": "13.0.11", + "lerna": "7.1.1", + "mocha": "10.2.0", + "nock": "13.3.1", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-exporter-zipkin", "sideEffects": false diff --git a/packages/opentelemetry-propagator-b3/package.json b/packages/opentelemetry-propagator-b3/package.json index 31fde1399c..89dcef29be 100644 --- a/packages/opentelemetry-propagator-b3/package.json +++ b/packages/opentelemetry-propagator-b3/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/propagator-b3", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry B3 propagator provides context propagation for systems that are using the B3 header format", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -17,7 +17,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -51,18 +51,21 @@ "access": "public" }, "dependencies": { - "@opentelemetry/core": "1.13.0" + "@opentelemetry/core": "1.14.0", + "tslib": "^2.3.1" }, "peerDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", diff --git a/packages/opentelemetry-propagator-jaeger/package.json b/packages/opentelemetry-propagator-jaeger/package.json index 30aa851011..de2e90601f 100644 --- a/packages/opentelemetry-propagator-jaeger/package.json +++ b/packages/opentelemetry-propagator-jaeger/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/propagator-jaeger", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry Jaeger propagator provides HTTP header propagation for systems that are using Jaeger HTTP header format.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -20,7 +20,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -55,21 +55,23 @@ }, "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", @@ -79,7 +81,8 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0" + "@opentelemetry/core": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-propagator-jaeger", "sideEffects": false diff --git a/packages/opentelemetry-resources/package.json b/packages/opentelemetry-resources/package.json index a6bb86ecc5..17de24f223 100644 --- a/packages/opentelemetry-resources/package.json +++ b/packages/opentelemetry-resources/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resources", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry SDK resources", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -27,7 +27,7 @@ "tdd": "npm run test -- --watch-extensions ts --watch", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", "version": "node ../../scripts/version-update.js", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -63,34 +63,37 @@ "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", "@opentelemetry/resources_1.9.0": "npm:@opentelemetry/resources@1.9.0", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", - "karma": "6.3.16", + "cross-var": "1.1.0", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", "karma-mocha-webworker": "1.3.0", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", - "nock": "13.0.11", + "lerna": "7.1.1", + "mocha": "10.2.0", + "nock": "13.3.1", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "peerDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-resources", "sideEffects": false diff --git a/packages/opentelemetry-sdk-trace-base/package.json b/packages/opentelemetry-sdk-trace-base/package.json index d493500dc1..6cceaa64d5 100644 --- a/packages/opentelemetry-sdk-trace-base/package.json +++ b/packages/opentelemetry-sdk-trace-base/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/sdk-trace-base", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry Tracing", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -29,7 +29,7 @@ "codecov:webworker": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -66,22 +66,24 @@ "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", "@opentelemetry/resources_1.9.0": "npm:@opentelemetry/resources@1.9.0", - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", "karma-mocha-webworker": "1.3.0", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", @@ -91,9 +93,10 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-base", "sideEffects": false diff --git a/packages/opentelemetry-sdk-trace-node/package.json b/packages/opentelemetry-sdk-trace-node/package.json index 60ef5ccba8..bd4fb782fe 100644 --- a/packages/opentelemetry-sdk-trace-node/package.json +++ b/packages/opentelemetry-sdk-trace-node/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/sdk-trace-node", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry Node SDK provides automatic telemetry (tracing, metrics, etc) for Node.js applications", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -16,7 +16,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -46,16 +46,18 @@ }, "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/resources": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/semver": "7.3.9", - "@types/sinon": "10.0.13", + "@types/semver": "7.5.0", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, @@ -63,12 +65,13 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/context-async-hooks": "1.13.0", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/propagator-b3": "1.13.0", - "@opentelemetry/propagator-jaeger": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "semver": "^7.3.5" + "@opentelemetry/context-async-hooks": "1.14.0", + "@opentelemetry/core": "1.14.0", + "@opentelemetry/propagator-b3": "1.14.0", + "@opentelemetry/propagator-jaeger": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "semver": "^7.5.1", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node", "sideEffects": false diff --git a/packages/opentelemetry-sdk-trace-web/package.json b/packages/opentelemetry-sdk-trace-web/package.json index 21110b939c..b3bfc15586 100644 --- a/packages/opentelemetry-sdk-trace-web/package.json +++ b/packages/opentelemetry-sdk-trace-web/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/sdk-trace-web", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry Web Tracer", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -20,7 +20,7 @@ "test:browser": "nyc karma start --single-run", "test:webworker": "nyc karma start karma.worker.js --single-run", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -55,44 +55,47 @@ "access": "public" }, "devDependencies": { - "@babel/core": "7.16.0", + "@babel/core": "7.22.5", "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@opentelemetry/context-zone": "1.13.0", - "@opentelemetry/propagator-b3": "1.13.0", - "@opentelemetry/resources": "1.13.0", - "@types/jquery": "3.5.8", - "@types/mocha": "10.0.0", + "@opentelemetry/context-zone": "1.14.0", + "@opentelemetry/propagator-b3": "1.14.0", + "@opentelemetry/resources": "1.14.0", + "@types/jquery": "3.5.16", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "codecov": "3.8.3", + "cross-var": "1.1.0", "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-jquery": "0.2.4", "karma-mocha": "2.0.1", "karma-mocha-webworker": "1.3.0", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "webpack-merge": "5.8.0" + "webpack-cli": "4.10.0", + "webpack-merge": "5.9.0" }, "peerDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-web", "sideEffects": false diff --git a/packages/opentelemetry-semantic-conventions/package.json b/packages/opentelemetry-semantic-conventions/package.json index 9f094c97cd..c7585e68f3 100644 --- a/packages/opentelemetry-semantic-conventions/package.json +++ b/packages/opentelemetry-semantic-conventions/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/semantic-conventions", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry semantic conventions", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -15,7 +15,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -49,17 +49,22 @@ "access": "public" }, "devDependencies": { - "@types/mocha": "10.0.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "mocha": "10.0.0", - "nock": "13.0.11", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", + "nock": "13.3.1", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, + "dependencies": { + "tslib": "^2.3.1" + }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-semantic-conventions", "sideEffects": false } diff --git a/packages/opentelemetry-semantic-conventions/src/resource/SemanticResourceAttributes.ts b/packages/opentelemetry-semantic-conventions/src/resource/SemanticResourceAttributes.ts index e57e4d959c..e123c3513e 100644 --- a/packages/opentelemetry-semantic-conventions/src/resource/SemanticResourceAttributes.ts +++ b/packages/opentelemetry-semantic-conventions/src/resource/SemanticResourceAttributes.ts @@ -486,7 +486,7 @@ export const CloudProviderValues = { GCP: 'gcp', } as const; export type CloudProviderValues = - typeof CloudProviderValues[keyof typeof CloudProviderValues]; + (typeof CloudProviderValues)[keyof typeof CloudProviderValues]; export const CloudPlatformValues = { /** Alibaba Cloud Elastic Compute Service. */ @@ -525,7 +525,7 @@ export const CloudPlatformValues = { GCP_APP_ENGINE: 'gcp_app_engine', } as const; export type CloudPlatformValues = - typeof CloudPlatformValues[keyof typeof CloudPlatformValues]; + (typeof CloudPlatformValues)[keyof typeof CloudPlatformValues]; export const AwsEcsLaunchtypeValues = { /** ec2. */ @@ -534,7 +534,7 @@ export const AwsEcsLaunchtypeValues = { FARGATE: 'fargate', } as const; export type AwsEcsLaunchtypeValues = - typeof AwsEcsLaunchtypeValues[keyof typeof AwsEcsLaunchtypeValues]; + (typeof AwsEcsLaunchtypeValues)[keyof typeof AwsEcsLaunchtypeValues]; export const HostArchValues = { /** AMD64. */ @@ -552,7 +552,8 @@ export const HostArchValues = { /** 32-bit x86. */ X86: 'x86', } as const; -export type HostArchValues = typeof HostArchValues[keyof typeof HostArchValues]; +export type HostArchValues = + (typeof HostArchValues)[keyof typeof HostArchValues]; export const OsTypeValues = { /** Microsoft Windows. */ @@ -578,7 +579,7 @@ export const OsTypeValues = { /** IBM z/OS. */ Z_OS: 'z_os', } as const; -export type OsTypeValues = typeof OsTypeValues[keyof typeof OsTypeValues]; +export type OsTypeValues = (typeof OsTypeValues)[keyof typeof OsTypeValues]; export const TelemetrySdkLanguageValues = { /** cpp. */ @@ -603,4 +604,4 @@ export const TelemetrySdkLanguageValues = { WEBJS: 'webjs', } as const; export type TelemetrySdkLanguageValues = - typeof TelemetrySdkLanguageValues[keyof typeof TelemetrySdkLanguageValues]; + (typeof TelemetrySdkLanguageValues)[keyof typeof TelemetrySdkLanguageValues]; diff --git a/packages/opentelemetry-semantic-conventions/src/trace/SemanticAttributes.ts b/packages/opentelemetry-semantic-conventions/src/trace/SemanticAttributes.ts index 8bfc4a141d..6d12b0f89a 100644 --- a/packages/opentelemetry-semantic-conventions/src/trace/SemanticAttributes.ts +++ b/packages/opentelemetry-semantic-conventions/src/trace/SemanticAttributes.ts @@ -826,7 +826,8 @@ export const DbSystemValues = { /** CockroachDB. */ COCKROACHDB: 'cockroachdb', } as const; -export type DbSystemValues = typeof DbSystemValues[keyof typeof DbSystemValues]; +export type DbSystemValues = + (typeof DbSystemValues)[keyof typeof DbSystemValues]; export const DbCassandraConsistencyLevelValues = { /** all. */ @@ -853,7 +854,7 @@ export const DbCassandraConsistencyLevelValues = { LOCAL_SERIAL: 'local_serial', } as const; export type DbCassandraConsistencyLevelValues = - typeof DbCassandraConsistencyLevelValues[keyof typeof DbCassandraConsistencyLevelValues]; + (typeof DbCassandraConsistencyLevelValues)[keyof typeof DbCassandraConsistencyLevelValues]; export const FaasTriggerValues = { /** A response to some data source operation such as a database or filesystem read/write. */ @@ -868,7 +869,7 @@ export const FaasTriggerValues = { OTHER: 'other', } as const; export type FaasTriggerValues = - typeof FaasTriggerValues[keyof typeof FaasTriggerValues]; + (typeof FaasTriggerValues)[keyof typeof FaasTriggerValues]; export const FaasDocumentOperationValues = { /** When a new object is created. */ @@ -879,7 +880,7 @@ export const FaasDocumentOperationValues = { DELETE: 'delete', } as const; export type FaasDocumentOperationValues = - typeof FaasDocumentOperationValues[keyof typeof FaasDocumentOperationValues]; + (typeof FaasDocumentOperationValues)[keyof typeof FaasDocumentOperationValues]; export const FaasInvokedProviderValues = { /** Alibaba Cloud. */ @@ -892,7 +893,7 @@ export const FaasInvokedProviderValues = { GCP: 'gcp', } as const; export type FaasInvokedProviderValues = - typeof FaasInvokedProviderValues[keyof typeof FaasInvokedProviderValues]; + (typeof FaasInvokedProviderValues)[keyof typeof FaasInvokedProviderValues]; export const NetTransportValues = { /** ip_tcp. */ @@ -911,7 +912,7 @@ export const NetTransportValues = { OTHER: 'other', } as const; export type NetTransportValues = - typeof NetTransportValues[keyof typeof NetTransportValues]; + (typeof NetTransportValues)[keyof typeof NetTransportValues]; export const NetHostConnectionTypeValues = { /** wifi. */ @@ -926,7 +927,7 @@ export const NetHostConnectionTypeValues = { UNKNOWN: 'unknown', } as const; export type NetHostConnectionTypeValues = - typeof NetHostConnectionTypeValues[keyof typeof NetHostConnectionTypeValues]; + (typeof NetHostConnectionTypeValues)[keyof typeof NetHostConnectionTypeValues]; export const NetHostConnectionSubtypeValues = { /** GPRS. */ @@ -973,7 +974,7 @@ export const NetHostConnectionSubtypeValues = { LTE_CA: 'lte_ca', } as const; export type NetHostConnectionSubtypeValues = - typeof NetHostConnectionSubtypeValues[keyof typeof NetHostConnectionSubtypeValues]; + (typeof NetHostConnectionSubtypeValues)[keyof typeof NetHostConnectionSubtypeValues]; export const HttpFlavorValues = { /** HTTP 1.0. */ @@ -988,7 +989,7 @@ export const HttpFlavorValues = { QUIC: 'QUIC', } as const; export type HttpFlavorValues = - typeof HttpFlavorValues[keyof typeof HttpFlavorValues]; + (typeof HttpFlavorValues)[keyof typeof HttpFlavorValues]; export const MessagingDestinationKindValues = { /** A message sent to a queue. */ @@ -997,7 +998,7 @@ export const MessagingDestinationKindValues = { TOPIC: 'topic', } as const; export type MessagingDestinationKindValues = - typeof MessagingDestinationKindValues[keyof typeof MessagingDestinationKindValues]; + (typeof MessagingDestinationKindValues)[keyof typeof MessagingDestinationKindValues]; export const MessagingOperationValues = { /** receive. */ @@ -1006,7 +1007,7 @@ export const MessagingOperationValues = { PROCESS: 'process', } as const; export type MessagingOperationValues = - typeof MessagingOperationValues[keyof typeof MessagingOperationValues]; + (typeof MessagingOperationValues)[keyof typeof MessagingOperationValues]; export const RpcGrpcStatusCodeValues = { /** OK. */ @@ -1045,7 +1046,7 @@ export const RpcGrpcStatusCodeValues = { UNAUTHENTICATED: 16, } as const; export type RpcGrpcStatusCodeValues = - typeof RpcGrpcStatusCodeValues[keyof typeof RpcGrpcStatusCodeValues]; + (typeof RpcGrpcStatusCodeValues)[keyof typeof RpcGrpcStatusCodeValues]; export const MessageTypeValues = { /** sent. */ @@ -1054,4 +1055,4 @@ export const MessageTypeValues = { RECEIVED: 'RECEIVED', } as const; export type MessageTypeValues = - typeof MessageTypeValues[keyof typeof MessageTypeValues]; + (typeof MessageTypeValues)[keyof typeof MessageTypeValues]; diff --git a/packages/opentelemetry-shim-opentracing/package.json b/packages/opentelemetry-shim-opentracing/package.json index f009398ef2..9b05c66d6c 100644 --- a/packages/opentelemetry-shim-opentracing/package.json +++ b/packages/opentelemetry-shim-opentracing/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/shim-opentracing", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTracing to OpenTelemetry shim", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -15,7 +15,7 @@ "lint": "eslint . --ext .ts", "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -43,13 +43,15 @@ }, "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@opentelemetry/propagator-b3": "1.13.0", - "@opentelemetry/propagator-jaeger": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@types/mocha": "10.0.0", + "@opentelemetry/propagator-b3": "1.14.0", + "@opentelemetry/propagator-jaeger": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", "codecov": "3.8.3", - "mocha": "10.0.0", + "cross-var": "1.1.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" @@ -58,9 +60,10 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0", - "opentracing": "^0.14.4" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/semantic-conventions": "1.14.0", + "opentracing": "^0.14.4", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-shim-opentracing", "sideEffects": false diff --git a/packages/sdk-metrics/package.json b/packages/sdk-metrics/package.json index db230fd6b5..2e327b6acd 100644 --- a/packages/sdk-metrics/package.json +++ b/packages/sdk-metrics/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/sdk-metrics", - "version": "1.13.0", + "version": "1.14.0", "description": "OpenTelemetry metrics SDK", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -20,7 +20,7 @@ "lint:fix": "eslint . --ext .ts --fix", "version": "node ../../scripts/version-update.js", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "node ../../scripts/version-update.js", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -55,20 +55,22 @@ }, "devDependencies": { "@opentelemetry/api": ">=1.3.0 <1.5.0", - "@types/lodash.merge": "4.6.6", - "@types/mocha": "10.0.0", + "@types/lodash.merge": "4.6.7", + "@types/mocha": "10.0.1", "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/sinon": "10.0.15", "codecov": "3.8.3", - "karma": "6.3.16", + "cross-var": "1.1.0", + "karma": "6.4.2", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", + "karma-spec-reporter": "0.0.36", "karma-webpack": "4.0.2", - "mocha": "10.0.0", + "lerna": "7.1.1", + "mocha": "10.2.0", "nyc": "15.1.0", - "sinon": "15.0.0", + "sinon": "15.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, @@ -76,9 +78,10 @@ "@opentelemetry/api": ">=1.3.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/resources": "1.13.0", - "lodash.merge": "4.6.2" + "@opentelemetry/core": "1.14.0", + "@opentelemetry/resources": "1.14.0", + "lodash.merge": "^4.6.2", + "tslib": "^2.3.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/sdk-metrics", "sideEffects": false diff --git a/packages/sdk-metrics/src/aggregator/ExponentialHistogram.ts b/packages/sdk-metrics/src/aggregator/ExponentialHistogram.ts index 5a70a478a8..51c71ee211 100644 --- a/packages/sdk-metrics/src/aggregator/ExponentialHistogram.ts +++ b/packages/sdk-metrics/src/aggregator/ExponentialHistogram.ts @@ -213,32 +213,33 @@ export class ExponentialHistogramAccumulation implements Accumulation { } /** - * merge combines data from other into self - * @param {ExponentialHistogramAccumulation} other + * merge combines data from previous value into self + * @param {ExponentialHistogramAccumulation} previous */ - merge(other: ExponentialHistogramAccumulation) { + merge(previous: ExponentialHistogramAccumulation) { if (this._count === 0) { - this._min = other.min; - this._max = other.max; - } else if (other.count !== 0) { - if (other.min < this.min) { - this._min = other.min; + this._min = previous.min; + this._max = previous.max; + } else if (previous.count !== 0) { + if (previous.min < this.min) { + this._min = previous.min; } - if (other.max > this.max) { - this._max = other.max; + if (previous.max > this.max) { + this._max = previous.max; } } - this._sum += other.sum; - this._count += other.count; - this._zeroCount += other.zeroCount; + this.startTime = previous.startTime; + this._sum += previous.sum; + this._count += previous.count; + this._zeroCount += previous.zeroCount; - const minScale = this._minScale(other); + const minScale = this._minScale(previous); this._downscale(this.scale - minScale); - this._mergeBuckets(this.positive, other, other.positive, minScale); - this._mergeBuckets(this.negative, other, other.negative, minScale); + this._mergeBuckets(this.positive, previous, previous.positive, minScale); + this._mergeBuckets(this.negative, previous, previous.negative, minScale); } /** diff --git a/packages/sdk-metrics/src/view/Aggregation.ts b/packages/sdk-metrics/src/view/Aggregation.ts index 755cd17531..f36394c5bc 100644 --- a/packages/sdk-metrics/src/view/Aggregation.ts +++ b/packages/sdk-metrics/src/view/Aggregation.ts @@ -107,7 +107,7 @@ export class LastValueAggregation extends Aggregation { */ export class HistogramAggregation extends Aggregation { private static DEFAULT_INSTANCE = new HistogramAggregator( - [0, 5, 10, 25, 50, 75, 100, 250, 500, 1000], + [0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500, 10000], true ); createAggregator(_instrument: InstrumentDescriptor) { diff --git a/packages/sdk-metrics/test/Instruments.test.ts b/packages/sdk-metrics/test/Instruments.test.ts index ba0f86bdd4..8651643fa3 100644 --- a/packages/sdk-metrics/test/Instruments.test.ts +++ b/packages/sdk-metrics/test/Instruments.test.ts @@ -297,8 +297,11 @@ describe('Instruments', () => { attributes: {}, value: { buckets: { - boundaries: [0, 5, 10, 25, 50, 75, 100, 250, 500, 1000], - counts: [0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0], + boundaries: [ + 0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, + 7500, 10000, + ], + counts: [0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], }, count: 2, sum: 10, @@ -310,8 +313,11 @@ describe('Instruments', () => { attributes: { foo: 'bar' }, value: { buckets: { - boundaries: [0, 5, 10, 25, 50, 75, 100, 250, 500, 1000], - counts: [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], + boundaries: [ + 0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, + 7500, 10000, + ], + counts: [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0], }, count: 2, sum: 100, @@ -352,8 +358,11 @@ describe('Instruments', () => { attributes: {}, value: { buckets: { - boundaries: [0, 5, 10, 25, 50, 75, 100, 250, 500, 1000], - counts: [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0], + boundaries: [ + 0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, + 7500, 10000, + ], + counts: [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0], }, count: 2, sum: 110, @@ -379,8 +388,11 @@ describe('Instruments', () => { attributes: {}, value: { buckets: { - boundaries: [0, 5, 10, 25, 50, 75, 100, 250, 500, 1000], - counts: [0, 0, 0, 2, 0, 0, 1, 1, 0, 0, 0], + boundaries: [ + 0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, + 7500, 10000, + ], + counts: [0, 0, 0, 2, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0], }, count: 4, sum: 220, @@ -422,8 +434,11 @@ describe('Instruments', () => { attributes: {}, value: { buckets: { - boundaries: [0, 5, 10, 25, 50, 75, 100, 250, 500, 1000], - counts: [0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0], + boundaries: [ + 0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, + 7500, 10000, + ], + counts: [0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], }, count: 2, sum: 10.1, @@ -435,8 +450,11 @@ describe('Instruments', () => { attributes: { foo: 'bar' }, value: { buckets: { - boundaries: [0, 5, 10, 25, 50, 75, 100, 250, 500, 1000], - counts: [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], + boundaries: [ + 0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, + 7500, 10000, + ], + counts: [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0], }, count: 2, sum: 100.1, diff --git a/packages/sdk-metrics/test/aggregator/ExponentialHistogram.test.ts b/packages/sdk-metrics/test/aggregator/ExponentialHistogram.test.ts index 150eb13e91..2bcbc43307 100644 --- a/packages/sdk-metrics/test/aggregator/ExponentialHistogram.test.ts +++ b/packages/sdk-metrics/test/aggregator/ExponentialHistogram.test.ts @@ -574,6 +574,15 @@ describe('ExponentialHistogramAggregation', () => { assert.deepStrictEqual(acc0.toPointValue(), acc0Snapshot); assert.deepStrictEqual(acc1.toPointValue(), acc1Snapshot); }); + + it("keeps the previous point's startTime", () => { + const agg = new ExponentialHistogramAggregator(4, true); + const acc0 = agg.createAccumulation([0, 0]); + const acc1 = agg.createAccumulation([3, 0]); + + const result = agg.merge(acc0, acc1); + assert.strictEqual(result.startTime, acc0.startTime); + }); }); describe('diff', () => { diff --git a/packages/sdk-metrics/test/regression/cumulative-exponential-histogram.test.ts b/packages/sdk-metrics/test/regression/cumulative-exponential-histogram.test.ts new file mode 100644 index 0000000000..79dcfc434f --- /dev/null +++ b/packages/sdk-metrics/test/regression/cumulative-exponential-histogram.test.ts @@ -0,0 +1,90 @@ +/* + * Copyright The OpenTelemetry Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import * as assert from 'assert'; +import * as sinon from 'sinon'; +import { + Aggregation, + AggregationTemporality, + InstrumentType, + MeterProvider, + MetricReader, +} from '../../src'; +import { TestMetricReader } from '../export/TestMetricReader'; + +describe('cumulative-exponential-histogram', () => { + let clock: sinon.SinonFakeTimers; + + beforeEach(() => { + clock = sinon.useFakeTimers(); + }); + afterEach(() => { + sinon.restore(); + }); + + it('Cumulative Histogram should have the same startTime every collection', async () => { + // Works fine and passes + await doTest(Aggregation.Histogram()); + }); + + it('Cumulative ExponentialHistogram should have the same startTime every collection', async () => { + // Fails + await doTest(Aggregation.ExponentialHistogram()); + }); + + const doTest = async (histogramAggregation: Aggregation) => { + const meterProvider = new MeterProvider(); + const reader = new TestMetricReader({ + aggregationTemporalitySelector() { + return AggregationTemporality.CUMULATIVE; + }, + aggregationSelector(type) { + return type === InstrumentType.HISTOGRAM + ? histogramAggregation + : Aggregation.Default(); + }, + }); + + meterProvider.addMetricReader(reader); + const meter = meterProvider.getMeter('my-meter'); + const hist = meter.createHistogram('testhist'); + + hist.record(1); + + const resourceMetrics1 = await collectNoErrors(reader); + const dataPoint1 = + resourceMetrics1.scopeMetrics[0].metrics[0].dataPoints[0]; + + clock.tick(1000); + hist.record(2); + + const resourceMetrics2 = await collectNoErrors(reader); + const dataPoint2 = + resourceMetrics2.scopeMetrics[0].metrics[0].dataPoints[0]; + + assert.deepStrictEqual( + dataPoint1.startTime, + dataPoint2.startTime, + 'The start time should be the same across cumulative collections' + ); + }; + + const collectNoErrors = async (reader: MetricReader) => { + const { resourceMetrics, errors } = await reader.collect(); + assert.strictEqual(errors.length, 0); + return resourceMetrics; + }; +}); diff --git a/packages/sdk-metrics/test/view/Aggregation.test.ts b/packages/sdk-metrics/test/view/Aggregation.test.ts index e4ef18f52c..0da2c09bee 100644 --- a/packages/sdk-metrics/test/view/Aggregation.test.ts +++ b/packages/sdk-metrics/test/view/Aggregation.test.ts @@ -135,7 +135,10 @@ describe('HistogramAggregator', () => { assert(aggregator instanceof HistogramAggregator); assert.deepStrictEqual( aggregator['_boundaries'], - [0, 5, 10, 25, 50, 75, 100, 250, 500, 1000] + [ + 0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500, + 10000, + ] ); }); }); diff --git a/packages/template/package.json b/packages/template/package.json index 47b183c625..00876cf2c4 100644 --- a/packages/template/package.json +++ b/packages/template/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/template", - "version": "1.13.0", + "version": "1.14.0", "private": true, "publishConfig": { "access": "restricted" @@ -30,7 +30,7 @@ "compile": "tsc --build", "version": "node ../../scripts/version-update.js", "clean": "tsc --build --clean", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", + "precompile": "cross-var lerna run version --scope $npm_package_name --include-dependencies", "prewatch": "npm run precompile", "peer-api-check": "node ../../scripts/peer-api-check.js" }, @@ -79,15 +79,20 @@ ], "devDependencies": { "@types/node": "18.6.5", + "cross-var": "1.1.0", + "lerna": "7.1.1", "typescript": "4.4.4" }, + "dependencies": { + "tslib": "^2.3.1" + }, "Add these to devDependencies for testing": { "@types/mocha": "9.1.1", "@types/sinon": "10.0.13", "codecov": "3.8.3", "mocha": "10.0.0", "nyc": "15.1.0", - "sinon": "14.0.0", + "sinon": "15.0.0", "ts-mocha": "10.0.0" }, "Add these to devDependencies if browser is targeted": { diff --git a/renovate.json b/renovate.json index dab042a79f..5a106908e4 100644 --- a/renovate.json +++ b/renovate.json @@ -2,18 +2,31 @@ "extends": ["config:base"], "packageRules": [ { - "groupName": "all non-major dependencies", - "groupSlug": "all-minor-patch", - "matchUpdateTypes": ["patch", "minor"] + "groupName": "all patch versions", + "groupSlug": "all-patch", + "matchUpdateTypes": ["patch"], + "excludePackageNames": ["prettier"], + "schedule": ["before 3am every weekday"] }, { - "matchPaths": ["backwards-compatibility"], + "matchUpdateTypes": ["minor"], + "dependencyDashboardApproval": true + }, + { + "matchUpdateTypes": ["major"], + "schedule": ["before 3am on Monday"] + }, + { + "matchPackageNames": ["typescript", "webpack", "webpack-cli"], + "dependencyDashboardApproval": true + }, + { + "matchPaths": ["experimental/backwards-compatibility/**"], "matchPackageNames": ["@types/node"], "enabled": false } ], - "ignoreDeps": ["gcp-metadata", "got", "mocha", "husky", "karma-webpack", "@opentelemetry/api"], - "assignees": ["@blumamir", "@dyladan", "@legendecas"], - "schedule": ["before 3am on Friday"], + "ignoreDeps": ["@opentelemetry/api", "@opentelemetry/resources_1.9.0"], + "assignees": ["@blumamir", "@dyladan", "@legendecas", "@pichlermarc"], "labels": ["dependencies"] } diff --git a/scripts/update-ts-configs.js b/scripts/update-ts-configs.js index 3c4f43273f..d437172181 100644 --- a/scripts/update-ts-configs.js +++ b/scripts/update-ts-configs.js @@ -45,7 +45,7 @@ const tsConfigMergeKeys = [ const tsConfigPriorityKeys = ['extends']; const ignoredLernaProjects = [ 'experimental/examples/*', - 'experimental/backwards-compatability/*', + 'experimental/backwards-compatibility/*', 'integration-tests/*', 'selenium-tests', 'examples/otlp-exporter-node', diff --git a/selenium-tests/babel.config.js b/selenium-tests/babel.config.js index 26b15edca0..31007c1484 100644 --- a/selenium-tests/babel.config.js +++ b/selenium-tests/babel.config.js @@ -22,12 +22,12 @@ module.exports = function (api) { ]; const plugins = [ ['@babel/plugin-proposal-decorators', { decoratorsBeforeExport: true }], - ['@babel/plugin-proposal-class-properties', { 'loose': true }], - ["@babel/plugin-proposal-private-methods", { "loose": true }], - ["@babel/plugin-proposal-private-property-in-object", { "loose": true }], + ['@babel/plugin-transform-class-properties', { 'loose': true }], + ["@babel/plugin-transform-private-methods", { "loose": true }], + ["@babel/plugin-transform-private-property-in-object", { "loose": true }], ]; return { presets, plugins, }; -}; \ No newline at end of file +}; diff --git a/selenium-tests/package.json b/selenium-tests/package.json index 1bef831b3e..6d7726c134 100644 --- a/selenium-tests/package.json +++ b/selenium-tests/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/selenium-tests", - "version": "1.13.0", + "version": "1.14.0", "private": true, "description": "OpenTelemetry Selenium Tests", "main": "index.js", @@ -31,41 +31,41 @@ "access": "restricted" }, "devDependencies": { - "@babel/core": "7.16.0", - "@babel/plugin-proposal-class-properties": "7.16.0", - "@babel/plugin-proposal-decorators": "7.16.4", - "@babel/plugin-transform-runtime": "7.16.4", - "@babel/preset-env": "7.16.4", + "@babel/core": "7.22.5", + "@babel/plugin-proposal-class-properties": "7.18.6", + "@babel/plugin-proposal-decorators": "7.22.5", + "@babel/plugin-transform-runtime": "7.22.5", + "@babel/preset-env": "7.22.5", "@opentelemetry/api": "^1.0.0", - "babel-loader": "8.2.3", + "babel-loader": "8.3.0", "babel-polyfill": "6.26.0", "browserstack-local": "1.4.8", - "chromedriver": "113.0.0", + "chromedriver": "114.0.2", "dotenv": "16.0.0", "fast-safe-stringify": "2.1.1", "geckodriver": "3.0.1", - "nightwatch": "2.0.10", + "nightwatch": "3.0.1", "selenium-server": "3.141.59", "terser-webpack-plugin": "4.2.3", "webpack": "4.46.0", - "webpack-cli": "4.9.1", + "webpack-cli": "4.10.0", "webpack-dev-server": "4.5.0", - "webpack-merge": "5.8.0" + "webpack-merge": "5.9.0" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/context-zone-peer-dep": "1.13.0", - "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-trace-otlp-http": "0.39.1", - "@opentelemetry/exporter-zipkin": "1.13.0", - "@opentelemetry/instrumentation": "0.39.1", - "@opentelemetry/instrumentation-fetch": "0.39.1", - "@opentelemetry/instrumentation-xml-http-request": "0.39.1", - "@opentelemetry/sdk-metrics": "1.13.0", - "@opentelemetry/sdk-trace-base": "1.13.0", - "@opentelemetry/sdk-trace-web": "1.13.0", + "@opentelemetry/context-zone-peer-dep": "1.14.0", + "@opentelemetry/core": "1.14.0", + "@opentelemetry/exporter-trace-otlp-http": "0.40.0", + "@opentelemetry/exporter-zipkin": "1.14.0", + "@opentelemetry/instrumentation": "0.40.0", + "@opentelemetry/instrumentation-fetch": "0.40.0", + "@opentelemetry/instrumentation-xml-http-request": "0.40.0", + "@opentelemetry/sdk-metrics": "1.14.0", + "@opentelemetry/sdk-trace-base": "1.14.0", + "@opentelemetry/sdk-trace-web": "1.14.0", "zone.js": "0.11.4" } } diff --git a/selenium-tests/pages/fetch/index.js b/selenium-tests/pages/fetch/index.js index dbd2fe1166..4a3b7ae374 100644 --- a/selenium-tests/pages/fetch/index.js +++ b/selenium-tests/pages/fetch/index.js @@ -29,7 +29,7 @@ const getData = (url) => fetch(url, { // example of keeping track of context between async operations const prepareClickEvent = () => { - const url = 'https://httpbin.org/get'; + const url = 'https://httpstat.us/200'; const element = document.getElementById('button1'); diff --git a/selenium-tests/pages/xhr/index.js b/selenium-tests/pages/xhr/index.js index e998c58962..ba03da9c40 100644 --- a/selenium-tests/pages/xhr/index.js +++ b/selenium-tests/pages/xhr/index.js @@ -10,7 +10,7 @@ const provider = loadOtel([ new XMLHttpRequestInstrumentation({ ignoreUrls: [/localhost:8090\/sockjs-node/], propagateTraceHeaderCorsUrls: [ - 'https://httpbin.org/get', + 'https://httpstat.us/200', ], clearTimingResources: true, }), @@ -35,7 +35,7 @@ const getData = (url) => new Promise((resolve, reject) => { // example of keeping track of context between async operations const prepareClickEvent = () => { - const url = 'https://httpbin.org/get'; + const url = 'https://httpstat.us/200'; const element = document.getElementById('button1'); diff --git a/selenium-tests/tests-helpers/constants.js b/selenium-tests/tests-helpers/constants.js index 3362a3585c..2549a7fc27 100644 --- a/selenium-tests/tests-helpers/constants.js +++ b/selenium-tests/tests-helpers/constants.js @@ -2,4 +2,4 @@ const TIMEOUT_ELEMENT_MS = 5000; module.exports = { TIMEOUT_ELEMENT_MS, -}; \ No newline at end of file +}; diff --git a/selenium-tests/webpack.common.js b/selenium-tests/webpack.common.js index 0d00b07c60..3306d91b0d 100644 --- a/selenium-tests/webpack.common.js +++ b/selenium-tests/webpack.common.js @@ -11,7 +11,7 @@ module.exports = { filename: '[name].js', sourceMapFilename: '[file].map', }, - target: ['web', 'es5'], + target: 'web', module: { rules: [ { @@ -35,4 +35,4 @@ module.exports = { ], extensions: ['.ts', '.js', '.jsx', '.json'], }, -}; \ No newline at end of file +}; diff --git a/tsconfig.base.json b/tsconfig.base.json index cbafb67678..84e684c8a5 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -21,7 +21,8 @@ "strict": true, "strictNullChecks": true, "target": "es2017", - "useUnknownInCatchVariables": false + "useUnknownInCatchVariables": false, + "importHelpers": true }, "exclude": [ "node_modules"