From 6676414505f6ffc75e151fa162e351fa1de7204e Mon Sep 17 00:00:00 2001 From: Aaron Abbott Date: Tue, 25 Apr 2023 01:11:38 -0400 Subject: [PATCH 01/72] feat(opencensus-shim): add OpenCensus shim package boilerplate (#3750) Co-authored-by: Marc Pichler --- .../.eslintignore | 1 + .../.eslintrc.js | 7 + .../opentelemetry-shim-opencensus/.npmignore | 4 + .../opentelemetry-shim-opencensus/LICENSE | 201 ++++++++++++++++++ .../opentelemetry-shim-opencensus/README.md | 39 ++++ .../package.json | 72 +++++++ .../src/index.ts | 15 ++ .../test/ShimTracer.test.ts | 23 ++ .../tsconfig.json | 22 ++ tsconfig.json | 3 + 10 files changed, 387 insertions(+) create mode 100644 experimental/packages/opentelemetry-shim-opencensus/.eslintignore create mode 100644 experimental/packages/opentelemetry-shim-opencensus/.eslintrc.js create mode 100644 experimental/packages/opentelemetry-shim-opencensus/.npmignore create mode 100644 experimental/packages/opentelemetry-shim-opencensus/LICENSE create mode 100644 experimental/packages/opentelemetry-shim-opencensus/README.md create mode 100644 experimental/packages/opentelemetry-shim-opencensus/package.json create mode 100644 experimental/packages/opentelemetry-shim-opencensus/src/index.ts create mode 100644 experimental/packages/opentelemetry-shim-opencensus/test/ShimTracer.test.ts create mode 100644 experimental/packages/opentelemetry-shim-opencensus/tsconfig.json diff --git a/experimental/packages/opentelemetry-shim-opencensus/.eslintignore b/experimental/packages/opentelemetry-shim-opencensus/.eslintignore new file mode 100644 index 000000000..378eac25d --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/.eslintignore @@ -0,0 +1 @@ +build diff --git a/experimental/packages/opentelemetry-shim-opencensus/.eslintrc.js b/experimental/packages/opentelemetry-shim-opencensus/.eslintrc.js new file mode 100644 index 000000000..f756f4488 --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/.eslintrc.js @@ -0,0 +1,7 @@ +module.exports = { + "env": { + "mocha": true, + "node": true + }, + ...require('../../../eslint.config.js') +} diff --git a/experimental/packages/opentelemetry-shim-opencensus/.npmignore b/experimental/packages/opentelemetry-shim-opencensus/.npmignore new file mode 100644 index 000000000..9505ba945 --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/.npmignore @@ -0,0 +1,4 @@ +/bin +/coverage +/doc +/test diff --git a/experimental/packages/opentelemetry-shim-opencensus/LICENSE b/experimental/packages/opentelemetry-shim-opencensus/LICENSE new file mode 100644 index 000000000..261eeb9e9 --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + 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. diff --git a/experimental/packages/opentelemetry-shim-opencensus/README.md b/experimental/packages/opentelemetry-shim-opencensus/README.md new file mode 100644 index 000000000..63bea4df4 --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/README.md @@ -0,0 +1,39 @@ +# OpenCensus shim + +[![NPM Published Version][npm-img]][npm-url] +[![Apache License][license-image]][license-image] + +> **Note** +> This package is in active development and has not yet been released. You cannot install this +> package from NPM yet. + +OpenCensus shim allows existing OpenCensus instrumentation to report to OpenTelemetry. This +allows you to incrementally migrate your existing OpenCensus instrumentation to OpenTelemetry. +More details are available in the [OpenCensus Compatibility Specification](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/compatibility/opencensus.md). + +## Installation + +```bash +npm install --save @opentelemetry/shim-opencensus +``` + +## Usage + +TODO + +See [examples/opencensus-shim](https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/examples/opencensus-shim) for a short example. + +## License + +Apache 2.0 - See [LICENSE][license-url] for more information. + +## Useful links + +- For more information on OpenTelemetry, visit: +- For help or feedback on this project, join us in [GitHub Discussions][discussions-url] + +[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions +[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE +[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat +[npm-url]: https://www.npmjs.com/package/@opentelemetry/shim-opencensus +[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fshim-opencensus.svg diff --git a/experimental/packages/opentelemetry-shim-opencensus/package.json b/experimental/packages/opentelemetry-shim-opencensus/package.json new file mode 100644 index 000000000..d9191233b --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/package.json @@ -0,0 +1,72 @@ +{ + "name": "@opentelemetry/shim-opencensus", + "version": "0.38.0", + "description": "OpenCensus to OpenTelemetry shim", + "private": true, + "main": "build/src/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "prepublishOnly": "npm run compile", + "compile": "tsc --build", + "clean": "tsc --build --clean", + "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", + "lint": "eslint . --ext .ts", + "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", + "prewatch": "npm run precompile", + "peer-api-check": "node ../../../scripts/peer-api-check.js" + }, + "keywords": [ + "opentelemetry", + "opencensus", + "nodejs", + "tracing", + "profiling" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@opentelemetry/core": "1.11.0", + "@opentelemetry/context-async-hooks": "1.11.0", + "@opencensus/core": "0.1.0", + "@opentelemetry/api": ">=1.0.0 <1.5.0", + "@types/mocha": "10.0.0", + "@types/node": "18.6.5", + "codecov": "3.8.3", + "mocha": "10.0.0", + "nyc": "15.1.0", + "rimraf": "4.1.2", + "ts-mocha": "10.0.0", + "typescript": "4.4.4" + }, + "peerDependencies": { + "@opencensus/core": "^0.1.0", + "@opentelemetry/api": ">=1.0.0 <1.5.0" + }, + "dependencies": { + "@opentelemetry/core": "^1.0.0", + "@opentelemetry/context-async-hooks": "^1.0.0", + "semver": "^7.3.5", + "require-in-the-middle": "^6.0.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-shim-opencensus", + "sideEffects": false +} diff --git a/experimental/packages/opentelemetry-shim-opencensus/src/index.ts b/experimental/packages/opentelemetry-shim-opencensus/src/index.ts new file mode 100644 index 000000000..bcd7cadc0 --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/src/index.ts @@ -0,0 +1,15 @@ +/* + * 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. + */ diff --git a/experimental/packages/opentelemetry-shim-opencensus/test/ShimTracer.test.ts b/experimental/packages/opentelemetry-shim-opencensus/test/ShimTracer.test.ts new file mode 100644 index 000000000..33c99a6d8 --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/test/ShimTracer.test.ts @@ -0,0 +1,23 @@ +/* + * 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'; + +describe('ShimTracer', () => { + it('asserts true', () => { + assert.ok(true); + }); +}); diff --git a/experimental/packages/opentelemetry-shim-opencensus/tsconfig.json b/experimental/packages/opentelemetry-shim-opencensus/tsconfig.json new file mode 100644 index 000000000..ddf3cfdee --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ], + "references": [ + { + "path": "../../../api" + }, + { + "path": "../../../packages/opentelemetry-context-async-hooks" + }, + { + "path": "../../../packages/opentelemetry-core" + } + ] +} diff --git a/tsconfig.json b/tsconfig.json index e54ecaeff..101e77a15 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -104,6 +104,9 @@ { "path": "experimental/packages/opentelemetry-sdk-node" }, + { + "path": "experimental/packages/opentelemetry-shim-opencensus" + }, { "path": "experimental/packages/otlp-exporter-base" }, From 47122f38ab04a298d274ae506d576a7390607a57 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Tue, 25 Apr 2023 08:27:33 +0200 Subject: [PATCH 02/72] chore: add instana resource detector owners (#1476) --- .github/component_owners.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/component_owners.yml b/.github/component_owners.yml index 747f70ae4..2fa7d0003 100644 --- a/.github/component_owners.yml +++ b/.github/component_owners.yml @@ -6,6 +6,9 @@ components: - carolabadeer detectors/node/opentelemetry-resource-detector-docker: - abhee11 + detectors/node/opentelemetry-resource-detector-instana: + - basti1302 + - kirrg001 metapackages/auto-instrumentations-node: - obecny metapackages/auto-instrumentations-web: From 4d11d61b709cf12d7d02d31960cd7ccb67404b14 Mon Sep 17 00:00:00 2001 From: Chengzhong Wu Date: Tue, 25 Apr 2023 15:37:05 +0800 Subject: [PATCH 03/72] fix(host-metrics): fallback to process.memoryUsage() (#1471) Co-authored-by: Marc Pichler Co-authored-by: Daniel Dyla --- packages/opentelemetry-host-metrics/src/stats/common.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/opentelemetry-host-metrics/src/stats/common.ts b/packages/opentelemetry-host-metrics/src/stats/common.ts index 56af07d7e..b74522ae0 100644 --- a/packages/opentelemetry-host-metrics/src/stats/common.ts +++ b/packages/opentelemetry-host-metrics/src/stats/common.ts @@ -109,5 +109,10 @@ export function getMemoryData(): MemoryData { * including all C++ and JavaScript objects and code. */ export function getProcessMemoryData(): number { - return process.memoryUsage.rss(); + // `process.memoryUsage.rss` is a faster alternative introduced in v14.18.0. + // Prefer it if available. + if (process.memoryUsage.rss) { + return process.memoryUsage.rss(); + } + return process.memoryUsage().rss; } From f7183016487c876829abce6437bbe71f76b7538e Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Tue, 25 Apr 2023 16:44:47 +0200 Subject: [PATCH 04/72] chore: release main (#1475) --- .release-please-manifest.json | 2 +- .../CHANGELOG.md | 6 ++ .../package.json | 4 +- .../CHANGELOG.md | 6 ++ .../package.json | 4 +- .../CHANGELOG.md | 6 ++ .../package.json | 4 +- .../CHANGELOG.md | 6 ++ .../package.json | 4 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../auto-instrumentations-node/CHANGELOG.md | 47 +++++++++++++ .../auto-instrumentations-node/package.json | 70 +++++++++---------- .../auto-instrumentations-web/CHANGELOG.md | 15 ++++ .../auto-instrumentations-web/package.json | 6 +- .../opentelemetry-host-metrics/CHANGELOG.md | 7 ++ .../opentelemetry-host-metrics/package.json | 2 +- .../CHANGELOG.md | 6 ++ .../package.json | 4 +- .../opentelemetry-test-utils/CHANGELOG.md | 7 ++ .../opentelemetry-test-utils/package.json | 2 +- .../node/instrumentation-amqplib/CHANGELOG.md | 14 ++++ .../node/instrumentation-amqplib/package.json | 4 +- .../instrumentation-dataloader/CHANGELOG.md | 7 ++ .../instrumentation-dataloader/package.json | 2 +- plugins/node/instrumentation-fs/CHANGELOG.md | 7 ++ plugins/node/instrumentation-fs/package.json | 2 +- .../instrumentation-lru-memoizer/CHANGELOG.md | 14 ++++ .../instrumentation-lru-memoizer/package.json | 4 +- .../instrumentation-mongoose/CHANGELOG.md | 14 ++++ .../instrumentation-mongoose/package.json | 4 +- .../instrumentation-socket.io/CHANGELOG.md | 14 ++++ .../instrumentation-socket.io/package.json | 4 +- .../node/instrumentation-tedious/CHANGELOG.md | 14 ++++ .../node/instrumentation-tedious/package.json | 4 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 16 +++++ .../package.json | 6 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- 95 files changed, 592 insertions(+), 106 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index fa4aeb425..67946c342 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1 +1 @@ -{"detectors/node/opentelemetry-resource-detector-alibaba-cloud":"0.27.4","detectors/node/opentelemetry-resource-detector-aws":"1.2.2","detectors/node/opentelemetry-resource-detector-container":"0.2.2","detectors/node/opentelemetry-resource-detector-gcp":"0.28.0","detectors/node/opentelemetry-resource-detector-github":"0.27.0","detectors/node/opentelemetry-resource-detector-instana":"0.4.1","metapackages/auto-instrumentations-node":"0.36.5","metapackages/auto-instrumentations-web":"0.32.0","packages/opentelemetry-host-metrics":"0.32.0","packages/opentelemetry-id-generator-aws-xray":"1.1.1","packages/opentelemetry-propagation-utils":"0.29.2","packages/opentelemetry-redis-common":"0.35.0","packages/opentelemetry-test-utils":"0.33.1","plugins/node/instrumentation-amqplib":"0.32.2","plugins/node/instrumentation-dataloader":"0.4.0","plugins/node/instrumentation-fs":"0.7.1","plugins/node/instrumentation-lru-memoizer":"0.32.1","plugins/node/instrumentation-mongoose":"0.32.1","plugins/node/instrumentation-socket.io":"0.33.1","plugins/node/instrumentation-tedious":"0.5.1","plugins/node/opentelemetry-instrumentation-aws-lambda":"0.35.0","plugins/node/opentelemetry-instrumentation-aws-sdk":"0.34.0","plugins/node/opentelemetry-instrumentation-bunyan":"0.31.1","plugins/node/opentelemetry-instrumentation-cassandra":"0.32.1","plugins/node/opentelemetry-instrumentation-connect":"0.31.1","plugins/node/opentelemetry-instrumentation-dns":"0.31.2","plugins/node/opentelemetry-instrumentation-express":"0.32.1","plugins/node/opentelemetry-instrumentation-fastify":"0.31.1","plugins/node/opentelemetry-instrumentation-generic-pool":"0.31.1","plugins/node/opentelemetry-instrumentation-graphql":"0.34.0","plugins/node/opentelemetry-instrumentation-hapi":"0.31.1","plugins/node/opentelemetry-instrumentation-ioredis":"0.34.0","plugins/node/opentelemetry-instrumentation-knex":"0.31.1","plugins/node/opentelemetry-instrumentation-koa":"0.34.3","plugins/node/opentelemetry-instrumentation-memcached":"0.31.1","plugins/node/opentelemetry-instrumentation-mongodb":"0.34.1","plugins/node/opentelemetry-instrumentation-mysql":"0.33.0","plugins/node/opentelemetry-instrumentation-mysql2":"0.33.1","plugins/node/opentelemetry-instrumentation-nestjs-core":"0.32.2","plugins/node/opentelemetry-instrumentation-net":"0.31.1","plugins/node/opentelemetry-instrumentation-pg":"0.35.0","plugins/node/opentelemetry-instrumentation-pino":"0.33.1","plugins/node/opentelemetry-instrumentation-redis":"0.34.4","plugins/node/opentelemetry-instrumentation-redis-4":"0.34.3","plugins/node/opentelemetry-instrumentation-restify":"0.32.1","plugins/node/opentelemetry-instrumentation-router":"0.32.1","plugins/node/opentelemetry-instrumentation-winston":"0.31.1","plugins/web/opentelemetry-instrumentation-document-load":"0.32.0","plugins/web/opentelemetry-instrumentation-long-task":"0.32.2","plugins/web/opentelemetry-instrumentation-user-interaction":"0.32.1","plugins/web/opentelemetry-plugin-react-load":"0.28.1","propagators/opentelemetry-propagator-aws-xray":"1.2.0","propagators/opentelemetry-propagator-grpc-census-binary":"0.26.0","propagators/opentelemetry-propagator-instana":"0.2.1","propagators/opentelemetry-propagator-ot-trace":"0.26.2"} +{"detectors/node/opentelemetry-resource-detector-alibaba-cloud":"0.27.5","detectors/node/opentelemetry-resource-detector-aws":"1.2.3","detectors/node/opentelemetry-resource-detector-container":"0.2.3","detectors/node/opentelemetry-resource-detector-gcp":"0.28.1","detectors/node/opentelemetry-resource-detector-github":"0.27.0","detectors/node/opentelemetry-resource-detector-instana":"0.4.2","metapackages/auto-instrumentations-node":"0.36.6","metapackages/auto-instrumentations-web":"0.32.1","packages/opentelemetry-host-metrics":"0.32.1","packages/opentelemetry-id-generator-aws-xray":"1.1.1","packages/opentelemetry-propagation-utils":"0.29.3","packages/opentelemetry-redis-common":"0.35.0","packages/opentelemetry-test-utils":"0.33.2","plugins/node/instrumentation-amqplib":"0.32.3","plugins/node/instrumentation-dataloader":"0.4.1","plugins/node/instrumentation-fs":"0.7.2","plugins/node/instrumentation-lru-memoizer":"0.32.2","plugins/node/instrumentation-mongoose":"0.32.2","plugins/node/instrumentation-socket.io":"0.33.2","plugins/node/instrumentation-tedious":"0.5.2","plugins/node/opentelemetry-instrumentation-aws-lambda":"0.35.1","plugins/node/opentelemetry-instrumentation-aws-sdk":"0.34.1","plugins/node/opentelemetry-instrumentation-bunyan":"0.31.2","plugins/node/opentelemetry-instrumentation-cassandra":"0.32.2","plugins/node/opentelemetry-instrumentation-connect":"0.31.2","plugins/node/opentelemetry-instrumentation-dns":"0.31.3","plugins/node/opentelemetry-instrumentation-express":"0.32.2","plugins/node/opentelemetry-instrumentation-fastify":"0.31.2","plugins/node/opentelemetry-instrumentation-generic-pool":"0.31.2","plugins/node/opentelemetry-instrumentation-graphql":"0.34.1","plugins/node/opentelemetry-instrumentation-hapi":"0.31.2","plugins/node/opentelemetry-instrumentation-ioredis":"0.34.1","plugins/node/opentelemetry-instrumentation-knex":"0.31.2","plugins/node/opentelemetry-instrumentation-koa":"0.34.4","plugins/node/opentelemetry-instrumentation-memcached":"0.31.2","plugins/node/opentelemetry-instrumentation-mongodb":"0.34.2","plugins/node/opentelemetry-instrumentation-mysql":"0.33.1","plugins/node/opentelemetry-instrumentation-mysql2":"0.33.2","plugins/node/opentelemetry-instrumentation-nestjs-core":"0.32.3","plugins/node/opentelemetry-instrumentation-net":"0.31.2","plugins/node/opentelemetry-instrumentation-pg":"0.35.1","plugins/node/opentelemetry-instrumentation-pino":"0.33.2","plugins/node/opentelemetry-instrumentation-redis":"0.34.5","plugins/node/opentelemetry-instrumentation-redis-4":"0.34.4","plugins/node/opentelemetry-instrumentation-restify":"0.32.2","plugins/node/opentelemetry-instrumentation-router":"0.32.2","plugins/node/opentelemetry-instrumentation-winston":"0.31.2","plugins/web/opentelemetry-instrumentation-document-load":"0.32.1","plugins/web/opentelemetry-instrumentation-long-task":"0.32.3","plugins/web/opentelemetry-instrumentation-user-interaction":"0.32.2","plugins/web/opentelemetry-plugin-react-load":"0.28.1","propagators/opentelemetry-propagator-aws-xray":"1.2.0","propagators/opentelemetry-propagator-grpc-census-binary":"0.26.0","propagators/opentelemetry-propagator-instana":"0.2.1","propagators/opentelemetry-propagator-ot-trace":"0.26.2"} diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md index abb808ad5..875df530e 100644 --- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md @@ -24,6 +24,12 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.0 to ^0.33.1 +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.27.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.26.2...resource-detector-alibaba-cloud-v0.27.0) (2022-05-14) diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json index c52b1d627..7a243bc17 100644 --- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json +++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-alibaba-cloud", - "version": "0.27.4", + "version": "0.27.5", "description": "OpenTelemetry resource detector for Alibaba Cloud", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -43,7 +43,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/sinon": "10.0.2", diff --git a/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md index 4a63a5ea3..1ee8654d5 100644 --- a/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md @@ -24,6 +24,12 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.0 to ^0.33.1 +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [1.2.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-aws-v1.1.2...resource-detector-aws-v1.2.0) (2022-11-02) diff --git a/detectors/node/opentelemetry-resource-detector-aws/package.json b/detectors/node/opentelemetry-resource-detector-aws/package.json index f6c444b84..0393ceb1a 100644 --- a/detectors/node/opentelemetry-resource-detector-aws/package.json +++ b/detectors/node/opentelemetry-resource-detector-aws/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-aws", - "version": "1.2.2", + "version": "1.2.3", "description": "OpenTelemetry SDK resource detector for AWS", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -42,7 +42,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/sinon": "10.0.2", diff --git a/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md index 6b8794fac..ba00ad3ac 100644 --- a/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md @@ -18,6 +18,12 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.0 to ^0.33.1 +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.2.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.1.2...resource-detector-container-v0.2.0) (2022-11-02) diff --git a/detectors/node/opentelemetry-resource-detector-container/package.json b/detectors/node/opentelemetry-resource-detector-container/package.json index a18f75368..b9acd5092 100644 --- a/detectors/node/opentelemetry-resource-detector-container/package.json +++ b/detectors/node/opentelemetry-resource-detector-container/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-container", - "version": "0.2.2", + "version": "0.2.3", "description": "Opentelemetry resource detector to get container resource attributes", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -36,7 +36,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@types/mocha": "8.2.3", "@types/node": "^18.0.0", "@types/sinon": "10.0.2", diff --git a/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md index 94e9db827..5e228b0e0 100644 --- a/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md @@ -24,6 +24,12 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.0 to ^0.33.1 +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.28.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-gcp-v0.27.5...resource-detector-gcp-v0.28.0) (2023-02-08) diff --git a/detectors/node/opentelemetry-resource-detector-gcp/package.json b/detectors/node/opentelemetry-resource-detector-gcp/package.json index ffe0badf0..6e50947b5 100644 --- a/detectors/node/opentelemetry-resource-detector-gcp/package.json +++ b/detectors/node/opentelemetry-resource-detector-gcp/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-gcp", - "version": "0.28.0", + "version": "0.28.1", "description": "OpenTelemetry SDK resource detector for GCP", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -42,7 +42,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@types/mocha": "8.2.3", "@types/node": "18.11.7", "gts": "3.1.0", diff --git a/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md index 2e9adf550..7b8c167df 100644 --- a/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.4.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-instana-v0.4.1...resource-detector-instana-v0.4.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.4.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-instana-v0.4.0...resource-detector-instana-v0.4.1) (2023-02-07) diff --git a/detectors/node/opentelemetry-resource-detector-instana/package.json b/detectors/node/opentelemetry-resource-detector-instana/package.json index 3b468e7de..b182d98ef 100644 --- a/detectors/node/opentelemetry-resource-detector-instana/package.json +++ b/detectors/node/opentelemetry-resource-detector-instana/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-instana", - "version": "0.4.1", + "version": "0.4.2", "description": "OpenTelemetry SDK resource detector for Instana", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -40,7 +40,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-node": "^0.38.0", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/metapackages/auto-instrumentations-node/CHANGELOG.md b/metapackages/auto-instrumentations-node/CHANGELOG.md index 5ae971d5e..9e86e111e 100644 --- a/metapackages/auto-instrumentations-node/CHANGELOG.md +++ b/metapackages/auto-instrumentations-node/CHANGELOG.md @@ -87,6 +87,53 @@ * @opentelemetry/instrumentation-koa bumped from ^0.34.2 to ^0.34.3 * @opentelemetry/instrumentation-redis bumped from ^0.34.3 to ^0.34.4 +## [0.36.6](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.36.5...auto-instrumentations-node-v0.36.6) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/instrumentation-amqplib bumped from ^0.32.2 to ^0.32.3 + * @opentelemetry/instrumentation-aws-lambda bumped from ^0.35.0 to ^0.35.1 + * @opentelemetry/instrumentation-aws-sdk bumped from ^0.34.0 to ^0.34.1 + * @opentelemetry/instrumentation-bunyan bumped from ^0.31.1 to ^0.31.2 + * @opentelemetry/instrumentation-cassandra-driver bumped from ^0.32.1 to ^0.32.2 + * @opentelemetry/instrumentation-connect bumped from ^0.31.1 to ^0.31.2 + * @opentelemetry/instrumentation-dataloader bumped from ^0.4.0 to ^0.4.1 + * @opentelemetry/instrumentation-dns bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/instrumentation-express bumped from ^0.32.1 to ^0.32.2 + * @opentelemetry/instrumentation-fs bumped from ^0.7.1 to ^0.7.2 + * @opentelemetry/instrumentation-fastify bumped from ^0.31.1 to ^0.31.2 + * @opentelemetry/instrumentation-generic-pool bumped from ^0.31.1 to ^0.31.2 + * @opentelemetry/instrumentation-graphql bumped from ^0.34.0 to ^0.34.1 + * @opentelemetry/instrumentation-hapi bumped from ^0.31.1 to ^0.31.2 + * @opentelemetry/instrumentation-ioredis bumped from ^0.34.0 to ^0.34.1 + * @opentelemetry/instrumentation-knex bumped from ^0.31.1 to ^0.31.2 + * @opentelemetry/instrumentation-koa bumped from ^0.34.3 to ^0.34.4 + * @opentelemetry/instrumentation-lru-memoizer bumped from ^0.32.1 to ^0.32.2 + * @opentelemetry/instrumentation-memcached bumped from ^0.31.1 to ^0.31.2 + * @opentelemetry/instrumentation-mongodb bumped from ^0.34.1 to ^0.34.2 + * @opentelemetry/instrumentation-mongoose bumped from ^0.32.1 to ^0.32.2 + * @opentelemetry/instrumentation-mysql bumped from ^0.33.0 to ^0.33.1 + * @opentelemetry/instrumentation-mysql2 bumped from ^0.33.1 to ^0.33.2 + * @opentelemetry/instrumentation-nestjs-core bumped from ^0.32.2 to ^0.32.3 + * @opentelemetry/instrumentation-net bumped from ^0.31.1 to ^0.31.2 + * @opentelemetry/instrumentation-pg bumped from ^0.35.0 to ^0.35.1 + * @opentelemetry/instrumentation-pino bumped from ^0.33.1 to ^0.33.2 + * @opentelemetry/instrumentation-redis bumped from ^0.34.4 to ^0.34.5 + * @opentelemetry/instrumentation-redis-4 bumped from ^0.34.3 to ^0.34.4 + * @opentelemetry/instrumentation-restify bumped from ^0.32.1 to ^0.32.2 + * @opentelemetry/instrumentation-router bumped from ^0.32.1 to ^0.32.2 + * @opentelemetry/instrumentation-socket.io bumped from ^0.33.1 to ^0.33.2 + * @opentelemetry/instrumentation-tedious bumped from ^0.5.1 to ^0.5.2 + * @opentelemetry/instrumentation-winston bumped from ^0.31.1 to ^0.31.2 + ## [0.36.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.36.0...auto-instrumentations-node-v0.36.1) (2023-02-07) diff --git a/metapackages/auto-instrumentations-node/package.json b/metapackages/auto-instrumentations-node/package.json index 63abe41d1..48f319f5f 100644 --- a/metapackages/auto-instrumentations-node/package.json +++ b/metapackages/auto-instrumentations-node/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/auto-instrumentations-node", - "version": "0.36.5", + "version": "0.36.6", "description": "Metapackage which bundles opentelemetry node core and contrib instrumentations", "author": "OpenTelemetry Authors", "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/metapackages/auto-instrumentations-node#readme", @@ -47,41 +47,41 @@ }, "dependencies": { "@opentelemetry/instrumentation": "^0.38.0", - "@opentelemetry/instrumentation-amqplib": "^0.32.2", - "@opentelemetry/instrumentation-aws-lambda": "^0.35.0", - "@opentelemetry/instrumentation-aws-sdk": "^0.34.0", - "@opentelemetry/instrumentation-bunyan": "^0.31.1", - "@opentelemetry/instrumentation-cassandra-driver": "^0.32.1", - "@opentelemetry/instrumentation-connect": "^0.31.1", - "@opentelemetry/instrumentation-dataloader": "^0.4.0", - "@opentelemetry/instrumentation-dns": "^0.31.2", - "@opentelemetry/instrumentation-express": "^0.32.1", - "@opentelemetry/instrumentation-fs": "^0.7.1", - "@opentelemetry/instrumentation-fastify": "^0.31.1", - "@opentelemetry/instrumentation-generic-pool": "^0.31.1", - "@opentelemetry/instrumentation-graphql": "^0.34.0", + "@opentelemetry/instrumentation-amqplib": "^0.32.3", + "@opentelemetry/instrumentation-aws-lambda": "^0.35.1", + "@opentelemetry/instrumentation-aws-sdk": "^0.34.1", + "@opentelemetry/instrumentation-bunyan": "^0.31.2", + "@opentelemetry/instrumentation-cassandra-driver": "^0.32.2", + "@opentelemetry/instrumentation-connect": "^0.31.2", + "@opentelemetry/instrumentation-dataloader": "^0.4.1", + "@opentelemetry/instrumentation-dns": "^0.31.3", + "@opentelemetry/instrumentation-express": "^0.32.2", + "@opentelemetry/instrumentation-fs": "^0.7.2", + "@opentelemetry/instrumentation-fastify": "^0.31.2", + "@opentelemetry/instrumentation-generic-pool": "^0.31.2", + "@opentelemetry/instrumentation-graphql": "^0.34.1", "@opentelemetry/instrumentation-grpc": "^0.38.0", - "@opentelemetry/instrumentation-hapi": "^0.31.1", + "@opentelemetry/instrumentation-hapi": "^0.31.2", "@opentelemetry/instrumentation-http": "^0.38.0", - "@opentelemetry/instrumentation-ioredis": "^0.34.0", - "@opentelemetry/instrumentation-knex": "^0.31.1", - "@opentelemetry/instrumentation-koa": "^0.34.3", - "@opentelemetry/instrumentation-lru-memoizer": "^0.32.1", - "@opentelemetry/instrumentation-memcached": "^0.31.1", - "@opentelemetry/instrumentation-mongodb": "^0.34.1", - "@opentelemetry/instrumentation-mongoose": "^0.32.1", - "@opentelemetry/instrumentation-mysql": "^0.33.0", - "@opentelemetry/instrumentation-mysql2": "^0.33.1", - "@opentelemetry/instrumentation-nestjs-core": "^0.32.2", - "@opentelemetry/instrumentation-net": "^0.31.1", - "@opentelemetry/instrumentation-pg": "^0.35.0", - "@opentelemetry/instrumentation-pino": "^0.33.1", - "@opentelemetry/instrumentation-redis": "^0.34.4", - "@opentelemetry/instrumentation-redis-4": "^0.34.3", - "@opentelemetry/instrumentation-restify": "^0.32.1", - "@opentelemetry/instrumentation-router": "^0.32.1", - "@opentelemetry/instrumentation-socket.io": "^0.33.1", - "@opentelemetry/instrumentation-tedious": "^0.5.1", - "@opentelemetry/instrumentation-winston": "^0.31.1" + "@opentelemetry/instrumentation-ioredis": "^0.34.1", + "@opentelemetry/instrumentation-knex": "^0.31.2", + "@opentelemetry/instrumentation-koa": "^0.34.4", + "@opentelemetry/instrumentation-lru-memoizer": "^0.32.2", + "@opentelemetry/instrumentation-memcached": "^0.31.2", + "@opentelemetry/instrumentation-mongodb": "^0.34.2", + "@opentelemetry/instrumentation-mongoose": "^0.32.2", + "@opentelemetry/instrumentation-mysql": "^0.33.1", + "@opentelemetry/instrumentation-mysql2": "^0.33.2", + "@opentelemetry/instrumentation-nestjs-core": "^0.32.3", + "@opentelemetry/instrumentation-net": "^0.31.2", + "@opentelemetry/instrumentation-pg": "^0.35.1", + "@opentelemetry/instrumentation-pino": "^0.33.2", + "@opentelemetry/instrumentation-redis": "^0.34.5", + "@opentelemetry/instrumentation-redis-4": "^0.34.4", + "@opentelemetry/instrumentation-restify": "^0.32.2", + "@opentelemetry/instrumentation-router": "^0.32.2", + "@opentelemetry/instrumentation-socket.io": "^0.33.2", + "@opentelemetry/instrumentation-tedious": "^0.5.2", + "@opentelemetry/instrumentation-winston": "^0.31.2" } } diff --git a/metapackages/auto-instrumentations-web/CHANGELOG.md b/metapackages/auto-instrumentations-web/CHANGELOG.md index 629fde2db..a15dda040 100644 --- a/metapackages/auto-instrumentations-web/CHANGELOG.md +++ b/metapackages/auto-instrumentations-web/CHANGELOG.md @@ -12,6 +12,21 @@ * dependencies * @opentelemetry/instrumentation-document-load bumped from ^0.31.1 to ^0.31.2 +## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-web-v0.32.0...auto-instrumentations-web-v0.32.1) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/instrumentation-document-load bumped from ^0.32.0 to ^0.32.1 + * @opentelemetry/instrumentation-user-interaction bumped from ^0.32.1 to ^0.32.2 + ## [0.32.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-web-v0.31.2...auto-instrumentations-web-v0.32.0) (2023-04-06) diff --git a/metapackages/auto-instrumentations-web/package.json b/metapackages/auto-instrumentations-web/package.json index 46e83e5db..4ae082ad0 100644 --- a/metapackages/auto-instrumentations-web/package.json +++ b/metapackages/auto-instrumentations-web/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/auto-instrumentations-web", - "version": "0.32.0", + "version": "0.32.1", "description": "Metapackage which bundles opentelemetry node core and contrib instrumentations", "author": "OpenTelemetry Authors", "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/metapackages/auto-instrumentations-web#readme", @@ -61,9 +61,9 @@ }, "dependencies": { "@opentelemetry/instrumentation": "^0.38.0", - "@opentelemetry/instrumentation-document-load": "^0.32.0", + "@opentelemetry/instrumentation-document-load": "^0.32.1", "@opentelemetry/instrumentation-fetch": "^0.38.0", - "@opentelemetry/instrumentation-user-interaction": "^0.32.1", + "@opentelemetry/instrumentation-user-interaction": "^0.32.2", "@opentelemetry/instrumentation-xml-http-request": "^0.38.0" } } diff --git a/packages/opentelemetry-host-metrics/CHANGELOG.md b/packages/opentelemetry-host-metrics/CHANGELOG.md index c35f1234d..a5554b478 100644 --- a/packages/opentelemetry-host-metrics/CHANGELOG.md +++ b/packages/opentelemetry-host-metrics/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/host-metrics-v0.32.0...host-metrics-v0.32.1) (2023-04-25) + + +### Bug Fixes + +* **host-metrics:** fallback to process.memoryUsage() ([#1471](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1471)) ([4d11d61](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/4d11d61b709cf12d7d02d31960cd7ccb67404b14)) + ## [0.32.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/host-metrics-v0.31.0...host-metrics-v0.32.0) (2023-04-06) diff --git a/packages/opentelemetry-host-metrics/package.json b/packages/opentelemetry-host-metrics/package.json index b9a6fdd56..aec11b2ef 100644 --- a/packages/opentelemetry-host-metrics/package.json +++ b/packages/opentelemetry-host-metrics/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/host-metrics", - "version": "0.32.0", + "version": "0.32.1", "description": "OpenTelemetry Host Metrics for Node.js", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/packages/opentelemetry-propagation-utils/CHANGELOG.md b/packages/opentelemetry-propagation-utils/CHANGELOG.md index 3bfbf6c31..1fdcd0a4d 100644 --- a/packages/opentelemetry-propagation-utils/CHANGELOG.md +++ b/packages/opentelemetry-propagation-utils/CHANGELOG.md @@ -12,6 +12,12 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.0 to ^0.33.1 +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.29.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagation-utils-v0.28.0...propagation-utils-v0.29.0) (2022-09-27) diff --git a/packages/opentelemetry-propagation-utils/package.json b/packages/opentelemetry-propagation-utils/package.json index d14f37ce6..0d3dcd42f 100644 --- a/packages/opentelemetry-propagation-utils/package.json +++ b/packages/opentelemetry-propagation-utils/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/propagation-utils", - "version": "0.29.2", + "version": "0.29.3", "description": "Propagation utilities for opentelemetry instrumentations", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -45,7 +45,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@types/mocha": "^9.1.1", "@types/node": "18.11.7", "@types/sinon": "^10.0.11", diff --git a/packages/opentelemetry-test-utils/CHANGELOG.md b/packages/opentelemetry-test-utils/CHANGELOG.md index 7a9579f09..c6215dafe 100644 --- a/packages/opentelemetry-test-utils/CHANGELOG.md +++ b/packages/opentelemetry-test-utils/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.33.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/contrib-test-utils-v0.33.1...contrib-test-utils-v0.33.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.33.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/contrib-test-utils-v0.33.0...contrib-test-utils-v0.33.1) (2023-02-07) diff --git a/packages/opentelemetry-test-utils/package.json b/packages/opentelemetry-test-utils/package.json index 7858fb8c5..a257ecaf8 100644 --- a/packages/opentelemetry-test-utils/package.json +++ b/packages/opentelemetry-test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/contrib-test-utils", - "version": "0.33.1", + "version": "0.33.2", "description": "Test utilities for opentelemetry components", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/instrumentation-amqplib/CHANGELOG.md b/plugins/node/instrumentation-amqplib/CHANGELOG.md index 629d4a98d..d17f68af9 100644 --- a/plugins/node/instrumentation-amqplib/CHANGELOG.md +++ b/plugins/node/instrumentation-amqplib/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.32.2...instrumentation-amqplib-v0.32.3) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.32.1...instrumentation-amqplib-v0.32.2) (2023-02-14) diff --git a/plugins/node/instrumentation-amqplib/package.json b/plugins/node/instrumentation-amqplib/package.json index b2ababf3d..9f10bf487 100644 --- a/plugins/node/instrumentation-amqplib/package.json +++ b/plugins/node/instrumentation-amqplib/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-amqplib", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry automatic instrumentation for the `amqplib` package", "keywords": [ "amqplib", @@ -52,7 +52,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@types/amqplib": "^0.5.17", "@types/lodash": "4.14.178", "@types/mocha": "8.2.3", diff --git a/plugins/node/instrumentation-dataloader/CHANGELOG.md b/plugins/node/instrumentation-dataloader/CHANGELOG.md index d4e840bf9..e68c02a4e 100644 --- a/plugins/node/instrumentation-dataloader/CHANGELOG.md +++ b/plugins/node/instrumentation-dataloader/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.4.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dataloader-v0.4.0...instrumentation-dataloader-v0.4.1) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.4.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dataloader-v0.3.1...instrumentation-dataloader-v0.4.0) (2023-02-14) diff --git a/plugins/node/instrumentation-dataloader/package.json b/plugins/node/instrumentation-dataloader/package.json index 9c746b81e..24bff9f2a 100644 --- a/plugins/node/instrumentation-dataloader/package.json +++ b/plugins/node/instrumentation-dataloader/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-dataloader", - "version": "0.4.0", + "version": "0.4.1", "description": "OpenTelemetry instrumentation for dataloader", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/instrumentation-fs/CHANGELOG.md b/plugins/node/instrumentation-fs/CHANGELOG.md index 1d18d5248..70a5e3083 100644 --- a/plugins/node/instrumentation-fs/CHANGELOG.md +++ b/plugins/node/instrumentation-fs/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.7.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fs-v0.7.1...instrumentation-fs-v0.7.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.7.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fs-v0.7.0...instrumentation-fs-v0.7.1) (2023-03-03) diff --git a/plugins/node/instrumentation-fs/package.json b/plugins/node/instrumentation-fs/package.json index 4fa3c81fb..bc39c7523 100644 --- a/plugins/node/instrumentation-fs/package.json +++ b/plugins/node/instrumentation-fs/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-fs", - "version": "0.7.1", + "version": "0.7.2", "description": "OpenTelemetry automatic instrumentation package for fs", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md b/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md index 20e8a0cec..c8ef8b6d1 100644 --- a/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md +++ b/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-lru-memoizer-v0.32.1...instrumentation-lru-memoizer-v0.32.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-lru-memoizer-v0.32.0...instrumentation-lru-memoizer-v0.32.1) (2023-02-07) diff --git a/plugins/node/instrumentation-lru-memoizer/package.json b/plugins/node/instrumentation-lru-memoizer/package.json index 55c2e88b3..adde399c8 100644 --- a/plugins/node/instrumentation-lru-memoizer/package.json +++ b/plugins/node/instrumentation-lru-memoizer/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-lru-memoizer", - "version": "0.32.1", + "version": "0.32.2", "description": "OpenTelemetry automatic instrumentation package for lru-memoizer", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -43,7 +43,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@types/lru-cache": "7.10.9", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/plugins/node/instrumentation-mongoose/CHANGELOG.md b/plugins/node/instrumentation-mongoose/CHANGELOG.md index bce0581c3..205fe474f 100644 --- a/plugins/node/instrumentation-mongoose/CHANGELOG.md +++ b/plugins/node/instrumentation-mongoose/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongoose-v0.32.1...instrumentation-mongoose-v0.32.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongoose-v0.32.0...instrumentation-mongoose-v0.32.1) (2023-02-07) diff --git a/plugins/node/instrumentation-mongoose/package.json b/plugins/node/instrumentation-mongoose/package.json index 8daf628be..d2494485a 100644 --- a/plugins/node/instrumentation-mongoose/package.json +++ b/plugins/node/instrumentation-mongoose/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-mongoose", - "version": "0.32.1", + "version": "0.32.2", "description": "OpenTelemetry automatic instrumentation package for mongoose", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -46,7 +46,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/plugins/node/instrumentation-socket.io/CHANGELOG.md b/plugins/node/instrumentation-socket.io/CHANGELOG.md index 6a015675c..77ef5af55 100644 --- a/plugins/node/instrumentation-socket.io/CHANGELOG.md +++ b/plugins/node/instrumentation-socket.io/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.33.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-socket.io-v0.33.1...instrumentation-socket.io-v0.33.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.33.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-socket.io-v0.33.0...instrumentation-socket.io-v0.33.1) (2023-02-07) diff --git a/plugins/node/instrumentation-socket.io/package.json b/plugins/node/instrumentation-socket.io/package.json index 73a396bf9..fdcea5b0e 100644 --- a/plugins/node/instrumentation-socket.io/package.json +++ b/plugins/node/instrumentation-socket.io/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-socket.io", - "version": "0.33.1", + "version": "0.33.2", "description": "OpenTelemetry automatic instrumentation package for socket.io", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -43,7 +43,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/plugins/node/instrumentation-tedious/CHANGELOG.md b/plugins/node/instrumentation-tedious/CHANGELOG.md index 911160db1..239ea8f52 100644 --- a/plugins/node/instrumentation-tedious/CHANGELOG.md +++ b/plugins/node/instrumentation-tedious/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.5.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-tedious-v0.5.1...instrumentation-tedious-v0.5.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.5.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-tedious-v0.5.0...instrumentation-tedious-v0.5.1) (2023-02-07) diff --git a/plugins/node/instrumentation-tedious/package.json b/plugins/node/instrumentation-tedious/package.json index 921235541..d44336e19 100644 --- a/plugins/node/instrumentation-tedious/package.json +++ b/plugins/node/instrumentation-tedious/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-tedious", - "version": "0.5.1", + "version": "0.5.2", "description": "OpenTelemetry instrumentation for `tedious`", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -49,7 +49,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md index f0815e387..360a1d4fa 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.35.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.35.0...instrumentation-aws-lambda-v0.35.1) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.35.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.34.1...instrumentation-aws-lambda-v0.35.0) (2023-02-08) diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json index 9a72bf824..8bca56cb2 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-aws-lambda", - "version": "0.35.0", + "version": "0.35.1", "description": "OpenTelemetry AWS Lambda automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md index b31545f08..0705b1ece 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md @@ -1,5 +1,21 @@ # Changelog +## [0.34.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.34.0...instrumentation-aws-sdk-v0.34.1) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/propagation-utils bumped from ^0.29.2 to ^0.29.3 + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.34.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.33.0...instrumentation-aws-sdk-v0.34.0) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json index 34d4c38a9..71ca2b86f 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-aws-sdk", - "version": "0.34.0", + "version": "0.34.1", "description": "OpenTelemetry automatic instrumentation for the `aws-sdk` package", "keywords": [ "aws", @@ -49,7 +49,7 @@ "@opentelemetry/core": "^1.8.0", "@opentelemetry/instrumentation": "^0.38.0", "@opentelemetry/semantic-conventions": "^1.0.0", - "@opentelemetry/propagation-utils": "^0.29.2" + "@opentelemetry/propagation-utils": "^0.29.3" }, "devDependencies": { "@aws-sdk/client-dynamodb": "3.85.0", @@ -59,7 +59,7 @@ "@aws-sdk/client-sns": "3.85.0", "@aws-sdk/types": "3.78.0", "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md index 4ceb9ebe9..284b791f9 100644 --- a/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-bunyan-v0.31.1...instrumentation-bunyan-v0.31.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.31.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-bunyan-v0.31.0...instrumentation-bunyan-v0.31.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/package.json b/plugins/node/opentelemetry-instrumentation-bunyan/package.json index c1092591a..9531a59c2 100644 --- a/plugins/node/opentelemetry-instrumentation-bunyan/package.json +++ b/plugins/node/opentelemetry-instrumentation-bunyan/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-bunyan", - "version": "0.31.1", + "version": "0.31.2", "description": "OpenTelemetry instrumentation for bunyan", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md index 8f87ca322..ace63fe55 100644 --- a/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cassandra-driver-v0.32.1...instrumentation-cassandra-driver-v0.32.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cassandra-driver-v0.32.0...instrumentation-cassandra-driver-v0.32.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/package.json b/plugins/node/opentelemetry-instrumentation-cassandra/package.json index d370a3685..238ef6c10 100644 --- a/plugins/node/opentelemetry-instrumentation-cassandra/package.json +++ b/plugins/node/opentelemetry-instrumentation-cassandra/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-cassandra-driver", - "version": "0.32.1", + "version": "0.32.2", "description": "OpenTelemetry instrumentation for cassandra-driver", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -48,7 +48,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", diff --git a/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md index 0bc5ce089..7bb82f0c8 100644 --- a/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-connect-v0.31.1...instrumentation-connect-v0.31.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.31.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-connect-v0.31.0...instrumentation-connect-v0.31.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-connect/package.json b/plugins/node/opentelemetry-instrumentation-connect/package.json index 1917b0a98..4973de904 100644 --- a/plugins/node/opentelemetry-instrumentation-connect/package.json +++ b/plugins/node/opentelemetry-instrumentation-connect/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-connect", - "version": "0.31.1", + "version": "0.31.2", "description": "OpenTelemetry connect automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md index 0291584a4..2bb4d8a55 100644 --- a/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dns-v0.31.2...instrumentation-dns-v0.31.3) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dns-v0.31.1...instrumentation-dns-v0.31.2) (2023-02-14) diff --git a/plugins/node/opentelemetry-instrumentation-dns/package.json b/plugins/node/opentelemetry-instrumentation-dns/package.json index 5d061882a..2bbb89143 100644 --- a/plugins/node/opentelemetry-instrumentation-dns/package.json +++ b/plugins/node/opentelemetry-instrumentation-dns/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-dns", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry dns automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md index adeb99686..fc1e4ef37 100644 --- a/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.32.1...instrumentation-express-v0.32.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.32.0...instrumentation-express-v0.32.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-express/package.json b/plugins/node/opentelemetry-instrumentation-express/package.json index d993a7675..d53ef3661 100644 --- a/plugins/node/opentelemetry-instrumentation-express/package.json +++ b/plugins/node/opentelemetry-instrumentation-express/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-express", - "version": "0.32.1", + "version": "0.32.2", "description": "OpenTelemetry express automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md index 1602936be..a4fef65d3 100644 --- a/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fastify-v0.31.1...instrumentation-fastify-v0.31.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.31.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fastify-v0.31.0...instrumentation-fastify-v0.31.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-fastify/package.json b/plugins/node/opentelemetry-instrumentation-fastify/package.json index 1eee755b7..0842b9172 100644 --- a/plugins/node/opentelemetry-instrumentation-fastify/package.json +++ b/plugins/node/opentelemetry-instrumentation-fastify/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-fastify", - "version": "0.31.1", + "version": "0.31.2", "description": "OpenTelemetry fastify automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md index 096c0f2c2..5dc40f587 100644 --- a/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-generic-pool-v0.31.1...instrumentation-generic-pool-v0.31.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.31.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-generic-pool-v0.31.0...instrumentation-generic-pool-v0.31.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json index dd229c1c6..be90ab09c 100644 --- a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json +++ b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-generic-pool", - "version": "0.31.1", + "version": "0.31.2", "description": "OpenTelemetry Generic Pool automatic instrumentation package", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md index edb541f9c..ad90b3f5f 100644 --- a/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.34.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-graphql-v0.34.0...instrumentation-graphql-v0.34.1) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.34.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-graphql-v0.33.2...instrumentation-graphql-v0.34.0) (2023-04-06) diff --git a/plugins/node/opentelemetry-instrumentation-graphql/package.json b/plugins/node/opentelemetry-instrumentation-graphql/package.json index 7007ac23a..6b94543fa 100644 --- a/plugins/node/opentelemetry-instrumentation-graphql/package.json +++ b/plugins/node/opentelemetry-instrumentation-graphql/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-graphql", - "version": "0.34.0", + "version": "0.34.1", "description": "OpenTelemetry @opentelemetry/instrumentation-graphql automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md index b108b74ba..1ffe858da 100644 --- a/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-hapi-v0.31.1...instrumentation-hapi-v0.31.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.31.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-hapi-v0.31.0...instrumentation-hapi-v0.31.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-hapi/package.json b/plugins/node/opentelemetry-instrumentation-hapi/package.json index a0c7109d2..335a51dce 100644 --- a/plugins/node/opentelemetry-instrumentation-hapi/package.json +++ b/plugins/node/opentelemetry-instrumentation-hapi/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-hapi", - "version": "0.31.1", + "version": "0.31.2", "description": "OpenTelemetry Hapi automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md index 26e2a9bdb..2cd7b7f80 100644 --- a/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.34.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-ioredis-v0.34.0...instrumentation-ioredis-v0.34.1) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.34.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-ioredis-v0.33.2...instrumentation-ioredis-v0.34.0) (2023-03-03) diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/package.json b/plugins/node/opentelemetry-instrumentation-ioredis/package.json index 31fd34bbd..b4be845d7 100644 --- a/plugins/node/opentelemetry-instrumentation-ioredis/package.json +++ b/plugins/node/opentelemetry-instrumentation-ioredis/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-ioredis", - "version": "0.34.0", + "version": "0.34.1", "description": "OpenTelemetry ioredis automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -52,7 +52,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", diff --git a/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md index 66b31489f..c4d63514b 100644 --- a/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-knex-v0.31.1...instrumentation-knex-v0.31.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.31.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-knex-v0.31.0...instrumentation-knex-v0.31.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-knex/package.json b/plugins/node/opentelemetry-instrumentation-knex/package.json index b033b01f9..34a8fc511 100644 --- a/plugins/node/opentelemetry-instrumentation-knex/package.json +++ b/plugins/node/opentelemetry-instrumentation-knex/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-knex", - "version": "0.31.1", + "version": "0.31.2", "description": "OpenTelemetry Knex automatic instrumentation package", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md index 2884dfe1f..25bbc422c 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.34.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-koa-v0.34.3...instrumentation-koa-v0.34.4) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.34.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-koa-v0.34.2...instrumentation-koa-v0.34.3) (2023-04-06) diff --git a/plugins/node/opentelemetry-instrumentation-koa/package.json b/plugins/node/opentelemetry-instrumentation-koa/package.json index 835ebc8d6..d4f5b70cf 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/package.json +++ b/plugins/node/opentelemetry-instrumentation-koa/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-koa", - "version": "0.34.3", + "version": "0.34.4", "description": "OpenTelemetry Koa automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md index 81e2090f3..7d7f658cd 100644 --- a/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-memcached-v0.31.1...instrumentation-memcached-v0.31.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.31.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-memcached-v0.31.0...instrumentation-memcached-v0.31.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-memcached/package.json b/plugins/node/opentelemetry-instrumentation-memcached/package.json index 3f05ae2ac..1be04bd5f 100644 --- a/plugins/node/opentelemetry-instrumentation-memcached/package.json +++ b/plugins/node/opentelemetry-instrumentation-memcached/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-memcached", - "version": "0.31.1", + "version": "0.31.2", "description": "OpenTelemetry memcached automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -49,7 +49,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md index 29199dfc7..caef8b408 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.34.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.34.1...instrumentation-mongodb-v0.34.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.34.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.34.0...instrumentation-mongodb-v0.34.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/package.json b/plugins/node/opentelemetry-instrumentation-mongodb/package.json index 8c748a4cd..86ce21540 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/package.json +++ b/plugins/node/opentelemetry-instrumentation-mongodb/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-mongodb", - "version": "0.34.1", + "version": "0.34.2", "description": "OpenTelemetry mongodb automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -51,7 +51,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/context-async-hooks": "^1.8.0", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", diff --git a/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md index d4cdabfa6..f5b1a6a6c 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.33.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql-v0.33.0...instrumentation-mysql-v0.33.1) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.33.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql-v0.32.0...instrumentation-mysql-v0.33.0) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-mysql/package.json b/plugins/node/opentelemetry-instrumentation-mysql/package.json index 243395d09..f7b8f3b51 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-mysql", - "version": "0.33.0", + "version": "0.33.1", "description": "OpenTelemetry mysql automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -49,7 +49,7 @@ "@opentelemetry/api": "^1.3.0", "@opentelemetry/sdk-metrics": "^1.8.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md index 86794fed0..b483cda31 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.33.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql2-v0.33.1...instrumentation-mysql2-v0.33.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.33.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql2-v0.33.0...instrumentation-mysql2-v0.33.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/package.json b/plugins/node/opentelemetry-instrumentation-mysql2/package.json index d802c450a..69dc09b7c 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql2/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-mysql2", - "version": "0.33.1", + "version": "0.33.2", "description": "OpenTelemetry mysql2 automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -49,7 +49,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "7.0.2", "@types/mysql2": "github:types/mysql2", diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md index 2aba1d7db..d776e1988 100644 --- a/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-nestjs-core-v0.32.2...instrumentation-nestjs-core-v0.32.3) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-nestjs-core-v0.32.1...instrumentation-nestjs-core-v0.32.2) (2023-02-14) diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json index 36032316c..4433510f6 100644 --- a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json +++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-nestjs-core", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry NestJS automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md index bd2c5cab7..5df4e5b3e 100644 --- a/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-net-v0.31.1...instrumentation-net-v0.31.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.31.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-net-v0.31.0...instrumentation-net-v0.31.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-net/package.json b/plugins/node/opentelemetry-instrumentation-net/package.json index f1668c7e6..d3f17235d 100644 --- a/plugins/node/opentelemetry-instrumentation-net/package.json +++ b/plugins/node/opentelemetry-instrumentation-net/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-net", - "version": "0.31.1", + "version": "0.31.2", "description": "OpenTelemetry net module automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md index 40d737e1a..536c67b1d 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## [0.35.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.35.0...instrumentation-pg-v0.35.1) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.35.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.34.1...instrumentation-pg-v0.35.0) (2023-03-03) diff --git a/plugins/node/opentelemetry-instrumentation-pg/package.json b/plugins/node/opentelemetry-instrumentation-pg/package.json index 7bc613501..f6c74b4c6 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/package.json +++ b/plugins/node/opentelemetry-instrumentation-pg/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-pg", - "version": "0.35.0", + "version": "0.35.1", "description": "OpenTelemetry postgres automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -55,7 +55,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", diff --git a/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md index 84d266bdf..ad64e2277 100644 --- a/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.33.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pino-v0.33.1...instrumentation-pino-v0.33.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.33.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pino-v0.33.0...instrumentation-pino-v0.33.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-pino/package.json b/plugins/node/opentelemetry-instrumentation-pino/package.json index 5ae5b9a6c..64e1777a0 100644 --- a/plugins/node/opentelemetry-instrumentation-pino/package.json +++ b/plugins/node/opentelemetry-instrumentation-pino/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-pino", - "version": "0.33.1", + "version": "0.33.2", "description": "OpenTelemetry instrumentation for pino", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md index 41a92d7ae..f82492d59 100644 --- a/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md @@ -6,6 +6,20 @@ * dependencies * @opentelemetry/redis-common bumped from ^0.34.0 to ^0.35.0 +## [0.34.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.34.3...instrumentation-redis-4-v0.34.4) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.34.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.34.1...instrumentation-redis-4-v0.34.2) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/package.json b/plugins/node/opentelemetry-instrumentation-redis-4/package.json index 9cb578b74..8bc2cb6ff 100644 --- a/plugins/node/opentelemetry-instrumentation-redis-4/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis-4/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-redis-4", - "version": "0.34.3", + "version": "0.34.4", "description": "Automatic OpenTelemetry instrumentation for redis package version 4", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -54,7 +54,7 @@ "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", "@opentelemetry/core": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", diff --git a/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md index c57dc142d..5e7674627 100644 --- a/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md @@ -6,6 +6,20 @@ * dependencies * @opentelemetry/redis-common bumped from ^0.34.0 to ^0.35.0 +## [0.34.5](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-v0.34.4...instrumentation-redis-v0.34.5) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 + ## [0.34.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-v0.34.3...instrumentation-redis-v0.34.4) (2023-04-06) diff --git a/plugins/node/opentelemetry-instrumentation-redis/package.json b/plugins/node/opentelemetry-instrumentation-redis/package.json index a768217ff..bf5d9e2c4 100644 --- a/plugins/node/opentelemetry-instrumentation-redis/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-redis", - "version": "0.34.4", + "version": "0.34.5", "description": "Automatic OpenTelemetry instrumentation for redis package version 2 and 3", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -54,7 +54,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.1", + "@opentelemetry/contrib-test-utils": "^0.33.2", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", diff --git a/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md index f43e19c3e..84209a065 100644 --- a/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-restify-v0.32.1...instrumentation-restify-v0.32.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-restify-v0.32.0...instrumentation-restify-v0.32.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-restify/package.json b/plugins/node/opentelemetry-instrumentation-restify/package.json index 17218d6c0..1f948db6a 100644 --- a/plugins/node/opentelemetry-instrumentation-restify/package.json +++ b/plugins/node/opentelemetry-instrumentation-restify/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-restify", - "version": "0.32.1", + "version": "0.32.2", "description": "OpenTelemetry restify automatic instrumentation package", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md index 4748791bf..e855577f1 100644 --- a/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-router-v0.32.1...instrumentation-router-v0.32.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-router-v0.32.0...instrumentation-router-v0.32.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-router/package.json b/plugins/node/opentelemetry-instrumentation-router/package.json index be0a2e946..01b870137 100644 --- a/plugins/node/opentelemetry-instrumentation-router/package.json +++ b/plugins/node/opentelemetry-instrumentation-router/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-router", - "version": "0.32.1", + "version": "0.32.2", "description": "OpenTelemetry Router automatic instrumentation package", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md index 0fdc10bd7..376d16fdc 100644 --- a/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-winston-v0.31.1...instrumentation-winston-v0.31.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.31.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-winston-v0.31.0...instrumentation-winston-v0.31.1) (2023-02-07) diff --git a/plugins/node/opentelemetry-instrumentation-winston/package.json b/plugins/node/opentelemetry-instrumentation-winston/package.json index bddaf0390..ed702ebc3 100644 --- a/plugins/node/opentelemetry-instrumentation-winston/package.json +++ b/plugins/node/opentelemetry-instrumentation-winston/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-winston", - "version": "0.31.1", + "version": "0.31.2", "description": "OpenTelemetry instrumentation for winston", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md b/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md index d0ace4b33..82977e082 100644 --- a/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md +++ b/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-document-load-v0.32.0...instrumentation-document-load-v0.32.1) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.32.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-document-load-v0.31.2...instrumentation-document-load-v0.32.0) (2023-04-06) diff --git a/plugins/web/opentelemetry-instrumentation-document-load/package.json b/plugins/web/opentelemetry-instrumentation-document-load/package.json index 77423ac7b..dac0941fb 100644 --- a/plugins/web/opentelemetry-instrumentation-document-load/package.json +++ b/plugins/web/opentelemetry-instrumentation-document-load/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-document-load", - "version": "0.32.0", + "version": "0.32.1", "description": "OpenTelemetry document-load automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md b/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md index e74af10da..2f7ff1c67 100644 --- a/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md +++ b/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-long-task-v0.32.2...instrumentation-long-task-v0.32.3) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-long-task-v0.32.1...instrumentation-long-task-v0.32.2) (2023-03-03) diff --git a/plugins/web/opentelemetry-instrumentation-long-task/package.json b/plugins/web/opentelemetry-instrumentation-long-task/package.json index 818a1fa8f..9da05252c 100644 --- a/plugins/web/opentelemetry-instrumentation-long-task/package.json +++ b/plugins/web/opentelemetry-instrumentation-long-task/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-long-task", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry long task API automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md b/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md index 5a9f53ac9..f603c6b9d 100644 --- a/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md +++ b/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-user-interaction-v0.32.1...instrumentation-user-interaction-v0.32.2) (2023-04-25) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.38.0 ([#1468](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1468)) ([565a2b2](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/565a2b2c6fde88af3f5401ef6a5a9643d0d66349)) + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-user-interaction-v0.32.0...instrumentation-user-interaction-v0.32.1) (2023-02-07) diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json index 548db5722..f7b40361f 100644 --- a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json +++ b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-user-interaction", - "version": "0.32.1", + "version": "0.32.2", "description": "OpenTelemetry UserInteraction automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", From 9347ca6a3ea5f40b9fff33d1a9a3ae2bea7e6ba8 Mon Sep 17 00:00:00 2001 From: Simen Bekkhus Date: Wed, 26 Apr 2023 09:41:43 +0200 Subject: [PATCH 05/72] fix(http): stop listening to `request`'s `close` event once it has emitted `response` (#3625) Co-authored-by: Chengzhong Wu Co-authored-by: Marc Pichler --- CHANGELOG.md | 1 + .../src/http.ts | 45 +++++++++++++---- .../test/functionals/http-enable.test.ts | 50 ++++++++++++++++++- 3 files changed, 84 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9c4b2f297..82ad6fd83 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,7 @@ For experimental package changes, see the [experimental CHANGELOG](experimental/ ### :bug: (Bug Fix) +* fix(http-instrumentation): stop listening to `request`'s `close` event once it has emitted `response` [#3625](https://github.com/open-telemetry/opentelemetry-js/pull/3625) @SimenB * fix(sdk-node): fix initialization in bundled environments by not loading @opentelemetry/exporter-jaeger [#3739](https://github.com/open-telemetry/opentelemetry-js/pull/3739) @pichlermarc ### :books: (Refine Doc) diff --git a/experimental/packages/opentelemetry-instrumentation-http/src/http.ts b/experimental/packages/opentelemetry-instrumentation-http/src/http.ts index 1f6affef6..0b5c166dd 100644 --- a/experimental/packages/opentelemetry-instrumentation-http/src/http.ts +++ b/experimental/packages/opentelemetry-instrumentation-http/src/http.ts @@ -315,6 +315,11 @@ export class HttpInstrumentation extends InstrumentationBase { this._callRequestHook(span, request); } + /** + * Determines if the request has errored or the response has ended/errored. + */ + let responseFinished = false; + /* * User 'response' event listeners can be added before our listener, * force our listener to be the first, so response emitter is bound @@ -323,6 +328,7 @@ export class HttpInstrumentation extends InstrumentationBase { request.prependListener( 'response', (response: http.IncomingMessage & { aborted?: boolean }) => { + this._diag.debug('outgoingRequest on response()'); const responseAttributes = utils.getOutgoingRequestAttributesOnResponse(response); span.setAttributes(responseAttributes); @@ -344,9 +350,13 @@ export class HttpInstrumentation extends InstrumentationBase { ); context.bind(context.active(), response); - this._diag.debug('outgoingRequest on response()'); - response.on('end', () => { + + const endHandler = () => { this._diag.debug('outgoingRequest on end()'); + if (responseFinished) { + return; + } + responseFinished = true; let status: SpanStatus; if (response.aborted && !response.complete) { @@ -381,15 +391,24 @@ export class HttpInstrumentation extends InstrumentationBase { startTime, metricAttributes ); - }); + }; + + response.on('end', endHandler); + // See https://github.com/open-telemetry/opentelemetry-js/pull/3625#issuecomment-1475673533 + if (semver.lt(process.version, '16.0.0')) { + response.on('close', endHandler); + } response.on(errorMonitor, (error: Err) => { this._diag.debug('outgoingRequest on error()', error); + if (responseFinished) { + return; + } + responseFinished = true; utils.setSpanWithError(span, error); - const code = utils.parseResponseStatus( - SpanKind.CLIENT, - response.statusCode - ); - span.setStatus({ code, message: error.message }); + span.setStatus({ + code: SpanStatusCode.ERROR, + message: error.message, + }); this._closeHttpSpan( span, SpanKind.CLIENT, @@ -401,12 +420,18 @@ export class HttpInstrumentation extends InstrumentationBase { ); request.on('close', () => { this._diag.debug('outgoingRequest on request close()'); - if (!request.aborted) { - this._closeHttpSpan(span, SpanKind.CLIENT, startTime, metricAttributes); + if (request.aborted || responseFinished) { + return; } + responseFinished = true; + this._closeHttpSpan(span, SpanKind.CLIENT, startTime, metricAttributes); }); request.on(errorMonitor, (error: Err) => { this._diag.debug('outgoingRequest on request error()', error); + if (responseFinished) { + return; + } + responseFinished = true; utils.setSpanWithError(span, error); this._closeHttpSpan(span, SpanKind.CLIENT, startTime, metricAttributes); }); diff --git a/experimental/packages/opentelemetry-instrumentation-http/test/functionals/http-enable.test.ts b/experimental/packages/opentelemetry-instrumentation-http/test/functionals/http-enable.test.ts index 5a5588993..e5b2cebb9 100644 --- a/experimental/packages/opentelemetry-instrumentation-http/test/functionals/http-enable.test.ts +++ b/experimental/packages/opentelemetry-instrumentation-http/test/functionals/http-enable.test.ts @@ -16,11 +16,13 @@ import { SpanStatusCode, context, + diag, propagation, Span as ISpan, SpanKind, trace, SpanAttributes, + DiagConsoleLogger, } from '@opentelemetry/api'; import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node'; import { @@ -269,6 +271,14 @@ describe('HttpInstrumentation', () => { // hang the request. return; } + if (request.url?.includes('/destroy-request')) { + // force flush http response header to trigger client response callback + response.write(''); + setTimeout(() => { + request.socket.destroy(); + }, 100); + return; + } if (request.url?.includes('/ignored')) { provider.getTracer('test').startSpan('some-span').end(); } @@ -861,11 +871,12 @@ describe('HttpInstrumentation', () => { }); it('should have 2 ended span when client prematurely close', async () => { - const promise = new Promise((resolve, reject) => { + const promise = new Promise(resolve => { const req = http.get( `${protocol}://${hostname}:${serverPort}/hang`, res => { res.on('close', () => {}); + res.on('error', () => {}); } ); // close the socket. @@ -873,7 +884,7 @@ describe('HttpInstrumentation', () => { req.destroy(); }, 10); - req.on('error', reject); + req.on('error', () => {}); req.on('close', () => { // yield to server to end the span. @@ -919,6 +930,41 @@ describe('HttpInstrumentation', () => { assert.strictEqual(clientSpan.status.code, SpanStatusCode.ERROR); assert.ok(Object.keys(clientSpan.attributes).length >= 6); }); + + it('should not end span multiple times if request socket destroyed before response completes', async () => { + const warnMessages: string[] = []; + diag.setLogger({ + ...new DiagConsoleLogger(), + warn: message => { + warnMessages.push(message); + }, + }); + const promise = new Promise(resolve => { + const req = http.request( + `${protocol}://${hostname}:${serverPort}/destroy-request`, + { + // Allow `req.write()`. + method: 'POST', + }, + res => { + res.on('end', () => {}); + res.on('close', () => { + resolve(); + }); + res.on('error', () => {}); + } + ); + // force flush http request header to trigger client response callback + req.write(''); + req.on('error', () => {}); + }); + + await promise; + + diag.disable(); + + assert.deepStrictEqual(warnMessages, []); + }); }); describe('with require parent span', () => { From 98e4e821bcd5b3d74f95db26439a93c3abb9f467 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=B2=92=E7=B2=92=E6=A9=99?= Date: Wed, 26 Apr 2023 17:05:21 +0800 Subject: [PATCH 06/72] feat(exporter-logs-otlp-grpc): implements otlp-grpc exporters for logs (#3712) Co-authored-by: Martin Kuba Co-authored-by: Daniel Dyla Co-authored-by: Marc Pichler --- CHANGELOG.md | 2 + experimental/CHANGELOG.md | 4 + .../exporter-logs-otlp-grpc/.eslintignore | 1 + .../exporter-logs-otlp-grpc/.eslintrc.js | 8 + .../exporter-logs-otlp-grpc/.npmignore | 4 + .../packages/exporter-logs-otlp-grpc/LICENSE | 201 ++++++++++ .../exporter-logs-otlp-grpc/README.md | 89 +++++ .../exporter-logs-otlp-grpc/package.json | 82 +++++ .../src/OTLPLogsExporter.ts | 77 ++++ .../exporter-logs-otlp-grpc/src/index.ts | 17 + .../test/OTLPLogsExporter.test.ts | 346 ++++++++++++++++++ .../exporter-logs-otlp-grpc/test/certs/ca.crt | 33 ++ .../exporter-logs-otlp-grpc/test/certs/ca.key | 51 +++ .../test/certs/client.crt | 31 ++ .../test/certs/client.csr | 28 ++ .../test/certs/client.key | 51 +++ .../test/certs/regenerate.sh | 22 ++ .../test/certs/server.crt | 31 ++ .../test/certs/server.csr | 28 ++ .../test/certs/server.key | 51 +++ .../test/logsHelper.ts | 173 +++++++++ .../exporter-logs-otlp-grpc/tsconfig.json | 37 ++ .../otlp-grpc-exporter-base/src/types.ts | 5 +- .../otlp-grpc-exporter-base/src/util.ts | 39 +- .../packages/otlp-transformer/.gitignore | 1 + .../packages/otlp-transformer/README.md | 13 +- .../packages/otlp-transformer/package.json | 7 +- .../otlp-transformer/src/common/internal.ts | 20 +- .../packages/otlp-transformer/src/index.ts | 2 + .../otlp-transformer/src/logs/index.ts | 121 ++++++ .../otlp-transformer/src/logs/types.ts | 117 ++++++ .../otlp-transformer/test/logs.test.ts | 199 ++++++++++ .../otlp-transformer/test/trace.test.ts | 6 +- .../otlp-transformer/tsconfig.esm.json | 6 + .../otlp-transformer/tsconfig.esnext.json | 6 + .../packages/otlp-transformer/tsconfig.json | 6 + .../src/utils/environment.ts | 18 + tsconfig.json | 4 + 38 files changed, 1895 insertions(+), 42 deletions(-) create mode 100644 experimental/packages/exporter-logs-otlp-grpc/.eslintignore create mode 100644 experimental/packages/exporter-logs-otlp-grpc/.eslintrc.js create mode 100644 experimental/packages/exporter-logs-otlp-grpc/.npmignore create mode 100644 experimental/packages/exporter-logs-otlp-grpc/LICENSE create mode 100644 experimental/packages/exporter-logs-otlp-grpc/README.md create mode 100644 experimental/packages/exporter-logs-otlp-grpc/package.json create mode 100644 experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogsExporter.ts create mode 100644 experimental/packages/exporter-logs-otlp-grpc/src/index.ts create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogsExporter.test.ts create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key create mode 100755 experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key create mode 100644 experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts create mode 100644 experimental/packages/exporter-logs-otlp-grpc/tsconfig.json create mode 100644 experimental/packages/otlp-transformer/src/logs/index.ts create mode 100644 experimental/packages/otlp-transformer/src/logs/types.ts create mode 100644 experimental/packages/otlp-transformer/test/logs.test.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index 82ad6fd83..07bd03fa7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ For experimental package changes, see the [experimental CHANGELOG](experimental/ ### :rocket: (Enhancement) +* feat(core): add environment variables for OTLP log exporters. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 + ### :bug: (Bug Fix) * fix(http-instrumentation): stop listening to `request`'s `close` event once it has emitted `response` [#3625](https://github.com/open-telemetry/opentelemetry-js/pull/3625) @SimenB diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index a7c6ee143..70a562018 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -8,6 +8,10 @@ All notable changes to experimental packages in this project will be documented ### :rocket: (Enhancement) +* feat(otlp-transformer): support log records. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 +* feat(otlp-grpc-exporter-base): support log records. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 +* feat(exporter-logs-otlp-grpc): otlp-grpc exporter for logs. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 + ### :bug: (Bug Fix) * fix(instrumentation): update `require-in-the-middle` to v7.0.1 [#3743](https://github.com/open-telemetry/opentelemetry-js/pull/3743) @trentm diff --git a/experimental/packages/exporter-logs-otlp-grpc/.eslintignore b/experimental/packages/exporter-logs-otlp-grpc/.eslintignore new file mode 100644 index 000000000..378eac25d --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/.eslintignore @@ -0,0 +1 @@ +build diff --git a/experimental/packages/exporter-logs-otlp-grpc/.eslintrc.js b/experimental/packages/exporter-logs-otlp-grpc/.eslintrc.js new file mode 100644 index 000000000..3ed0fbeba --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/.eslintrc.js @@ -0,0 +1,8 @@ +module.exports = { + "env": { + "mocha": true, + "commonjs": true, + "node": true, + }, + ...require('../../../eslint.config.js') +} diff --git a/experimental/packages/exporter-logs-otlp-grpc/.npmignore b/experimental/packages/exporter-logs-otlp-grpc/.npmignore new file mode 100644 index 000000000..9505ba945 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/.npmignore @@ -0,0 +1,4 @@ +/bin +/coverage +/doc +/test diff --git a/experimental/packages/exporter-logs-otlp-grpc/LICENSE b/experimental/packages/exporter-logs-otlp-grpc/LICENSE new file mode 100644 index 000000000..261eeb9e9 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + 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. diff --git a/experimental/packages/exporter-logs-otlp-grpc/README.md b/experimental/packages/exporter-logs-otlp-grpc/README.md new file mode 100644 index 000000000..dee62b496 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/README.md @@ -0,0 +1,89 @@ +# OpenTelemetry Collector Logs Exporter for node with grpc + +[![NPM Published Version][npm-img]][npm-url] +[![Apache License][license-image]][license-image] + +**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`. + +## Installation + +```bash +npm install --save @opentelemetry/exporter-logs-otlp-grpc +``` + +## Service Name + +The OpenTelemetry Collector Exporter does not have a service name configuration. +In order to set the service name, use the `service.name` resource attribute as prescribed in the [OpenTelemetry Resource Semantic Conventions][semconv-resource-service-name]. +To see documentation and sample code for the traces exporter, as well as instructions for using TLS, visit the [Collector Trace Exporter for web and node][trace-exporter-url]. +To see documentation and sample code for the metric exporter, see the [exporter-metrics-otlp-grpc package][metrics-exporter-url] + +## Logs in Node - GRPC + +The OTLPLogsExporter in Node expects the URL to only be the hostname. It will not work with `/v1/logs`. All +options that work with trace also work with logs. + +```js +import { + LoggerProvider, + BatchLogRecordProcessor, +} from '@opentelemetry/sdk-logs'; +import { OTLPLogsExporter } from '@opentelemetry/exporter-logs-otlp-grpc'; + +const collectorOptions = { + // url is optional and can be omitted - default is http://localhost:4317 + url: 'http://:', +}; + +const loggerExporter = new OTLPLogsExporter(collectorOptions); +const loggerProvider = new LoggerProvider(); + +loggerProvider.addLogRecordProcessor( + new BatchLogRecordProcessor(loggerExporter) +); + +['SIGINT', 'SIGTERM'].forEach(signal => { + process.on(signal, () => loggerProvider.shutdown().catch(console.error)); +}); + +// logging +const logger = loggerProvider.getLogger('example-logger'); +logger.emit({ body: 'example-log' }); +``` + +## Environment Variable Configuration + +| Environment variable | Description | +|----------------------|-------------| +| OTEL_EXPORTER_OTLP_LOGS_ENDPOINT | The endpoint to send logs to. By default `localhost:4317` will be used. | +| OTEL_EXPORTER_OTLP_ENDPOINT | The endpoint to send trace, metric, and logs to. By default `localhost:4317` will be used. | +| OTEL_EXPORTER_OTLP_COMPRESSION | The compression type to use on OTLP trace, metric, and log requests. Options include gzip. By default no compression will be used. | +| OTEL_EXPORTER_OTLP_INSECURE | Whether to enable client transport security for the exporter's gRPC connection for trace, metric and log requests. This option only applies to OTLP/gRPC when an endpoint is provided without the http or https scheme. Options include true or false. By default insecure is false which creates a secure connection. | +| OTEL_EXPORTER_OTLP_CERTIFICATE | The path to the file containing trusted root certificate to use when verifying an OTLP trace, metric, or log server's TLS credentials. By default the host platform's trusted root certificate is used. | +| 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_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_TIMEOUT | The maximum waiting time, in milliseconds, allowed to send each OTLP trace and metric batch. Default is 10000. | + +> Settings configured programmatically take precedence over environment variables. Per-signal environment variables take precedence over non-per-signal environment variables. + +## Useful links + +- For more information on OpenTelemetry, visit: +- For more about OpenTelemetry JavaScript: +- For help or feedback on this project, join us in [GitHub Discussions][discussions-url] + +## License + +Apache 2.0 - See [LICENSE][license-url] for more information. + +[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions +[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE +[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat +[npm-url]: https://www.npmjs.com/package/@opentelemetry/exporter-logs-otlp-grpc +[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fexporter-logs-otlp-grpc.svg +[opentelemetry-collector-url]: https://github.com/open-telemetry/opentelemetry-collector +[semconv-resource-service-name]: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/semantic_conventions/README.md#service +[trace-exporter-url]: https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/exporter-trace-otlp-grpc +[metrics-exporter-url]: https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc diff --git a/experimental/packages/exporter-logs-otlp-grpc/package.json b/experimental/packages/exporter-logs-otlp-grpc/package.json new file mode 100644 index 000000000..b48472379 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/package.json @@ -0,0 +1,82 @@ +{ + "name": "@opentelemetry/exporter-logs-otlp-grpc", + "version": "0.38.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", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "prepublishOnly": "npm run compile", + "compile": "tsc --build", + "clean": "tsc --build --clean", + "lint": "eslint . --ext .ts", + "lint:fix": "eslint . --ext .ts --fix", + "tdd": "npm run test -- --watch-extensions ts --watch", + "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", + "prewatch": "npm run precompile", + "peer-api-check": "node ../../../scripts/peer-api-check.js", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" + }, + "keywords": [ + "opentelemetry", + "nodejs", + "grpc", + "tracing", + "profiling", + "metrics", + "stats", + "logging" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "build/protos/**/*.proto", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@babel/core": "7.16.0", + "@grpc/proto-loader": "^0.7.3", + "@opentelemetry/api": "1.4.1", + "@opentelemetry/api-logs": "0.38.0", + "@opentelemetry/otlp-exporter-base": "0.38.0", + "@opentelemetry/resources": "1.12.0", + "@types/mocha": "10.0.0", + "@types/node": "18.6.5", + "@types/sinon": "10.0.13", + "codecov": "3.8.3", + "cpx": "1.5.0", + "mocha": "10.0.0", + "nyc": "15.1.0", + "rimraf": "4.1.2", + "sinon": "15.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typescript": "4.4.4" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.0.0" + }, + "dependencies": { + "@grpc/grpc-js": "^1.7.1", + "@opentelemetry/core": "1.12.0", + "@opentelemetry/otlp-grpc-exporter-base": "0.38.0", + "@opentelemetry/otlp-transformer": "0.38.0", + "@opentelemetry/sdk-logs": "0.38.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/exporter-logs-otlp-grpc", + "sideEffects": false +} \ No newline at end of file diff --git a/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogsExporter.ts b/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogsExporter.ts new file mode 100644 index 000000000..e4484fdb3 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogsExporter.ts @@ -0,0 +1,77 @@ +/* + * 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 { LogRecordExporter, ReadableLogRecord } from '@opentelemetry/sdk-logs'; +import { baggageUtils, getEnv } from '@opentelemetry/core'; +import { Metadata } from '@grpc/grpc-js'; +import { + OTLPGRPCExporterConfigNode, + OTLPGRPCExporterNodeBase, + ServiceClientType, + validateAndNormalizeUrl, + DEFAULT_COLLECTOR_URL, +} from '@opentelemetry/otlp-grpc-exporter-base'; +import { + createExportLogsServiceRequest, + IExportLogsServiceRequest, +} from '@opentelemetry/otlp-transformer'; + +/** + * OTLP Logs Exporter for Node + */ +export class OTLPLogsExporter + extends OTLPGRPCExporterNodeBase + implements LogRecordExporter +{ + constructor(config: OTLPGRPCExporterConfigNode = {}) { + super(config); + const headers = baggageUtils.parseKeyPairsIntoRecord( + getEnv().OTEL_EXPORTER_OTLP_LOGS_HEADERS + ); + this.metadata ||= new Metadata(); + for (const [k, v] of Object.entries(headers)) { + this.metadata.set(k, v); + } + } + + convert(logRecords: ReadableLogRecord[]): IExportLogsServiceRequest { + return createExportLogsServiceRequest(logRecords); + } + + getDefaultUrl(config: OTLPGRPCExporterConfigNode) { + return validateAndNormalizeUrl(this.getUrlFromConfig(config)); + } + + getServiceClientType() { + return ServiceClientType.LOGS; + } + + getServiceProtoPath(): string { + return 'opentelemetry/proto/collector/logs/v1/logs_service.proto'; + } + + getUrlFromConfig(config: OTLPGRPCExporterConfigNode): string { + if (typeof config.url === 'string') { + return config.url; + } + + return ( + getEnv().OTEL_EXPORTER_OTLP_LOGS_ENDPOINT || + getEnv().OTEL_EXPORTER_OTLP_ENDPOINT || + DEFAULT_COLLECTOR_URL + ); + } +} diff --git a/experimental/packages/exporter-logs-otlp-grpc/src/index.ts b/experimental/packages/exporter-logs-otlp-grpc/src/index.ts new file mode 100644 index 000000000..b35d852d9 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/src/index.ts @@ -0,0 +1,17 @@ +/* + * 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. + */ + +export * from './OTLPLogsExporter'; diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogsExporter.test.ts b/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogsExporter.test.ts new file mode 100644 index 000000000..d413b8902 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogsExporter.test.ts @@ -0,0 +1,346 @@ +/* + * 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 protoLoader from '@grpc/proto-loader'; +import { diag } from '@opentelemetry/api'; + +import * as assert from 'assert'; +import * as fs from 'fs'; +import * as grpc from '@grpc/grpc-js'; +import * as path from 'path'; +import * as sinon from 'sinon'; +import { OTLPLogsExporter } from '../src'; + +import { + ensureExportedLogRecordIsCorrect, + ensureMetadataIsCorrect, + ensureResourceIsCorrect, + mockedReadableLogRecord, +} from './logsHelper'; +import * as core from '@opentelemetry/core'; +import { CompressionAlgorithm } from '@opentelemetry/otlp-exporter-base'; +import { GrpcCompressionAlgorithm } from '@opentelemetry/otlp-grpc-exporter-base'; +import { + IExportLogsServiceRequest, + IResourceLogs, +} from '@opentelemetry/otlp-transformer'; + +const logsServiceProtoPath = + 'opentelemetry/proto/collector/logs/v1/logs_service.proto'; +const includeDirs = [ + path.resolve(__dirname, '../../otlp-grpc-exporter-base/protos'), +]; + +const address = 'localhost:1501'; + +type TestParams = { + useTLS?: boolean; + metadata?: grpc.Metadata; +}; + +const metadata = new grpc.Metadata(); +metadata.set('k', 'v'); + +const testCollectorExporter = (params: TestParams) => + describe(`OTLPLogsExporter - node ${ + params.useTLS ? 'with' : 'without' + } TLS, ${params.metadata ? 'with' : 'without'} metadata`, () => { + let collectorExporter: OTLPLogsExporter; + let server: grpc.Server; + let exportedData: IResourceLogs | undefined; + let reqMetadata: grpc.Metadata | undefined; + + before(done => { + server = new grpc.Server(); + protoLoader + .load(logsServiceProtoPath, { + keepCase: false, + longs: String, + enums: String, + defaults: true, + oneofs: true, + includeDirs, + }) + .then((packageDefinition: protoLoader.PackageDefinition) => { + const packageObject: any = + grpc.loadPackageDefinition(packageDefinition); + server.addService( + packageObject.opentelemetry.proto.collector.logs.v1.LogsService + .service, + { + Export: (data: { + request: IExportLogsServiceRequest; + metadata: grpc.Metadata; + }) => { + if (data.request.resourceLogs != null) { + exportedData = data.request.resourceLogs[0]; + } + reqMetadata = data.metadata; + }, + } + ); + const credentials = params.useTLS + ? grpc.ServerCredentials.createSsl( + fs.readFileSync('./test/certs/ca.crt'), + [ + { + cert_chain: fs.readFileSync('./test/certs/server.crt'), + private_key: fs.readFileSync('./test/certs/server.key'), + }, + ] + ) + : grpc.ServerCredentials.createInsecure(); + server.bindAsync(address, credentials, () => { + server.start(); + done(); + }); + }); + }); + + after(() => { + server.forceShutdown(); + }); + + beforeEach(done => { + const credentials = params.useTLS + ? grpc.credentials.createSsl( + fs.readFileSync('./test/certs/ca.crt'), + fs.readFileSync('./test/certs/client.key'), + fs.readFileSync('./test/certs/client.crt') + ) + : grpc.credentials.createInsecure(); + collectorExporter = new OTLPLogsExporter({ + url: 'https://' + address, + credentials, + metadata: params.metadata, + }); + done(); + }); + + afterEach(() => { + exportedData = undefined; + reqMetadata = undefined; + sinon.restore(); + }); + + describe('instance', () => { + it('should warn about headers when using grpc', () => { + // Need to stub/spy on the underlying logger as the 'diag' instance is global + const spyLoggerWarn = sinon.stub(diag, 'warn'); + collectorExporter = new OTLPLogsExporter({ + url: `http://${address}`, + headers: { + foo: 'bar', + }, + }); + const args = spyLoggerWarn.args[0]; + assert.strictEqual(args[0], 'Headers cannot be set when using grpc'); + }); + it('should warn about path in url', () => { + const spyLoggerWarn = sinon.stub(diag, 'warn'); + collectorExporter = new OTLPLogsExporter({ + url: `http://${address}/v1/logs`, + }); + const args = spyLoggerWarn.args[0]; + assert.strictEqual( + args[0], + 'URL path should not be set when using grpc, the path part of the URL will be ignored.' + ); + }); + }); + + describe('export', () => { + it('should export log records', done => { + const responseSpy = sinon.spy(); + const logRecords = [Object.assign({}, mockedReadableLogRecord)]; + collectorExporter.export(logRecords, responseSpy); + setTimeout(() => { + assert.ok( + typeof exportedData !== 'undefined', + 'resource' + " doesn't exist" + ); + + const logs = exportedData.scopeLogs[0].logRecords; + const resource = exportedData.resource; + + 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); + + done(); + }, 500); + }); + it('should log deadline exceeded error', done => { + const credentials = params.useTLS + ? grpc.credentials.createSsl( + fs.readFileSync('./test/certs/ca.crt'), + fs.readFileSync('./test/certs/client.key'), + fs.readFileSync('./test/certs/client.crt') + ) + : grpc.credentials.createInsecure(); + + const collectorExporterWithTimeout = new OTLPLogsExporter({ + url: 'grpcs://' + address, + credentials, + metadata: params.metadata, + timeoutMillis: 100, + }); + + const responseSpy = sinon.spy(); + const logRecords = [Object.assign({}, mockedReadableLogRecord)]; + collectorExporterWithTimeout.export(logRecords, responseSpy); + + setTimeout(() => { + const result = responseSpy.args[0][0] as core.ExportResult; + assert.strictEqual(result.code, core.ExportResultCode.FAILED); + assert.strictEqual( + responseSpy.args[0][0].error.details, + 'Deadline exceeded' + ); + done(); + }, 300); + }); + }); + describe('export - with gzip compression', () => { + beforeEach(() => { + const credentials = params.useTLS + ? grpc.credentials.createSsl( + fs.readFileSync('./test/certs/ca.crt'), + fs.readFileSync('./test/certs/client.key'), + fs.readFileSync('./test/certs/client.crt') + ) + : grpc.credentials.createInsecure(); + collectorExporter = new OTLPLogsExporter({ + url: 'https://' + address, + credentials, + metadata: params.metadata, + compression: CompressionAlgorithm.GZIP, + }); + }); + it('should successfully send the spans', done => { + const responseSpy = sinon.spy(); + const logRecords = [Object.assign({}, mockedReadableLogRecord)]; + collectorExporter.export(logRecords, responseSpy); + setTimeout(() => { + assert.ok( + typeof exportedData !== 'undefined', + 'resource' + " doesn't exist" + ); + const logs = exportedData.scopeLogs[0].logRecords; + const resource = exportedData.resource; + + assert.ok(typeof logs !== 'undefined', 'spans do not exist'); + ensureExportedLogRecordIsCorrect(logs[0]); + + assert.ok(typeof resource !== 'undefined', "resource doesn't exist"); + ensureResourceIsCorrect(resource); + + ensureMetadataIsCorrect(reqMetadata, params.metadata); + + done(); + }, 500); + }); + }); + describe('Logs Exporter with compression', () => { + const envSource = process.env; + it('should return gzip compression algorithm on exporter', () => { + const credentials = params.useTLS + ? grpc.credentials.createSsl( + fs.readFileSync('./test/certs/ca.crt'), + fs.readFileSync('./test/certs/client.key'), + fs.readFileSync('./test/certs/client.crt') + ) + : grpc.credentials.createInsecure(); + + envSource.OTEL_EXPORTER_OTLP_COMPRESSION = 'gzip'; + collectorExporter = new OTLPLogsExporter({ + url: 'https://' + address, + credentials, + metadata: params.metadata, + }); + assert.strictEqual( + collectorExporter.compression, + GrpcCompressionAlgorithm.GZIP + ); + delete envSource.OTEL_EXPORTER_OTLP_COMPRESSION; + }); + }); + }); + +describe('OTLPLogsExporter - node (getDefaultUrl)', () => { + it('should default to localhost', done => { + const collectorExporter = new OTLPLogsExporter({}); + setTimeout(() => { + assert.strictEqual(collectorExporter['url'], 'localhost:4317'); + done(); + }); + }); + it('should keep the URL if included', done => { + const url = 'http://foo.bar.com'; + const collectorExporter = new OTLPLogsExporter({ url }); + setTimeout(() => { + assert.strictEqual(collectorExporter['url'], 'foo.bar.com'); + done(); + }); + }); +}); + +describe('when configuring via environment', () => { + const envSource = process.env; + it('should use url defined in env', () => { + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = 'http://foo.bar'; + const collectorExporter = new OTLPLogsExporter(); + assert.strictEqual(collectorExporter.url, 'foo.bar'); + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = ''; + }); + it('should override global exporter url with signal url defined in env', () => { + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = 'http://foo.bar'; + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = 'http://foo.logs'; + const collectorExporter = new OTLPLogsExporter(); + assert.strictEqual(collectorExporter.url, 'foo.logs'); + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = ''; + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = ''; + }); + it('should use headers defined via env', () => { + envSource.OTEL_EXPORTER_OTLP_HEADERS = 'foo=bar'; + const collectorExporter = new OTLPLogsExporter(); + assert.deepStrictEqual(collectorExporter.metadata?.get('foo'), ['bar']); + envSource.OTEL_EXPORTER_OTLP_HEADERS = ''; + }); + it('should override global headers config with signal headers defined via env', () => { + const metadata = new grpc.Metadata(); + metadata.set('foo', 'bar'); + metadata.set('goo', 'lol'); + envSource.OTEL_EXPORTER_OTLP_HEADERS = 'foo=jar,bar=foo'; + envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS = 'foo=boo'; + const collectorExporter = new OTLPLogsExporter({ metadata }); + assert.deepStrictEqual(collectorExporter.metadata?.get('foo'), ['boo']); + assert.deepStrictEqual(collectorExporter.metadata?.get('bar'), ['foo']); + assert.deepStrictEqual(collectorExporter.metadata?.get('goo'), ['lol']); + envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS = ''; + envSource.OTEL_EXPORTER_OTLP_HEADERS = ''; + }); +}); + +testCollectorExporter({ useTLS: true }); +testCollectorExporter({ useTLS: false }); +testCollectorExporter({ metadata }); diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt b/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt new file mode 100644 index 000000000..27e1d6826 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt @@ -0,0 +1,33 @@ +-----BEGIN CERTIFICATE----- +MIIFozCCA4ugAwIBAgIUC57UkrmvltHwm0jdwHjbFx/wIcMwDQYJKoZIhvcNAQEL +BQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNVBAgMAlJNMRowGAYDVQQHDBFPcGVuVGVs +ZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9vdDENMAsGA1UECwwEVGVzdDELMAkGA1UE +AwwCY2EwHhcNMjIwNjA4MDk1MzU5WhcNMjMwNjA4MDk1MzU5WjBhMQswCQYDVQQG +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== +-----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 new file mode 100644 index 000000000..3ca1e8e14 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key @@ -0,0 +1,51 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIJKQIBAAKCAgEA27scEIN1LkRK0BA/tbgrXvFwTMZYH3D6bz+lmkwhAxUnQC+/ +GQYLWun+5jNwUqPKYKo6oVGNNXNrmzeW2ToMQkpvCSzMAiJRMDbr8AgrHL2JYKpu +pLfi61IgDxJ9QMnH41v08dbb8Fn0Oouw2rFR6r/c07n3Pf+4xC3eszuKM7wRO5aR +eaN7mv1aK4xchqlUFLMporAi5fyKRmddYcWU/0d6PtQw0CWrHnD9ZU7/XxQiolG3 +Abv64Q3W6634nDV+qzBy0T7r3KDX9OCsX0D2TH17zVkpH0skTcr8FnDnPeNFU3F/ +KFZUI9LwbfOeaKO5OhpLsakvpLc3Gnu9jGM/HcXorkPMXa1jPWrPqLLG+Gbcn9Mv +Po7Mmo/uoiDQOLUcFz893MZVJvflXE9gXBaOsAZYvcTOZbPoCtAMJB0rq1IqUvYu +k3QgfE4JIiZANkwH1im9416dUG4sWE0ZkCKjDfxaVcFLRELJAMGOHPBkk7lgT6K3 +JzHAVou/IX+EuN+Hl3sL7S2OgtENnc6VlAIc77N039mBkj2DH01HKqY250+FXOM3 +z6RB/uJdjQn5pPZfM9nO8yba8oQHYFqU/uJDVo35LPPVLmcRIUNCASe70mONn+Fx +S5c2mLTebs7+kyr758ns+Jv1gb3dwE1hJEW6VZTWtMPzP5gETxn5yW5kP3ECAwEA +AQKCAgEAnktsi2T4zSz7rGqYSyRzckGDQnv9TiFI+U4j0kWX3q2lijMbez6Efaln +LZXPDGncyMi51i93CBOvaLGiZbnQzQzscvKnwb3ROWfHjzODQ4Az8MS3Usj6m8ad +O955B2yWKO+9RWAhMETNkkPCU7o8pl40Cv/E4xBPnlzhO8Pf6ydITuJIyRWCXYS5 +KfhDS+u+m+76Rq6XZZIKV2/tsRrzHPj0U0DwLXOFlDeYBRzlEiziSoeNzJ0MvocG +1uCM4pQTPeZ4QNAQgPAKw+n7o9+b0DzyLFxYKKgsbjKWauBJZqdM8TEphviyQuCa +vssrynxwWzBIaaPVo9ctxlFwmyuAcm+ma6Imz6yEWWKw11ZkC+Vf+IBusuuSUjE7 +hnvaJNTZOPByHYJQhbYrmVpjt8toPweQrlKGalTTbV3t0p73KffwoFRVO3ZinprI +8vjPaNs4+kM22kLXjDKMv+fdWToJVzvoqaCDqVsabbbNg0Y4QxwfGReHmB0lRaWU ++qZv6c5yubfgpZjW4E9pkSUY5LR9qJeNlKK3IFbpwqKPN2NtxPfRtmCfMdM9K/BJ +loqm2HvP+kbQK+wE436BBtAvn2AX6DM5sPBCltRWhzyFrmPjcBjngCBPVcCzCpqZ ++mpQkv/6dtANFl6kbx7I6ovUB0i6Ol+L+vAY6IclUU/gSGsT6gECggEBAPMFg2Jc +NjhdOREE6oKLI7w0Nto1Rz/exSDGG8b4vp3v3YWVUw8jqgi96XUI43grcJUPvHhh +ttUanlF1pam2LDt+dz53hUxfgXqcChXiny+pqW+OJ4t7ibKuNlv3smBOLrSPIkEw +84xJmG/87CCaT6n3hYx2wJKOvBAfzFrlRiQ80+RsLwy84zYW4TpsGWERlbpdvaj3 +lONN4Z9i/5ucMxQeWAAdHpNEIiBN5EQ/G8sYTdNCWfqLMxxD672d9TH1olFJdKeO +KHMdB++JGNsRigD8xeB0qQlyb4Mj1rgGi1nst7IKoNiUruOcbnlqsoL10khkfRIe +aEiI/dq+zSuZhdECggEBAOd3LT3aLnSYU2EuZeWa++ZO/4CiXjA3WCD3PPxt8LOz +mSGaMOLehxYW6HHqGorQLZwcj0MrktuVO20/HJSwBj+AwWX4yOTLUIs3GcdWO+64 +DnWW0ZMxqGZei6wUKIj6O44AXQBQvpAvcmAoO2cbAxKXT59RCGVJoWhrOqRwKjqb +0fLX6Lebz/hYoc+d24cbmfhzGVxQY5J38p4WFeQmInlG+8PefHUeYOae1ZX6dTNo +ZYk3nJUoKZ6OywVO4WRlaJGs1Deh0tJYNOCMjdOOF7aTH5J5SVHiWw8e+zTjicd5 +yOOb4k7mGRoTHW8ukFwccHaGtgK4nWwiNhdlO94AZ6ECggEAVKonC610dk6EAxnj +WXeAC6FlOsA1Altp8fES3E7smblnQ5KyTSPvqPwAyXU/Si5YGpZQ4t+oArYzUc3a +2TVOU6vLf0fEeMcNJNoX6Wf6bXB+Rw8PV9jCMC3hYkj5K/QQ8XasSGn1b3p0UQ+c +c/9OobhKHpWAoY54lmV9nG0j8pv+diX6fkWQItf1v5TJgrfNog/mc2dNx6LqZ8zl +oCDa6rdnkSKT9FpYSUjZra0O0cK12lPTZSX5uG8xQe417iHVWtxsd7NfBDuo+Bqb +PjbuDUoC5h++hDwJ/XYO6C3ffoSpuq1ZPBsQktt84W/6oQVjLTVVHWraieqwBfVT +JU1nAQKCAQEA31FOZwSgGYH1wCdBzHrxWk0RmgwNj7t13ahsQKfZuacnsRHQ5LIJ +5zgG4BEbtp4PwzSSzB24PP8ILOjdLF+AR7hz32xeds/qT8bDqlz6yeDuomj2nmsk +rE+/tjBkw3OaDfEvyWQd14LPeRKX7WxUVJWEDpPh48dcYSBDne9R7uXzc7b4Il3E +EzmANI17BimNLfXum/A7gU8U1407ZbmdPSFNOrbnoR/EIf1Q2LiiZwzsGa179zSe +ownluqNWNsTYVORIg7wvaR4NNjCljVzkaBQeO/Wk1cnsTPR5LZfykHBhb6gweirq +QQv8NA7a3OPbZZ+m740q5O9E/OGBFzmQwQKCAQBsSZ+9RNUYrACPExLH+U8Dl9j0 +aMLgfi+dXgymWP94QtLNh8C40UpXg4jVCG58rA70QTBh9AUZT2bTmOOA9DI5FVd/ +0OtcUa3y6GfF1CupPw4F9/uQyB+QsP78MpRYwc7zTEgdk1npmpymWD91F1Q5c8N6 +h8UAk3U170jb9QNJTZBwDW2M0TxvqjvvFyTXHPcZcQya7ZA9mNYsQaPdxOSSHlCt +AaZa3IXES2Kn+rGqaIxrMsKYRbLuGIP4RnoI4fWqxAHZ+HMb4AgMHsF2a0GzQxQV +isrTkSJ52JC2rMAYh3Kz780vDf8Eo5ar23oVCJfWGrWrU8pMYVKv82zF253h +-----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 new file mode 100644 index 000000000..cb5c4508d --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt @@ -0,0 +1,31 @@ +-----BEGIN CERTIFICATE----- +MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV +BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjIwNjA4MDk1NDAxWhcN +MjMwNjA4MDk1NDAxWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +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 +-----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 new file mode 100644 index 000000000..30ac37679 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr @@ -0,0 +1,28 @@ +-----BEGIN CERTIFICATE REQUEST----- +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 +-----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 new file mode 100644 index 000000000..fd649acf5 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key @@ -0,0 +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 +-----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 new file mode 100755 index 000000000..e1f1af5b5 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh @@ -0,0 +1,22 @@ +#!/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 -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 -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 -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 diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt new file mode 100644 index 000000000..da8b6beed --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt @@ -0,0 +1,31 @@ +-----BEGIN CERTIFICATE----- +MIIFPzCCAycCAQEwDQYJKoZIhvcNAQELBQAwYTELMAkGA1UEBhMCQ0wxCzAJBgNV +BAgMAlJNMRowGAYDVQQHDBFPcGVuVGVsZW1ldHJ5VGVzdDENMAsGA1UECgwEUm9v +dDENMAsGA1UECwwEVGVzdDELMAkGA1UEAwwCY2EwHhcNMjIwNjA4MDk1NDAwWhcN +MjMwNjA4MDk1NDAwWjBqMQswCQYDVQQGEwJDTDELMAkGA1UECAwCUk0xGjAYBgNV +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 +-----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 new file mode 100644 index 000000000..d8ab7deb4 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr @@ -0,0 +1,28 @@ +-----BEGIN CERTIFICATE REQUEST----- +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 +-----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 new file mode 100644 index 000000000..9147802e7 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key @@ -0,0 +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= +-----END RSA PRIVATE KEY----- diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts b/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts new file mode 100644 index 000000000..b57b2682b --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts @@ -0,0 +1,173 @@ +/* + * 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 * as grpc from '@grpc/grpc-js'; +import { VERSION } from '@opentelemetry/core'; +import { + IAnyValue, + IKeyValue, + ILogRecord, + IResource, +} from '@opentelemetry/otlp-transformer'; +import { ReadableLogRecord } from '@opentelemetry/sdk-logs'; + +const traceIdArr = [ + 31, 16, 8, 220, 142, 39, 14, 133, 196, 10, 13, 124, 57, 57, 178, 120, +]; +const spanIdArr = [94, 16, 114, 97, 246, 79, 165, 62]; + +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, + 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', + value: 'stringValue', + }, + }, + ], + 'exported attributes are incorrect' + ); +} + +export function ensureExportedBodyIsCorrect(body?: IAnyValue) { + assert.deepStrictEqual( + body, + { stringValue: 'some_log_body', value: 'stringValue' }, + 'exported attributes are incorrect' + ); +} + +export function ensureExportedLogRecordIsCorrect(logRecord: ILogRecord) { + ensureExportedBodyIsCorrect(logRecord.body); + ensureExportedAttributesAreCorrect(logRecord.attributes); + assert.strictEqual( + logRecord.timeUnixNano, + '1680253513123241728', + 'timeUnixNano is wrong' + ); + assert.strictEqual( + logRecord.observedTimeUnixNano, + '1680253513123241728', + 'observedTimeUnixNano is wrong' + ); + assert.strictEqual( + logRecord.severityNumber, + 'SEVERITY_NUMBER_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'); + assert.deepStrictEqual( + logRecord.traceId, + Buffer.from(traceIdArr), + 'traceId is wrong' + ); + assert.deepStrictEqual( + logRecord.spanId, + Buffer.from(spanIdArr), + 'spanId 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 ensureMetadataIsCorrect( + actual?: grpc.Metadata, + expected?: grpc.Metadata +) { + //ignore user agent + expected?.remove('user-agent'); + actual?.remove('user-agent'); + assert.deepStrictEqual(actual?.getMap(), expected?.getMap() ?? {}); +} diff --git a/experimental/packages/exporter-logs-otlp-grpc/tsconfig.json b/experimental/packages/exporter-logs-otlp-grpc/tsconfig.json new file mode 100644 index 000000000..cd64d1ce7 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-grpc/tsconfig.json @@ -0,0 +1,37 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ], + "references": [ + { + "path": "../../../api" + }, + { + "path": "../../../packages/opentelemetry-core" + }, + { + "path": "../../../packages/opentelemetry-resources" + }, + { + "path": "../api-logs" + }, + { + "path": "../otlp-exporter-base" + }, + { + "path": "../otlp-grpc-exporter-base" + }, + { + "path": "../otlp-transformer" + }, + { + "path": "../sdk-logs" + } + ] +} diff --git a/experimental/packages/otlp-grpc-exporter-base/src/types.ts b/experimental/packages/otlp-grpc-exporter-base/src/types.ts index fa3fea4ab..af6718884 100644 --- a/experimental/packages/otlp-grpc-exporter-base/src/types.ts +++ b/experimental/packages/otlp-grpc-exporter-base/src/types.ts @@ -22,7 +22,7 @@ import { } from '@opentelemetry/otlp-exporter-base'; /** - * Queue item to be used to save temporary spans/metrics in case the GRPC service + * Queue item to be used to save temporary spans/metrics/logs in case the GRPC service * hasn't been fully initialized yet */ export interface GRPCQueueItem { @@ -32,7 +32,7 @@ export interface GRPCQueueItem { } /** - * Service Client for sending spans or metrics + * Service Client for sending spans/metrics/logs */ export interface ServiceClient extends grpc.Client { export: ( @@ -55,4 +55,5 @@ export interface OTLPGRPCExporterConfigNode extends OTLPExporterConfigBase { export enum ServiceClientType { SPANS, METRICS, + LOGS, } diff --git a/experimental/packages/otlp-grpc-exporter-base/src/util.ts b/experimental/packages/otlp-grpc-exporter-base/src/util.ts index 9a4232716..f4dc8af8a 100644 --- a/experimental/packages/otlp-grpc-exporter-base/src/util.ts +++ b/experimental/packages/otlp-grpc-exporter-base/src/util.ts @@ -64,20 +64,31 @@ export function onInit( 'grpc.default_compression_algorithm': collector.compression, }; - if (collector.getServiceClientType() === ServiceClientType.SPANS) { - collector.serviceClient = - new packageObject.opentelemetry.proto.collector.trace.v1.TraceService( - collector.url, - credentials, - options - ); - } else { - collector.serviceClient = - new packageObject.opentelemetry.proto.collector.metrics.v1.MetricsService( - collector.url, - credentials, - options - ); + switch (collector.getServiceClientType()) { + case ServiceClientType.SPANS: + collector.serviceClient = + new packageObject.opentelemetry.proto.collector.trace.v1.TraceService( + collector.url, + credentials, + options + ); + break; + case ServiceClientType.METRICS: + collector.serviceClient = + new packageObject.opentelemetry.proto.collector.metrics.v1.MetricsService( + collector.url, + credentials, + options + ); + break; + case ServiceClientType.LOGS: + collector.serviceClient = + new packageObject.opentelemetry.proto.collector.logs.v1.LogsService( + collector.url, + credentials, + options + ); + break; } if (collector.grpcQueue.length > 0) { diff --git a/experimental/packages/otlp-transformer/.gitignore b/experimental/packages/otlp-transformer/.gitignore index c83f90a2b..ae2d18811 100644 --- a/experimental/packages/otlp-transformer/.gitignore +++ b/experimental/packages/otlp-transformer/.gitignore @@ -1 +1,2 @@ src/generated +!src/logs \ No newline at end of file diff --git a/experimental/packages/otlp-transformer/README.md b/experimental/packages/otlp-transformer/README.md index e069aab55..b91b6d06d 100644 --- a/experimental/packages/otlp-transformer/README.md +++ b/experimental/packages/otlp-transformer/README.md @@ -7,7 +7,7 @@ **Note: This is an experimental package under active development. New releases may include breaking changes.** -This package provides everything needed to serialize [OpenTelemetry SDK][sdk] traces and metrics into the [OpenTelemetry Protocol][otlp] format. +This package provides everything needed to serialize [OpenTelemetry SDK][sdk] traces, metrics and logs into the [OpenTelemetry Protocol][otlp] format. ## Quick Start @@ -19,15 +19,20 @@ To get started you will need to install a compatible OpenTelemetry API. npm install @opentelemetry/api ``` -### Serialize Traces and Metrics +### Serialize Traces/Metrics/Logs -This module exports functions to serialize traces and metrics from the OpenTelemetry SDK into protocol buffers which can be sent over HTTP to the OpenTelemetry collector or a compatible receiver. +This module exports functions to serialize traces, metrics and logs from the OpenTelemetry SDK into protocol buffers which can be sent over HTTP to the OpenTelemetry collector or a compatible receiver. ```typescript -import { createExportTraceServiceRequest, createExportMetricsServiceRequest } from "@opentelemetry/otlp-transformer"; +import { + createExportTraceServiceRequest, + createExportMetricsServiceRequest, + createExportLogsServiceRequest, +} from '@opentelemetry/otlp-transformer'; const serializedSpans = createExportTraceServiceRequest(readableSpans); const serializedMetrics = createExportMetricsServiceRequest(readableMetrics); +const serializedLogs = createExportLogsServiceRequest(readableLogRecords); ``` ## Useful links diff --git a/experimental/packages/otlp-transformer/package.json b/experimental/packages/otlp-transformer/package.json index 89fa62c17..be608f5ed 100644 --- a/experimental/packages/otlp-transformer/package.json +++ b/experimental/packages/otlp-transformer/package.json @@ -52,10 +52,12 @@ "README.md" ], "peerDependencies": { - "@opentelemetry/api": ">=1.3.0 <1.5.0" + "@opentelemetry/api": ">=1.3.0 <1.5.0", + "@opentelemetry/api-logs": "0.38.0" }, "devDependencies": { "@opentelemetry/api": "1.4.1", + "@opentelemetry/api-logs": "0.38.0", "@types/mocha": "10.0.0", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", @@ -76,9 +78,10 @@ "dependencies": { "@opentelemetry/core": "1.12.0", "@opentelemetry/resources": "1.12.0", + "@opentelemetry/sdk-logs": "0.38.0", "@opentelemetry/sdk-metrics": "1.12.0", "@opentelemetry/sdk-trace-base": "1.12.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-transformer", "sideEffects": false -} +} \ No newline at end of file diff --git a/experimental/packages/otlp-transformer/src/common/internal.ts b/experimental/packages/otlp-transformer/src/common/internal.ts index a5ba7f3c2..5612b87ce 100644 --- a/experimental/packages/otlp-transformer/src/common/internal.ts +++ b/experimental/packages/otlp-transformer/src/common/internal.ts @@ -13,10 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import type { SpanAttributes } from '@opentelemetry/api'; -import { IAnyValue, IKeyValue } from './types'; +import type { Attributes } from '@opentelemetry/api'; +import type { IAnyValue, IKeyValue } from './types'; -export function toAttributes(attributes: SpanAttributes): IKeyValue[] { +export function toAttributes(attributes: Attributes): IKeyValue[] { return Object.keys(attributes).map(key => toKeyValue(key, attributes[key])); } @@ -49,17 +49,3 @@ export function toAnyValue(value: unknown): IAnyValue { return {}; } - -export function hexToBuf(hex: string): Uint8Array | undefined { - const ints = hex.match(/[\da-f]{2}/gi)?.map(h => parseInt(h, 16)); - return ints && new Uint8Array(ints); -} - -function i2hex(i: number): string { - return ('0' + i.toString(16)).slice(-2); -} - -export function bufToHex(buf?: Uint8Array | null): string | undefined { - if (buf == null || buf.length === 0) return undefined; - return Array.from(buf).map(i2hex).join(''); -} diff --git a/experimental/packages/otlp-transformer/src/index.ts b/experimental/packages/otlp-transformer/src/index.ts index 51408c10d..a8e388e33 100644 --- a/experimental/packages/otlp-transformer/src/index.ts +++ b/experimental/packages/otlp-transformer/src/index.ts @@ -18,6 +18,8 @@ export * from './common/types'; export * from './metrics/types'; export * from './resource/types'; export * from './trace/types'; +export * from './logs/types'; export { createExportTraceServiceRequest } from './trace'; export { createExportMetricsServiceRequest } from './metrics'; +export { createExportLogsServiceRequest } from './logs'; diff --git a/experimental/packages/otlp-transformer/src/logs/index.ts b/experimental/packages/otlp-transformer/src/logs/index.ts new file mode 100644 index 000000000..4fd114fa6 --- /dev/null +++ b/experimental/packages/otlp-transformer/src/logs/index.ts @@ -0,0 +1,121 @@ +/* + * 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 { ReadableLogRecord } from '@opentelemetry/sdk-logs'; +import { + ESeverityNumber, + IExportLogsServiceRequest, + ILogRecord, + IResourceLogs, +} from './types'; +import { IResource } from '@opentelemetry/resources'; +import { toAnyValue, toAttributes } from '../common/internal'; +import { hexToBase64, hrTimeToNanoseconds } from '@opentelemetry/core'; +import { SeverityNumber } from '@opentelemetry/api-logs'; + +export function createExportLogsServiceRequest( + logRecords: ReadableLogRecord[], + useHex?: boolean +): IExportLogsServiceRequest { + return { + resourceLogs: logRecordsToResourceLogs(logRecords, useHex), + }; +} + +function createResourceMap( + logRecords: ReadableLogRecord[] +): Map> { + const resourceMap: Map< + IResource, + Map + > = new Map(); + + for (const record of logRecords) { + const { + resource, + instrumentationScope: { name, version = '', schemaUrl = '' }, + } = record; + + let ismMap = resourceMap.get(resource); + if (!ismMap) { + ismMap = new Map(); + resourceMap.set(resource, ismMap); + } + + const ismKey = `${name}@${version}:${schemaUrl}`; + let records = ismMap.get(ismKey); + if (!records) { + records = []; + ismMap.set(ismKey, records); + } + records.push(record); + } + return resourceMap; +} + +function logRecordsToResourceLogs( + logRecords: ReadableLogRecord[], + useHex?: boolean +): IResourceLogs[] { + const resourceMap = createResourceMap(logRecords); + return Array.from(resourceMap, ([resource, ismMap]) => ({ + resource: { + attributes: toAttributes(resource.attributes), + droppedAttributesCount: 0, + }, + scopeLogs: Array.from(ismMap, ([, scopeLogs]) => { + const { + instrumentationScope: { name, version, schemaUrl }, + } = scopeLogs[0]; + return { + scope: { name, version }, + logRecords: scopeLogs.map(log => toLogRecord(log, useHex)), + schemaUrl, + }; + }), + schemaUrl: undefined, + })); +} + +function toLogRecord(log: ReadableLogRecord, useHex?: boolean): ILogRecord { + return { + timeUnixNano: hrTimeToNanoseconds(log.hrTime), + observedTimeUnixNano: hrTimeToNanoseconds(log.hrTime), + severityNumber: toSeverityNumber(log.severityNumber), + severityText: log.severityText, + body: toAnyValue(log.body), + attributes: toAttributes(log.attributes), + droppedAttributesCount: 0, + flags: log.spanContext?.traceFlags, + traceId: useHex + ? log.spanContext?.traceId + : optionalHexToBase64(log.spanContext?.traceId), + spanId: useHex + ? log.spanContext?.spanId + : optionalHexToBase64(log.spanContext?.spanId), + }; +} + +function toSeverityNumber( + severityNumber: SeverityNumber | undefined +): ESeverityNumber | undefined { + return severityNumber as number | undefined as ESeverityNumber | undefined; +} + +function optionalHexToBase64(str: string | undefined): string | undefined { + if (str === undefined) return undefined; + return hexToBase64(str); +} diff --git a/experimental/packages/otlp-transformer/src/logs/types.ts b/experimental/packages/otlp-transformer/src/logs/types.ts new file mode 100644 index 000000000..3d3e610bc --- /dev/null +++ b/experimental/packages/otlp-transformer/src/logs/types.ts @@ -0,0 +1,117 @@ +/* + * 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 { + IAnyValue, + IInstrumentationScope, + IKeyValue, +} from '../common/types'; +import type { IResource } from '../resource/types'; + +/** Properties of an ExportLogsServiceRequest. */ +export interface IExportLogsServiceRequest { + /** ExportLogsServiceRequest resourceLogs */ + resourceLogs?: IResourceLogs[]; +} + +/** Properties of a ResourceLogs. */ +export interface IResourceLogs { + /** ResourceLogs resource */ + resource?: IResource; + + /** ResourceLogs scopeLogs */ + scopeLogs: IScopeLogs[]; + + /** ResourceLogs schemaUrl */ + schemaUrl?: string; +} + +/** Properties of an ScopeLogs. */ +export interface IScopeLogs { + /** IScopeLogs scope */ + scope?: IInstrumentationScope; + + /** IScopeLogs logRecords */ + logRecords?: ILogRecord[]; + + /** IScopeLogs schemaUrl */ + schemaUrl?: string | null; +} + +/** Properties of a LogRecord. */ +export interface ILogRecord { + /** LogRecord timeUnixNano */ + timeUnixNano: number; + + /** LogRecord observedTimeUnixNano */ + observedTimeUnixNano: number; + + /** LogRecord severityNumber */ + severityNumber?: ESeverityNumber; + + /** LogRecord severityText */ + severityText?: string; + + /** LogRecord body */ + body?: IAnyValue; + + /** LogRecord attributes */ + attributes: IKeyValue[]; + + /** LogRecord droppedAttributesCount */ + droppedAttributesCount: number; + + /** LogRecord flags */ + flags?: number; + + /** LogRecord traceId */ + traceId?: string; + + /** LogRecord spanId */ + spanId?: string; +} + +/** + * Numerical value of the severity, normalized to values described in Log Data Model. + */ +export const enum ESeverityNumber { + /** Unspecified. Do NOT use as default */ + SEVERITY_NUMBER_UNSPECIFIED = 0, + SEVERITY_NUMBER_TRACE = 1, + SEVERITY_NUMBER_TRACE2 = 2, + SEVERITY_NUMBER_TRACE3 = 3, + SEVERITY_NUMBER_TRACE4 = 4, + SEVERITY_NUMBER_DEBUG = 5, + SEVERITY_NUMBER_DEBUG2 = 6, + SEVERITY_NUMBER_DEBUG3 = 7, + SEVERITY_NUMBER_DEBUG4 = 8, + SEVERITY_NUMBER_INFO = 9, + SEVERITY_NUMBER_INFO2 = 10, + SEVERITY_NUMBER_INFO3 = 11, + SEVERITY_NUMBER_INFO4 = 12, + SEVERITY_NUMBER_WARN = 13, + SEVERITY_NUMBER_WARN2 = 14, + SEVERITY_NUMBER_WARN3 = 15, + SEVERITY_NUMBER_WARN4 = 16, + SEVERITY_NUMBER_ERROR = 17, + SEVERITY_NUMBER_ERROR2 = 18, + SEVERITY_NUMBER_ERROR3 = 19, + SEVERITY_NUMBER_ERROR4 = 20, + SEVERITY_NUMBER_FATAL = 21, + SEVERITY_NUMBER_FATAL2 = 22, + SEVERITY_NUMBER_FATAL3 = 23, + SEVERITY_NUMBER_FATAL4 = 24, +} diff --git a/experimental/packages/otlp-transformer/test/logs.test.ts b/experimental/packages/otlp-transformer/test/logs.test.ts new file mode 100644 index 000000000..c184134ce --- /dev/null +++ b/experimental/packages/otlp-transformer/test/logs.test.ts @@ -0,0 +1,199 @@ +/* + * 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 { InstrumentationScope, hexToBase64 } from '@opentelemetry/core'; +import { Resource } from '@opentelemetry/resources'; +import * as assert from 'assert'; +import { + createExportLogsServiceRequest, + ESeverityNumber, + IExportLogsServiceRequest, +} from '../src'; +import { ReadableLogRecord } from '@opentelemetry/sdk-logs'; +import { SeverityNumber } from '@opentelemetry/api-logs'; + +function createExpectedLogJson(useHex: boolean): IExportLogsServiceRequest { + const traceId = useHex + ? '00000000000000000000000000000001' + : hexToBase64('00000000000000000000000000000001'); + const spanId = useHex ? '0000000000000002' : hexToBase64('0000000000000002'); + + return { + resourceLogs: [ + { + resource: { + attributes: [ + { + key: 'resource-attribute', + value: { stringValue: 'some attribute value' }, + }, + ], + droppedAttributesCount: 0, + }, + schemaUrl: undefined, + scopeLogs: [ + { + scope: { name: 'scope_name_1', version: '0.1.0' }, + logRecords: [ + { + // eslint-disable-next-line @typescript-eslint/no-loss-of-precision + timeUnixNano: 1680253513123241635, + // eslint-disable-next-line @typescript-eslint/no-loss-of-precision + observedTimeUnixNano: 1680253513123241635, + severityNumber: ESeverityNumber.SEVERITY_NUMBER_ERROR, + severityText: 'error', + body: { stringValue: 'some_log_body' }, + + attributes: [ + { + key: 'some-attribute', + value: { stringValue: 'some attribute value' }, + }, + ], + droppedAttributesCount: 0, + flags: 1, + traceId: traceId, + spanId: spanId, + }, + ], + schemaUrl: 'http://url.to.schema', + }, + ], + }, + ], + }; +} + +describe('Logs', () => { + describe('createExportLogsServiceRequest', () => { + let resource_1: Resource; + let resource_2: Resource; + let scope_1: InstrumentationScope; + let scope_2: InstrumentationScope; + let log_1_1_1: ReadableLogRecord; + let log_1_1_2: ReadableLogRecord; + let log_1_2_1: ReadableLogRecord; + let log_2_1_1: ReadableLogRecord; + + beforeEach(() => { + resource_1 = new Resource({ + 'resource-attribute': 'some attribute value', + }); + resource_2 = new Resource({ + 'resource-attribute': 'another attribute value', + }); + scope_1 = { + name: 'scope_name_1', + version: '0.1.0', + schemaUrl: 'http://url.to.schema', + }; + scope_2 = { + name: 'scope_name_2', + }; + const log_fragment_1 = { + hrTime: [1680253513, 123241635] as HrTime, + attributes: { + 'some-attribute': 'some attribute value', + }, + severityNumber: SeverityNumber.ERROR, + severityText: 'error', + body: 'some_log_body', + spanContext: { + spanId: '0000000000000002', + traceFlags: TraceFlags.SAMPLED, + traceId: '00000000000000000000000000000001', + }, + }; + const log_fragment_2 = { + hrTime: [1680253797, 687038506] as HrTime, + attributes: { + 'another-attribute': 'another attribute value', + }, + }; + log_1_1_1 = { + ...log_fragment_1, + resource: resource_1, + instrumentationScope: scope_1, + }; + log_1_1_2 = { + ...log_fragment_2, + resource: resource_1, + instrumentationScope: scope_1, + }; + log_1_2_1 = { + ...log_fragment_1, + resource: resource_1, + instrumentationScope: scope_2, + }; + log_2_1_1 = { + ...log_fragment_1, + resource: resource_2, + instrumentationScope: scope_1, + }; + }); + + it('returns null on an empty list', () => { + assert.deepStrictEqual(createExportLogsServiceRequest([], true), { + resourceLogs: [], + }); + }); + + it('serializes a log record with useHex = true', () => { + const exportRequest = createExportLogsServiceRequest([log_1_1_1], true); + assert.ok(exportRequest); + assert.deepStrictEqual(exportRequest, createExpectedLogJson(true)); + }); + + it('serializes a log record with useHex = false', () => { + const exportRequest = createExportLogsServiceRequest([log_1_1_1], false); + assert.ok(exportRequest); + assert.deepStrictEqual(exportRequest, createExpectedLogJson(false)); + }); + + it('aggregates multiple logs with same resource and same scope', () => { + const exportRequest = createExportLogsServiceRequest( + [log_1_1_1, log_1_1_2], + false + ); + assert.ok(exportRequest); + assert.strictEqual(exportRequest.resourceLogs?.length, 1); + assert.strictEqual(exportRequest.resourceLogs?.[0].scopeLogs.length, 1); + assert.strictEqual( + exportRequest.resourceLogs?.[0].scopeLogs?.[0].logRecords?.length, + 2 + ); + }); + + it('aggregates multiple logs with same resource and different scopes', () => { + const exportRequest = createExportLogsServiceRequest( + [log_1_1_1, log_1_2_1], + false + ); + assert.ok(exportRequest); + assert.strictEqual(exportRequest.resourceLogs?.length, 1); + assert.strictEqual(exportRequest.resourceLogs?.[0].scopeLogs.length, 2); + }); + + it('aggregates multiple logs with different resources', () => { + const exportRequest = createExportLogsServiceRequest( + [log_1_1_1, log_2_1_1], + false + ); + assert.ok(exportRequest); + assert.strictEqual(exportRequest.resourceLogs?.length, 2); + }); + }); +}); diff --git a/experimental/packages/otlp-transformer/test/trace.test.ts b/experimental/packages/otlp-transformer/test/trace.test.ts index da3e1d0c7..9fb0e3cbf 100644 --- a/experimental/packages/otlp-transformer/test/trace.test.ts +++ b/experimental/packages/otlp-transformer/test/trace.test.ts @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { SpanKind, SpanStatusCode } from '@opentelemetry/api'; +import { SpanKind, SpanStatusCode, TraceFlags } from '@opentelemetry/api'; import { TraceState, hexToBase64 } from '@opentelemetry/core'; import { Resource } from '@opentelemetry/resources'; import { ReadableSpan } from '@opentelemetry/sdk-trace-base'; @@ -133,7 +133,7 @@ describe('Trace', () => { span = { spanContext: () => ({ spanId: '0000000000000002', - traceFlags: 1, + traceFlags: TraceFlags.SAMPLED, traceId: '00000000000000000000000000000001', isRemote: false, traceState: new TraceState('span=bar'), @@ -163,7 +163,7 @@ describe('Trace', () => { context: { spanId: '0000000000000003', traceId: '00000000000000000000000000000002', - traceFlags: 1, + traceFlags: TraceFlags.SAMPLED, isRemote: false, traceState: new TraceState('link=foo'), }, diff --git a/experimental/packages/otlp-transformer/tsconfig.esm.json b/experimental/packages/otlp-transformer/tsconfig.esm.json index ec36d4d11..0dc676825 100644 --- a/experimental/packages/otlp-transformer/tsconfig.esm.json +++ b/experimental/packages/otlp-transformer/tsconfig.esm.json @@ -23,6 +23,12 @@ }, { "path": "../../../packages/sdk-metrics" + }, + { + "path": "../api-logs" + }, + { + "path": "../sdk-logs" } ] } diff --git a/experimental/packages/otlp-transformer/tsconfig.esnext.json b/experimental/packages/otlp-transformer/tsconfig.esnext.json index 5c344c886..56f7465ce 100644 --- a/experimental/packages/otlp-transformer/tsconfig.esnext.json +++ b/experimental/packages/otlp-transformer/tsconfig.esnext.json @@ -23,6 +23,12 @@ }, { "path": "../../../packages/sdk-metrics" + }, + { + "path": "../api-logs" + }, + { + "path": "../sdk-logs" } ] } diff --git a/experimental/packages/otlp-transformer/tsconfig.json b/experimental/packages/otlp-transformer/tsconfig.json index 88d7f2d5a..cb92fea57 100644 --- a/experimental/packages/otlp-transformer/tsconfig.json +++ b/experimental/packages/otlp-transformer/tsconfig.json @@ -24,6 +24,12 @@ }, { "path": "../../../packages/sdk-metrics" + }, + { + "path": "../api-logs" + }, + { + "path": "../sdk-logs" } ] } diff --git a/packages/opentelemetry-core/src/utils/environment.ts b/packages/opentelemetry-core/src/utils/environment.ts index 45fd67d9f..1ab79176d 100644 --- a/packages/opentelemetry-core/src/utils/environment.ts +++ b/packages/opentelemetry-core/src/utils/environment.ts @@ -58,6 +58,7 @@ const ENVIRONMENT_NUMBERS_KEYS = [ 'OTEL_EXPORTER_OTLP_TIMEOUT', 'OTEL_EXPORTER_OTLP_TRACES_TIMEOUT', 'OTEL_EXPORTER_OTLP_METRICS_TIMEOUT', + 'OTEL_EXPORTER_OTLP_LOGS_TIMEOUT', 'OTEL_EXPORTER_JAEGER_AGENT_PORT', ] as const; @@ -98,9 +99,11 @@ export type ENVIRONMENT = { OTEL_EXPORTER_OTLP_ENDPOINT?: string; OTEL_EXPORTER_OTLP_TRACES_ENDPOINT?: string; OTEL_EXPORTER_OTLP_METRICS_ENDPOINT?: string; + OTEL_EXPORTER_OTLP_LOGS_ENDPOINT?: string; OTEL_EXPORTER_OTLP_HEADERS?: string; OTEL_EXPORTER_OTLP_TRACES_HEADERS?: string; OTEL_EXPORTER_OTLP_METRICS_HEADERS?: string; + OTEL_EXPORTER_OTLP_LOGS_HEADERS?: string; OTEL_EXPORTER_ZIPKIN_ENDPOINT?: string; OTEL_LOG_LEVEL?: DiagLogLevel; OTEL_RESOURCE_ATTRIBUTES?: string; @@ -112,21 +115,27 @@ export type ENVIRONMENT = { OTEL_EXPORTER_OTLP_INSECURE?: string; OTEL_EXPORTER_OTLP_TRACES_INSECURE?: string; OTEL_EXPORTER_OTLP_METRICS_INSECURE?: string; + OTEL_EXPORTER_OTLP_LOGS_INSECURE?: string; OTEL_EXPORTER_OTLP_CERTIFICATE?: string; OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE?: string; OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE?: string; + OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE?: string; OTEL_EXPORTER_OTLP_COMPRESSION?: string; OTEL_EXPORTER_OTLP_TRACES_COMPRESSION?: string; OTEL_EXPORTER_OTLP_METRICS_COMPRESSION?: string; + OTEL_EXPORTER_OTLP_LOGS_COMPRESSION?: string; OTEL_EXPORTER_OTLP_CLIENT_KEY?: string; OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY?: string; OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY?: string; + OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY?: string; OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE?: string; OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE?: string; OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE?: string; + OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE?: string; OTEL_EXPORTER_OTLP_PROTOCOL?: string; OTEL_EXPORTER_OTLP_TRACES_PROTOCOL?: string; OTEL_EXPORTER_OTLP_METRICS_PROTOCOL?: string; + OTEL_EXPORTER_OTLP_LOGS_PROTOCOL?: string; OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE?: string; } & ENVIRONMENT_BOOLEANS & ENVIRONMENT_NUMBERS & @@ -170,12 +179,15 @@ export const DEFAULT_ENVIRONMENT: Required = { OTEL_EXPORTER_OTLP_ENDPOINT: '', OTEL_EXPORTER_OTLP_TRACES_ENDPOINT: '', OTEL_EXPORTER_OTLP_METRICS_ENDPOINT: '', + OTEL_EXPORTER_OTLP_LOGS_ENDPOINT: '', OTEL_EXPORTER_OTLP_HEADERS: '', OTEL_EXPORTER_OTLP_TRACES_HEADERS: '', OTEL_EXPORTER_OTLP_METRICS_HEADERS: '', + OTEL_EXPORTER_OTLP_LOGS_HEADERS: '', OTEL_EXPORTER_OTLP_TIMEOUT: 10000, OTEL_EXPORTER_OTLP_TRACES_TIMEOUT: 10000, OTEL_EXPORTER_OTLP_METRICS_TIMEOUT: 10000, + OTEL_EXPORTER_OTLP_LOGS_TIMEOUT: 10000, OTEL_EXPORTER_ZIPKIN_ENDPOINT: 'http://localhost:9411/api/v2/spans', OTEL_LOG_LEVEL: DiagLogLevel.INFO, OTEL_NO_PATCH_MODULES: [], @@ -202,21 +214,27 @@ export const DEFAULT_ENVIRONMENT: Required = { OTEL_EXPORTER_OTLP_INSECURE: '', OTEL_EXPORTER_OTLP_TRACES_INSECURE: '', OTEL_EXPORTER_OTLP_METRICS_INSECURE: '', + OTEL_EXPORTER_OTLP_LOGS_INSECURE: '', OTEL_EXPORTER_OTLP_CERTIFICATE: '', OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE: '', OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE: '', + OTEL_EXPORTER_OTLP_LOGS_CERTIFICATE: '', OTEL_EXPORTER_OTLP_COMPRESSION: '', OTEL_EXPORTER_OTLP_TRACES_COMPRESSION: '', OTEL_EXPORTER_OTLP_METRICS_COMPRESSION: '', + OTEL_EXPORTER_OTLP_LOGS_COMPRESSION: '', OTEL_EXPORTER_OTLP_CLIENT_KEY: '', OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY: '', OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY: '', + OTEL_EXPORTER_OTLP_LOGS_CLIENT_KEY: '', OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE: '', OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE: '', OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE: '', + OTEL_EXPORTER_OTLP_LOGS_CLIENT_CERTIFICATE: '', OTEL_EXPORTER_OTLP_PROTOCOL: 'http/protobuf', OTEL_EXPORTER_OTLP_TRACES_PROTOCOL: 'http/protobuf', OTEL_EXPORTER_OTLP_METRICS_PROTOCOL: 'http/protobuf', + OTEL_EXPORTER_OTLP_LOGS_PROTOCOL: 'http/protobuf', OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE: 'cumulative', }; diff --git a/tsconfig.json b/tsconfig.json index 101e77a15..1a275f41d 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -7,6 +7,7 @@ "api", "experimental/packages/api-events", "experimental/packages/api-logs", + "experimental/packages/exporter-logs-otlp-grpc", "experimental/packages/exporter-trace-otlp-grpc", "experimental/packages/exporter-trace-otlp-http", "experimental/packages/exporter-trace-otlp-proto", @@ -62,6 +63,9 @@ { "path": "experimental/packages/api-logs" }, + { + "path": "experimental/packages/exporter-logs-otlp-grpc" + }, { "path": "experimental/packages/exporter-trace-otlp-grpc" }, From bf18a8823cbb280fb60e78528e8ee41779a9e210 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Thu, 27 Apr 2023 08:58:38 +0200 Subject: [PATCH 07/72] docs: document component maturity levels (#1474) * docs: document component maturity levels * docs: link maturity levels from README * Typo Co-authored-by: Marc Pichler * Link header instead of owner --------- Co-authored-by: Marc Pichler --- .github/component_owners.yml | 2 +- CONTRIBUTING.md | 82 +++++++++++++++++++ README.md | 4 + .../README.md | 6 +- .../README.md | 12 +-- .../README.md | 8 +- 6 files changed, 104 insertions(+), 10 deletions(-) diff --git a/.github/component_owners.yml b/.github/component_owners.yml index 2fa7d0003..a178953c1 100644 --- a/.github/component_owners.yml +++ b/.github/component_owners.yml @@ -4,7 +4,7 @@ components: - legendecas detectors/node/opentelemetry-resource-detector-aws: - carolabadeer - detectors/node/opentelemetry-resource-detector-docker: + detectors/node/opentelemetry-resource-detector-container: - abhee11 detectors/node/opentelemetry-resource-detector-instana: - basti1302 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 692d82b78..3c2b7513b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,6 +2,27 @@ We'd love your help! +- [Report a bug or requesting feature](#report-a-bug-or-requesting-feature) +- [How to contribute](#how-to-contribute) + - [Before you start](#before-you-start) + - [Conventional commit](#conventional-commit) + - [Fork](#fork) + - [Running the tests](#running-the-tests) + - [Generating API documentation](#generating-api-documentation) + - [Generating CHANGELOG documentation](#generating-changelog-documentation) + - [Benchmarks](#benchmarks) +- [Component Ownership](#component-ownership) +- [Component Lifecycle](#component-lifecycle) + - [Unreleased](#unreleased) + - [Experimental](#experimental) + - [Beta](#beta) + - [Stable](#stable) + - [Unmaintained](#unmaintained) + - [Deprecated](#deprecated) +- [Contributing Vendor Components](#contributing-vendor-components) + - [Adding a New Vendor Component](#adding-a-new-vendor-component) + - [Removing Vendor Components](#removing-vendor-components) + ## Report a bug or requesting feature Reporting bugs is an important contribution. Please make sure to include: @@ -80,6 +101,67 @@ When two or more approaches must be compared, please write a benchmark in the be - `npm run bench` to run your benchmark. +## Component Ownership + +This repository contains many components which are maintained by more than the typical set of JS maintainers and approvers. +Each component in this repository SHOULD have a component owner who is responsible for maintaining it. +The README.md for each component SHOULD contain its owner, but the source of truth for component ownership is in [.github/component_owners.yml](.github/component_owners.yml). +Component owners are generally given authority to make decisions relating to implementation and feature requests for their components, provided they follow the best practices set out by the maintainers. +Component owners MUST do their best to maintain a high level of quality, security, performance, and specification compliance within their components. +Maintainers may override the decisions of component owners, but should only do so when they feel one or more of these traits is compromised. + +## Component Lifecycle + +This repository contains many components in various stages of the component lifecycle. +A component may be **unreleased**, **experimental**, **beta**, **stable**, **unmaintained**, or **deprecated**; see the below definitions for each stability level. +With the exception of the stable status, it is up to each individual [component owner](#component-ownership) to determine the status of a component. +A component may only be marked stable with the approval of a member of @open-telemetry/javascript-maintainers; see the definition of stable below for more details. + +### Unreleased + +Unreleased components are in active development and have not yet been released to NPM. +Unreleased packages should have the property `private` in their `package.json` set to `true`. + +### Experimental + +Experimental packages are in active development. +They should be considered unstable and potentially unsuitable for production use. +They are released to NPM for developers and early adopters. +Experimental components MUST have their major version set to `0`. +If a component does not have an explicit status in its README.md file, it should be considered to be experimental. + +### Beta + +Beta packages are not yet considered stable, but an effort should be made to preserve stability across versions if possible. +They may be ready for production use, but users should understand that their APIs or the telemetry they output MAY change if required. +Beta components MUST have their major version set to `0`. + +### Stable + +This is the highest level of quality and maintainership guarantee provided in this repository. +Stable packages should be considered stable and ready for production use. +In order for a package to be marked stable, it must meet the following requirements: + +- It MUST have a component owner that the JS maintainers feel confident will be responsive to issues and pull requests and will fulfill their responsibility competently. + If a component owner is not responsive to issues and PRs, the maintainers may assign a new owner or change the status of the component to unmaintained. +- All relevant specification relating to the component MUST be stable. For example, telemetry emitted by an instrumentation library should rely on a stable semantic convention. +- It MUST be reviewed and approved by a member of @open-telemetry/javascript-maintainers. + +Stable components MUST have their major version set to `1` or greater. + +### Unmaintained + +A component which does not have an assigned component owner, or has a component owner who has been unresponsive to issues and pull requests may be marked as unmaintained. +Unmaintained components may continue to work and receive updates and fixes from contributors, but may not receive immediate attention if there is a problem or feature request. +A component which is unmaintained may be deprecated if there is a problem that is not fixed in a timely manner. + +### Deprecated + +Deprecated components are no longer maintained and there are not currently plans to maintain them. +They may not work and there are no guarantees for fixes or new features. +Their source files may be deleted from the repository. +Any packages released from their source will be marked as deprecated in NPM. + ## Contributing Vendor Components This repo is generally meant for hosting components that work with popular open-source frameworks and tools. However, it is also possible to contribute components specific to a 3rd party vendor in this repo. diff --git a/README.md b/README.md index 6168d94a7..06cf35919 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,10 @@ This project includes: **Resource Detectors**: OpenTelemetry can collect resource attributes of the entity that producing telemetry. For example, a process producing telemetry that is running in a container on Kubernetes has a Pod name, it is in a namespace and possibly is part of a Deployment which also has a name. All three of these attributes can be included in the `Resource`. +## Stability levels + +Stability level for components in this repository follow the definitions in [CONTRIBUTING.md](./CONTRIBUTING.md). + ## Supported Runtimes Packages in this repository have a variable range of support for Node.JS and browser versions which for each package depend on diff --git a/detectors/node/opentelemetry-resource-detector-aws/README.md b/detectors/node/opentelemetry-resource-detector-aws/README.md index e397892e9..690c25700 100644 --- a/detectors/node/opentelemetry-resource-detector-aws/README.md +++ b/detectors/node/opentelemetry-resource-detector-aws/README.md @@ -7,7 +7,11 @@ Resource detector for Amazon Web Services. -Compatible with OpenTelemetry JS API and SDK `1.0+`. +## Status + +| Maturity | [Component Owner](../../.github/component_owners.yml) | Compatibility | +| ----------------------------------------- | ----------------------------------------------------- | --------------------- | +| [Stable](../../../CONTRIBUTING.md#stable) | @carolabadeer | API 1.0+
SDK 1.0+ | ## Installation diff --git a/packages/opentelemetry-id-generator-aws-xray/README.md b/packages/opentelemetry-id-generator-aws-xray/README.md index f314d2f21..707cddadb 100644 --- a/packages/opentelemetry-id-generator-aws-xray/README.md +++ b/packages/opentelemetry-id-generator-aws-xray/README.md @@ -3,20 +3,22 @@ [![NPM Published Version][npm-img]][npm-url] [![Apache License][license-image]][license-image] -[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @carolabadeer - The OpenTelemetry IdGenerator for AWS X-Ray generates trace IDs with its first four bytes set to the start time of the trace followed by a unique identifier consisting of 12 bytes of randomly generated numbers. OpenTelemetry offers an extension point which allows the usage of this custom IdGenerator as opposed to the out-of-the-box random IdGenerator, enabling compatibility with AWS X-Ray. -Compatible with OpenTelemetry JS API and SDK `1.0+`. +## Status + +| Maturity | [Component Owner](../../.github/component_owners.yml) | Compatibility | +| -------------------------------------- | ----------------------------------------------------- | --------------------- | +| [Stable](../../CONTRIBUTING.md#stable) | @carolabadeer | API 1.0+
SDK 1.0+ | ## Installation -` +```bash npm install --save @opentelemetry/id-generator-aws-xray -` +``` ## Usage diff --git a/propagators/opentelemetry-propagator-aws-xray/README.md b/propagators/opentelemetry-propagator-aws-xray/README.md index a1c3ad536..9f2cb4e30 100644 --- a/propagators/opentelemetry-propagator-aws-xray/README.md +++ b/propagators/opentelemetry-propagator-aws-xray/README.md @@ -3,13 +3,15 @@ [![NPM Published Version][npm-img]][npm-url] [![Apache License][license-image]][license-image] -[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @carolabadeer - The OpenTelemetry Propagator for AWS X-Ray provides HTTP header propagation for systems that are using AWS `X-Amzn-Trace-Id` format. This propagator translates the OpenTelemetry SpanContext into the equivalent AWS header format, for use with the OpenTelemetry JS SDK. `TraceState` is currently not propagated. -Compatible with OpenTelemetry JS API and SDK `1.0+`. +## Status + +| Maturity | [Component Owner](../../.github/component_owners.yml) | Compatibility | +| ----------------------------------------- | ----------------------------------------------------- | --------------------- | +| [Stable](../../../CONTRIBUTING.md#stable) | @carolabadeer | API 1.0+
SDK 1.0+ | ## Installation From 07c79baf7e39188c7ad0ddf2b3b2fa25290beef2 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Fri, 28 Apr 2023 10:16:43 +0200 Subject: [PATCH 08/72] chore(deps): update actions/stale action to v8 (#1482) --- .github/workflows/close-stale.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/close-stale.yml b/.github/workflows/close-stale.yml index 4cf64aa32..2d098a006 100644 --- a/.github/workflows/close-stale.yml +++ b/.github/workflows/close-stale.yml @@ -7,7 +7,7 @@ jobs: stale: runs-on: ubuntu-latest steps: - - uses: actions/stale@v7 + - uses: actions/stale@v8 with: days-before-stale: 60 days-before-close: 14 From a96116db88c7c0a0d1185601942b379c6118bd6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=B2=92=E7=B2=92=E6=A9=99?= Date: Fri, 28 Apr 2023 16:25:32 +0800 Subject: [PATCH 09/72] deps: remove `rimraf` (#3769) --- experimental/packages/exporter-logs-otlp-grpc/package.json | 1 - .../packages/opentelemetry-shim-opencensus/package.json | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/experimental/packages/exporter-logs-otlp-grpc/package.json b/experimental/packages/exporter-logs-otlp-grpc/package.json index b48472379..661e8c722 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/package.json +++ b/experimental/packages/exporter-logs-otlp-grpc/package.json @@ -61,7 +61,6 @@ "cpx": "1.5.0", "mocha": "10.0.0", "nyc": "15.1.0", - "rimraf": "4.1.2", "sinon": "15.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", diff --git a/experimental/packages/opentelemetry-shim-opencensus/package.json b/experimental/packages/opentelemetry-shim-opencensus/package.json index d9191233b..8779173e9 100644 --- a/experimental/packages/opentelemetry-shim-opencensus/package.json +++ b/experimental/packages/opentelemetry-shim-opencensus/package.json @@ -53,7 +53,6 @@ "codecov": "3.8.3", "mocha": "10.0.0", "nyc": "15.1.0", - "rimraf": "4.1.2", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, @@ -69,4 +68,4 @@ }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-shim-opencensus", "sideEffects": false -} +} \ No newline at end of file From abfb1bb68e1ec8a183c01644ab9673cd6ac74841 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=B2=92=E7=B2=92=E6=A9=99?= Date: Fri, 28 Apr 2023 18:28:52 +0800 Subject: [PATCH 10/72] refactor(otlp-transformer): refine metrics transformer (#3770) --- experimental/CHANGELOG.md | 1 + .../otlp-transformer/src/metrics/internal.ts | 91 ++++++++++--------- 2 files changed, 47 insertions(+), 45 deletions(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 70a562018..bf12e1940 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -11,6 +11,7 @@ All notable changes to experimental packages in this project will be documented * feat(otlp-transformer): support log records. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 * feat(otlp-grpc-exporter-base): support log records. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 * feat(exporter-logs-otlp-grpc): otlp-grpc exporter for logs. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 +* refactor(otlp-transformer): refine metric transformers. [#3770](https://github.com/open-telemetry/opentelemetry-js/pull/3770/) @llc1123 ### :bug: (Bug Fix) diff --git a/experimental/packages/otlp-transformer/src/metrics/internal.ts b/experimental/packages/otlp-transformer/src/metrics/internal.ts index 7ba7722b6..b73696b0a 100644 --- a/experimental/packages/otlp-transformer/src/metrics/internal.ts +++ b/experimental/packages/otlp-transformer/src/metrics/internal.ts @@ -44,24 +44,21 @@ export function toResourceMetrics( attributes: toAttributes(resourceMetrics.resource.attributes), droppedAttributesCount: 0, }, - schemaUrl: undefined, // TODO: Schema Url does not exist yet in the SDK. + schemaUrl: undefined, scopeMetrics: toScopeMetrics(resourceMetrics.scopeMetrics), }; } export function toScopeMetrics(scopeMetrics: ScopeMetrics[]): IScopeMetrics[] { return Array.from( - scopeMetrics.map(metrics => { - const scopeMetrics: IScopeMetrics = { - scope: { - name: metrics.scope.name, - version: metrics.scope.version, - }, - metrics: metrics.metrics.map(metricData => toMetric(metricData)), - schemaUrl: metrics.scope.schemaUrl, - }; - return scopeMetrics; - }) + scopeMetrics.map(metrics => ({ + scope: { + name: metrics.scope.name, + version: metrics.scope.version, + }, + metrics: metrics.metrics.map(metricData => toMetric(metricData)), + schemaUrl: metrics.scope.schemaUrl, + })) ); } @@ -76,27 +73,31 @@ export function toMetric(metricData: MetricData): IMetric { metricData.aggregationTemporality ); - if (metricData.dataPointType === DataPointType.SUM) { - out.sum = { - aggregationTemporality, - isMonotonic: metricData.isMonotonic, - dataPoints: toSingularDataPoints(metricData), - }; - } else if (metricData.dataPointType === DataPointType.GAUGE) { - // Instrument is a gauge. - out.gauge = { - dataPoints: toSingularDataPoints(metricData), - }; - } else if (metricData.dataPointType === DataPointType.HISTOGRAM) { - out.histogram = { - aggregationTemporality, - dataPoints: toHistogramDataPoints(metricData), - }; - } else if (metricData.dataPointType === DataPointType.EXPONENTIAL_HISTOGRAM) { - out.exponentialHistogram = { - aggregationTemporality, - dataPoints: toExponentialHistogramDataPoints(metricData), - }; + switch (metricData.dataPointType) { + case DataPointType.SUM: + out.sum = { + aggregationTemporality, + isMonotonic: metricData.isMonotonic, + dataPoints: toSingularDataPoints(metricData), + }; + break; + case DataPointType.GAUGE: + out.gauge = { + dataPoints: toSingularDataPoints(metricData), + }; + break; + case DataPointType.HISTOGRAM: + out.histogram = { + aggregationTemporality, + dataPoints: toHistogramDataPoints(metricData), + }; + break; + case DataPointType.EXPONENTIAL_HISTOGRAM: + out.exponentialHistogram = { + aggregationTemporality, + dataPoints: toExponentialHistogramDataPoints(metricData), + }; + break; } return out; @@ -115,10 +116,13 @@ function toSingularDataPoint( timeUnixNano: hrTimeToNanoseconds(dataPoint.endTime), }; - if (valueType === ValueType.INT) { - out.asInt = dataPoint.value as number; - } else if (valueType === ValueType.DOUBLE) { - out.asDouble = dataPoint.value as number; + switch (valueType) { + case ValueType.INT: + out.asInt = dataPoint.value as number; + break; + case ValueType.DOUBLE: + out.asDouble = dataPoint.value as number; + break; } return out; @@ -177,13 +181,10 @@ function toExponentialHistogramDataPoints( function toAggregationTemporality( temporality: AggregationTemporality ): EAggregationTemporality { - if (temporality === AggregationTemporality.DELTA) { - return EAggregationTemporality.AGGREGATION_TEMPORALITY_DELTA; + switch (temporality) { + case AggregationTemporality.DELTA: + return EAggregationTemporality.AGGREGATION_TEMPORALITY_DELTA; + case AggregationTemporality.CUMULATIVE: + return EAggregationTemporality.AGGREGATION_TEMPORALITY_CUMULATIVE; } - - if (temporality === AggregationTemporality.CUMULATIVE) { - return EAggregationTemporality.AGGREGATION_TEMPORALITY_CUMULATIVE; - } - - return EAggregationTemporality.AGGREGATION_TEMPORALITY_UNSPECIFIED; } From 2f1e31648402b310448d226ae9632b115e6ad5c4 Mon Sep 17 00:00:00 2001 From: Marc Pichler Date: Fri, 28 Apr 2023 12:58:20 +0200 Subject: [PATCH 11/72] feat(otlp-grpc-exporter-base): use statically generated protobuf code (#3705) Co-authored-by: Daniel Dyla --- experimental/CHANGELOG.md | 1 + .../otlp-grpc-exporter-base/.gitignore | 2 + .../otlp-grpc-exporter-base/package.json | 16 ++-- .../src/LogsExportServiceClient.ts | 51 +++++++++++ .../src/MetricsExportServiceClient.ts | 54 +++++++++++ .../src/TraceExportServiceClient.ts | 54 +++++++++++ .../src/generated/.gitkeep | 0 .../src/internal-types.ts | 22 +++++ .../otlp-grpc-exporter-base/src/types.ts | 4 +- .../otlp-grpc-exporter-base/src/util.ts | 89 ++++++++----------- .../otlp-grpc-exporter-base/tsconfig.json | 4 +- .../otlp-proto-exporter-base/package.json | 3 +- package.json | 6 +- .../protos.js => scripts/generate-protos.js | 12 ++- 14 files changed, 246 insertions(+), 72 deletions(-) create mode 100644 experimental/packages/otlp-grpc-exporter-base/.gitignore create mode 100644 experimental/packages/otlp-grpc-exporter-base/src/LogsExportServiceClient.ts create mode 100644 experimental/packages/otlp-grpc-exporter-base/src/MetricsExportServiceClient.ts create mode 100644 experimental/packages/otlp-grpc-exporter-base/src/TraceExportServiceClient.ts create mode 100644 experimental/packages/otlp-grpc-exporter-base/src/generated/.gitkeep create mode 100644 experimental/packages/otlp-grpc-exporter-base/src/internal-types.ts rename experimental/packages/otlp-proto-exporter-base/scripts/protos.js => scripts/generate-protos.js (78%) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index bf12e1940..34d772783 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -11,6 +11,7 @@ All notable changes to experimental packages in this project will be documented * feat(otlp-transformer): support log records. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 * feat(otlp-grpc-exporter-base): support log records. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 * feat(exporter-logs-otlp-grpc): otlp-grpc exporter for logs. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 +* feat(otlp-grpc-exporter-base): use statically generated protobuf code [#3705](https://github.com/open-telemetry/opentelemetry-js/pull/3705) @pichlermarc * refactor(otlp-transformer): refine metric transformers. [#3770](https://github.com/open-telemetry/opentelemetry-js/pull/3770/) @llc1123 ### :bug: (Bug Fix) diff --git a/experimental/packages/otlp-grpc-exporter-base/.gitignore b/experimental/packages/otlp-grpc-exporter-base/.gitignore new file mode 100644 index 000000000..c82683cbd --- /dev/null +++ b/experimental/packages/otlp-grpc-exporter-base/.gitignore @@ -0,0 +1,2 @@ +src/generated/* +!src/generated/.gitkeep diff --git a/experimental/packages/otlp-grpc-exporter-base/package.json b/experimental/packages/otlp-grpc-exporter-base/package.json index cdb998681..132c96b4c 100644 --- a/experimental/packages/otlp-grpc-exporter-base/package.json +++ b/experimental/packages/otlp-grpc-exporter-base/package.json @@ -8,17 +8,17 @@ "scripts": { "prepublishOnly": "npm run compile", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", - "compile": "tsc --build", + "compile": "npm run protos && tsc --build", "clean": "tsc --build --clean", "lint": "eslint . --ext .ts", "lint:fix": "eslint . --ext .ts --fix", - "postcompile": "npm run submodule && npm run protos:copy", - "protos:copy": "cpx protos/opentelemetry/**/*.* build/protos/opentelemetry", + "protos": "npm run submodule && npm run protos:generate", + "protos:generate": "node ../../../scripts/generate-protos.js", "submodule": "git submodule sync --recursive && git submodule update --init --recursive", "tdd": "npm run test -- --watch-extensions ts --watch", "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", "version": "node ../../../scripts/version-update.js", - "watch": "npm run protos:copy && tsc -w", + "watch": "npm run protos && tsc -w", "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", "prewatch": "npm run precompile" }, @@ -40,7 +40,6 @@ "build/src/**/*.js", "build/src/**/*.js.map", "build/src/**/*.d.ts", - "build/protos/**/*.proto", "doc", "LICENSE", "README.md" @@ -64,16 +63,17 @@ "sinon": "15.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", - "typescript": "4.4.4" + "typescript": "4.4.4", + "protobufjs-cli": "1.0.2" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0" }, "dependencies": { "@grpc/grpc-js": "^1.7.1", - "@grpc/proto-loader": "^0.7.3", "@opentelemetry/core": "1.12.0", - "@opentelemetry/otlp-exporter-base": "0.38.0" + "@opentelemetry/otlp-exporter-base": "0.38.0", + "protobufjs": "^7.2.2" }, "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/src/LogsExportServiceClient.ts b/experimental/packages/otlp-grpc-exporter-base/src/LogsExportServiceClient.ts new file mode 100644 index 000000000..148fca31a --- /dev/null +++ b/experimental/packages/otlp-grpc-exporter-base/src/LogsExportServiceClient.ts @@ -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. + */ + +import * as root from './generated/root'; +import * as grpc from '@grpc/grpc-js'; +import { IExportLogsServiceRequest } 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; + +const requestType = root.opentelemetry.proto.collector.logs.v1 + .ExportLogsServiceRequest as ExportType; + +const logsServiceDefinition = { + export: { + path: '/opentelemetry.proto.collector.logs.v1.LogsService/Export', + requestStream: false, + responseStream: false, + requestSerialize: (arg: IExportLogsServiceRequest) => { + return Buffer.from(requestType.encode(arg).finish()); + }, + requestDeserialize: (arg: Buffer) => { + return requestType.decode(arg); + }, + responseSerialize: (arg: IExportLogsServiceResponse) => { + return Buffer.from(responseType.encode(arg).finish()); + }, + responseDeserialize: (arg: Buffer) => { + return responseType.decode(arg); + }, + }, +}; + +// Creates a new instance of a gRPC service client for OTLP logs +export const LogsExportServiceClient: grpc.ServiceClientConstructor = + grpc.makeGenericClientConstructor(logsServiceDefinition, 'LogsExportService'); diff --git a/experimental/packages/otlp-grpc-exporter-base/src/MetricsExportServiceClient.ts b/experimental/packages/otlp-grpc-exporter-base/src/MetricsExportServiceClient.ts new file mode 100644 index 000000000..9a791ca2f --- /dev/null +++ b/experimental/packages/otlp-grpc-exporter-base/src/MetricsExportServiceClient.ts @@ -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. + */ + +import * as root from './generated/root'; +import * as grpc from '@grpc/grpc-js'; +import { IExportMetricsServiceRequest } 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; + +const requestType = root.opentelemetry.proto.collector.metrics.v1 + .ExportMetricsServiceRequest as ExportType; + +const metricsServiceDefinition = { + export: { + path: '/opentelemetry.proto.collector.metrics.v1.MetricsService/Export', + requestStream: false, + responseStream: false, + requestSerialize: (arg: IExportMetricsServiceRequest) => { + return Buffer.from(requestType.encode(arg).finish()); + }, + requestDeserialize: (arg: Buffer) => { + return requestType.decode(arg); + }, + responseSerialize: (arg: IExportMetricsServiceResponse) => { + return Buffer.from(responseType.encode(arg).finish()); + }, + responseDeserialize: (arg: Buffer) => { + return responseType.decode(arg); + }, + }, +}; + +// Creates a new instance of a gRPC service client for OTLP metrics +export const MetricExportServiceClient: grpc.ServiceClientConstructor = + grpc.makeGenericClientConstructor( + metricsServiceDefinition, + 'MetricsExportService' + ); diff --git a/experimental/packages/otlp-grpc-exporter-base/src/TraceExportServiceClient.ts b/experimental/packages/otlp-grpc-exporter-base/src/TraceExportServiceClient.ts new file mode 100644 index 000000000..6a150a24b --- /dev/null +++ b/experimental/packages/otlp-grpc-exporter-base/src/TraceExportServiceClient.ts @@ -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. + */ + +import * as root from './generated/root'; +import * as grpc from '@grpc/grpc-js'; +import { IExportTraceServiceRequest } 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; + +const requestType = root.opentelemetry.proto.collector.trace.v1 + .ExportTraceServiceRequest as ExportType; + +const traceServiceDefinition = { + export: { + path: '/opentelemetry.proto.collector.trace.v1.TraceService/Export', + requestStream: false, + responseStream: false, + requestSerialize: (arg: IExportTraceServiceRequest) => { + return Buffer.from(requestType.encode(arg).finish()); + }, + requestDeserialize: (arg: Buffer) => { + return requestType.decode(arg); + }, + responseSerialize: (arg: IExportTraceServiceResponse) => { + return Buffer.from(responseType.encode(arg).finish()); + }, + responseDeserialize: (arg: Buffer) => { + return responseType.decode(arg); + }, + }, +}; + +// Creates a new instance of a gRPC service client for exporting OTLP traces +export const TraceExportServiceClient: grpc.ServiceClientConstructor = + grpc.makeGenericClientConstructor( + traceServiceDefinition, + 'TraceExportService' + ); diff --git a/experimental/packages/otlp-grpc-exporter-base/src/generated/.gitkeep b/experimental/packages/otlp-grpc-exporter-base/src/generated/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/experimental/packages/otlp-grpc-exporter-base/src/internal-types.ts b/experimental/packages/otlp-grpc-exporter-base/src/internal-types.ts new file mode 100644 index 000000000..8d108a0a2 --- /dev/null +++ b/experimental/packages/otlp-grpc-exporter-base/src/internal-types.ts @@ -0,0 +1,22 @@ +/* + * 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 protobuf from 'protobufjs'; + +export interface ExportType unknown }> { + encode(message: T, writer?: protobuf.Writer): protobuf.Writer; + decode(reader: protobuf.Reader | Uint8Array, length?: number): R; +} diff --git a/experimental/packages/otlp-grpc-exporter-base/src/types.ts b/experimental/packages/otlp-grpc-exporter-base/src/types.ts index af6718884..7ecedff1b 100644 --- a/experimental/packages/otlp-grpc-exporter-base/src/types.ts +++ b/experimental/packages/otlp-grpc-exporter-base/src/types.ts @@ -34,13 +34,15 @@ export interface GRPCQueueItem { /** * Service Client for sending spans/metrics/logs */ -export interface ServiceClient extends grpc.Client { +export interface ServiceClient { export: ( request: any, metadata: grpc.Metadata, options: grpc.CallOptions, callback: Function ) => {}; + + close(): void; } /** diff --git a/experimental/packages/otlp-grpc-exporter-base/src/util.ts b/experimental/packages/otlp-grpc-exporter-base/src/util.ts index f4dc8af8a..7e1d58dff 100644 --- a/experimental/packages/otlp-grpc-exporter-base/src/util.ts +++ b/experimental/packages/otlp-grpc-exporter-base/src/util.ts @@ -15,7 +15,6 @@ */ import * as grpc from '@grpc/grpc-js'; -import * as protoLoader from '@grpc/proto-loader'; import { diag } from '@opentelemetry/api'; import { getEnv, globalErrorHandler } from '@opentelemetry/core'; import * as path from 'path'; @@ -28,11 +27,15 @@ import { ServiceClientType, } from './types'; import { - CompressionAlgorithm, ExportServiceError, OTLPExporterError, + CompressionAlgorithm, } from '@opentelemetry/otlp-exporter-base'; +import { MetricExportServiceClient } from './MetricsExportServiceClient'; +import { TraceExportServiceClient } from './TraceExportServiceClient'; +import { LogsExportServiceClient } from './LogsExportServiceClient'; + export const DEFAULT_COLLECTOR_URL = 'http://localhost:4317'; export function onInit( @@ -46,61 +49,41 @@ export function onInit( collector.getUrlFromConfig(config) ); - const includeDirs = [path.resolve(__dirname, '..', 'protos')]; + try { + if (collector.getServiceClientType() === ServiceClientType.SPANS) { + const client = new TraceExportServiceClient(collector.url, credentials, { + 'grpc.default_compression_algorithm': collector.compression.valueOf(), + }); - protoLoader - .load(collector.getServiceProtoPath(), { - keepCase: false, - longs: String, - enums: String, - defaults: true, - oneofs: true, - includeDirs, - }) - .then(packageDefinition => { - const packageObject: any = grpc.loadPackageDefinition(packageDefinition); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + collector.serviceClient = client; + } else if (collector.getServiceClientType() === ServiceClientType.METRICS) { + const client = new MetricExportServiceClient(collector.url, credentials, { + 'grpc.default_compression_algorithm': collector.compression.valueOf(), + }); - const options = { - 'grpc.default_compression_algorithm': collector.compression, - }; - - switch (collector.getServiceClientType()) { - case ServiceClientType.SPANS: - collector.serviceClient = - new packageObject.opentelemetry.proto.collector.trace.v1.TraceService( - collector.url, - credentials, - options - ); - break; - case ServiceClientType.METRICS: - collector.serviceClient = - new packageObject.opentelemetry.proto.collector.metrics.v1.MetricsService( - collector.url, - credentials, - options - ); - break; - case ServiceClientType.LOGS: - collector.serviceClient = - new packageObject.opentelemetry.proto.collector.logs.v1.LogsService( - collector.url, - credentials, - options - ); - break; - } + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + collector.serviceClient = client; + } else if (collector.getServiceClientType() === ServiceClientType.LOGS) { + const client = new LogsExportServiceClient(collector.url, credentials, { + 'grpc.default_compression_algorithm': collector.compression.valueOf(), + }); - if (collector.grpcQueue.length > 0) { - const queue = collector.grpcQueue.splice(0); - queue.forEach((item: GRPCQueueItem) => { - collector.send(item.objects, item.onSuccess, item.onError); - }); - } - }) - .catch(err => { - globalErrorHandler(err); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + collector.serviceClient = client; + } + } catch (err) { + globalErrorHandler(err); + } + if (collector.grpcQueue.length > 0) { + const queue = collector.grpcQueue.splice(0); + queue.forEach((item: GRPCQueueItem) => { + collector.send(item.objects, item.onSuccess, item.onError); }); + } } export function send( diff --git a/experimental/packages/otlp-grpc-exporter-base/tsconfig.json b/experimental/packages/otlp-grpc-exporter-base/tsconfig.json index bbfbbc57b..ddc035cf3 100644 --- a/experimental/packages/otlp-grpc-exporter-base/tsconfig.json +++ b/experimental/packages/otlp-grpc-exporter-base/tsconfig.json @@ -1,12 +1,14 @@ { "extends": "../../../tsconfig.base.json", "compilerOptions": { + "allowJs": true, "outDir": "build", "rootDir": "." }, "include": [ "src/**/*.ts", - "src/generated/*.js", + "src/generated/**/*.js", + "src/generated/**/*.ts", "test/**/*.ts" ], "references": [ diff --git a/experimental/packages/otlp-proto-exporter-base/package.json b/experimental/packages/otlp-proto-exporter-base/package.json index 6f39ea25e..56fc97450 100644 --- a/experimental/packages/otlp-proto-exporter-base/package.json +++ b/experimental/packages/otlp-proto-exporter-base/package.json @@ -19,7 +19,8 @@ "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", "lint": "eslint . --ext .ts", "lint:fix": "eslint . --ext .ts --fix", - "protos": "npm run submodule && node scripts/protos.js", + "protos": "npm run submodule && npm run protos:generate", + "protos:generate": "node ../../../scripts/generate-protos.js", "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", diff --git a/package.json b/package.json index df63bd8fc..d03e6ff43 100644 --- a/package.json +++ b/package.json @@ -3,15 +3,13 @@ "version": "0.1.0", "description": "OpenTelemetry is a distributed tracing and stats collection framework.", "scripts": { - "precompile": "lerna run version", - "compile": "lerna run protos && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "precompile": "lerna run version && npm run submodule", + "compile": "lerna run protos:generate && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", "prewatch": "npm run precompile", "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", "postinstall": "npm run update-ts-configs && npm run bootstrap", - "postcompile": "npm run submodule && npm run protos:copy", "submodule": "git submodule sync --recursive && git submodule update --init --recursive", - "protos:copy": "lerna run protos:copy", "version:update": "lerna run version:update", "test": "lerna run test", "test:browser": "lerna run test:browser", diff --git a/experimental/packages/otlp-proto-exporter-base/scripts/protos.js b/scripts/generate-protos.js similarity index 78% rename from experimental/packages/otlp-proto-exporter-base/scripts/protos.js rename to scripts/generate-protos.js index 3f3fbd6c0..972969f80 100644 --- a/experimental/packages/otlp-proto-exporter-base/scripts/protos.js +++ b/scripts/generate-protos.js @@ -3,8 +3,10 @@ const cp = require('child_process'); const path = require('path'); -const generatedPath = path.resolve(__dirname, '../src/generated'); -const protosPath = path.resolve(__dirname, '../protos'); +const appRoot = process.cwd(); + +const generatedPath = path.resolve(appRoot, './src/generated'); +const protosPath = path.resolve(appRoot, './protos'); const protos = [ 'opentelemetry/proto/common/v1/common.proto', 'opentelemetry/proto/resource/v1/resource.proto', @@ -12,6 +14,8 @@ const protos = [ 'opentelemetry/proto/collector/trace/v1/trace_service.proto', 'opentelemetry/proto/metrics/v1/metrics.proto', 'opentelemetry/proto/collector/metrics/v1/metrics_service.proto', + 'opentelemetry/proto/logs/v1/logs.proto', + 'opentelemetry/proto/collector/logs/v1/logs_service.proto', ].map(it => { return path.join(protosPath, it); }); @@ -33,7 +37,7 @@ function exec(command, argv) { } function pbts(pbjsOutFile) { - const pbtsPath = path.resolve(__dirname, '../node_modules/.bin/pbts'); + const pbtsPath = path.resolve(appRoot, './node_modules/.bin/pbts'); const pbtsOptions = [ '-o', path.join(generatedPath, 'root.d.ts'), ]; @@ -41,7 +45,7 @@ function pbts(pbjsOutFile) { } async function pbjs(files) { - const pbjsPath = path.resolve(__dirname, '../node_modules/.bin/pbjs'); + const pbjsPath = path.resolve(appRoot, './node_modules/.bin/pbjs'); const outFile = path.join(generatedPath, 'root.js'); const pbjsOptions = [ '-t', 'static-module', From 9fbd9e81b2ecb5dd06436cad41a9786d657c0ff8 Mon Sep 17 00:00:00 2001 From: Haddas Bronfman <85441461+haddasbronfman@users.noreply.github.com> Date: Mon, 1 May 2023 10:59:55 +0300 Subject: [PATCH 12/72] fix(mysql): metrics - align metrics description and unit to semconv (#1480) Co-authored-by: Marc Pichler --- .../src/instrumentation.ts | 4 ++-- .../test/index.metrics.test.ts | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/plugins/node/opentelemetry-instrumentation-mysql/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-mysql/src/instrumentation.ts index 77c319a48..8ef20b9e2 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/src/instrumentation.ts +++ b/plugins/node/opentelemetry-instrumentation-mysql/src/instrumentation.ts @@ -73,8 +73,8 @@ export class MySQLInstrumentation extends InstrumentationBase< 'db.client.connections.usage', //TODO:: use semantic convention { description: - 'The number of connections that are currently in the state referenced by the attribute "state".', - unit: '{connections}', + 'The number of connections that are currently in state described by the state attribute.', + unit: '{connection}', } ); } diff --git a/plugins/node/opentelemetry-instrumentation-mysql/test/index.metrics.test.ts b/plugins/node/opentelemetry-instrumentation-mysql/test/index.metrics.test.ts index ba79c40c9..2bea7e88e 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/test/index.metrics.test.ts +++ b/plugins/node/opentelemetry-instrumentation-mysql/test/index.metrics.test.ts @@ -159,9 +159,9 @@ describe('mysql@2.x-Metrics', () => { assert.strictEqual( metrics[0].descriptor.description, - 'The number of connections that are currently in the state referenced by the attribute "state".' + 'The number of connections that are currently in state described by the state attribute.' ); - assert.strictEqual(metrics[0].descriptor.unit, '{connections}'); + assert.strictEqual(metrics[0].descriptor.unit, '{connection}'); assert.strictEqual( metrics[0].descriptor.name, 'db.client.connections.usage' @@ -248,9 +248,9 @@ describe('mysql@2.x-Metrics', () => { assert.strictEqual(metrics[0].dataPointType, DataPointType.SUM); assert.strictEqual( metrics[0].descriptor.description, - 'The number of connections that are currently in the state referenced by the attribute "state".' + 'The number of connections that are currently in state described by the state attribute.' ); - assert.strictEqual(metrics[0].descriptor.unit, '{connections}'); + assert.strictEqual(metrics[0].descriptor.unit, '{connection}'); assert.strictEqual( metrics[0].descriptor.name, 'db.client.connections.usage' @@ -325,9 +325,9 @@ describe('mysql@2.x-Metrics', () => { assert.strictEqual( metrics[0].descriptor.description, - 'The number of connections that are currently in the state referenced by the attribute "state".' + 'The number of connections that are currently in state described by the state attribute.' ); - assert.strictEqual(metrics[0].descriptor.unit, '{connections}'); + assert.strictEqual(metrics[0].descriptor.unit, '{connection}'); assert.strictEqual( metrics[0].descriptor.name, 'db.client.connections.usage' From b5b951e5d943d9ef9df7ae3acefe8ea40b8e514f Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Mon, 1 May 2023 10:40:17 +0200 Subject: [PATCH 13/72] fix(deps): update dependency @koa/router to v12 (#1483) Co-authored-by: Haddas Bronfman <85441461+haddasbronfman@users.noreply.github.com> --- .../opentelemetry-instrumentation-koa/examples/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/node/opentelemetry-instrumentation-koa/examples/package.json b/plugins/node/opentelemetry-instrumentation-koa/examples/package.json index 8b555bcda..09fa88ab1 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/examples/package.json +++ b/plugins/node/opentelemetry-instrumentation-koa/examples/package.json @@ -30,7 +30,7 @@ "url": "https://github.com/open-telemetry/opentelemetry-js-contrib/issues" }, "dependencies": { - "@koa/router": "^9.3.1", + "@koa/router": "^12.0.0", "@opentelemetry/api": "^1.0.0", "@opentelemetry/exporter-jaeger": "^1.0.0", "@opentelemetry/exporter-zipkin": "^1.0.0", From 2d8e2b893f9d7987ae5dc00682c59817d3d57fb8 Mon Sep 17 00:00:00 2001 From: Sami Musallam Date: Mon, 1 May 2023 15:26:27 +0300 Subject: [PATCH 14/72] feat(auto-instrumentations-node): Add "@opentelemetry/auto-instrumentations-node/register" for an agent-like experience (#1400) * feat(auto-instrumentation-agent): added intrumentation-agent package * feat(auto-instrumentation-agent): added api peer dependency * feat(auto-instrumentation-agent): updated test * feat(auto-instrumentation-agent): updated release please config * feat(auto-instrumentation-agent): updated .release-please-manifest * feat(auto-instrumentation-agent): updated test timeout * feat(auto-instrumentation-agent): removed timeout, added pretest script * feat(auto-instrumentation-agent): moved agent to auto-instrumentations-node * feat(auto-instrumentation-agent): reverted release please config * feat(auto-instrumentation-agent): updated README.md * feat(auto-instrumentation-agent): added env variable for resource detector configuration * feat(auto-instrumentation-agent): removed no-process-exit * feat(auto-instrumentation-agent): removed pretest script * feat(auto-instrumentation-agent): fixed lint issues * feat(auto-instrumentation-agent): updated register test * feat(auto-instrumentation-agent): fixed typo in test * feat(auto-instrumentation-agent): using env instead of export * feat(auto-instrumentation-agent): updated eslint.config.js * feat(auto-instrumentation-agent): updated test * feat(auto-instrumentation-agent): using language specific env var name * feat(auto-instrumentation-agent): updated README.md * feat(auto-instrumentation-agent): updated dependencies * feat(auto-instrumentation-agent): fixed detector test * feat(auto-instrumentation-agent): added comment to test app * feat(auto-instrumentation-agent): small refactor * feat(auto-instrumentation-agent): updated log messages * feat(auto-instrumentation-agent): added missing aws detectors * feat(auto-instrumentation-agent): updated tests * feat(auto-instrumentation-agent): updated getResourceDetectorsFromEnv() * feat(auto-instrumentation-agent): revert unnecessary changes * feat(auto-instrumentation-agent): added reference to supported instrumentations * feat(auto-instrumentation-agent): added reference to env var spec * feat(auto-instrumentation-agent): added reference node documentation * feat(auto-instrumentation-agent): added note for unsupported config * feat(auto-instrumentation-agent): added note to the debug section * feat(auto-instrumentation-agent): moved opentelemetry/api to regular dependency * feat(auto-instrumentation-agent): fixed lint issue * feat(auto-instrumentation-agent): re-added peer dep * feat(auto-instrumentation-agent): re-added api dev dep * feat(auto-instrumentation-agent): fixed lint issue * feat(auto-instrumentation-agent): fixed lint issue * feat(auto-instrumentation-agent): updated README.md * feat(auto-instrumentation-agent): added exporters reference in README.md * feat(auto-instrumentation-agent): updated debug notes * feat(auto-instrumentation-agent): updated installation section to include the api dependency * feat(auto-instrumentation-agent): reordered aws resource detectors * feat(auto-instrumentation-agent): removed process.exit(0) * feat(auto-instrumentation-agent): reordered aws resource detectors * feat(auto-instrumentation-agent): replaced type any with actual types * feat(auto-instrumentation-agent): updated utils test * feat(auto-instrumentation-agent): updated register test * feat(auto-instrumentation-agent): updated README.md * feat(auto-instrumentation-agent): updated shutdown logs * feat(auto-instrumentation-agent): fixed sinon issue --- .../auto-instrumentations-node/README.md | 87 ++++++++++++++++++- .../auto-instrumentations-node/package.json | 16 +++- .../src/register.ts | 48 ++++++++++ .../auto-instrumentations-node/src/utils.ts | 74 ++++++++++++++++ .../test/register.test.ts | 44 ++++++++++ .../test/test-app/app.js | 29 +++++++ .../test/utils.test.ts | 50 +++++++++++ 7 files changed, 343 insertions(+), 5 deletions(-) create mode 100644 metapackages/auto-instrumentations-node/src/register.ts create mode 100644 metapackages/auto-instrumentations-node/test/register.test.ts create mode 100644 metapackages/auto-instrumentations-node/test/test-app/app.js diff --git a/metapackages/auto-instrumentations-node/README.md b/metapackages/auto-instrumentations-node/README.md index 2b6f88769..0795f15b7 100644 --- a/metapackages/auto-instrumentations-node/README.md +++ b/metapackages/auto-instrumentations-node/README.md @@ -3,17 +3,97 @@ [![NPM Published Version][npm-img]][npm-url] [![Apache License][license-image]][license-url] -This module provides a simple way to initialize multiple Node instrumentations. +## About + +This module provides a way to auto instrument any Node application to capture telemetry from a number of popular libraries and frameworks. +You can export the telemetry data in a variety of formats. Exporters, samplers, and more can be configured via [environment variables][env-var-url]. +The net result is the ability to gather telemetry data from a Node application without any code changes. + +This module also provides a simple way to manually initialize multiple Node instrumentations for use with the OpenTelemetry SDK. Compatible with OpenTelemetry JS API and SDK `1.0+`. ## Installation ```bash +npm install --save @opentelemetry/api npm install --save @opentelemetry/auto-instrumentations-node ``` -## Usage +## Usage: Auto Instrumentation + +This module includes auto instrumentation for all supported instrumentations and [all available data exporters][exporter-url]. +It provides a completely automatic, out-of-the-box experience. +Please see the [Supported Instrumentations](#supported-instrumentations) section for more information. + +Enable auto instrumentation by requiring this module using the [--require flag][require-url]: + +```shell +node --require '@opentelemetry/auto-instrumentations-node/register' app.js +``` + +If your Node application is encapsulated in a complex run script, you can also set it via an environment variable before running Node. + +```shell +env NODE_OPTIONS="--require @opentelemetry/auto-instrumentations-node/register" +``` + +The module is highly configurable using environment variables. +Many aspects of the auto instrumentation's behavior can be configured for your needs, such as resource detectors, exporter choice, exporter configuration, trace context propagation headers, and much more. +Instrumentation configuration is not yet supported through environment variables. Users that require instrumentation configuration must initialize OpenTelemetry programmatically. + +```shell +export OTEL_TRACES_EXPORTER="otlp" +export OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf" +export OTEL_EXPORTER_OTLP_COMPRESSION="gzip" +export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="https://your-endpoint" +export OTEL_EXPORTER_OTLP_HEADERS="x-api-key=your-api-key" +export OTEL_EXPORTER_OTLP_TRACES_HEADERS="x-api-key=your-api-key" +export OTEL_RESOURCE_ATTRIBUTES="service.namespace=my-namespace" +export OTEL_NODE_RESOURCE_DETECTORS="env,host,os" +export OTEL_SERVICE_NAME="client" +export NODE_OPTIONS="--require @opentelemetry/auto-instrumentations-node/register" +node app.js +``` + +By default, all SDK resource detectors are used, but you can use the environment variable OTEL_NODE_RESOURCE_DETECTORS to enable only certain detectors, or completely disable them: + +- `env` +- `host` +- `os` +- `process` +- `container` +- `alibaba` +- `aws` +- `gcp` +- `all` - enable all resource detectors +- `none` - disable resource detection + +For example, to enable only the `env`, `host` detectors: + +```shell +export OTEL_NODE_RESOURCE_DETECTORS="env,host" +``` + +To enable logging for troubleshooting, set the log level by setting the `OTEL_LOG_LEVEL` environment variable to one of the following: + +- `none` +- `error` +- `warn` +- `info` +- `debug` +- `verbose` +- `all` + +The default level is `info`. + +Notes: + +- In a production environment, it is recommended to set `OTEL_LOG_LEVEL`to `info`. +- Logs are always sent to console, no matter the environment, or debug level. +- Debug logs are extremely verbose. Enable debug logging only when needed. Debug logging negatively impacts the performance of your application. + +## Usage: Instrumentation Initialization OpenTelemetry Meta Packages for Node automatically loads instrumentations for Node builtin modules and common packages. @@ -100,3 +180,6 @@ APACHE 2.0 - See [LICENSE][license-url] for more information. [license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat [npm-url]: https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node [npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fauto-instrumentations-node.svg +[env-var-url]: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration +[exporter-url]: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#otlp-exporter +[require-url]: https://nodejs.org/api/cli.html#-r---require-module diff --git a/metapackages/auto-instrumentations-node/package.json b/metapackages/auto-instrumentations-node/package.json index 48f319f5f..e7c1b029f 100644 --- a/metapackages/auto-instrumentations-node/package.json +++ b/metapackages/auto-instrumentations-node/package.json @@ -13,6 +13,10 @@ }, "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-contrib", "scripts": { "clean": "rimraf build/*", @@ -30,10 +34,10 @@ "url": "https://github.com/open-telemetry/opentelemetry-js-contrib/issues" }, "peerDependencies": { - "@opentelemetry/api": "^1.3.0" + "@opentelemetry/api": "^1.4.1" }, "devDependencies": { - "@opentelemetry/api": "^1.3.0", + "@opentelemetry/api": "^1.4.1", "@types/mocha": "7.0.2", "@types/node": "18.11.7", "@types/sinon": "10.0.2", @@ -82,6 +86,12 @@ "@opentelemetry/instrumentation-router": "^0.32.2", "@opentelemetry/instrumentation-socket.io": "^0.33.2", "@opentelemetry/instrumentation-tedious": "^0.5.2", - "@opentelemetry/instrumentation-winston": "^0.31.2" + "@opentelemetry/instrumentation-winston": "^0.31.2", + "@opentelemetry/resource-detector-alibaba-cloud": "^0.27.4", + "@opentelemetry/resource-detector-aws": "^1.2.2", + "@opentelemetry/resource-detector-container": "^0.2.2", + "@opentelemetry/resource-detector-gcp": "^0.28.0", + "@opentelemetry/resources": "^1.12.0", + "@opentelemetry/sdk-node": "^0.38.0" } } diff --git a/metapackages/auto-instrumentations-node/src/register.ts b/metapackages/auto-instrumentations-node/src/register.ts new file mode 100644 index 000000000..a14538da6 --- /dev/null +++ b/metapackages/auto-instrumentations-node/src/register.ts @@ -0,0 +1,48 @@ +/* + * 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 opentelemetry from '@opentelemetry/sdk-node'; +import { diag, DiagConsoleLogger } from '@opentelemetry/api'; +import { + getNodeAutoInstrumentations, + getResourceDetectorsFromEnv, +} from './utils'; + +diag.setLogger( + new DiagConsoleLogger(), + opentelemetry.core.getEnv().OTEL_LOG_LEVEL +); + +const sdk = new opentelemetry.NodeSDK({ + instrumentations: getNodeAutoInstrumentations(), + resourceDetectors: getResourceDetectorsFromEnv(), +}); + +try { + sdk.start(); + diag.info('OpenTelemetry automatic instrumentation started successfully'); +} catch (error) { + diag.error( + 'Error initializing OpenTelemetry SDK. Your application is not instrumented and will not produce telemetry', + error + ); +} + +process.on('SIGTERM', () => { + sdk + .shutdown() + .then(() => diag.debug('OpenTelemetry SDK terminated')) + .catch(error => diag.error('Error terminating OpenTelemetry SDK', error)); +}); diff --git a/metapackages/auto-instrumentations-node/src/utils.ts b/metapackages/auto-instrumentations-node/src/utils.ts index d03834fed..0c194f7a3 100644 --- a/metapackages/auto-instrumentations-node/src/utils.ts +++ b/metapackages/auto-instrumentations-node/src/utils.ts @@ -54,6 +54,34 @@ import { SocketIoInstrumentation } from '@opentelemetry/instrumentation-socket.i import { TediousInstrumentation } from '@opentelemetry/instrumentation-tedious'; import { WinstonInstrumentation } from '@opentelemetry/instrumentation-winston'; +import { alibabaCloudEcsDetector } from '@opentelemetry/resource-detector-alibaba-cloud'; +import { + awsBeanstalkDetector, + awsEc2Detector, + awsEcsDetector, + awsEksDetector, + awsLambdaDetector, +} from '@opentelemetry/resource-detector-aws'; +import { containerDetector } from '@opentelemetry/resource-detector-container'; +import { gcpDetector } from '@opentelemetry/resource-detector-gcp'; +import { + Detector, + DetectorSync, + envDetectorSync, + hostDetectorSync, + osDetectorSync, + processDetectorSync, +} from '@opentelemetry/resources'; + +const RESOURCE_DETECTOR_CONTAINER = 'container'; +const RESOURCE_DETECTOR_ENVIRONMENT = 'env'; +const RESOURCE_DETECTOR_HOST = 'host'; +const RESOURCE_DETECTOR_OS = 'os'; +const RESOURCE_DETECTOR_PROCESS = 'process'; +const RESOURCE_DETECTOR_ALIBABA = 'alibaba'; +const RESOURCE_DETECTOR_AWS = 'aws'; +const RESOURCE_DETECTOR_GCP = 'gcp'; + const InstrumentationMap = { '@opentelemetry/instrumentation-amqplib': AmqplibInstrumentation, '@opentelemetry/instrumentation-aws-lambda': AwsLambdaInstrumentation, @@ -136,3 +164,49 @@ export function getNodeAutoInstrumentations( return instrumentations; } + +export function getResourceDetectorsFromEnv(): Array { + const resourceDetectors = new Map< + string, + Detector | DetectorSync | Detector[] + >([ + [RESOURCE_DETECTOR_CONTAINER, containerDetector], + [RESOURCE_DETECTOR_ENVIRONMENT, envDetectorSync], + [RESOURCE_DETECTOR_HOST, hostDetectorSync], + [RESOURCE_DETECTOR_OS, osDetectorSync], + [RESOURCE_DETECTOR_PROCESS, processDetectorSync], + [RESOURCE_DETECTOR_ALIBABA, alibabaCloudEcsDetector], + [RESOURCE_DETECTOR_GCP, gcpDetector], + [ + RESOURCE_DETECTOR_AWS, + [ + awsEc2Detector, + awsEcsDetector, + awsEksDetector, + awsBeanstalkDetector, + awsLambdaDetector, + ], + ], + ]); + + const resourceDetectorsFromEnv = + process.env.OTEL_NODE_RESOURCE_DETECTORS?.split(',') ?? ['all']; + + if (resourceDetectorsFromEnv.includes('all')) { + return [...resourceDetectors.values()].flat(); + } + + if (resourceDetectorsFromEnv.includes('none')) { + return []; + } + + return resourceDetectorsFromEnv.flatMap(detector => { + const resourceDetector = resourceDetectors.get(detector); + if (!resourceDetector) { + diag.error( + `Invalid resource detector "${detector}" specified in the environment variable OTEL_NODE_RESOURCE_DETECTORS` + ); + } + return resourceDetector || []; + }); +} diff --git a/metapackages/auto-instrumentations-node/test/register.test.ts b/metapackages/auto-instrumentations-node/test/register.test.ts new file mode 100644 index 000000000..b3c038127 --- /dev/null +++ b/metapackages/auto-instrumentations-node/test/register.test.ts @@ -0,0 +1,44 @@ +/* + * 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 { promisify } from 'util'; +import * as childProcess from 'child_process'; +import * as assert from 'assert'; + +const exec = promisify(childProcess.exec); + +describe('Register', function () { + this.timeout(5000); + it('can load auto instrumentation from command line', async () => { + process.env.OTEL_NODE_RESOURCE_DETECTORS = 'none'; + process.env.OTEL_TRACES_EXPORTER = 'console'; + + const { stdout } = await exec( + 'node --require ./build/src/register.js ./test/test-app/app.js' + ); + + assert.ok( + stdout.includes( + 'OpenTelemetry automatic instrumentation started successfully' + ) + ); + + //Check a span has been generated for the GET request done in app.js + assert.ok(stdout.includes("name: 'GET'")); + + delete process.env.OTEL_NODE_RESOURCE_DETECTORS; + delete process.env.OTEL_TRACES_EXPORTER; + }); +}); diff --git a/metapackages/auto-instrumentations-node/test/test-app/app.js b/metapackages/auto-instrumentations-node/test/test-app/app.js new file mode 100644 index 000000000..1057acbce --- /dev/null +++ b/metapackages/auto-instrumentations-node/test/test-app/app.js @@ -0,0 +1,29 @@ +/* + * 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. + */ + +//Used in register.test.ts to mimic a JS app. +const http = require('http'); + +const options = { + hostname: 'example.com', + port: 80, + path: '/', + method: 'GET' +}; + +const req = http.request(options); + +req.end(); diff --git a/metapackages/auto-instrumentations-node/test/utils.test.ts b/metapackages/auto-instrumentations-node/test/utils.test.ts index 5707eed8f..f295668d4 100644 --- a/metapackages/auto-instrumentations-node/test/utils.test.ts +++ b/metapackages/auto-instrumentations-node/test/utils.test.ts @@ -19,6 +19,7 @@ import { HttpInstrumentationConfig } from '@opentelemetry/instrumentation-http'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { getNodeAutoInstrumentations } from '../src'; +import { getResourceDetectorsFromEnv } from '../src/utils'; describe('utils', () => { describe('getNodeAutoInstrumentations', () => { @@ -87,6 +88,55 @@ describe('utils', () => { spy.args[0][0], `Provided instrumentation name "${name}" not found` ); + + spy.restore(); + }); + }); + + describe('getResourceDetectorsFromEnv', () => { + it('should return all resource detectors by default', () => { + assert.equal(getResourceDetectorsFromEnv().length, 12); + }); + + it('should return all resource detectors when OTEL_NODE_RESOURCE_DETECTORS contains "all"', () => { + process.env.OTEL_NODE_RESOURCE_DETECTORS = 'all'; + + assert.equal(getResourceDetectorsFromEnv().length, 12); + + delete process.env.OTEL_NODE_RESOURCE_DETECTORS; + }); + + it('should return specific resource detectors depending on OTEL_NODE_RESOURCE_DETECTORS', () => { + process.env.OTEL_NODE_RESOURCE_DETECTORS = 'env,host'; + + const resourceDetectors = getResourceDetectorsFromEnv(); + + assert.equal(resourceDetectors.length, 2); + assert.equal(resourceDetectors[0].constructor.name, 'EnvDetectorSync'); + assert.equal(resourceDetectors[1].constructor.name, 'HostDetectorSync'); + + delete process.env.OTEL_NODE_RESOURCE_DETECTORS; + }); + + it('should return no resource detectors when OTEL_NODE_RESOURCE_DETECTORS contains "none" or a typo', () => { + const spy = sinon.stub(diag, 'error'); + process.env.OTEL_NODE_RESOURCE_DETECTORS = 'none'; + + assert.equal(getResourceDetectorsFromEnv().length, 0); + + assert.strictEqual(spy.callCount, 0); + + process.env.OTEL_NODE_RESOURCE_DETECTORS = 'test'; + + assert.equal(getResourceDetectorsFromEnv().length, 0); + + assert.strictEqual( + spy.args[0][0], + 'Invalid resource detector "test" specified in the environment variable OTEL_NODE_RESOURCE_DETECTORS' + ); + + spy.restore(); + delete process.env.OTEL_NODE_RESOURCE_DETECTORS; }); }); }); From 2571c371be1b5738442200cab2415b6a04c32aab Mon Sep 17 00:00:00 2001 From: Sami Musallam Date: Mon, 1 May 2023 20:47:56 +0300 Subject: [PATCH 15/72] fix(eslint-config): replace gts with prettier and eslint (#1439) * fix(eslint-config): replace gts with prettier and eslint recommended config * fix(eslint-config): using the core repo's configuration --------- Co-authored-by: Haddas Bronfman <85441461+haddasbronfman@users.noreply.github.com> --- .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 2 +- .../package.json | 1 - .../package.json | 1 - eslint.config.js | 68 +++++++++++-------- .../auto-instrumentations-node/package.json | 1 - .../auto-instrumentations-web/package.json | 1 - package.json | 7 +- .../opentelemetry-host-metrics/package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../opentelemetry-redis-common/package.json | 1 - .../opentelemetry-test-utils/package.json | 1 - .../node/instrumentation-amqplib/package.json | 1 - .../instrumentation-dataloader/package.json | 1 - plugins/node/instrumentation-fs/package.json | 1 - .../instrumentation-lru-memoizer/package.json | 1 - .../instrumentation-mongoose/package.json | 1 - .../instrumentation-socket.io/package.json | 1 - .../node/instrumentation-tedious/package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - prettier.config.js | 8 +++ .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - .../package.json | 1 - 59 files changed, 55 insertions(+), 85 deletions(-) create mode 100644 prettier.config.js diff --git a/archive/opentelemetry-browser-extension-autoinjection/package.json b/archive/opentelemetry-browser-extension-autoinjection/package.json index c49aeead8..1efd629ff 100644 --- a/archive/opentelemetry-browser-extension-autoinjection/package.json +++ b/archive/opentelemetry-browser-extension-autoinjection/package.json @@ -44,7 +44,6 @@ "eslint-plugin-header": "3.1.1", "eslint-plugin-import": "2.25.4", "eslint-plugin-json5": "0.1.4", - "gts": "3.1.0", "html-webpack-plugin": "5.3.2", "jimp": "0.16.1", "jsdom": "15.2.1", diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json index 7a243bc17..960f3c28a 100644 --- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json +++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json @@ -47,7 +47,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/sinon": "10.0.2", - "gts": "3.1.0", "mocha": "7.2.0", "nock": "12.0.3", "nyc": "15.1.0", diff --git a/detectors/node/opentelemetry-resource-detector-aws/package.json b/detectors/node/opentelemetry-resource-detector-aws/package.json index 0393ceb1a..f99a6d42c 100644 --- a/detectors/node/opentelemetry-resource-detector-aws/package.json +++ b/detectors/node/opentelemetry-resource-detector-aws/package.json @@ -46,7 +46,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/sinon": "10.0.2", - "gts": "3.1.0", "mocha": "7.2.0", "nock": "12.0.3", "nyc": "15.1.0", diff --git a/detectors/node/opentelemetry-resource-detector-container/package.json b/detectors/node/opentelemetry-resource-detector-container/package.json index b9acd5092..c64a07b82 100644 --- a/detectors/node/opentelemetry-resource-detector-container/package.json +++ b/detectors/node/opentelemetry-resource-detector-container/package.json @@ -41,7 +41,6 @@ "@types/node": "^18.0.0", "@types/sinon": "10.0.2", "eslint-plugin-header": "^3.1.1", - "gts": "^3.1.0", "mocha": "7.2.0", "nock": "12.0.3", "nyc": "15.1.0", diff --git a/detectors/node/opentelemetry-resource-detector-gcp/package.json b/detectors/node/opentelemetry-resource-detector-gcp/package.json index 6e50947b5..fc7c6460a 100644 --- a/detectors/node/opentelemetry-resource-detector-gcp/package.json +++ b/detectors/node/opentelemetry-resource-detector-gcp/package.json @@ -45,7 +45,7 @@ "@opentelemetry/contrib-test-utils": "^0.33.2", "@types/mocha": "8.2.3", "@types/node": "18.11.7", - "gts": "3.1.0", + "@types/semver": "7.3.8", "mocha": "7.2.0", "nock": "12.0.3", "nyc": "15.1.0", diff --git a/detectors/node/opentelemetry-resource-detector-github/package.json b/detectors/node/opentelemetry-resource-detector-github/package.json index e1fcb5555..68516384f 100644 --- a/detectors/node/opentelemetry-resource-detector-github/package.json +++ b/detectors/node/opentelemetry-resource-detector-github/package.json @@ -49,7 +49,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/sinon": "10.0.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/detectors/node/opentelemetry-resource-detector-instana/package.json b/detectors/node/opentelemetry-resource-detector-instana/package.json index b182d98ef..f9275e448 100644 --- a/detectors/node/opentelemetry-resource-detector-instana/package.json +++ b/detectors/node/opentelemetry-resource-detector-instana/package.json @@ -47,7 +47,6 @@ "@types/semver": "7.3.8", "mocha": "7.2.0", "nock": "12.0.3", - "gts": "3.1.0", "nyc": "15.1.0", "rimraf": "4.2.0", "ts-mocha": "10.0.0", diff --git a/eslint.config.js b/eslint.config.js index 1b57d26fd..2ebc6dc36 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -2,50 +2,64 @@ module.exports = { plugins: [ "@typescript-eslint", "header", - "import" - ], - extends: [ - "./node_modules/gts", + "node", + "prettier" ], + extends: ["eslint:recommended", "plugin:@typescript-eslint/recommended", "plugin:prettier/recommended"], parser: "@typescript-eslint/parser", parserOptions: { - "project": "./tsconfig.json" + "project": "./tsconfig.json" }, rules: { - "quotes": [2, "single", { "avoidEscape": true }], - "@typescript-eslint/no-this-alias": "off", + "quotes": ["error", "single", { "avoidEscape": true }], "eqeqeq": "off", "prefer-rest-params": "off", - "@typescript-eslint/naming-convention": [ - "error", - { - "selector": "memberLike", - "modifiers": ["private", "protected"], - "format": ["camelCase"], - "leadingUnderscore": "require" - } - ], - "@typescript-eslint/no-inferrable-types": ["error", { ignoreProperties: true }], - "arrow-parens": ["error", "as-needed"], - "prettier/prettier": ["error", { "singleQuote": true, "arrowParens": "avoid" }], + "no-shadow": "off", "node/no-deprecated-api": ["warn"], - "header/header": [2, "block", [{ - pattern: / \* Copyright The OpenTelemetry Authors[\r\n]+ \*[\r\n]+ \* Licensed under the Apache License, Version 2\.0 \(the \"License\"\);[\r\n]+ \* you may not use this file except in compliance with the License\.[\r\n]+ \* You may obtain a copy of the License at[\r\n]+ \*[\r\n]+ \* https:\/\/www\.apache\.org\/licenses\/LICENSE-2\.0[\r\n]+ \*[\r\n]+ \* Unless required by applicable law or agreed to in writing, software[\r\n]+ \* distributed under the License is distributed on an \"AS IS\" BASIS,[\r\n]+ \* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied\.[\r\n]+ \* See the License for the specific language governing permissions and[\r\n]+ \* limitations under the License\./gm, - template: + "header/header": ["error", "block", [{ + pattern: / \* Copyright The OpenTelemetry Authors[\r\n]+ \*[\r\n]+ \* Licensed under the Apache License, Version 2\.0 \(the \"License\"\);[\r\n]+ \* you may not use this file except in compliance with the License\.[\r\n]+ \* You may obtain a copy of the License at[\r\n]+ \*[\r\n]+ \* https:\/\/www\.apache\.org\/licenses\/LICENSE-2\.0[\r\n]+ \*[\r\n]+ \* Unless required by applicable law or agreed to in writing, software[\r\n]+ \* distributed under the License is distributed on an \"AS IS\" BASIS,[\r\n]+ \* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied\.[\r\n]+ \* See the License for the specific language governing permissions and[\r\n]+ \* limitations under the License\./gm, + template: `\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the "License");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n ` - }]], - "import/no-extraneous-dependencies": ["error", { devDependencies: ["test/**/*.ts"] }], + }]] }, overrides: [ { - "files": ["test/**/*.ts"], - "rules": { + files: ['*.ts'], + rules: { + "@typescript-eslint/no-this-alias": "off", + "@typescript-eslint/naming-convention": [ + "error", + { + "selector": "memberLike", + "modifiers": ["private", "protected"], + "format": ["camelCase"], + "leadingUnderscore": "require" + } + ], + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/no-inferrable-types": ["error", { ignoreProperties: true }], + "@typescript-eslint/no-empty-function": ["off"], + "@typescript-eslint/ban-types": ["warn", { + "types": { + "Function": null, + } + }], + "@typescript-eslint/no-shadow": ["warn"], + } + }, + { + files: ["test/**/*.ts"], + rules: { "no-empty": "off", "@typescript-eslint/ban-ts-ignore": "off", "@typescript-eslint/no-empty-function": "off", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-unused-vars": "off", - "@typescript-eslint/no-var-requires": "off" + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/no-shadow": ["off"], + "@typescript-eslint/no-floating-promises": ["off"], + "@typescript-eslint/no-non-null-assertion": ["off"], + "@typescript-eslint/explicit-module-boundary-types": ["off"] } } ] diff --git a/metapackages/auto-instrumentations-node/package.json b/metapackages/auto-instrumentations-node/package.json index e7c1b029f..49a91d769 100644 --- a/metapackages/auto-instrumentations-node/package.json +++ b/metapackages/auto-instrumentations-node/package.json @@ -41,7 +41,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "@types/sinon": "10.0.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/metapackages/auto-instrumentations-web/package.json b/metapackages/auto-instrumentations-web/package.json index 4ae082ad0..a8fddc239 100644 --- a/metapackages/auto-instrumentations-web/package.json +++ b/metapackages/auto-instrumentations-web/package.json @@ -40,7 +40,6 @@ "@types/sinon": "10.0.2", "@types/webpack-env": "1.16.2", "babel-loader": "8.2.2", - "gts": "3.1.0", "@jsdevtools/coverage-istanbul-loader": "3.0.5", "karma": "6.3.16", "karma-chrome-launcher": "^3.1.1", diff --git a/package.json b/package.json index 0ea273374..24049e1ff 100644 --- a/package.json +++ b/package.json @@ -50,12 +50,15 @@ "@typescript-eslint/parser": "5.8.1", "eslint": "8.7.0", "eslint-config-airbnb-base": "15.0.0", + "eslint-config-prettier": "8.8.0", "eslint-plugin-header": "3.1.1", - "eslint-plugin-import": "2.25.4", - "gts": "3.1.0", + "eslint-plugin-import": "2.27.5", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", "husky": "7.0.4", "lerna": "5.5.2", "lerna-changelog": "2.2.0", + "prettier": "2.8.7", "typescript": "4.4.4" }, "changelog": { diff --git a/packages/opentelemetry-host-metrics/package.json b/packages/opentelemetry-host-metrics/package.json index aec11b2ef..2a5fd25c0 100644 --- a/packages/opentelemetry-host-metrics/package.json +++ b/packages/opentelemetry-host-metrics/package.json @@ -50,7 +50,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/sinon": "10.0.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/packages/opentelemetry-id-generator-aws-xray/package.json b/packages/opentelemetry-id-generator-aws-xray/package.json index cd5aaff8c..2248ea572 100644 --- a/packages/opentelemetry-id-generator-aws-xray/package.json +++ b/packages/opentelemetry-id-generator-aws-xray/package.json @@ -59,7 +59,6 @@ "@types/node": "18.11.7", "@types/sinon": "10.0.2", "@types/webpack-env": "1.16.2", - "gts": "3.1.0", "@jsdevtools/coverage-istanbul-loader": "3.0.5", "karma": "6.3.16", "karma-chrome-launcher": "^3.1.1", diff --git a/packages/opentelemetry-propagation-utils/package.json b/packages/opentelemetry-propagation-utils/package.json index 0d3dcd42f..013c3123a 100644 --- a/packages/opentelemetry-propagation-utils/package.json +++ b/packages/opentelemetry-propagation-utils/package.json @@ -50,7 +50,6 @@ "@types/node": "18.11.7", "@types/sinon": "^10.0.11", "expect": "29.2.0", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "sinon": "15.0.1", diff --git a/packages/opentelemetry-redis-common/package.json b/packages/opentelemetry-redis-common/package.json index 1f07da01e..e8622926c 100644 --- a/packages/opentelemetry-redis-common/package.json +++ b/packages/opentelemetry-redis-common/package.json @@ -41,7 +41,6 @@ "devDependencies": { "@types/mocha": "^9.1.1", "@types/node": "18.11.7", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "ts-mocha": "10.0.0", diff --git a/packages/opentelemetry-test-utils/package.json b/packages/opentelemetry-test-utils/package.json index a257ecaf8..c88aa12ee 100644 --- a/packages/opentelemetry-test-utils/package.json +++ b/packages/opentelemetry-test-utils/package.json @@ -43,7 +43,6 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@types/node": "18.11.7", - "gts": "3.1.0", "typescript": "4.4.4" }, "dependencies": { diff --git a/plugins/node/instrumentation-amqplib/package.json b/plugins/node/instrumentation-amqplib/package.json index 9f10bf487..5c085d9bc 100644 --- a/plugins/node/instrumentation-amqplib/package.json +++ b/plugins/node/instrumentation-amqplib/package.json @@ -64,7 +64,6 @@ "mocha": "7.2.0", "ts-mocha": "10.0.0", "nyc": "15.1.0", - "gts": "3.1.0", "sinon": "15.0.1", "test-all-versions": "5.0.1", "typescript": "4.4.4" diff --git a/plugins/node/instrumentation-dataloader/package.json b/plugins/node/instrumentation-dataloader/package.json index 24bff9f2a..06ced203a 100644 --- a/plugins/node/instrumentation-dataloader/package.json +++ b/plugins/node/instrumentation-dataloader/package.json @@ -53,7 +53,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "dataloader": "2.2.1", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/instrumentation-fs/package.json b/plugins/node/instrumentation-fs/package.json index bc39c7523..c40cd51e8 100644 --- a/plugins/node/instrumentation-fs/package.json +++ b/plugins/node/instrumentation-fs/package.json @@ -50,7 +50,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "@types/sinon": "^10.0.11", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/instrumentation-lru-memoizer/package.json b/plugins/node/instrumentation-lru-memoizer/package.json index adde399c8..ff2a39aef 100644 --- a/plugins/node/instrumentation-lru-memoizer/package.json +++ b/plugins/node/instrumentation-lru-memoizer/package.json @@ -48,7 +48,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "expect": "29.2.0", - "gts": "3.1.0", "lru-memoizer": "2.1.4", "mocha": "7.2.0", "nyc": "15.1.0", diff --git a/plugins/node/instrumentation-mongoose/package.json b/plugins/node/instrumentation-mongoose/package.json index d2494485a..33358620a 100644 --- a/plugins/node/instrumentation-mongoose/package.json +++ b/plugins/node/instrumentation-mongoose/package.json @@ -51,7 +51,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "expect": "29.2.0", - "gts": "3.1.0", "mocha": "7.2.0", "mongoose": "6.5.2", "nyc": "15.1.0", diff --git a/plugins/node/instrumentation-socket.io/package.json b/plugins/node/instrumentation-socket.io/package.json index fdcea5b0e..513504f4a 100644 --- a/plugins/node/instrumentation-socket.io/package.json +++ b/plugins/node/instrumentation-socket.io/package.json @@ -48,7 +48,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "expect": "27.4.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/instrumentation-tedious/package.json b/plugins/node/instrumentation-tedious/package.json index d44336e19..5468815ee 100644 --- a/plugins/node/instrumentation-tedious/package.json +++ b/plugins/node/instrumentation-tedious/package.json @@ -53,7 +53,6 @@ "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json index 8bca56cb2..d1959d99a 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json @@ -52,7 +52,6 @@ "@opentelemetry/sdk-metrics": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json index 71ca2b86f..d1714eebf 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json @@ -67,7 +67,6 @@ "aws-sdk": "2.1008.0", "eslint": "8.7.0", "expect": "29.2.0", - "gts": "3.1.0", "mocha": "7.2.0", "nock": "13.2.1", "nyc": "15.1.0", diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/package.json b/plugins/node/opentelemetry-instrumentation-bunyan/package.json index 9531a59c2..6c3c66c7f 100644 --- a/plugins/node/opentelemetry-instrumentation-bunyan/package.json +++ b/plugins/node/opentelemetry-instrumentation-bunyan/package.json @@ -55,7 +55,6 @@ "@types/node": "18.11.7", "@types/sinon": "10.0.2", "bunyan": "1.8.15", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/package.json b/plugins/node/opentelemetry-instrumentation-cassandra/package.json index 238ef6c10..20eedc419 100644 --- a/plugins/node/opentelemetry-instrumentation-cassandra/package.json +++ b/plugins/node/opentelemetry-instrumentation-cassandra/package.json @@ -56,7 +56,6 @@ "@types/semver": "7.3.8", "@types/sinon": "10.0.2", "cassandra-driver": "4.6.3", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-connect/package.json b/plugins/node/opentelemetry-instrumentation-connect/package.json index 4973de904..ebd9f11bc 100644 --- a/plugins/node/opentelemetry-instrumentation-connect/package.json +++ b/plugins/node/opentelemetry-instrumentation-connect/package.json @@ -51,7 +51,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "connect": "3.7.0", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-dns/package.json b/plugins/node/opentelemetry-instrumentation-dns/package.json index 2bbb89143..7b5f5d7ff 100644 --- a/plugins/node/opentelemetry-instrumentation-dns/package.json +++ b/plugins/node/opentelemetry-instrumentation-dns/package.json @@ -54,7 +54,6 @@ "@types/semver": "7.3.8", "@types/shimmer": "1.0.2", "@types/sinon": "10.0.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-express/package.json b/plugins/node/opentelemetry-instrumentation-express/package.json index d53ef3661..1db32213b 100644 --- a/plugins/node/opentelemetry-instrumentation-express/package.json +++ b/plugins/node/opentelemetry-instrumentation-express/package.json @@ -56,7 +56,6 @@ "@types/node": "18.11.7", "@types/sinon": "10.0.9", "express": "4.17.3", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-fastify/package.json b/plugins/node/opentelemetry-instrumentation-fastify/package.json index 0842b9172..cfde7f78e 100644 --- a/plugins/node/opentelemetry-instrumentation-fastify/package.json +++ b/plugins/node/opentelemetry-instrumentation-fastify/package.json @@ -55,7 +55,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "fastify": "^4.5.3", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json index be90ab09c..33eef11c7 100644 --- a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json +++ b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json @@ -53,7 +53,6 @@ "@types/node": "18.11.7", "@types/semver": "7.3.8", "generic-pool": "3.8.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-graphql/package.json b/plugins/node/opentelemetry-instrumentation-graphql/package.json index 6b94543fa..0d3619a1a 100644 --- a/plugins/node/opentelemetry-instrumentation-graphql/package.json +++ b/plugins/node/opentelemetry-instrumentation-graphql/package.json @@ -53,7 +53,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "graphql": "^16.5.0", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-hapi/package.json b/plugins/node/opentelemetry-instrumentation-hapi/package.json index 335a51dce..532833bfd 100644 --- a/plugins/node/opentelemetry-instrumentation-hapi/package.json +++ b/plugins/node/opentelemetry-instrumentation-hapi/package.json @@ -52,7 +52,6 @@ "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/package.json b/plugins/node/opentelemetry-instrumentation-ioredis/package.json index b4be845d7..70eb4acfb 100644 --- a/plugins/node/opentelemetry-instrumentation-ioredis/package.json +++ b/plugins/node/opentelemetry-instrumentation-ioredis/package.json @@ -60,7 +60,6 @@ "@types/node": "18.11.7", "cross-env": "7.0.3", "ioredis": "5.2.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-knex/package.json b/plugins/node/opentelemetry-instrumentation-knex/package.json index 34a8fc511..911ea3c18 100644 --- a/plugins/node/opentelemetry-instrumentation-knex/package.json +++ b/plugins/node/opentelemetry-instrumentation-knex/package.json @@ -51,7 +51,6 @@ "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", - "gts": "3.1.0", "knex": "0.95.9", "mocha": "7.2.0", "nyc": "15.1.0", diff --git a/plugins/node/opentelemetry-instrumentation-koa/package.json b/plugins/node/opentelemetry-instrumentation-koa/package.json index d4f5b70cf..504b0781a 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/package.json +++ b/plugins/node/opentelemetry-instrumentation-koa/package.json @@ -57,7 +57,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "@types/sinon": "10.0.9", - "gts": "3.1.0", "koa": "2.13.1", "mocha": "7.2.0", "nyc": "15.1.0", diff --git a/plugins/node/opentelemetry-instrumentation-memcached/package.json b/plugins/node/opentelemetry-instrumentation-memcached/package.json index 1be04bd5f..5ed4ce9f7 100644 --- a/plugins/node/opentelemetry-instrumentation-memcached/package.json +++ b/plugins/node/opentelemetry-instrumentation-memcached/package.json @@ -55,7 +55,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "cross-env": "7.0.3", - "gts": "3.1.0", "memcached": "2.2.2", "mocha": "7.2.0", "nyc": "15.1.0", diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/package.json b/plugins/node/opentelemetry-instrumentation-mongodb/package.json index 86ce21540..fc1526c84 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/package.json +++ b/plugins/node/opentelemetry-instrumentation-mongodb/package.json @@ -57,7 +57,6 @@ "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", - "gts": "3.1.0", "mocha": "7.2.0", "mongodb": "3.6.11", "@types/mongodb": "3.6.20", diff --git a/plugins/node/opentelemetry-instrumentation-mysql/package.json b/plugins/node/opentelemetry-instrumentation-mysql/package.json index f7b8f3b51..8bf39d0c1 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql/package.json @@ -54,7 +54,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "@types/sinon": "10.0.13", - "gts": "3.1.0", "mocha": "7.2.0", "mysql": "2.18.1", "nyc": "15.1.0", diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/package.json b/plugins/node/opentelemetry-instrumentation-mysql2/package.json index 69dc09b7c..1ffddf6d7 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql2/package.json @@ -55,7 +55,6 @@ "@types/mysql2": "github:types/mysql2", "@types/node": "18.11.7", "@types/semver": "7.3.8", - "gts": "3.1.0", "mocha": "7.2.0", "mysql2": "2.3.0", "nyc": "15.1.0", diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json index 4433510f6..ec9eb1333 100644 --- a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json +++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json @@ -61,7 +61,6 @@ "@types/node": "18.11.7", "@types/semver": "7.3.8", "cross-env": "7.0.3", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "reflect-metadata": "0.1.13", diff --git a/plugins/node/opentelemetry-instrumentation-net/package.json b/plugins/node/opentelemetry-instrumentation-net/package.json index d3f17235d..a4501047f 100644 --- a/plugins/node/opentelemetry-instrumentation-net/package.json +++ b/plugins/node/opentelemetry-instrumentation-net/package.json @@ -53,7 +53,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "@types/sinon": "10.0.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-pg/package.json b/plugins/node/opentelemetry-instrumentation-pg/package.json index f6c74b4c6..73350e61b 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/package.json +++ b/plugins/node/opentelemetry-instrumentation-pg/package.json @@ -62,7 +62,6 @@ "@types/node": "18.11.7", "@types/sinon": "10.0.2", "cross-env": "7.0.3", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "pg": "8.7.1", diff --git a/plugins/node/opentelemetry-instrumentation-pino/package.json b/plugins/node/opentelemetry-instrumentation-pino/package.json index 64e1777a0..b70350fe2 100644 --- a/plugins/node/opentelemetry-instrumentation-pino/package.json +++ b/plugins/node/opentelemetry-instrumentation-pino/package.json @@ -55,7 +55,6 @@ "@types/node": "18.11.7", "@types/semver": "7.3.8", "@types/sinon": "10.0.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "pino": "8.3.1", diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/package.json b/plugins/node/opentelemetry-instrumentation-redis-4/package.json index 8bc2cb6ff..9dde1c586 100644 --- a/plugins/node/opentelemetry-instrumentation-redis-4/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis-4/package.json @@ -60,7 +60,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "cross-env": "7.0.3", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "redis": "4.1.0", diff --git a/plugins/node/opentelemetry-instrumentation-redis/package.json b/plugins/node/opentelemetry-instrumentation-redis/package.json index bf5d9e2c4..ba761a43c 100644 --- a/plugins/node/opentelemetry-instrumentation-redis/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis/package.json @@ -60,7 +60,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "cross-env": "7.0.3", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "redis": "3.1.2", diff --git a/plugins/node/opentelemetry-instrumentation-restify/package.json b/plugins/node/opentelemetry-instrumentation-restify/package.json index 1f948db6a..ea8c245ea 100644 --- a/plugins/node/opentelemetry-instrumentation-restify/package.json +++ b/plugins/node/opentelemetry-instrumentation-restify/package.json @@ -54,7 +54,6 @@ "@types/node": "18.11.7", "@types/restify": "4.3.8", "@types/semver": "^7.3.12", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "restify": "8.6.1", diff --git a/plugins/node/opentelemetry-instrumentation-router/package.json b/plugins/node/opentelemetry-instrumentation-router/package.json index 01b870137..a179f2f6f 100644 --- a/plugins/node/opentelemetry-instrumentation-router/package.json +++ b/plugins/node/opentelemetry-instrumentation-router/package.json @@ -51,7 +51,6 @@ "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/node/opentelemetry-instrumentation-winston/package.json b/plugins/node/opentelemetry-instrumentation-winston/package.json index ed702ebc3..a2c0c4e43 100644 --- a/plugins/node/opentelemetry-instrumentation-winston/package.json +++ b/plugins/node/opentelemetry-instrumentation-winston/package.json @@ -55,7 +55,6 @@ "@types/node": "18.11.7", "@types/sinon": "10.0.2", "@types/triple-beam": "^1.3.2", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/plugins/web/opentelemetry-instrumentation-document-load/package.json b/plugins/web/opentelemetry-instrumentation-document-load/package.json index dac0941fb..1b656f7fc 100644 --- a/plugins/web/opentelemetry-instrumentation-document-load/package.json +++ b/plugins/web/opentelemetry-instrumentation-document-load/package.json @@ -57,7 +57,6 @@ "@types/sinon": "10.0.2", "@types/webpack-env": "1.16.2", "babel-loader": "8.2.2", - "gts": "3.1.0", "@jsdevtools/coverage-istanbul-loader": "3.0.5", "karma": "6.3.16", "karma-chrome-launcher": "^3.1.1", diff --git a/plugins/web/opentelemetry-instrumentation-long-task/package.json b/plugins/web/opentelemetry-instrumentation-long-task/package.json index 9da05252c..a7eef4c1a 100644 --- a/plugins/web/opentelemetry-instrumentation-long-task/package.json +++ b/plugins/web/opentelemetry-instrumentation-long-task/package.json @@ -56,7 +56,6 @@ "@types/sinon": "10.0.2", "@types/webpack-env": "1.16.2", "babel-loader": "8.2.2", - "gts": "3.1.0", "@jsdevtools/coverage-istanbul-loader": "3.0.5", "karma": "6.3.16", "karma-chrome-launcher": "^3.1.1", diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json index f7b40361f..a7ce2daf6 100644 --- a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json +++ b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json @@ -58,7 +58,6 @@ "@types/sinon": "10.0.2", "@types/webpack-env": "1.16.2", "babel-loader": "8.2.2", - "gts": "3.1.0", "@jsdevtools/coverage-istanbul-loader": "3.0.5", "karma": "6.3.16", "karma-chrome-launcher": "^3.1.1", diff --git a/plugins/web/opentelemetry-plugin-react-load/package.json b/plugins/web/opentelemetry-plugin-react-load/package.json index 69433185a..12e25a268 100644 --- a/plugins/web/opentelemetry-plugin-react-load/package.json +++ b/plugins/web/opentelemetry-plugin-react-load/package.json @@ -59,7 +59,6 @@ "@types/sinon": "10.0.2", "@types/webpack-env": "1.16.2", "babel-loader": "8.2.2", - "gts": "3.1.0", "@jsdevtools/coverage-istanbul-loader": "3.0.5", "karma": "6.3.16", "karma-chrome-launcher": "^3.1.1", diff --git a/prettier.config.js b/prettier.config.js new file mode 100644 index 000000000..ab9553d53 --- /dev/null +++ b/prettier.config.js @@ -0,0 +1,8 @@ +module.exports = { + arrowParens: 'avoid', + printWidth: 80, + trailingComma: 'es5', + tabWidth: 2, + semi: true, + singleQuote: true, +}; diff --git a/propagators/opentelemetry-propagator-aws-xray/package.json b/propagators/opentelemetry-propagator-aws-xray/package.json index 3cd1a8f72..0e70815c6 100644 --- a/propagators/opentelemetry-propagator-aws-xray/package.json +++ b/propagators/opentelemetry-propagator-aws-xray/package.json @@ -52,7 +52,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/webpack-env": "1.16.2", - "gts": "3.1.0", "@jsdevtools/coverage-istanbul-loader": "3.0.5", "karma": "6.3.16", "karma-chrome-launcher": "^3.1.1", diff --git a/propagators/opentelemetry-propagator-grpc-census-binary/package.json b/propagators/opentelemetry-propagator-grpc-census-binary/package.json index 3f926962c..c19864f53 100644 --- a/propagators/opentelemetry-propagator-grpc-census-binary/package.json +++ b/propagators/opentelemetry-propagator-grpc-census-binary/package.json @@ -49,7 +49,6 @@ "@types/mocha": "7.0.2", "@types/node": "18.11.7", "grpc": "1.24.11", - "gts": "3.1.0", "mocha": "7.2.0", "nyc": "15.1.0", "rimraf": "4.2.0", diff --git a/propagators/opentelemetry-propagator-instana/package.json b/propagators/opentelemetry-propagator-instana/package.json index 334a4d92f..e24f8b49b 100644 --- a/propagators/opentelemetry-propagator-instana/package.json +++ b/propagators/opentelemetry-propagator-instana/package.json @@ -55,7 +55,6 @@ "@types/node": "18.11.7", "@types/webpack-env": "1.16.2", "assert": "2.0.0", - "gts": "3.1.0", "karma": "6.3.17", "karma-chrome-launcher": "3.1.1", "karma-coverage-istanbul-reporter": "3.0.3", diff --git a/propagators/opentelemetry-propagator-ot-trace/package.json b/propagators/opentelemetry-propagator-ot-trace/package.json index 0dc7ce4da..36bd939f5 100644 --- a/propagators/opentelemetry-propagator-ot-trace/package.json +++ b/propagators/opentelemetry-propagator-ot-trace/package.json @@ -53,7 +53,6 @@ "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/webpack-env": "1.16.2", - "gts": "3.1.0", "@jsdevtools/coverage-istanbul-loader": "3.0.5", "karma": "6.3.16", "karma-chrome-launcher": "^3.1.1", From 32ae641ad13be8786cce9ffc3942efa385c0ab33 Mon Sep 17 00:00:00 2001 From: Trent Mick Date: Tue, 2 May 2023 00:43:13 -0700 Subject: [PATCH 16/72] fix(deps): update dependency require-in-the-middle to v7.1.0 for types and named export (#3727) Co-authored-by: Daniel Dyla --- experimental/CHANGELOG.md | 1 + .../package.json | 2 +- .../node/RequireInTheMiddleSingleton.ts | 14 ++++---- .../src/platform/node/instrumentation.ts | 16 ++++----- .../platform/node/require-in-the-middle.d.ts | 36 ------------------- .../node/RequireInTheMiddleSingleton.test.ts | 4 +-- 6 files changed, 17 insertions(+), 56 deletions(-) delete mode 100644 experimental/packages/opentelemetry-instrumentation/src/platform/node/require-in-the-middle.d.ts diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 34d772783..02d6ab567 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -16,6 +16,7 @@ All notable changes to experimental packages in this project will be documented ### :bug: (Bug Fix) +* fix(instrumentation): update `require-in-the-middle` to v7.1.0 [#3727](https://github.com/open-telemetry/opentelemetry-js/pull/3727) @trentm * fix(instrumentation): update `require-in-the-middle` to v7.0.1 [#3743](https://github.com/open-telemetry/opentelemetry-js/pull/3743) @trentm ### :books: (Refine Doc) diff --git a/experimental/packages/opentelemetry-instrumentation/package.json b/experimental/packages/opentelemetry-instrumentation/package.json index 04d913ae8..266198f5c 100644 --- a/experimental/packages/opentelemetry-instrumentation/package.json +++ b/experimental/packages/opentelemetry-instrumentation/package.json @@ -68,7 +68,7 @@ "url": "https://github.com/open-telemetry/opentelemetry-js/issues" }, "dependencies": { - "require-in-the-middle": "^7.0.1", + "require-in-the-middle": "^7.1.0", "semver": "^7.3.2", "shimmer": "^1.2.1" }, diff --git a/experimental/packages/opentelemetry-instrumentation/src/platform/node/RequireInTheMiddleSingleton.ts b/experimental/packages/opentelemetry-instrumentation/src/platform/node/RequireInTheMiddleSingleton.ts index 0bcea53ea..ca74699e9 100644 --- a/experimental/packages/opentelemetry-instrumentation/src/platform/node/RequireInTheMiddleSingleton.ts +++ b/experimental/packages/opentelemetry-instrumentation/src/platform/node/RequireInTheMiddleSingleton.ts @@ -14,13 +14,14 @@ * limitations under the License. */ -import * as RequireInTheMiddle from 'require-in-the-middle'; +import type { OnRequireFn } from 'require-in-the-middle'; +import { Hook } from 'require-in-the-middle'; import * as path from 'path'; import { ModuleNameTrie, ModuleNameSeparator } from './ModuleNameTrie'; export type Hooked = { moduleName: string; - onRequire: RequireInTheMiddle.OnRequireFn; + onRequire: OnRequireFn; }; /** @@ -59,7 +60,7 @@ export class RequireInTheMiddleSingleton { } private _initialize() { - RequireInTheMiddle( + new Hook( // Intercept all `require` calls; we will filter the matching ones below null, { internals: true }, @@ -88,13 +89,10 @@ export class RequireInTheMiddleSingleton { * Register a hook with `require-in-the-middle` * * @param {string} moduleName Module name - * @param {RequireInTheMiddle.OnRequireFn} onRequire Hook function + * @param {OnRequireFn} onRequire Hook function * @returns {Hooked} Registered hook */ - register( - moduleName: string, - onRequire: RequireInTheMiddle.OnRequireFn - ): Hooked { + register(moduleName: string, onRequire: OnRequireFn): Hooked { const hooked = { moduleName, onRequire }; this._moduleNameTrie.insert(hooked); return hooked; diff --git a/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts b/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts index 93fbb4c17..5790c9564 100644 --- a/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts +++ b/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts @@ -24,7 +24,8 @@ import { } from './RequireInTheMiddleSingleton'; import { InstrumentationModuleDefinition } from './types'; import { diag } from '@opentelemetry/api'; -import * as RequireInTheMiddle from 'require-in-the-middle'; +import type { OnRequireFn } from 'require-in-the-middle'; +import { Hook } from 'require-in-the-middle'; /** * Base abstract class for instrumenting node plugins @@ -34,7 +35,7 @@ export abstract class InstrumentationBase implements types.Instrumentation { private _modules: InstrumentationModuleDefinition[]; - private _hooks: (Hooked | RequireInTheMiddle.Hooked)[] = []; + private _hooks: (Hooked | Hook)[] = []; private _requireInTheMiddleSingleton: RequireInTheMiddleSingleton = RequireInTheMiddleSingleton.getInstance(); private _enabled = false; @@ -167,11 +168,7 @@ export abstract class InstrumentationBase this._warnOnPreloadedModules(); for (const module of this._modules) { - const onRequire: RequireInTheMiddle.OnRequireFn = ( - exports, - name, - baseDir - ) => { + const onRequire: OnRequireFn = (exports, name, baseDir) => { return this._onRequire( module as unknown as InstrumentationModuleDefinition, exports, @@ -181,9 +178,10 @@ export abstract class InstrumentationBase }; // `RequireInTheMiddleSingleton` does not support absolute paths. - // For an absolute paths, we must create a separate instance of `RequireInTheMiddle`. + // For an absolute paths, we must create a separate instance of the + // require-in-the-middle `Hook`. const hook = path.isAbsolute(module.name) - ? RequireInTheMiddle([module.name], { internals: true }, onRequire) + ? new Hook([module.name], { internals: true }, onRequire) : this._requireInTheMiddleSingleton.register(module.name, onRequire); this._hooks.push(hook); diff --git a/experimental/packages/opentelemetry-instrumentation/src/platform/node/require-in-the-middle.d.ts b/experimental/packages/opentelemetry-instrumentation/src/platform/node/require-in-the-middle.d.ts deleted file mode 100644 index 93a766b5f..000000000 --- a/experimental/packages/opentelemetry-instrumentation/src/platform/node/require-in-the-middle.d.ts +++ /dev/null @@ -1,36 +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. - */ - -declare module 'require-in-the-middle' { - namespace hook { - type Options = { - internals?: boolean; - }; - type OnRequireFn = (exports: T, name: string, basedir?: string) => T; - type Hooked = { unhook(): void }; - } - function hook( - modules: string[] | null, - options: hook.Options | null, - onRequire: hook.OnRequireFn - ): hook.Hooked; - function hook( - modules: string[] | null, - onRequire: hook.OnRequireFn - ): hook.Hooked; - function hook(onRequire: hook.OnRequireFn): hook.Hooked; - export = hook; -} diff --git a/experimental/packages/opentelemetry-instrumentation/test/node/RequireInTheMiddleSingleton.test.ts b/experimental/packages/opentelemetry-instrumentation/test/node/RequireInTheMiddleSingleton.test.ts index df7059987..d6401d1fa 100644 --- a/experimental/packages/opentelemetry-instrumentation/test/node/RequireInTheMiddleSingleton.test.ts +++ b/experimental/packages/opentelemetry-instrumentation/test/node/RequireInTheMiddleSingleton.test.ts @@ -17,7 +17,7 @@ import * as assert from 'assert'; import * as sinon from 'sinon'; import * as path from 'path'; -import * as RequireInTheMiddle from 'require-in-the-middle'; +import type { OnRequireFn } from 'require-in-the-middle'; import { RequireInTheMiddleSingleton } from '../../src/platform/node/RequireInTheMiddleSingleton'; const requireInTheMiddleSingleton = RequireInTheMiddleSingleton.getInstance(); @@ -31,7 +31,7 @@ const makeOnRequiresStub = (label: string): sinon.SinonStub => exports.__ritmOnRequires ??= []; exports.__ritmOnRequires.push(label); return exports; - }) as RequireInTheMiddle.OnRequireFn); + }) as OnRequireFn); describe('RequireInTheMiddleSingleton', () => { describe('register', () => { From da737f1c1eda59d7e340c4026a212d21abcb72d6 Mon Sep 17 00:00:00 2001 From: Thomas Ankcorn Date: Tue, 2 May 2023 12:59:04 +0100 Subject: [PATCH 17/72] fix: .cjs extension support for lambda functions (#1442) --- .../src/instrumentation.ts | 12 ++++++++++-- .../test/integrations/lambda-handler.test.ts | 16 ++++++++++++++++ .../test/lambda-test/commonjs.cjs | 3 +++ 3 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 plugins/node/opentelemetry-instrumentation-aws-lambda/test/lambda-test/commonjs.cjs diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts index 04b51a984..0110293ef 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts @@ -15,6 +15,7 @@ */ import * as path from 'path'; +import * as fs from 'fs'; import { InstrumentationBase, @@ -99,8 +100,15 @@ export class AwsLambdaInstrumentation extends InstrumentationBase { // Lambda loads user function using an absolute path. let filename = path.resolve(taskRoot, moduleRoot, module); if (!filename.endsWith('.js')) { - // Patching infrastructure currently requires a filename when requiring with an absolute path. - filename += '.js'; + // its impossible to know in advance if the user has a cjs or js file. + // check that the .js file exists otherwise fallback to next known possibility + try { + fs.statSync(`${filename}.js`); + filename += '.js'; + } catch (e) { + // fallback to .cjs + filename += '.cjs'; + } } return [ diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/test/integrations/lambda-handler.test.ts b/plugins/node/opentelemetry-instrumentation-aws-lambda/test/integrations/lambda-handler.test.ts index b84f834c7..681922fbe 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/test/integrations/lambda-handler.test.ts +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/test/integrations/lambda-handler.test.ts @@ -861,5 +861,21 @@ describe('lambda handler', () => { assert.strictEqual(span.attributes[ERR_ATTR], error!.message); }); }); + + describe('.cjs lambda bundle', () => { + it('should export a valid span', async () => { + initializeHandler('lambda-test/commonjs.handler'); + const result = await lambdaRequire('lambda-test/commonjs.cjs').handler( + 'arg', + ctx + ); + assert.strictEqual(result, 'ok'); + const spans = memoryExporter.getFinishedSpans(); + const [span] = spans; + assert.strictEqual(spans.length, 1); + assertSpanSuccess(span); + assert.strictEqual(span.parentSpanId, undefined); + }); + }); }); }); diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/test/lambda-test/commonjs.cjs b/plugins/node/opentelemetry-instrumentation-aws-lambda/test/lambda-test/commonjs.cjs new file mode 100644 index 000000000..3fc61adcc --- /dev/null +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/test/lambda-test/commonjs.cjs @@ -0,0 +1,3 @@ +exports.handler = async function (event, context) { + return "ok"; +}; \ No newline at end of file From 69d1f17da0914fe14dc5d48512e8ae829267f605 Mon Sep 17 00:00:00 2001 From: Haddas Bronfman <85441461+haddasbronfman@users.noreply.github.com> Date: Wed, 3 May 2023 11:05:41 +0300 Subject: [PATCH 18/72] chore(mysql2): support version 3 (#1470) --- plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml | 3 +++ plugins/node/opentelemetry-instrumentation-mysql2/README.md | 2 +- .../src/instrumentation.ts | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml b/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml index 83cb0a413..36a11005c 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml +++ b/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml @@ -1,4 +1,7 @@ mysql2: + - versions: <4 >=3.2.0 || 3.1.0 || 3.0.0 + commands: npm run test + - versions: <3 >=2.3.2 || 2.3.0 || 2.2.5 || 2.1.0 # Skip 2.3.3 which installs types from git which takes 10m on it's own commands: npm run test diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/README.md b/plugins/node/opentelemetry-instrumentation-mysql2/README.md index c828c21e2..d0940894b 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/README.md +++ b/plugins/node/opentelemetry-instrumentation-mysql2/README.md @@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-mysql2 ## Supported Versions -- `>= 1.4.2, < 3.0` +- `>= 1.4.2, < 4.0` ## Usage diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-mysql2/src/instrumentation.ts index fde904f2b..682ebe0b0 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/src/instrumentation.ts +++ b/plugins/node/opentelemetry-instrumentation-mysql2/src/instrumentation.ts @@ -50,7 +50,7 @@ export class MySQL2Instrumentation extends InstrumentationBase { return [ new InstrumentationNodeModuleDefinition( 'mysql2', - ['>= 1.4.2 < 3.0'], + ['>= 1.4.2 < 4.0'], (moduleExports: any, moduleVersion) => { api.diag.debug(`Patching mysql@${moduleVersion}`); From 49a03892c05dbeda98badeb07847240869442384 Mon Sep 17 00:00:00 2001 From: Haddas Bronfman <85441461+haddasbronfman@users.noreply.github.com> Date: Thu, 4 May 2023 15:02:53 +0300 Subject: [PATCH 19/72] fix(pg-values): values should be parsable when enhancedDatabaseRepoting:true (#1453) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(pg-values): values should be parsable when enhancedDatabaseReporting:true * fix(pg-values): add try catch * fix(pg-values): lint * fix(pg-values): fixes * fix(pg-values): fix * Update plugins/node/opentelemetry-instrumentation-pg/src/utils.ts Co-authored-by: Gerhard Stöbich * fix(pg-values): support buffer, object, null and undefined * Update plugins/node/opentelemetry-instrumentation-pg/src/utils.ts Co-authored-by: Gerhard Stöbich * fix(pg-values): fixes * fix(pg-values): lint * fix(pg-values): add test for 'toPostgres' * fix(pg-values): fix --------- Co-authored-by: Gerhard Stöbich --- .../src/utils.ts | 28 +++++++--- .../test/pg.test.ts | 54 +++++++++++++++++++ .../test/utils.test.ts | 2 +- 3 files changed, 75 insertions(+), 9 deletions(-) diff --git a/plugins/node/opentelemetry-instrumentation-pg/src/utils.ts b/plugins/node/opentelemetry-instrumentation-pg/src/utils.ts index 2e4176817..1565d6d03 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/src/utils.ts +++ b/plugins/node/opentelemetry-instrumentation-pg/src/utils.ts @@ -43,10 +43,6 @@ import type * as pgTypes from 'pg'; import { PgInstrumentation } from './'; import { safeExecuteInTheMiddle } from '@opentelemetry/instrumentation'; -function arrayStringifyHelper(arr: Array): string { - return '[' + arr.toString() + ']'; -} - /** * Helper function to get a low cardinality span name from whatever info we have * about the query. @@ -156,10 +152,26 @@ export function handleConfigQuery( instrumentationConfig.enhancedDatabaseReporting && Array.isArray(queryConfig.values) ) { - span.setAttribute( - AttributeNames.PG_VALUES, - arrayStringifyHelper(queryConfig.values) - ); + try { + const convertedValues = queryConfig.values.map(value => { + if (value == null) { + return 'null'; + } else if (value instanceof Buffer) { + return value.toString(); + } else if (typeof value === 'object') { + if (typeof value.toPostgres === 'function') { + return value.toPostgres(); + } + return JSON.stringify(value); + } else { + //string, number + return value.toString(); + } + }); + span.setAttribute(AttributeNames.PG_VALUES, convertedValues); + } catch (e) { + diag.error('failed to stringify ', queryConfig.values, e); + } } // Set plan name attribute, if present diff --git a/plugins/node/opentelemetry-instrumentation-pg/test/pg.test.ts b/plugins/node/opentelemetry-instrumentation-pg/test/pg.test.ts index b78e036ab..a6c368ad3 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/test/pg.test.ts +++ b/plugins/node/opentelemetry-instrumentation-pg/test/pg.test.ts @@ -513,6 +513,60 @@ describe('pg', () => { }); }); + describe('Check configuration enhancedDatabaseReporting:true', () => { + const obj = { type: 'Fiat', model: '500', color: 'white' }; + const buf = Buffer.from('abc'); + const objWithToPostgres = { + toPostgres: () => { + return 'custom value'; + }, + }; + const query = + 'SELECT $1::text as msg1, $2::bytea as bufferParam, $3::integer as numberParam, $4::jsonb as objectParam, $5::text as objToPostgres, $6::text as msg2, $7::text as msg3'; + const values = [ + 'Hello,World', + buf, + 6, + obj, + objWithToPostgres, + null, + undefined, + ]; + + const events: TimedEvent[] = []; + + const attributes = { + ...DEFAULT_ATTRIBUTES, + [SemanticAttributes.DB_STATEMENT]: query, + [AttributeNames.PG_VALUES]: [ + 'Hello,World', + 'abc', + '6', + '{"type":"Fiat","model":"500","color":"white"}', + 'custom value', + 'null', + 'null', + ], + }; + beforeEach(async () => { + create({ + enhancedDatabaseReporting: true, + }); + }); + + it('When enhancedDatabaseReporting:true, values should appear as parsable array of strings', done => { + const span = tracer.startSpan('test span'); + context.with(trace.setSpan(context.active(), span), () => { + client.query(query, values, (err, res) => { + assert.strictEqual(err, null); + assert.ok(res); + runCallbackTest(span, attributes, events); + done(); + }); + }); + }); + }); + describe('when specifying a requestHook configuration', () => { const dataAttributeName = 'pg_data'; const query = 'SELECT 0::text'; diff --git a/plugins/node/opentelemetry-instrumentation-pg/test/utils.test.ts b/plugins/node/opentelemetry-instrumentation-pg/test/utils.test.ts index 2e6c8ca0d..d7c4f1f6a 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/test/utils.test.ts +++ b/plugins/node/opentelemetry-instrumentation-pg/test/utils.test.ts @@ -197,7 +197,7 @@ describe('utils.ts', () => { const readableSpan = getLatestSpan(); const pgValues = readableSpan.attributes[AttributeNames.PG_VALUES]; - assert.strictEqual(pgValues, '[0]'); + assert.deepStrictEqual(pgValues, ['0']); }); }); From 7255da994fe79f115ceb9b1260fb171cf9313706 Mon Sep 17 00:00:00 2001 From: Aaron Abbott Date: Fri, 5 May 2023 02:16:46 -0400 Subject: [PATCH 20/72] feat(opencensus-shim) add mapping logic and propagation shim (#3751) --- .../package.json | 13 +- .../src/propagation.ts | 78 ++++++++++ .../src/transform.ts | 105 +++++++++++++ .../test/propagation.test.ts | 85 +++++++++++ .../test/transform.test.ts | 143 ++++++++++++++++++ 5 files changed, 419 insertions(+), 5 deletions(-) create mode 100644 experimental/packages/opentelemetry-shim-opencensus/src/propagation.ts create mode 100644 experimental/packages/opentelemetry-shim-opencensus/src/transform.ts create mode 100644 experimental/packages/opentelemetry-shim-opencensus/test/propagation.test.ts create mode 100644 experimental/packages/opentelemetry-shim-opencensus/test/transform.test.ts diff --git a/experimental/packages/opentelemetry-shim-opencensus/package.json b/experimental/packages/opentelemetry-shim-opencensus/package.json index 8779173e9..ed8b12241 100644 --- a/experimental/packages/opentelemetry-shim-opencensus/package.json +++ b/experimental/packages/opentelemetry-shim-opencensus/package.json @@ -10,6 +10,7 @@ "prepublishOnly": "npm run compile", "compile": "tsc --build", "clean": "tsc --build --clean", + "tdd": "npm run test -- --extension ts --watch", "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", "lint": "eslint . --ext .ts", @@ -44,21 +45,23 @@ "access": "public" }, "devDependencies": { - "@opentelemetry/core": "1.11.0", - "@opentelemetry/context-async-hooks": "1.11.0", + "@opentelemetry/core": "1.12.0", + "@opentelemetry/context-async-hooks": "1.12.0", "@opencensus/core": "0.1.0", - "@opentelemetry/api": ">=1.0.0 <1.5.0", + "@opentelemetry/api": "1.4.1", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "codecov": "3.8.3", "mocha": "10.0.0", "nyc": "15.1.0", + "sinon": "15.0.0", + "@types/sinon": "10.0.13", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, "peerDependencies": { "@opencensus/core": "^0.1.0", - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/api": "^1.0.0" }, "dependencies": { "@opentelemetry/core": "^1.0.0", @@ -68,4 +71,4 @@ }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-shim-opencensus", "sideEffects": false -} \ No newline at end of file +} diff --git a/experimental/packages/opentelemetry-shim-opencensus/src/propagation.ts b/experimental/packages/opentelemetry-shim-opencensus/src/propagation.ts new file mode 100644 index 000000000..deb2509fa --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/src/propagation.ts @@ -0,0 +1,78 @@ +/* + * 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 oc from '@opencensus/core'; + +import { + context, + propagation, + trace, + TextMapGetter, + TextMapSetter, +} from '@opentelemetry/api'; +import { mapSpanContext, reverseMapSpanContext } from './transform'; + +class Getter implements TextMapGetter { + constructor(private ocGetter: oc.HeaderGetter) {} + keys(): string[] { + return []; + } + get(carrier: void, key: string) { + return this.ocGetter.getHeader(key); + } +} + +class Setter implements TextMapSetter { + constructor(private ocSetter: oc.HeaderSetter) {} + set(carrier: void, key: string, value: string): void { + this.ocSetter.setHeader(key, value); + } +} + +/** + * Bridges OpenTelemetry propagation API into OpenCensus. The global OTel propagator is called + * to implement the OpenCensus propagation API. + */ +export const shimPropagation: oc.Propagation = { + extract(getter: oc.HeaderGetter): oc.SpanContext | null { + const extracted = propagation.extract( + context.active(), + null, + new Getter(getter) + ); + + const otelSc = trace.getSpanContext(extracted); + return otelSc ? reverseMapSpanContext(otelSc) : null; + }, + + inject(setter: oc.HeaderSetter, spanContext: oc.SpanContext): void { + const ctx = trace.setSpanContext( + context.active(), + mapSpanContext(spanContext) + ); + propagation.inject(ctx, null, new Setter(setter)); + }, + + generate(): oc.SpanContext { + // Reading OpenCensus code, it looks like this should generate a new random span context. + // However, it doesn't appear to be used based on my testing. Options for implementing: + // + // - Return the invalid span context + // - Use the OTel ID generator, however this package should be an API-only bridge + // - Copy implementation from OpenCensus noop-propagation.ts + throw new Error('shimPropagation.generate() is not yet implemented'); + }, +}; diff --git a/experimental/packages/opentelemetry-shim-opencensus/src/transform.ts b/experimental/packages/opentelemetry-shim-opencensus/src/transform.ts new file mode 100644 index 000000000..e5e95f476 --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/src/transform.ts @@ -0,0 +1,105 @@ +/* + * 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 oc from '@opencensus/core'; +import { + Attributes, + SpanContext, + SpanKind, + TimeInput, + diag, +} from '@opentelemetry/api'; +import { TraceState } from '@opentelemetry/core'; + +function exhaust(value: never) { + diag.warn('Could not handle enum value %s', value); +} + +export function mapSpanKind( + kind: oc.SpanKind | undefined +): SpanKind | undefined { + switch (kind) { + case undefined: + return undefined; + case oc.SpanKind.UNSPECIFIED: + return SpanKind.INTERNAL; + case oc.SpanKind.CLIENT: + return SpanKind.CLIENT; + case oc.SpanKind.SERVER: + return SpanKind.SERVER; + default: + exhaust(kind); + return undefined; + } +} + +export function mapSpanContext({ + spanId, + traceId, + options, + traceState, +}: oc.SpanContext): SpanContext { + return { + spanId, + traceId, + traceFlags: options ?? 0, + traceState: + traceState === undefined ? undefined : new TraceState(traceState), + }; +} + +export function reverseMapSpanContext({ + spanId, + traceId, + traceFlags, + traceState, +}: SpanContext): oc.SpanContext { + return { + spanId: spanId, + traceId: traceId, + options: traceFlags, + traceState: traceState?.serialize(), + }; +} + +// Copied from Java +// https://github.com/open-telemetry/opentelemetry-java/blob/0d3a04669e51b33ea47b29399a7af00012d25ccb/opencensus-shim/src/main/java/io/opentelemetry/opencensusshim/SpanConverter.java#L24-L27 +const MESSAGE_EVENT_ATTRIBUTE_KEY_TYPE = 'message.event.type'; +const MESSAGE_EVENT_ATTRIBUTE_KEY_SIZE_UNCOMPRESSED = + 'message.event.size.uncompressed'; +const MESSAGE_EVENT_ATTRIBUTE_KEY_SIZE_COMPRESSED = + 'message.event.size.compressed'; + +export function mapMessageEvent( + type: oc.MessageEventType, + id: number, + timestamp?: number, + uncompressedSize?: number, + compressedSize?: number +): [string, Attributes, TimeInput | undefined] { + const attributes: Attributes = { + [MESSAGE_EVENT_ATTRIBUTE_KEY_TYPE]: oc.MessageEventType[type], + }; + if (uncompressedSize !== undefined) { + attributes[MESSAGE_EVENT_ATTRIBUTE_KEY_SIZE_UNCOMPRESSED] = + uncompressedSize; + } + if (compressedSize !== undefined) { + attributes[MESSAGE_EVENT_ATTRIBUTE_KEY_SIZE_COMPRESSED] = compressedSize; + } + + return [id.toString(), attributes, timestamp]; +} diff --git a/experimental/packages/opentelemetry-shim-opencensus/test/propagation.test.ts b/experimental/packages/opentelemetry-shim-opencensus/test/propagation.test.ts new file mode 100644 index 000000000..ce2ecb43b --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/test/propagation.test.ts @@ -0,0 +1,85 @@ +/* + * 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 { shimPropagation } from '../src/propagation'; + +import * as oc from '@opencensus/core'; +import { propagation } from '@opentelemetry/api'; +import { W3CTraceContextPropagator } from '@opentelemetry/core'; +import * as assert from 'assert'; +import * as sinon from 'sinon'; + +const dummyGetterWithHeader: oc.HeaderGetter = { + getHeader(name) { + if (name === 'traceparent') { + return '00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01'; + } + return undefined; + }, +}; +const dummyGetterWithoutHeader: oc.HeaderGetter = { + getHeader() { + return undefined; + }, +}; + +describe('propagation', () => { + describe('shimPropagation', () => { + beforeEach(() => { + propagation.setGlobalPropagator(new W3CTraceContextPropagator()); + }); + afterEach(() => { + propagation.disable(); + }); + + describe('extract', () => { + it('should extract when header is available', () => { + assert.deepStrictEqual(shimPropagation.extract(dummyGetterWithHeader), { + options: 1, + spanId: '00f067aa0ba902b7', + traceId: '4bf92f3577b34da6a3ce929d0e0e4736', + traceState: undefined, + }); + }); + it('should return null when header is not available', () => { + assert.deepStrictEqual( + shimPropagation.extract(dummyGetterWithoutHeader), + null + ); + }); + }); + + describe('inject', () => { + it('should inject when span context is provided', () => { + const setHeaderFake = sinon.fake<[string, string]>(); + const headerSetter: oc.HeaderSetter = { + setHeader: setHeaderFake, + }; + shimPropagation.inject(headerSetter, { + options: 1, + spanId: '00f067aa0ba902b7', + traceId: '4bf92f3577b34da6a3ce929d0e0e4736', + traceState: undefined, + }); + sinon.assert.calledWith( + setHeaderFake, + 'traceparent', + '00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01' + ); + }); + }); + }); +}); diff --git a/experimental/packages/opentelemetry-shim-opencensus/test/transform.test.ts b/experimental/packages/opentelemetry-shim-opencensus/test/transform.test.ts new file mode 100644 index 000000000..9a7f90cda --- /dev/null +++ b/experimental/packages/opentelemetry-shim-opencensus/test/transform.test.ts @@ -0,0 +1,143 @@ +/* + * 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 { + mapMessageEvent, + mapSpanContext, + mapSpanKind, + reverseMapSpanContext, +} from '../src/transform'; + +import * as oc from '@opencensus/core'; +import { SpanKind } from '@opentelemetry/api'; +import { TraceState } from '@opentelemetry/core'; +import * as assert from 'assert'; + +describe('transform', () => { + describe('mapSpanKind', () => { + it('should return undefined with undefined input', () => { + assert.strictEqual(mapSpanKind(undefined), undefined); + }); + it('should return undefined for unknown span kind', () => { + assert.strictEqual(mapSpanKind(3 as oc.SpanKind), undefined); + }); + it('should map known OC SpanKinds', () => { + assert.strictEqual( + mapSpanKind(oc.SpanKind.UNSPECIFIED), + SpanKind.INTERNAL + ); + assert.strictEqual(mapSpanKind(oc.SpanKind.CLIENT), SpanKind.CLIENT); + assert.strictEqual(mapSpanKind(oc.SpanKind.SERVER), SpanKind.SERVER); + }); + }); + + describe('mapSpanContext', () => { + it('should map everything', () => { + const sc = mapSpanContext({ + traceId: '4321', + spanId: '1234', + options: 1, + traceState: 'hello=world', + }); + assert.deepStrictEqual(sc, { + traceId: '4321', + spanId: '1234', + traceFlags: 1, + traceState: new TraceState('hello=world'), + }); + }); + it('should default trace flags to 0', () => { + const sc = mapSpanContext({ traceId: '4321', spanId: '1234' }); + assert.strictEqual(sc.traceFlags, 0); + }); + it("should not include trace state if it wasn't passed in", () => { + const sc = mapSpanContext({ + traceId: '4321', + spanId: '1234', + }); + assert.strictEqual(sc.traceState, undefined); + }); + }); + + describe('reverseMapSpanContext', () => { + it('should map everything', () => { + const sc = reverseMapSpanContext({ + traceId: '4321', + spanId: '1234', + traceFlags: 1, + traceState: new TraceState('hello=world'), + }); + assert.deepStrictEqual(sc, { + traceId: '4321', + spanId: '1234', + options: 1, + traceState: 'hello=world', + }); + }); + it("should not include trace state if it wasn't passed in", () => { + const sc = reverseMapSpanContext({ + traceId: '4321', + spanId: '1234', + traceFlags: 0, + }); + assert.strictEqual(sc.traceState, undefined); + }); + }); + + describe('mapMessageEvent', () => { + const messageEventType = oc.MessageEventType.RECEIVED; + const id = 123; + const timestamp = 321; + const uncompressedSize = 12; + const compressedSize = 15; + + it('should map message event', () => { + assert.deepStrictEqual( + mapMessageEvent( + messageEventType, + id, + timestamp, + uncompressedSize, + compressedSize + ), + [ + // event name + '123', + // attributes + { + 'message.event.size.compressed': 15, + 'message.event.size.uncompressed': 12, + 'message.event.type': 'RECEIVED', + }, + // timestamp + 321, + ] + ); + }); + it('should omit size attributes if they are not provided', () => { + assert.deepStrictEqual(mapMessageEvent(messageEventType, id, timestamp), [ + // event name + '123', + // attributes + { + 'message.event.type': 'RECEIVED', + }, + // timestamp + 321, + ]); + }); + }); +}); From 7d31b692f58d6a08e817d344f710725db1619495 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Fri, 5 May 2023 11:37:48 -0400 Subject: [PATCH 21/72] chore: component ownership audit (#1478) * chore: document unmaintained components in yml * chore: add @seemk as component owner for instrumentation-bunyan Co-authored-by: Daniel Dyla * chore: add @seemk as component owner for instrumentation-net Co-authored-by: Daniel Dyla * chore: add @haddasbronfman as component owner for instrumentation-mysql2 * Update .github/component_owners.yml * Apply suggestions from code review * Add @seemk ownerships --------- Co-authored-by: Marc Pichler --- .github/component_owners.yml | 68 ++++++++++++++++++++++++++++++------ 1 file changed, 57 insertions(+), 11 deletions(-) diff --git a/.github/component_owners.yml b/.github/component_owners.yml index a178953c1..83724acf2 100644 --- a/.github/component_owners.yml +++ b/.github/component_owners.yml @@ -6,6 +6,12 @@ components: - carolabadeer detectors/node/opentelemetry-resource-detector-container: - abhee11 + detectors/node/opentelemetry-resource-detector-gcp: + - aabmass + - punya + # Unmaintained? + detectors/node/opentelemetry-resource-detector-github: [] + # Unmaintained? detectors/node/opentelemetry-resource-detector-instana: - basti1302 - kirrg001 @@ -17,14 +23,31 @@ components: - legendecas packages/opentelemetry-id-generator-aws-xray: - carolabadeer + packages/opentelemetry-propagation-utils: + - dyladan + - pichlermarc + - legendecas + - blumamir packages/opentelemetry-redis-common: - haddasbronfman + packages/opentelemetry-test-utils: + - dyladan + - pichlermarc + - legendecas + - blumamir plugins/node/instrumentation-amqplib: - blumamir plugins/node/instrumentation-dataloader: - henrinormak plugins/node/instrumentation-fs: - rauno56 + plugins/node/instrumentation-lru-memoizer: + - blumamir + plugins/node/instrumentation-mongoose: + - blumamir + plugins/node/instrumentation-socket.io: + - mottibec + - rauno56 plugins/node/instrumentation-tedious: - rauno56 plugins/node/opentelemetry-instrumentation-aws-lambda: @@ -32,40 +55,57 @@ components: plugins/node/opentelemetry-instrumentation-aws-sdk: - carolabadeer - blumamir + plugins/node/opentelemetry-instrumentation-bunyan: + - seemk + plugins/node/opentelemetry-instrumentation-cassandra: + - seemk + plugins/node/opentelemetry-instrumentation-connect: [] + # Unmaintained? + plugins/node/opentelemetry-instrumentation-dns: [] + # Unmaintained? + plugins/node/opentelemetry-instrumentation-express: [] + # Unmaintained? + plugins/node/opentelemetry-instrumentation-fastify: [] + # Unmaintained? plugins/node/opentelemetry-instrumentation-generic-pool: - rauno56 plugins/node/opentelemetry-instrumentation-graphql: - obecny + plugins/node/opentelemetry-instrumentation-hapi: [] + # Unmaintained? plugins/node/opentelemetry-instrumentation-ioredis: - blumamir - naseemkullah plugins/node/opentelemetry-instrumentation-knex: - rauno56 - plugins/node/opentelemetry-instrumentation-lru-memoizer: - - blumamir + plugins/node/opentelemetry-instrumentation-koa: [] + # Unmaintained? plugins/node/opentelemetry-instrumentation-memcached: - rauno56 plugins/node/opentelemetry-instrumentation-mongodb: - osherv - plugins/node/opentelemetry-instrumentation-mongoose: - - blumamir plugins/node/opentelemetry-instrumentation-mysql: - haddasbronfman + plugins/node/opentelemetry-instrumentation-mysql2: + - haddasbronfman plugins/node/opentelemetry-instrumentation-nestjs-core: - rauno56 - plugins/node/opentelemetry-instrumentation-redis: - - blumamir + plugins/node/opentelemetry-instrumentation-net: + - seemk + plugins/node/opentelemetry-instrumentation-pg: + - rauno56 + plugins/node/opentelemetry-instrumentation-pino: + - seemk plugins/node/opentelemetry-instrumentation-redis-4: - blumamir + plugins/node/opentelemetry-instrumentation-redis: + - blumamir plugins/node/opentelemetry-instrumentation-restify: - rauno56 plugins/node/opentelemetry-instrumentation-router: - rauno56 - plugins/node/opentelemetry-instrumentation-pg: - - rauno56 - plugins/node/opentelemetry-instrumentation-socket.io: - - mottibec - - rauno56 + plugins/node/opentelemetry-instrumentation-winston: + - seemk plugins/web/opentelemetry-instrumentation-document-load: - obecny plugins/web/opentelemetry-instrumentation-long-task: @@ -73,11 +113,17 @@ components: - t2t2 plugins/web/opentelemetry-instrumentation-user-interaction: - obecny + plugins/web/opentelemetry-plugin-react-load: [] + # Unmaintained? propagators/opentelemetry-propagator-aws-xray: - carolabadeer + propagators/opentelemetry-propagator-grpc-census-binary: [] + # Unmaintained? propagators/opentelemetry-propagator-instana: - basti1302 - kirrg001 + propagators/opentelemetry-propagator-ot-trace: [] + # Unmaintained? ignored-authors: - renovate-bot From 5709008dfa4d05cae0c2226b9926e36cdf60c631 Mon Sep 17 00:00:00 2001 From: Sami Musallam Date: Sun, 7 May 2023 13:29:27 +0300 Subject: [PATCH 22/72] fix(eslint-eqeqeq): updated the `eqeqeq` rule to match the core repo (#1485) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(eslint-eqeqeq): updated eqeqeq from off to error * Revert "fix(eslint-eqeqeq): updated eqeqeq from off to error" This reverts commit b5ce8e58115d906b2f37c104521a1f31b4075c05. * fix(eslint-eqeqeq): removed unnecessary changes * Update plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts Co-authored-by: Gerhard Stöbich --------- Co-authored-by: Gerhard Stöbich Co-authored-by: Haddas Bronfman <85441461+haddasbronfman@users.noreply.github.com> --- eslint.config.js | 5 ++++- .../src/instrumentation.ts | 2 +- .../src/services/dynamodb.ts | 2 +- .../test/graphql.test.ts | 2 +- .../src/instrumentation.ts | 4 ++-- .../src/InstanaPropagator.ts | 2 +- .../src/OTTracePropagator.ts | 2 +- 7 files changed, 11 insertions(+), 8 deletions(-) diff --git a/eslint.config.js b/eslint.config.js index 2ebc6dc36..439bfc0c0 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -12,7 +12,10 @@ module.exports = { }, rules: { "quotes": ["error", "single", { "avoidEscape": true }], - "eqeqeq": "off", + "eqeqeq": [ + "error", + "smart" + ], "prefer-rest-params": "off", "no-shadow": "off", "node/no-deprecated-api": ["warn"], diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts index 0110293ef..20d4717a0 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts @@ -132,7 +132,7 @@ export class AwsLambdaInstrumentation extends InstrumentationBase { return moduleExports; }, (moduleExports?: LambdaModule) => { - if (moduleExports == undefined) return; + if (moduleExports == null) return; diag.debug('Removing patch for lambda handler'); this._unwrap(moduleExports, functionName); } diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/dynamodb.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/dynamodb.ts index 0cf383f27..dd797b5af 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/dynamodb.ts +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/dynamodb.ts @@ -41,7 +41,7 @@ export class DynamodbServiceExtension implements ServiceExtension { ), }; - if (operation == 'BatchGetItem') { + if (operation === 'BatchGetItem') { spanAttributes[SemanticAttributes.AWS_DYNAMODB_TABLE_NAMES] = Object.keys( normalizedRequest.commandInput.RequestItems ); diff --git a/plugins/node/opentelemetry-instrumentation-graphql/test/graphql.test.ts b/plugins/node/opentelemetry-instrumentation-graphql/test/graphql.test.ts index e694fa8f4..a9e379592 100644 --- a/plugins/node/opentelemetry-instrumentation-graphql/test/graphql.test.ts +++ b/plugins/node/opentelemetry-instrumentation-graphql/test/graphql.test.ts @@ -1179,7 +1179,7 @@ describe('graphql', () => { it('should attach response hook data to the resulting spans', () => { const querySpan = spans.find( - span => span.attributes[AttributeNames.OPERATION_TYPE] == 'query' + span => span.attributes[AttributeNames.OPERATION_TYPE] === 'query' ); const instrumentationResult = querySpan?.attributes[dataAttributeName]; assert.deepStrictEqual( diff --git a/plugins/node/opentelemetry-instrumentation-pino/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-pino/src/instrumentation.ts index 3913ef9bc..c930c2fa9 100644 --- a/plugins/node/opentelemetry-instrumentation-pino/src/instrumentation.ts +++ b/plugins/node/opentelemetry-instrumentation-pino/src/instrumentation.ts @@ -45,13 +45,13 @@ export class PinoInstrumentation extends InstrumentationBase { diag.debug(`Applying patch for pino@${moduleVersion}`); const instrumentation = this; const patchedPino = Object.assign((...args: unknown[]) => { - if (args.length == 0) { + if (args.length === 0) { return pinoModule({ mixin: instrumentation._getMixinFunction(), }); } - if (args.length == 1) { + if (args.length === 1) { // eslint-disable-next-line @typescript-eslint/no-explicit-any const optsOrStream = args[0] as any; if ( diff --git a/propagators/opentelemetry-propagator-instana/src/InstanaPropagator.ts b/propagators/opentelemetry-propagator-instana/src/InstanaPropagator.ts index bde8af733..29ec3b152 100644 --- a/propagators/opentelemetry-propagator-instana/src/InstanaPropagator.ts +++ b/propagators/opentelemetry-propagator-instana/src/InstanaPropagator.ts @@ -70,7 +70,7 @@ export class InstanaPropagator implements TextMapPropagator { setter.set(carrier, INSTANA_TRACE_ID_HEADER, spanContext.traceId); setter.set(carrier, INSTANA_SPAN_ID_HEADER, spanContext.spanId); const sampled = - (spanContext.traceFlags & TraceFlags.SAMPLED) == TraceFlags.SAMPLED; + (spanContext.traceFlags & TraceFlags.SAMPLED) === TraceFlags.SAMPLED; setter.set(carrier, INSTANA_LEVEL_HEADER, sampled ? '1' : '0'); } diff --git a/propagators/opentelemetry-propagator-ot-trace/src/OTTracePropagator.ts b/propagators/opentelemetry-propagator-ot-trace/src/OTTracePropagator.ts index 056e9868e..9ca68f3d5 100644 --- a/propagators/opentelemetry-propagator-ot-trace/src/OTTracePropagator.ts +++ b/propagators/opentelemetry-propagator-ot-trace/src/OTTracePropagator.ts @@ -87,7 +87,7 @@ export class OTTracePropagator implements TextMapPropagator { extract(context: Context, carrier: unknown, getter: TextMapGetter): Context { let traceId = readHeader(carrier, getter, OT_TRACE_ID_HEADER); - if (traceId.length == 16) traceId = `${PADDING}${traceId}`; + if (traceId.length === 16) traceId = `${PADDING}${traceId}`; const spanId = readHeader(carrier, getter, OT_SPAN_ID_HEADER); const sampled = readHeader(carrier, getter, OT_SAMPLED_HEADER); const traceFlags = From 1f6299d9d48ef2f7b206170827d3858e947474db Mon Sep 17 00:00:00 2001 From: Haddas Bronfman <85441461+haddasbronfman@users.noreply.github.com> Date: Sun, 7 May 2023 22:44:47 +0300 Subject: [PATCH 23/72] fix(mysql2-tav): add 'pretest' command to tav.yml for mysql2 version 3 (#1490) --- plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml b/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml index 36a11005c..3afbb8997 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml +++ b/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml @@ -1,6 +1,8 @@ mysql2: - versions: <4 >=3.2.0 || 3.1.0 || 3.0.0 commands: npm run test + # Fix missing `test-utils` package + pretest: npm run --prefix ../../../ lerna:link - versions: <3 >=2.3.2 || 2.3.0 || 2.2.5 || 2.1.0 # Skip 2.3.3 which installs types from git which takes 10m on it's own From b8b63083869fb5850fd4830ded0fc509a2cd0f0a Mon Sep 17 00:00:00 2001 From: Aaron Abbott Date: Tue, 9 May 2023 01:04:46 -0400 Subject: [PATCH 24/72] chore: remove "opentelemetry" prefix from opencensus-shim package directory (#3784) --- .../.eslintignore | 0 .../.eslintrc.js | 0 .../.npmignore | 0 .../LICENSE | 0 .../README.md | 0 .../package.json | 2 +- .../src/index.ts | 0 .../src/propagation.ts | 0 .../src/transform.ts | 0 .../test/ShimTracer.test.ts | 0 .../test/propagation.test.ts | 0 .../test/transform.test.ts | 0 .../tsconfig.json | 0 tsconfig.json | 6 +++--- 14 files changed, 4 insertions(+), 4 deletions(-) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/.eslintignore (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/.eslintrc.js (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/.npmignore (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/LICENSE (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/README.md (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/package.json (97%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/src/index.ts (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/src/propagation.ts (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/src/transform.ts (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/test/ShimTracer.test.ts (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/test/propagation.test.ts (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/test/transform.test.ts (100%) rename experimental/packages/{opentelemetry-shim-opencensus => shim-opencensus}/tsconfig.json (100%) diff --git a/experimental/packages/opentelemetry-shim-opencensus/.eslintignore b/experimental/packages/shim-opencensus/.eslintignore similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/.eslintignore rename to experimental/packages/shim-opencensus/.eslintignore diff --git a/experimental/packages/opentelemetry-shim-opencensus/.eslintrc.js b/experimental/packages/shim-opencensus/.eslintrc.js similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/.eslintrc.js rename to experimental/packages/shim-opencensus/.eslintrc.js diff --git a/experimental/packages/opentelemetry-shim-opencensus/.npmignore b/experimental/packages/shim-opencensus/.npmignore similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/.npmignore rename to experimental/packages/shim-opencensus/.npmignore diff --git a/experimental/packages/opentelemetry-shim-opencensus/LICENSE b/experimental/packages/shim-opencensus/LICENSE similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/LICENSE rename to experimental/packages/shim-opencensus/LICENSE diff --git a/experimental/packages/opentelemetry-shim-opencensus/README.md b/experimental/packages/shim-opencensus/README.md similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/README.md rename to experimental/packages/shim-opencensus/README.md diff --git a/experimental/packages/opentelemetry-shim-opencensus/package.json b/experimental/packages/shim-opencensus/package.json similarity index 97% rename from experimental/packages/opentelemetry-shim-opencensus/package.json rename to experimental/packages/shim-opencensus/package.json index ed8b12241..c6bcfc0e8 100644 --- a/experimental/packages/opentelemetry-shim-opencensus/package.json +++ b/experimental/packages/shim-opencensus/package.json @@ -69,6 +69,6 @@ "semver": "^7.3.5", "require-in-the-middle": "^6.0.0" }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-shim-opencensus", + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/shim-opencensus", "sideEffects": false } diff --git a/experimental/packages/opentelemetry-shim-opencensus/src/index.ts b/experimental/packages/shim-opencensus/src/index.ts similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/src/index.ts rename to experimental/packages/shim-opencensus/src/index.ts diff --git a/experimental/packages/opentelemetry-shim-opencensus/src/propagation.ts b/experimental/packages/shim-opencensus/src/propagation.ts similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/src/propagation.ts rename to experimental/packages/shim-opencensus/src/propagation.ts diff --git a/experimental/packages/opentelemetry-shim-opencensus/src/transform.ts b/experimental/packages/shim-opencensus/src/transform.ts similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/src/transform.ts rename to experimental/packages/shim-opencensus/src/transform.ts diff --git a/experimental/packages/opentelemetry-shim-opencensus/test/ShimTracer.test.ts b/experimental/packages/shim-opencensus/test/ShimTracer.test.ts similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/test/ShimTracer.test.ts rename to experimental/packages/shim-opencensus/test/ShimTracer.test.ts diff --git a/experimental/packages/opentelemetry-shim-opencensus/test/propagation.test.ts b/experimental/packages/shim-opencensus/test/propagation.test.ts similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/test/propagation.test.ts rename to experimental/packages/shim-opencensus/test/propagation.test.ts diff --git a/experimental/packages/opentelemetry-shim-opencensus/test/transform.test.ts b/experimental/packages/shim-opencensus/test/transform.test.ts similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/test/transform.test.ts rename to experimental/packages/shim-opencensus/test/transform.test.ts diff --git a/experimental/packages/opentelemetry-shim-opencensus/tsconfig.json b/experimental/packages/shim-opencensus/tsconfig.json similarity index 100% rename from experimental/packages/opentelemetry-shim-opencensus/tsconfig.json rename to experimental/packages/shim-opencensus/tsconfig.json diff --git a/tsconfig.json b/tsconfig.json index 1a275f41d..4448fed79 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -108,9 +108,6 @@ { "path": "experimental/packages/opentelemetry-sdk-node" }, - { - "path": "experimental/packages/opentelemetry-shim-opencensus" - }, { "path": "experimental/packages/otlp-exporter-base" }, @@ -126,6 +123,9 @@ { "path": "experimental/packages/sdk-logs" }, + { + "path": "experimental/packages/shim-opencensus" + }, { "path": "packages/opentelemetry-context-async-hooks" }, From 4eb405ee4875b17f8368d9a88d68c10f24d9987e Mon Sep 17 00:00:00 2001 From: Sami Musallam Date: Tue, 9 May 2023 10:46:00 +0300 Subject: [PATCH 25/72] fix(eslint-no-floating-promises): added no-floating-promises rule (#1488) Co-authored-by: Haddas Bronfman <85441461+haddasbronfman@users.noreply.github.com> --- eslint.config.js | 1 + .../src/instrumentation.ts | 17 +++++++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/eslint.config.js b/eslint.config.js index 439bfc0c0..e34242567 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -29,6 +29,7 @@ module.exports = { { files: ['*.ts'], rules: { + "@typescript-eslint/no-floating-promises": "error", "@typescript-eslint/no-this-alias": "off", "@typescript-eslint/naming-convention": [ "error", diff --git a/plugins/node/opentelemetry-instrumentation-graphql/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-graphql/src/instrumentation.ts index 438121605..5872fb8df 100644 --- a/plugins/node/opentelemetry-instrumentation-graphql/src/instrumentation.ts +++ b/plugins/node/opentelemetry-instrumentation-graphql/src/instrumentation.ts @@ -253,13 +253,18 @@ export class GraphQLInstrumentation extends InstrumentationBase { } if (isPromise(result)) { - (result as Promise).then(resultData => { - if (typeof config.responseHook !== 'function') { - endSpan(span); - return; + (result as Promise).then( + resultData => { + if (typeof config.responseHook !== 'function') { + endSpan(span); + return; + } + this._executeResponseHook(span, resultData); + }, + error => { + endSpan(span, error); } - this._executeResponseHook(span, resultData); - }); + ); } else { if (typeof config.responseHook !== 'function') { endSpan(span); From 79cd6773e266927538647240f7ef19fa71b4fb73 Mon Sep 17 00:00:00 2001 From: Carol Abadeer <60774943+carolabadeer@users.noreply.github.com> Date: Thu, 11 May 2023 00:42:18 -0700 Subject: [PATCH 26/72] feat(opentelemetry-sampler-aws-xray): add x-ray remote sampler (#1443) Co-authored-by: Marc Pichler --- .github/component_owners.yml | 2 + .../.eslintignore | 1 + .../.eslintrc.js | 8 + .../opentelemetry-sampler-aws-xray/LICENSE | 201 ++++++++++++++++++ .../opentelemetry-sampler-aws-xray/README.md | 63 ++++++ .../package.json | 73 +++++++ .../src/index.ts | 17 ++ .../src/remote-sampler.ts | 114 ++++++++++ .../src/types.ts | 90 ++++++++ .../test/remote-sampler.test.ts | 173 +++++++++++++++ .../tsconfig.esm.json | 11 + .../tsconfig.json | 11 + 12 files changed, 764 insertions(+) create mode 100644 packages/opentelemetry-sampler-aws-xray/.eslintignore create mode 100644 packages/opentelemetry-sampler-aws-xray/.eslintrc.js create mode 100644 packages/opentelemetry-sampler-aws-xray/LICENSE create mode 100644 packages/opentelemetry-sampler-aws-xray/README.md create mode 100644 packages/opentelemetry-sampler-aws-xray/package.json create mode 100644 packages/opentelemetry-sampler-aws-xray/src/index.ts create mode 100644 packages/opentelemetry-sampler-aws-xray/src/remote-sampler.ts create mode 100644 packages/opentelemetry-sampler-aws-xray/src/types.ts create mode 100644 packages/opentelemetry-sampler-aws-xray/test/remote-sampler.test.ts create mode 100644 packages/opentelemetry-sampler-aws-xray/tsconfig.esm.json create mode 100644 packages/opentelemetry-sampler-aws-xray/tsconfig.json diff --git a/.github/component_owners.yml b/.github/component_owners.yml index 83724acf2..0b2aa8fdc 100644 --- a/.github/component_owners.yml +++ b/.github/component_owners.yml @@ -23,6 +23,8 @@ components: - legendecas packages/opentelemetry-id-generator-aws-xray: - carolabadeer + packages/opentelemetry-sampler-aws-xray: + - carolabadeer packages/opentelemetry-propagation-utils: - dyladan - pichlermarc diff --git a/packages/opentelemetry-sampler-aws-xray/.eslintignore b/packages/opentelemetry-sampler-aws-xray/.eslintignore new file mode 100644 index 000000000..c795b054e --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/.eslintignore @@ -0,0 +1 @@ +build \ No newline at end of file diff --git a/packages/opentelemetry-sampler-aws-xray/.eslintrc.js b/packages/opentelemetry-sampler-aws-xray/.eslintrc.js new file mode 100644 index 000000000..e198dc0f4 --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/.eslintrc.js @@ -0,0 +1,8 @@ +module.exports = { + "env": { + "mocha": true, + "commonjs": true, + "node": true + }, + ...require('../../eslint.config.js') +} diff --git a/packages/opentelemetry-sampler-aws-xray/LICENSE b/packages/opentelemetry-sampler-aws-xray/LICENSE new file mode 100644 index 000000000..e50e8c80f --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [2022] 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 + + 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. diff --git a/packages/opentelemetry-sampler-aws-xray/README.md b/packages/opentelemetry-sampler-aws-xray/README.md new file mode 100644 index 000000000..5454b1e97 --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/README.md @@ -0,0 +1,63 @@ +# AWS X-Ray Remote Sampler + +> This component is still in development and has not been released as an npm package. + +component owner: @carolabadeer + +This module provides the remote/centralized sampler for AWS X-Ray. + +## Usage + +```js + +const { AWSXRayRemoteSampler } = require('@opentelemetry/sampler-aws-xray'); +const opentelemetry = require("@opentelemetry/sdk-node"); +const { Resource } = require("@opentelemetry/resources"); +const { BatchSpanProcessor} = require('@opentelemetry/sdk-trace-base'); +const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-grpc'); +const { AWSXRayPropagator } = require("@opentelemetry/propagator-aws-xray"); +const { AWSXRayIdGenerator } = require("@opentelemetry/id-generator-aws-xray"); + + +// Initialize resource, trace exporter, span processor, and ID generator +const _resource = Resource.default().merge(new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: "remote-sampler-app", + })); +const _traceExporter = new OTLPTraceExporter(); +const _spanProcessor = new BatchSpanProcessor(_traceExporter); +const _tracerConfig = { + // add x-ray remote sampler + sampler: new AWSXRayRemoteSampler(), + idGenerator: new AWSXRayIdGenerator(), +} + +const sdk = new opentelemetry.NodeSDK({ + textMapPropagator: new AWSXRayPropagator(), + instrumentations: [ + new HttpInstrumentation(), + new AwsInstrumentation({ + suppressInternalInstrumentation: true + }), + ], + resource: _resource, + spanProcessor: _spanProcessor, + traceExporter: _traceExporter, + }); + + sdk.configureTracerProvider(_tracerConfig, _spanProcessor); + +``` + +For more details on setting up the global tracer provider to send traces to AWS X-Ray, refer to [this documentation](https://aws-otel.github.io/docs/getting-started/js-sdk/trace-manual-instr#setting-up-the-global-tracer). + +Please note that AWS Lambda does not support X-Ray remote sampling. + +## Useful links + +- [More information on OpenTelemetry](https://opentelemetry.io/) +- [More about OpenTelemetry JavaScript](https://github.com/open-telemetry/opentelemetry-js) +- [More in-depth documentation on setting up OpenTelemetry to send traces to AWS X-Ray](https://aws-otel.github.io/docs/getting-started/javascript-sdk) + +## License + +Apache 2.0 - See [LICENSE](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE) for more information. diff --git a/packages/opentelemetry-sampler-aws-xray/package.json b/packages/opentelemetry-sampler-aws-xray/package.json new file mode 100644 index 000000000..f28f1e333 --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/package.json @@ -0,0 +1,73 @@ +{ + "name": "@opentelemetry/sampler-aws-xray", + "version": "0.34.0", + "private": true, + "description": "OpenTelemetry remote sampler for AWS X-Ray", + "keywords": [ + "aws", + "sampler", + "nodejs", + "opentelemetry", + "AWS", + "X-Ray" + ], + "license": "Apache-2.0", + "author": "OpenTelemetry Authors", + "bugs": { + "url": "https://github.com/open-telemetry/opentelemetry-js-contrib/issues" + }, + "main": "build/src/index.js", + "types": "build/src/index.d.ts", + "files": [ + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "repository": "open-telemetry/opentelemetry-js-contrib", + "scripts": { + "compile": "tsc -p .", + "lint": "eslint . --ext .ts", + "lint:fix": "eslint . --ext .ts --fix", + "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/sampler-aws-xray --include-dependencies", + "prewatch": "npm run precompile", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json", + "prepare": "npm run compile", + "tdd": "npm run test -- --watch-extensions ts --watch", + "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", + "version:update": "node ../../scripts/version-update.js", + "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.3.0" + }, + "dependencies": { + "@opentelemetry/core": "^1.8.0", + "@opentelemetry/sdk-trace-base": "^1.8.0", + "@opentelemetry/semantic-conventions": "^1.0.0", + "axios": "^1.3.5" + }, + "devDependencies": { + "@opentelemetry/api": "^1.3.0", + "@opentelemetry/contrib-test-utils": "^0.33.1", + "@types/mocha": "8.2.3", + "@types/node": "18.11.7", + "@types/sinon": "10.0.6", + "eslint": "8.7.0", + "expect": "29.2.0", + "mocha": "7.2.0", + "nock": "13.2.1", + "sinon": "15.0.1", + "ts-mocha": "10.0.0", + "nyc": "15.1.0", + "typescript": "4.4.4", + "gts": "3.1.0", + "@typescript-eslint/eslint-plugin": "5.8.1", + "@typescript-eslint/parser": "5.8.1" + }, + "engines": { + "node": ">=14" + } +} diff --git a/packages/opentelemetry-sampler-aws-xray/src/index.ts b/packages/opentelemetry-sampler-aws-xray/src/index.ts new file mode 100644 index 000000000..eb37ee973 --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/src/index.ts @@ -0,0 +1,17 @@ +/* + * 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. + */ +export * from './remote-sampler'; +export { AWSXRaySamplerConfig } from './types'; diff --git a/packages/opentelemetry-sampler-aws-xray/src/remote-sampler.ts b/packages/opentelemetry-sampler-aws-xray/src/remote-sampler.ts new file mode 100644 index 000000000..efa169c52 --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/src/remote-sampler.ts @@ -0,0 +1,114 @@ +/* + * 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 { + Sampler, + SamplingDecision, + SamplingResult, +} from '@opentelemetry/sdk-trace-base'; +import { diag, DiagLogger } from '@opentelemetry/api'; +import { + SamplingRule, + AWSXRaySamplerConfig, + SamplingRuleRecord, +} from './types'; +import axios from 'axios'; + +// 5 minute interval on sampling rules fetch (default polling interval) +const DEFAULT_INTERVAL_MS = 5 * 60 * 1000; +// Default endpoint for awsproxy : https://aws-otel.github.io/docs/getting-started/remote-sampling#enable-awsproxy-extension +const DEFAULT_AWS_PROXY_ENDPOINT = 'http://localhost:2000'; +const SAMPLING_RULES_PATH = '/GetSamplingRules'; + +// IN PROGRESS - SKELETON CLASS +export class AWSXRayRemoteSampler implements Sampler { + private _pollingInterval: number; + private _awsProxyEndpoint: string; + private _samplerDiag: DiagLogger; + + constructor(samplerConfig: AWSXRaySamplerConfig) { + this._pollingInterval = + samplerConfig.pollingIntervalMs ?? DEFAULT_INTERVAL_MS; + this._awsProxyEndpoint = samplerConfig.endpoint + ? samplerConfig.endpoint + : DEFAULT_AWS_PROXY_ENDPOINT; + + if (this._pollingInterval <= 0) { + throw new TypeError('pollingInterval must be a positive integer'); + } + + this._samplerDiag = diag.createComponentLogger({ + namespace: '@opentelemetry/sampler-aws-xray', + }); + + // execute first get Sampling rules update using polling interval + this.startRulePoller(); + } + + shouldSample(): SamplingResult { + // Implementation to be added + return { decision: SamplingDecision.NOT_RECORD }; + } + + toString(): string { + return `AWSXRayRemoteSampler{endpoint=${this._awsProxyEndpoint}, pollingInterval=${this._pollingInterval}}`; + } + + private getAndUpdateSamplingRules = async (): Promise => { + let samplingRules: SamplingRule[] = []; // reset rules array + + const requestConfig = { + headers: { + 'Content-Type': 'application/json', + }, + }; + + try { + const samplingRulesEndpoint = + this._awsProxyEndpoint + SAMPLING_RULES_PATH; + const response = await axios.post( + samplingRulesEndpoint, + {}, + requestConfig + ); + const responseJson = response.data; + + samplingRules = + responseJson?.SamplingRuleRecords.map( + (record: SamplingRuleRecord) => record.SamplingRule + ).filter(Boolean) ?? []; + + // TODO: pass samplingRules to rule cache, temporarily logging the samplingRules array + this._samplerDiag.debug('sampling rules: ', samplingRules); + } catch (error) { + // Log error + this._samplerDiag.warn('Error fetching sampling rules: ', error); + } + }; + + // fetch sampling rules every polling interval + private startRulePoller(): void { + // execute first update + // this.getAndUpdateSamplingRules() never rejects. Using void operator to suppress @typescript-eslint/no-floating-promises. + void this.getAndUpdateSamplingRules(); + // Update sampling rules every 5 minutes (or user-defined polling interval) + const rulePoller = setInterval( + () => this.getAndUpdateSamplingRules(), + this._pollingInterval + ); + rulePoller.unref(); + } +} diff --git a/packages/opentelemetry-sampler-aws-xray/src/types.ts b/packages/opentelemetry-sampler-aws-xray/src/types.ts new file mode 100644 index 000000000..de595ad77 --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/src/types.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. + */ + +// X-Ray Sampling rule reference: https://docs.aws.amazon.com/xray/latest/api/API_GetSamplingRules.html +export interface SamplingRule { + // a unique name for the rule + RuleName: string; + + // (integer between 1 and 9999) - the priority of the sampling rule. Services evaluate rules in ascending order of + // priority, and make a sampling decision with the first rule that matches. + Priority: number; + + // A fixed number of matching requests to instrument per second, before applying the fixed rate. + ReservoirSize: number; + + // The percentage of matching requests to instrument, after the reservoir is exhausted. + FixedRate: number; + + // The name of the instrumented service, as it appears in the X-Ray service map. + ServiceName: string; + + // The service type, as it appears in the X-Ray service map. + ServiceType: string; + + // The hostname from the HTTP host header. + Host: string; + + // The method of the HTTP request. + HTTPMethod: string; + + // the URL path of the request + URLPath: string; + + // The ARN of the AWS resource running the service. + ResourceARN: string; + + // (Optional) segment attributes that are known when the sampling decision is made. + Attributes?: { [key: string]: string }; + Version: number; +} + +export interface SamplingRuleRecord { + CreatedAt: number; + ModifiedAt: number; + SamplingRule?: SamplingRule; +} + +export interface GetSamplingRulesResponse { + NextToken?: string; + SamplingRuleRecords?: SamplingRuleRecord[]; +} + +// samplingStatisticsDocument is used to store current state of sampling data. +export interface SamplingStatisticsDocument { + // A unique identifier for the service in hexadecimal. + ClientID: string; + // The name of the sampling rule. + RuleName: string; + // The number of requests that matched the rule. + RequestCount: number; + // The number of requests borrowed. + BorrowCount: number; + // The number of requests sampled using the rule. + SampledCount: number; + // The current time. + Timestamp: number; +} + +export interface AWSXRaySamplerConfig { + // endpoint of awsproxy - for more information see https://aws-otel.github.io/docs/getting-started/remote-sampling + // defaults to localhost:2000 if not specified + endpoint?: string; + + // interval of polling sampling rules (in ms) + // defaults to 5 minutes if not specified + pollingIntervalMs?: number; +} diff --git a/packages/opentelemetry-sampler-aws-xray/test/remote-sampler.test.ts b/packages/opentelemetry-sampler-aws-xray/test/remote-sampler.test.ts new file mode 100644 index 000000000..b7d31c7fd --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/test/remote-sampler.test.ts @@ -0,0 +1,173 @@ +/* + * 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 sinon from 'sinon'; +import axios from 'axios'; +import * as nock from 'nock'; +import * as assert from 'assert'; + +import { AWSXRayRemoteSampler } from '../src'; + +describe('GetSamplingRules', () => { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const getSamplingRulesResponseStub: any = { + NextToken: null, + SamplingRuleRecords: [ + { + CreatedAt: 1.67799933e9, + ModifiedAt: 1.67799933e9, + SamplingRule: { + Attributes: { + foo: 'bar', + doo: 'baz', + }, + FixedRate: 0.05, + HTTPMethod: '*', + Host: '*', + Priority: 1000, + ReservoirSize: 10, + ResourceARN: '*', + RuleARN: 'arn:aws:xray:us-west-2:123456789000:sampling-rule/Rule1', + RuleName: 'Rule1', + ServiceName: '*', + ServiceType: 'AWS::Foo::Bar', + URLPath: '*', + Version: 1, + }, + }, + { + CreatedAt: 0.0, + ModifiedAt: 1.611564245e9, + SamplingRule: { + Attributes: {}, + FixedRate: 0.05, + HTTPMethod: '*', + Host: '*', + Priority: 10000, + ReservoirSize: 1, + ResourceARN: '*', + RuleARN: 'arn:aws:xray:us-west-2:123456789000:sampling-rule/Default', + RuleName: 'Default', + ServiceName: '*', + ServiceType: '*', + URLPath: '*', + Version: 1, + }, + }, + { + CreatedAt: 1.676038494e9, + ModifiedAt: 1.676038494e9, + SamplingRule: { + Attributes: {}, + FixedRate: 0.2, + HTTPMethod: 'GET', + Host: '*', + Priority: 1, + ReservoirSize: 10, + ResourceARN: '*', + RuleARN: 'arn:aws:xray:us-west-2:123456789000:sampling-rule/Rule2', + RuleName: 'Rule2', + ServiceName: 'FooBar', + ServiceType: '*', + URLPath: '/foo/bar', + Version: 1, + }, + }, + ], + }; + + let clock: sinon.SinonFakeTimers; + let sampler: AWSXRayRemoteSampler; + let axiosPostSpy: sinon.SinonSpy; + + const defaultEndpoint = 'http://localhost:1234'; + const pollingInterval = 60 * 1000; + const config = { + endpoint: defaultEndpoint, + pollingIntervalMs: pollingInterval, + }; + + before(() => { + nock('http://localhost:2000') + .persist() + .post('/GetSamplingRules') + .reply(200, getSamplingRulesResponseStub); + }); + + beforeEach(() => { + clock = sinon.useFakeTimers(); + axiosPostSpy = sinon.spy(axios, 'post'); + sampler = new AWSXRayRemoteSampler(config); + }); + + afterEach(() => { + clock.restore(); + axiosPostSpy.restore(); + }); + + it('should throw TypeError when an invalid polling interval is passed in', async () => { + const configWithZeroPollingInterval = { + pollingIntervalMs: 0, + }; + const configWithNegativeInterval = { + pollingIntervalMs: -5, + }; + + assert.throws( + () => new AWSXRayRemoteSampler(configWithZeroPollingInterval), + TypeError + ); + assert.throws( + () => new AWSXRayRemoteSampler(configWithNegativeInterval), + TypeError + ); + }); + + it('should make a POST request to the /GetSamplingRules endpoint upon initialization', async () => { + sinon.assert.calledOnce(axiosPostSpy); + }); + + it('should make a POST request to the /GetSamplingRules endpoint', async () => { + clock.tick(pollingInterval); + sinon.assert.calledTwice(axiosPostSpy); + }); + + it('should make 3 POST requests to the /GetSamplingRules endpoint after 3 intervals have passed', async () => { + clock.tick(pollingInterval); + clock.tick(pollingInterval); + + sinon.assert.calledThrice(axiosPostSpy); + }); + + it('should initialize endpoint and polling interval from config correctly', async () => { + assert.strictEqual( + sampler.toString(), + `AWSXRayRemoteSampler{endpoint=${defaultEndpoint}, pollingInterval=${pollingInterval}}` + ); + }); + + it('should fall back to default polling interval and endpoint if not specified in config', async () => { + const sampler = new AWSXRayRemoteSampler({}); + + // default polling interval (5 minutes) = 5 * 60 * 1000 + assert.strictEqual( + sampler.toString(), + `AWSXRayRemoteSampler{endpoint=http://localhost:2000, pollingInterval=${ + 5 * 60 * 1000 + }}` + ); + }); +}); diff --git a/packages/opentelemetry-sampler-aws-xray/tsconfig.esm.json b/packages/opentelemetry-sampler-aws-xray/tsconfig.esm.json new file mode 100644 index 000000000..a94adff6a --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.base.esm.json", + "compilerOptions": { + "rootDir": "src", + "outDir": "build/esm", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} diff --git a/packages/opentelemetry-sampler-aws-xray/tsconfig.json b/packages/opentelemetry-sampler-aws-xray/tsconfig.json new file mode 100644 index 000000000..4078877ce --- /dev/null +++ b/packages/opentelemetry-sampler-aws-xray/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.base", + "compilerOptions": { + "rootDir": ".", + "outDir": "build" + }, + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} From 32632bd30309621908da8166c6595a23af892f06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gerhard=20St=C3=B6bich?= Date: Thu, 11 May 2023 10:21:23 +0200 Subject: [PATCH 27/72] doc(instrumentation): add limitiations section to readme (#3786) Co-authored-by: Marc Pichler --- experimental/CHANGELOG.md | 2 + .../opentelemetry-instrumentation/README.md | 82 ++++++------------- 2 files changed, 25 insertions(+), 59 deletions(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 02d6ab567..835b46c4d 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -21,6 +21,8 @@ All notable changes to experimental packages in this project will be documented ### :books: (Refine Doc) +* doc(instrumentation): add limitiations section to readme [#3786](https://github.com/open-telemetry/opentelemetry-js/pull/3786) @flarna + ### :house: (Internal) ## 0.38.0 diff --git a/experimental/packages/opentelemetry-instrumentation/README.md b/experimental/packages/opentelemetry-instrumentation/README.md index 26e9f8c69..682fc5741 100644 --- a/experimental/packages/opentelemetry-instrumentation/README.md +++ b/experimental/packages/opentelemetry-instrumentation/README.md @@ -23,9 +23,9 @@ import { import type * as module_name_to_be_patched from 'module_name_to_be_patched'; -export class MyPlugin extends InstrumentationBase { +export class MyInstrumentation extends InstrumentationBase { constructor(config: InstrumentationConfig = {}) { - super('MyPlugin', VERSION, config); + super('MyInstrumentation', VERSION, config); } /** @@ -106,12 +106,12 @@ export class MyPlugin extends InstrumentationBase { } } -// Later +// Later, but before the module to instrument is required -const myPLugin = new MyPlugin(); -myPLugin.setTracerProvider(provider); // this is optional, only if global TracerProvider shouldn't be used -myPLugin.setMeterProvider(meterProvider); // this is optional -myPLugin.enable(); +const myInstrumentationn = new MyInstrumentation(); +myInstrumentation.setTracerProvider(provider); // this is optional, only if global TracerProvider shouldn't be used +myInstrumentation.setMeterProvider(meterProvider); // this is optional +myInstrumentation.enable(); // or use Auto Loader ``` @@ -125,9 +125,9 @@ import { import { Instrumentation } from '@opentelemetry/instrumentation'; -export class MyPlugin extends InstrumentationBase { +export class MyInstrumentation extends InstrumentationBase { constructor(config: InstrumentationConfig = {}) { - super('MyPlugin', VERSION, config); + super('MyInstrumentation', VERSION, config); } private _patchOpen() { @@ -150,59 +150,15 @@ export class MyPlugin extends InstrumentationBase { // Later -const myPLugin = new MyPlugin(); -myPLugin.setTracerProvider(provider); // this is optional, only if global TracerProvider shouldn't be used -myPLugin.setMeterProvider(meterProvider); // this is optional, only if global MeterProvider shouldn't be used -myPLugin.enable(); +const myInstrumentation = new MyInstrumentation(); +myInstrumentation.setTracerProvider(provider); // this is optional, only if global TracerProvider shouldn't be used +myInstrumentation.setMeterProvider(meterProvider); // this is optional, only if global MeterProvider shouldn't be used +myInstrumentation.enable(); // or use Auto Loader ``` ## AutoLoader -Successor of loading plugins through TracerProvider "plugins" option. -It also supersedes PluginLoader for node. The old configurations usually looks like - -### NODE - old way using TracerProvider - not available anymore - -```javascript -const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node'); -const { B3Propagator } = require('@opentelemetry/propagator-b3'); -const provider = new NodeTracerProvider({ - plugins: { - http: { enabled: false }, - }, -}); -provider.register({ - propagator: new B3Propagator(), -}); -``` - -### WEB - old way using TracerProvider - not available anymore - -```javascript -const { WebTracerProvider } = require('@opentelemetry/sdk-trace-web'); -const { UserInteractionPlugin } = require('@opentelemetry/plugin-user-interaction'); -const { XMLHttpRequestInstrumentation } = require('@opentelemetry/instrumentation-xml-http-request'); -const { B3Propagator } = require('@opentelemetry/propagator-b3'); -const provider = new WebTracerProvider({ - plugins: [ - new UserInteractionPlugin(), - new XMLHttpRequestInstrumentation({ - ignoreUrls: [/localhost/], - propagateTraceHeaderCorsUrls: [ - 'http://localhost:8090', - ], - }), - ], -}); -provider.register({ - propagator: new B3Propagator(), -}); -``` - -After change it will look like this - mixing plugins and instrumentations together -All plugins will be bound to TracerProvider as well as instrumentations - ### NODE - Auto Loader ```javascript @@ -263,14 +219,22 @@ If nothing is specified the global registered provider is used. Usually this is There might be usecase where someone has the need for more providers within an application. Please note that special care must be takes in such setups to avoid leaking information from one provider to the other because there are a lot places where e.g. the global `ContextManager` or `Propagator` is used. +## Limitations + +Instrumentations for external modules (e.g. express, mongodb,...) hooks the `require` call. Therefore following conditions need to be met that this mechanism can work: + +* `require` is used. ECMA script modules (using `import`) is not supported as of now +* Instrumentations are registered **before** the module to instrument is `require`ed +* modules are not included in a bundle. Tools like `esbuild`, `webpack`, ... usually have some mechanism to exclude specific modules from bundling + ## License Apache 2.0 - See [LICENSE][license-url] for more information. ## Useful links -- For more information on OpenTelemetry, visit: -- For help or feedback on this project, join us in [GitHub Discussions][discussions-url] +* For more information on OpenTelemetry, visit: +* For help or feedback on this project, join us in [GitHub Discussions][discussions-url] [discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions [license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE From 8fc76896595aac912bf9e15d4f19c167317844c8 Mon Sep 17 00:00:00 2001 From: Marc Pichler Date: Thu, 11 May 2023 15:08:45 +0200 Subject: [PATCH 28/72] chore: release 1.13 / 0.39 (#3776) --- CHANGELOG.md | 14 ++++++--- examples/http/package.json | 18 +++++------ examples/https/package.json | 18 +++++------ examples/opentelemetry-web/package.json | 30 +++++++++---------- examples/otlp-exporter-node/package.json | 24 +++++++-------- experimental/CHANGELOG.md | 10 +++++++ .../node14/package.json | 6 ++-- .../node16/package.json | 6 ++-- experimental/examples/logs/package.json | 10 +++---- experimental/examples/prometheus/package.json | 6 ++-- experimental/packages/api-events/package.json | 2 +- experimental/packages/api-logs/package.json | 2 +- .../exporter-logs-otlp-grpc/package.json | 18 +++++------ .../exporter-trace-otlp-grpc/package.json | 14 ++++----- .../exporter-trace-otlp-http/package.json | 12 ++++---- .../exporter-trace-otlp-proto/package.json | 14 ++++----- .../package.json | 6 ++-- .../package.json | 14 ++++----- .../package.json | 12 ++++---- .../package.json | 16 +++++----- .../package.json | 10 +++---- .../package.json | 16 +++++----- .../package.json | 14 ++++----- .../package.json | 16 +++++----- .../package.json | 16 +++++----- .../package.json | 4 +-- .../opentelemetry-sdk-node/package.json | 28 ++++++++--------- .../packages/otlp-exporter-base/package.json | 4 +-- .../otlp-grpc-exporter-base/package.json | 16 +++++----- .../otlp-proto-exporter-base/package.json | 6 ++-- .../packages/otlp-transformer/package.json | 18 +++++------ experimental/packages/sdk-logs/package.json | 10 +++---- .../packages/shim-opencensus/package.json | 14 ++++----- .../package.json | 8 ++--- .../package.json | 2 +- .../package.json | 2 +- .../opentelemetry-context-zone/package.json | 4 +-- packages/opentelemetry-core/package.json | 4 +-- .../package.json | 10 +++---- .../package.json | 10 +++---- .../opentelemetry-propagator-b3/package.json | 4 +-- .../package.json | 4 +-- packages/opentelemetry-resources/package.json | 6 ++-- .../opentelemetry-sdk-trace-base/package.json | 8 ++--- .../opentelemetry-sdk-trace-node/package.json | 16 +++++----- .../opentelemetry-sdk-trace-web/package.json | 14 ++++----- .../package.json | 2 +- .../package.json | 12 ++++---- packages/sdk-metrics/package.json | 6 ++-- packages/template/package.json | 2 +- selenium-tests/package.json | 22 +++++++------- 51 files changed, 288 insertions(+), 272 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 07bd03fa7..f3ebf020f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,16 @@ For experimental package changes, see the [experimental CHANGELOG](experimental/ ### :rocket: (Enhancement) +### :bug: (Bug Fix) + +### :books: (Refine Doc) + +### :house: (Internal) + +## 1.13.0 + +### :rocket: (Enhancement) + * feat(core): add environment variables for OTLP log exporters. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 ### :bug: (Bug Fix) @@ -18,10 +28,6 @@ For experimental package changes, see the [experimental CHANGELOG](experimental/ * fix(http-instrumentation): stop listening to `request`'s `close` event once it has emitted `response` [#3625](https://github.com/open-telemetry/opentelemetry-js/pull/3625) @SimenB * fix(sdk-node): fix initialization in bundled environments by not loading @opentelemetry/exporter-jaeger [#3739](https://github.com/open-telemetry/opentelemetry-js/pull/3739) @pichlermarc -### :books: (Refine Doc) - -### :house: (Internal) - ## 1.12.0 ### :rocket: (Enhancement) diff --git a/examples/http/package.json b/examples/http/package.json index 50ea5401f..e5056a27d 100644 --- a/examples/http/package.json +++ b/examples/http/package.json @@ -1,7 +1,7 @@ { "name": "http-example", "private": true, - "version": "0.37.0", + "version": "0.39.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.9.1", - "@opentelemetry/exporter-zipkin": "1.9.1", - "@opentelemetry/instrumentation": "0.35.1", - "@opentelemetry/instrumentation-http": "0.35.1", - "@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/exporter-jaeger": "1.13.0", + "@opentelemetry/exporter-zipkin": "1.13.0", + "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/instrumentation-http": "0.39.0", + "@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" }, "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 b13422bea..1fad466c5 100644 --- a/examples/https/package.json +++ b/examples/https/package.json @@ -1,7 +1,7 @@ { "name": "https-example", "private": true, - "version": "0.38.0", + "version": "0.39.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.12.0", - "@opentelemetry/exporter-zipkin": "1.12.0", - "@opentelemetry/instrumentation": "0.38.0", - "@opentelemetry/instrumentation-http": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/sdk-trace-node": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/exporter-jaeger": "1.13.0", + "@opentelemetry/exporter-zipkin": "1.13.0", + "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/instrumentation-http": "0.39.0", + "@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" }, "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 105d86b64..3d9c439eb 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.38.0", + "version": "0.39.0", "description": "Example of using @opentelemetry/sdk-trace-web and @opentelemetry/sdk-metrics in browser", "main": "index.js", "scripts": { @@ -43,20 +43,20 @@ }, "dependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/context-zone": "1.12.0", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.38.0", - "@opentelemetry/exporter-trace-otlp-http": "0.38.0", - "@opentelemetry/exporter-trace-otlp-proto": "0.38.0", - "@opentelemetry/exporter-zipkin": "1.12.0", - "@opentelemetry/instrumentation": "0.38.0", - "@opentelemetry/instrumentation-fetch": "0.38.0", - "@opentelemetry/instrumentation-xml-http-request": "0.38.0", - "@opentelemetry/propagator-b3": "1.12.0", - "@opentelemetry/sdk-metrics": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/sdk-trace-web": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/context-zone": "1.13.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/exporter-metrics-otlp-http": "0.39.0", + "@opentelemetry/exporter-trace-otlp-http": "0.39.0", + "@opentelemetry/exporter-trace-otlp-proto": "0.39.0", + "@opentelemetry/exporter-zipkin": "1.13.0", + "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/instrumentation-fetch": "0.39.0", + "@opentelemetry/instrumentation-xml-http-request": "0.39.0", + "@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" }, "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 e5e6b2197..5efbfd944 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.38.0", + "version": "0.39.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.12.0", - "@opentelemetry/exporter-metrics-otlp-grpc": "0.38.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.38.0", - "@opentelemetry/exporter-metrics-otlp-proto": "0.38.0", - "@opentelemetry/exporter-trace-otlp-grpc": "0.38.0", - "@opentelemetry/exporter-trace-otlp-http": "0.38.0", - "@opentelemetry/exporter-trace-otlp-proto": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-metrics": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/exporter-metrics-otlp-grpc": "0.39.0", + "@opentelemetry/exporter-metrics-otlp-http": "0.39.0", + "@opentelemetry/exporter-metrics-otlp-proto": "0.39.0", + "@opentelemetry/exporter-trace-otlp-grpc": "0.39.0", + "@opentelemetry/exporter-trace-otlp-http": "0.39.0", + "@opentelemetry/exporter-trace-otlp-proto": "0.39.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-metrics": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.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 835b46c4d..509ef5d4b 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -8,6 +8,16 @@ All notable changes to experimental packages in this project will be documented ### :rocket: (Enhancement) +### :bug: (Bug Fix) + +### :books: (Refine Doc) + +### :house: (Internal) + +## 0.39.0 + +### :rocket: (Enhancement) + * feat(otlp-transformer): support log records. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 * feat(otlp-grpc-exporter-base): support log records. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 * feat(exporter-logs-otlp-grpc): otlp-grpc exporter for logs. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 diff --git a/experimental/backwards-compatability/node14/package.json b/experimental/backwards-compatability/node14/package.json index 6b8f16258..83d699ab2 100644 --- a/experimental/backwards-compatability/node14/package.json +++ b/experimental/backwards-compatability/node14/package.json @@ -1,6 +1,6 @@ { "name": "backcompat-node14", - "version": "0.38.0", + "version": "0.39.0", "private": true, "description": "Backwards compatability app for node 14 types and the OpenTelemetry Node.js SDK", "main": "index.js", @@ -9,8 +9,8 @@ "peer-api-check": "node ../../../scripts/peer-api-check.js" }, "dependencies": { - "@opentelemetry/sdk-node": "0.38.0", - "@opentelemetry/sdk-trace-base": "1.12.0" + "@opentelemetry/sdk-node": "0.39.0", + "@opentelemetry/sdk-trace-base": "1.13.0" }, "devDependencies": { "@types/node": "14.18.25", diff --git a/experimental/backwards-compatability/node16/package.json b/experimental/backwards-compatability/node16/package.json index 67caa211a..d21c9355b 100644 --- a/experimental/backwards-compatability/node16/package.json +++ b/experimental/backwards-compatability/node16/package.json @@ -1,6 +1,6 @@ { "name": "backcompat-node16", - "version": "0.38.0", + "version": "0.39.0", "private": true, "description": "Backwards compatability app for node 16 types and the OpenTelemetry Node.js SDK", "main": "index.js", @@ -9,8 +9,8 @@ "peer-api-check": "node ../../../scripts/peer-api-check.js" }, "dependencies": { - "@opentelemetry/sdk-node": "0.38.0", - "@opentelemetry/sdk-trace-base": "1.12.0" + "@opentelemetry/sdk-node": "0.39.0", + "@opentelemetry/sdk-trace-base": "1.13.0" }, "devDependencies": { "@types/node": "16.11.52", diff --git a/experimental/examples/logs/package.json b/experimental/examples/logs/package.json index a857e59f1..eed77b870 100644 --- a/experimental/examples/logs/package.json +++ b/experimental/examples/logs/package.json @@ -1,17 +1,17 @@ { "name": "logs-example", - "version": "0.1.0", + "version": "0.2.0", "private": true, "scripts": { "start": "ts-node index.ts" }, "dependencies": { "@opentelemetry/api": "^1.4.1", - "@opentelemetry/api-logs": "^0.38.0", - "@opentelemetry/sdk-logs": "^0.38.0" + "@opentelemetry/api-logs": "0.39.0", + "@opentelemetry/sdk-logs": "0.39.0" }, "devDependencies": { - "ts-node": "^10.9.1", - "@types/node": "18.6.5" + "@types/node": "18.6.5", + "ts-node": "^10.9.1" } } diff --git a/experimental/examples/prometheus/package.json b/experimental/examples/prometheus/package.json index 404a13af6..091a96769 100644 --- a/experimental/examples/prometheus/package.json +++ b/experimental/examples/prometheus/package.json @@ -1,6 +1,6 @@ { "name": "prometheus-example", - "version": "0.38.0", + "version": "0.39.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.38.0", - "@opentelemetry/sdk-metrics": "1.12.0" + "@opentelemetry/exporter-prometheus": "0.39.0", + "@opentelemetry/sdk-metrics": "1.13.0" } } diff --git a/experimental/packages/api-events/package.json b/experimental/packages/api-events/package.json index 04b649499..9772c97ee 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.38.0", + "version": "0.39.0", "description": "Public events API for OpenTelemetry", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/experimental/packages/api-logs/package.json b/experimental/packages/api-logs/package.json index dfb6d9ab6..16565f893 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.38.0", + "version": "0.39.0", "description": "Public logs API for OpenTelemetry", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/experimental/packages/exporter-logs-otlp-grpc/package.json b/experimental/packages/exporter-logs-otlp-grpc/package.json index 661e8c722..4ef6fbd75 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.38.0", + "version": "0.39.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", @@ -51,9 +51,9 @@ "@babel/core": "7.16.0", "@grpc/proto-loader": "^0.7.3", "@opentelemetry/api": "1.4.1", - "@opentelemetry/api-logs": "0.38.0", - "@opentelemetry/otlp-exporter-base": "0.38.0", - "@opentelemetry/resources": "1.12.0", + "@opentelemetry/api-logs": "0.39.0", + "@opentelemetry/otlp-exporter-base": "0.39.0", + "@opentelemetry/resources": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", @@ -71,11 +71,11 @@ }, "dependencies": { "@grpc/grpc-js": "^1.7.1", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/otlp-grpc-exporter-base": "0.38.0", - "@opentelemetry/otlp-transformer": "0.38.0", - "@opentelemetry/sdk-logs": "0.38.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/otlp-grpc-exporter-base": "0.39.0", + "@opentelemetry/otlp-transformer": "0.39.0", + "@opentelemetry/sdk-logs": "0.39.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/exporter-logs-otlp-grpc", "sideEffects": false -} \ No newline at end of file +} diff --git a/experimental/packages/exporter-trace-otlp-grpc/package.json b/experimental/packages/exporter-trace-otlp-grpc/package.json index 62d71a512..bd9254b78 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.38.0", + "version": "0.39.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", @@ -50,7 +50,7 @@ "@babel/core": "7.16.0", "@grpc/proto-loader": "^0.7.3", "@opentelemetry/api": "1.4.1", - "@opentelemetry/otlp-exporter-base": "0.38.0", + "@opentelemetry/otlp-exporter-base": "0.39.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", @@ -68,11 +68,11 @@ }, "dependencies": { "@grpc/grpc-js": "^1.7.1", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/otlp-grpc-exporter-base": "0.38.0", - "@opentelemetry/otlp-transformer": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/otlp-grpc-exporter-base": "0.39.0", + "@opentelemetry/otlp-transformer": "0.39.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0" }, "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-http/package.json b/experimental/packages/exporter-trace-otlp-http/package.json index 77ff84b9b..887687fb0 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.38.0", + "version": "0.39.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", @@ -93,11 +93,11 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/otlp-exporter-base": "0.38.0", - "@opentelemetry/otlp-transformer": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/otlp-exporter-base": "0.39.0", + "@opentelemetry/otlp-transformer": "0.39.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0" }, "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-proto/package.json b/experimental/packages/exporter-trace-otlp-proto/package.json index 10fb854c8..8149d94ca 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.38.0", + "version": "0.39.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", @@ -80,12 +80,12 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/otlp-exporter-base": "0.38.0", - "@opentelemetry/otlp-proto-exporter-base": "0.38.0", - "@opentelemetry/otlp-transformer": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/otlp-exporter-base": "0.39.0", + "@opentelemetry/otlp-proto-exporter-base": "0.39.0", + "@opentelemetry/otlp-transformer": "0.39.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/exporter-trace-otlp-proto", "sideEffects": false diff --git a/experimental/packages/opentelemetry-browser-detector/package.json b/experimental/packages/opentelemetry-browser-detector/package.json index c691be743..f9e93c7c7 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry Resource Detector for Browser", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -70,8 +70,8 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/browser-detector" } diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/package.json b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/package.json index 02e86fcb4..166cadb91 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.38.0", + "version": "0.39.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", @@ -67,12 +67,12 @@ }, "dependencies": { "@grpc/grpc-js": "^1.7.1", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.38.0", - "@opentelemetry/otlp-grpc-exporter-base": "0.38.0", - "@opentelemetry/otlp-transformer": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-metrics": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/exporter-metrics-otlp-http": "0.39.0", + "@opentelemetry/otlp-grpc-exporter-base": "0.39.0", + "@opentelemetry/otlp-transformer": "0.39.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-metrics": "1.13.0" }, "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-http/package.json b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/package.json index 823098963..f93187419 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.38.0", + "version": "0.39.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", @@ -93,11 +93,11 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/otlp-exporter-base": "0.38.0", - "@opentelemetry/otlp-transformer": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-metrics": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/otlp-exporter-base": "0.39.0", + "@opentelemetry/otlp-transformer": "0.39.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-metrics": "1.13.0" }, "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-proto/package.json b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/package.json index ceb288032..4ad465b62 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.38.0", + "version": "0.39.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", @@ -65,13 +65,13 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.38.0", - "@opentelemetry/otlp-exporter-base": "0.38.0", - "@opentelemetry/otlp-proto-exporter-base": "0.38.0", - "@opentelemetry/otlp-transformer": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-metrics": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/exporter-metrics-otlp-http": "0.39.0", + "@opentelemetry/otlp-exporter-base": "0.39.0", + "@opentelemetry/otlp-proto-exporter-base": "0.39.0", + "@opentelemetry/otlp-transformer": "0.39.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-metrics": "1.13.0" }, "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-prometheus/package.json b/experimental/packages/opentelemetry-exporter-prometheus/package.json index be79a2b2e..a7f203cfe 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry Exporter Prometheus provides a metrics endpoint for Prometheus", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -44,7 +44,7 @@ }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@opentelemetry/semantic-conventions": "1.12.0", + "@opentelemetry/semantic-conventions": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", @@ -59,9 +59,9 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-metrics": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-metrics": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-prometheus", "sideEffects": false diff --git a/experimental/packages/opentelemetry-instrumentation-fetch/package.json b/experimental/packages/opentelemetry-instrumentation-fetch/package.json index e192e4b60..407d23a59 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry fetch automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -56,9 +56,9 @@ "devDependencies": { "@babel/core": "7.16.0", "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-zone": "1.12.0", - "@opentelemetry/propagator-b3": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", + "@opentelemetry/context-zone": "1.13.0", + "@opentelemetry/propagator-b3": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", @@ -86,10 +86,10 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/instrumentation": "0.38.0", - "@opentelemetry/sdk-trace-web": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/sdk-trace-web": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0" }, "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/package.json b/experimental/packages/opentelemetry-instrumentation-grpc/package.json index 5166c08fa..335e0d9ad 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry grpc automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -48,10 +48,10 @@ "@grpc/grpc-js": "^1.7.1", "@grpc/proto-loader": "^0.7.3", "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-async-hooks": "1.12.0", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/sdk-trace-node": "1.12.0", + "@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", "@types/node": "18.6.5", "@types/semver": "7.3.9", @@ -70,8 +70,8 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/instrumentation": "0.38.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/semantic-conventions": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-grpc", "sideEffects": false diff --git a/experimental/packages/opentelemetry-instrumentation-http/package.json b/experimental/packages/opentelemetry-instrumentation-http/package.json index a2e760410..99b790281 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry http/https automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -46,10 +46,10 @@ }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-async-hooks": "1.12.0", - "@opentelemetry/sdk-metrics": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/sdk-trace-node": "1.12.0", + "@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", "@types/node": "18.6.5", "@types/request-promise-native": "1.0.18", @@ -72,9 +72,9 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/instrumentation": "0.38.0", - "@opentelemetry/semantic-conventions": "1.12.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/semantic-conventions": "1.13.0", "semver": "^7.3.5" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http", diff --git a/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json b/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json index 67607dacf..2306d5caf 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry XMLHttpRequest automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -56,9 +56,9 @@ "devDependencies": { "@babel/core": "7.16.0", "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-zone": "1.12.0", - "@opentelemetry/propagator-b3": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", + "@opentelemetry/context-zone": "1.13.0", + "@opentelemetry/propagator-b3": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", @@ -86,10 +86,10 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/instrumentation": "0.38.0", - "@opentelemetry/sdk-trace-web": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/sdk-trace-web": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0" }, "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 266198f5c..5c9cdc5f3 100644 --- a/experimental/packages/opentelemetry-instrumentation/package.json +++ b/experimental/packages/opentelemetry-instrumentation/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation", - "version": "0.38.0", + "version": "0.39.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", @@ -78,7 +78,7 @@ "devDependencies": { "@babel/core": "7.16.0", "@opentelemetry/api": "1.4.1", - "@opentelemetry/sdk-metrics": "1.12.0", + "@opentelemetry/sdk-metrics": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/semver": "7.3.9", diff --git a/experimental/packages/opentelemetry-sdk-node/package.json b/experimental/packages/opentelemetry-sdk-node/package.json index fd4f4cc25..4501bf893 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry SDK for Node.js", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -44,25 +44,25 @@ "access": "public" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/exporter-jaeger": "1.12.0", - "@opentelemetry/exporter-trace-otlp-grpc": "0.38.0", - "@opentelemetry/exporter-trace-otlp-http": "0.38.0", - "@opentelemetry/exporter-trace-otlp-proto": "0.38.0", - "@opentelemetry/exporter-zipkin": "1.12.0", - "@opentelemetry/instrumentation": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-metrics": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/sdk-trace-node": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/exporter-jaeger": "1.13.0", + "@opentelemetry/exporter-trace-otlp-grpc": "0.39.0", + "@opentelemetry/exporter-trace-otlp-http": "0.39.0", + "@opentelemetry/exporter-trace-otlp-proto": "0.39.0", + "@opentelemetry/exporter-zipkin": "1.13.0", + "@opentelemetry/instrumentation": "0.39.0", + "@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" }, "peerDependencies": { "@opentelemetry/api": ">=1.3.0 <1.5.0" }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@opentelemetry/context-async-hooks": "1.12.0", + "@opentelemetry/context-async-hooks": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/semver": "7.3.9", diff --git a/experimental/packages/otlp-exporter-base/package.json b/experimental/packages/otlp-exporter-base/package.json index dd4670f0e..9b7bd0999 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry OTLP Exporter base (for internal use only)", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -61,7 +61,7 @@ "access": "public" }, "dependencies": { - "@opentelemetry/core": "1.12.0" + "@opentelemetry/core": "1.13.0" }, "devDependencies": { "@opentelemetry/api": "1.4.1", diff --git a/experimental/packages/otlp-grpc-exporter-base/package.json b/experimental/packages/otlp-grpc-exporter-base/package.json index 132c96b4c..54771cdde 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry OTLP-gRPC Exporter base (for internal use only)", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -50,9 +50,9 @@ "devDependencies": { "@babel/core": "7.16.0", "@opentelemetry/api": "1.4.1", - "@opentelemetry/otlp-transformer": "0.38.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", + "@opentelemetry/otlp-transformer": "0.39.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", @@ -60,19 +60,19 @@ "cpx": "1.5.0", "mocha": "10.0.0", "nyc": "15.1.0", + "protobufjs-cli": "1.0.2", "sinon": "15.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "protobufjs-cli": "1.0.2" + "typescript": "4.4.4" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0" }, "dependencies": { "@grpc/grpc-js": "^1.7.1", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/otlp-exporter-base": "0.38.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/otlp-exporter-base": "0.39.0", "protobufjs": "^7.2.2" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-grpc-exporter-base", diff --git a/experimental/packages/otlp-proto-exporter-base/package.json b/experimental/packages/otlp-proto-exporter-base/package.json index 56fc97450..eebf5a23f 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.38.0", + "version": "0.39.0", "description": "OpenTelemetry OTLP-HTTP-protobuf Exporter base (for internal use only)", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -77,8 +77,8 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/otlp-exporter-base": "0.38.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/otlp-exporter-base": "0.39.0", "protobufjs": "^7.1.2" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-proto-exporter-base", diff --git a/experimental/packages/otlp-transformer/package.json b/experimental/packages/otlp-transformer/package.json index be608f5ed..bae16536f 100644 --- a/experimental/packages/otlp-transformer/package.json +++ b/experimental/packages/otlp-transformer/package.json @@ -4,7 +4,7 @@ "publishConfig": { "access": "public" }, - "version": "0.38.0", + "version": "0.39.0", "description": "Transform OpenTelemetry SDK data into OTLP", "module": "build/esm/index.js", "esnext": "build/esnext/index.js", @@ -53,11 +53,11 @@ ], "peerDependencies": { "@opentelemetry/api": ">=1.3.0 <1.5.0", - "@opentelemetry/api-logs": "0.38.0" + "@opentelemetry/api-logs": "0.39.0" }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@opentelemetry/api-logs": "0.38.0", + "@opentelemetry/api-logs": "0.39.0", "@types/mocha": "10.0.0", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", @@ -76,12 +76,12 @@ "webpack": "4.46.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-logs": "0.38.0", - "@opentelemetry/sdk-metrics": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-logs": "0.39.0", + "@opentelemetry/sdk-metrics": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-transformer", "sideEffects": false -} \ No newline at end of file +} diff --git a/experimental/packages/sdk-logs/package.json b/experimental/packages/sdk-logs/package.json index f9e5fb196..54b6e0431 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.38.0", + "version": "0.39.0", "publishConfig": { "access": "public" }, @@ -72,11 +72,11 @@ "@opentelemetry/api-logs": ">=0.38.0" }, "devDependencies": { + "@opentelemetry/api": ">=1.4.0 <1.5.0", + "@opentelemetry/api-logs": "0.39.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", - "@opentelemetry/api": ">=1.4.0 <1.5.0", - "@opentelemetry/api-logs": ">=0.38.0", "codecov": "3.8.3", "karma": "6.3.16", "karma-chrome-launcher": "3.1.0", @@ -91,7 +91,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/core": "^1.11.0", - "@opentelemetry/resources": "^1.11.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/resources": "1.13.0" } } diff --git a/experimental/packages/shim-opencensus/package.json b/experimental/packages/shim-opencensus/package.json index c6bcfc0e8..7753c276d 100644 --- a/experimental/packages/shim-opencensus/package.json +++ b/experimental/packages/shim-opencensus/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/shim-opencensus", - "version": "0.38.0", + "version": "0.39.0", "description": "OpenCensus to OpenTelemetry shim", "private": true, "main": "build/src/index.js", @@ -45,8 +45,8 @@ "access": "public" }, "devDependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/context-async-hooks": "1.12.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/context-async-hooks": "1.13.0", "@opencensus/core": "0.1.0", "@opentelemetry/api": "1.4.1", "@types/mocha": "10.0.0", @@ -64,10 +64,10 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "^1.0.0", - "@opentelemetry/context-async-hooks": "^1.0.0", - "semver": "^7.3.5", - "require-in-the-middle": "^6.0.0" + "@opentelemetry/context-async-hooks": "1.13.0", + "@opentelemetry/core": "1.13.0", + "require-in-the-middle": "^6.0.0", + "semver": "^7.3.5" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/shim-opencensus", "sideEffects": false diff --git a/integration-tests/propagation-validation-server/package.json b/integration-tests/propagation-validation-server/package.json index 740a61554..f2d5d6e94 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.12.0", + "version": "1.13.0", "description": "server for w3c tests", "main": "validation_server.js", "private": true, @@ -12,9 +12,9 @@ }, "dependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/context-async-hooks": "1.12.0", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", + "@opentelemetry/context-async-hooks": "1.13.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0", "axios": "0.24.0", "body-parser": "1.19.0", "express": "4.17.3" diff --git a/packages/opentelemetry-context-async-hooks/package.json b/packages/opentelemetry-context-async-hooks/package.json index 2e1cf67a1..efda2f556 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.12.0", + "version": "1.13.0", "description": "OpenTelemetry AsyncHooks-based Context Manager", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/packages/opentelemetry-context-zone-peer-dep/package.json b/packages/opentelemetry-context-zone-peer-dep/package.json index acee0a324..dfcf81d49 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.12.0", + "version": "1.13.0", "description": "OpenTelemetry Context Zone with peer dependency for zone.js", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/packages/opentelemetry-context-zone/package.json b/packages/opentelemetry-context-zone/package.json index c886fdbf0..57d82fcbb 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.12.0", + "version": "1.13.0", "description": "OpenTelemetry Context Zone", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -73,7 +73,7 @@ "webpack-merge": "5.8.0" }, "dependencies": { - "@opentelemetry/context-zone-peer-dep": "1.12.0", + "@opentelemetry/context-zone-peer-dep": "1.13.0", "zone.js": "^0.11.0" }, "sideEffects": true, diff --git a/packages/opentelemetry-core/package.json b/packages/opentelemetry-core/package.json index f6de9f673..5900c8d20 100644 --- a/packages/opentelemetry-core/package.json +++ b/packages/opentelemetry-core/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/core", - "version": "1.12.0", + "version": "1.13.0", "description": "OpenTelemetry Core provides constants and utilities shared by all OpenTelemetry SDK packages.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -90,7 +90,7 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/semantic-conventions": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core", "sideEffects": false diff --git a/packages/opentelemetry-exporter-jaeger/package.json b/packages/opentelemetry-exporter-jaeger/package.json index b91d2f114..6dfc53b45 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.12.0", + "version": "1.13.0", "description": "OpenTelemetry Exporter Jaeger allows user to send collected traces to Jaeger", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -45,7 +45,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/resources": "1.12.0", + "@opentelemetry/resources": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", @@ -61,9 +61,9 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0", "jaeger-client": "^3.15.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-exporter-jaeger", diff --git a/packages/opentelemetry-exporter-zipkin/package.json b/packages/opentelemetry-exporter-zipkin/package.json index 5368ac24b..a6c0e26d4 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.12.0", + "version": "1.13.0", "description": "OpenTelemetry Zipkin Exporter allows the user to send collected traces to Zipkin.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -90,10 +90,10 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0" }, "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 4ba7209c9..31fde1399 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.12.0", + "version": "1.13.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", @@ -51,7 +51,7 @@ "access": "public" }, "dependencies": { - "@opentelemetry/core": "1.12.0" + "@opentelemetry/core": "1.13.0" }, "peerDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0" diff --git a/packages/opentelemetry-propagator-jaeger/package.json b/packages/opentelemetry-propagator-jaeger/package.json index 1ad42bea6..30aa85101 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.12.0", + "version": "1.13.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", @@ -79,7 +79,7 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0" + "@opentelemetry/core": "1.13.0" }, "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 a0ecdf80b..a6bb86ecc 100644 --- a/packages/opentelemetry-resources/package.json +++ b/packages/opentelemetry-resources/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resources", - "version": "1.12.0", + "version": "1.13.0", "description": "OpenTelemetry SDK resources", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -89,8 +89,8 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0" }, "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 f80647b12..d493500dc 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.12.0", + "version": "1.13.0", "description": "OpenTelemetry Tracing", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -91,9 +91,9 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0" }, "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 110b0ad4c..60ef5ccba 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.12.0", + "version": "1.13.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", @@ -46,8 +46,8 @@ }, "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0", + "@opentelemetry/resources": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/semver": "7.3.9", @@ -63,11 +63,11 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/context-async-hooks": "1.12.0", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/propagator-b3": "1.12.0", - "@opentelemetry/propagator-jaeger": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", + "@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" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node", diff --git a/packages/opentelemetry-sdk-trace-web/package.json b/packages/opentelemetry-sdk-trace-web/package.json index b20d6c21c..21110b939 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.12.0", + "version": "1.13.0", "description": "OpenTelemetry Web Tracer", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -57,9 +57,9 @@ "devDependencies": { "@babel/core": "7.16.0", "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@opentelemetry/context-zone": "1.12.0", - "@opentelemetry/propagator-b3": "1.12.0", - "@opentelemetry/resources": "1.12.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", "@types/node": "18.6.5", @@ -90,9 +90,9 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0" }, "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 6146ca201..9f094c97c 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.12.0", + "version": "1.13.0", "description": "OpenTelemetry semantic conventions", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/packages/opentelemetry-shim-opentracing/package.json b/packages/opentelemetry-shim-opentracing/package.json index 68c0846e1..f009398ef 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.12.0", + "version": "1.13.0", "description": "OpenTracing to OpenTelemetry shim", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -43,9 +43,9 @@ }, "devDependencies": { "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@opentelemetry/propagator-b3": "1.12.0", - "@opentelemetry/propagator-jaeger": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.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", "@types/node": "18.6.5", "codecov": "3.8.3", @@ -58,8 +58,8 @@ "@opentelemetry/api": ">=1.0.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/semantic-conventions": "1.13.0", "opentracing": "^0.14.4" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-shim-opentracing", diff --git a/packages/sdk-metrics/package.json b/packages/sdk-metrics/package.json index e8bcadc32..db230fd6b 100644 --- a/packages/sdk-metrics/package.json +++ b/packages/sdk-metrics/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/sdk-metrics", - "version": "1.12.0", + "version": "1.13.0", "description": "OpenTelemetry metrics SDK", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -76,8 +76,8 @@ "@opentelemetry/api": ">=1.3.0 <1.5.0" }, "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/resources": "1.12.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/resources": "1.13.0", "lodash.merge": "4.6.2" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/sdk-metrics", diff --git a/packages/template/package.json b/packages/template/package.json index 5385530c3..47b183c62 100644 --- a/packages/template/package.json +++ b/packages/template/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/template", - "version": "1.12.0", + "version": "1.13.0", "private": true, "publishConfig": { "access": "restricted" diff --git a/selenium-tests/package.json b/selenium-tests/package.json index 37aa32a7e..8cd564c54 100644 --- a/selenium-tests/package.json +++ b/selenium-tests/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/selenium-tests", - "version": "1.12.0", + "version": "1.13.0", "private": true, "description": "OpenTelemetry Selenium Tests", "main": "index.js", @@ -56,16 +56,16 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/context-zone-peer-dep": "1.12.0", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/exporter-trace-otlp-http": "0.38.0", - "@opentelemetry/exporter-zipkin": "1.12.0", - "@opentelemetry/instrumentation": "0.38.0", - "@opentelemetry/instrumentation-fetch": "0.38.0", - "@opentelemetry/instrumentation-xml-http-request": "0.38.0", - "@opentelemetry/sdk-metrics": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/sdk-trace-web": "1.12.0", + "@opentelemetry/context-zone-peer-dep": "1.13.0", + "@opentelemetry/core": "1.13.0", + "@opentelemetry/exporter-trace-otlp-http": "0.39.0", + "@opentelemetry/exporter-zipkin": "1.13.0", + "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/instrumentation-fetch": "0.39.0", + "@opentelemetry/instrumentation-xml-http-request": "0.39.0", + "@opentelemetry/sdk-metrics": "1.13.0", + "@opentelemetry/sdk-trace-base": "1.13.0", + "@opentelemetry/sdk-trace-web": "1.13.0", "zone.js": "0.11.4" } } From e6915373aaa8c1226f6dc122b49ae6bfb2fc1ddd Mon Sep 17 00:00:00 2001 From: Noemi <45180344+unflxw@users.noreply.github.com> Date: Thu, 11 May 2023 23:27:30 +0200 Subject: [PATCH 29/72] fix(pg): do not replace argument with plain object (#1432) --- .../opentelemetry-instrumentation-pg/src/instrumentation.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/plugins/node/opentelemetry-instrumentation-pg/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-pg/src/instrumentation.ts index a5eff1449..00ea20e78 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/src/instrumentation.ts +++ b/plugins/node/opentelemetry-instrumentation-pg/src/instrumentation.ts @@ -263,9 +263,7 @@ export class PgInstrumentation extends InstrumentationBase { callback = context.bind(context.active(), callback); } - // Copy the callback instead of writing to args.callback so that we - // don't modify user's original callback reference - args[0] = { ...(args[0] as object), callback }; + (args[0] as { callback?: PostgresCallback }).callback = callback; } } From 29c46ef5cefe2cc3bf88a64c9ba810aa557f7a06 Mon Sep 17 00:00:00 2001 From: Marc Pichler Date: Fri, 12 May 2023 11:12:42 +0200 Subject: [PATCH 30/72] fix(otlp-transformer): move api-logs to dependencies (#3798) --- experimental/CHANGELOG.md | 2 ++ experimental/packages/otlp-transformer/package.json | 4 ++-- scripts/peer-api-check.js | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 509ef5d4b..bd13465dd 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -10,6 +10,8 @@ All notable changes to experimental packages in this project will be documented ### :bug: (Bug Fix) +fix(otlp-transformer): move api-logs to dependencies [#3798](https://github.com/open-telemetry/opentelemetry-js/pull/3798) @pichlermarc + ### :books: (Refine Doc) ### :house: (Internal) diff --git a/experimental/packages/otlp-transformer/package.json b/experimental/packages/otlp-transformer/package.json index bae16536f..25e19a999 100644 --- a/experimental/packages/otlp-transformer/package.json +++ b/experimental/packages/otlp-transformer/package.json @@ -52,8 +52,7 @@ "README.md" ], "peerDependencies": { - "@opentelemetry/api": ">=1.3.0 <1.5.0", - "@opentelemetry/api-logs": "0.39.0" + "@opentelemetry/api": ">=1.3.0 <1.5.0" }, "devDependencies": { "@opentelemetry/api": "1.4.1", @@ -78,6 +77,7 @@ "dependencies": { "@opentelemetry/core": "1.13.0", "@opentelemetry/resources": "1.13.0", + "@opentelemetry/api-logs": "0.39.0", "@opentelemetry/sdk-logs": "0.39.0", "@opentelemetry/sdk-metrics": "1.13.0", "@opentelemetry/sdk-trace-base": "1.13.0" diff --git a/scripts/peer-api-check.js b/scripts/peer-api-check.js index 27abe9124..bb5a1bea0 100644 --- a/scripts/peer-api-check.js +++ b/scripts/peer-api-check.js @@ -24,7 +24,7 @@ const appRoot = process.cwd(); const packageJsonUrl = path.resolve(`${appRoot}/package.json`); const pjson = require(packageJsonUrl); -const needCheckPackages = ['@opentelemetry/api', '@opentelemetry/api-logs']; +const needCheckPackages = ['@opentelemetry/api']; function checkPackage(package) { if (pjson.dependencies && pjson.dependencies[package]) From bba09c0e5a6d92fc71ed08028966ae9d56da53db Mon Sep 17 00:00:00 2001 From: Marc Pichler Date: Fri, 12 May 2023 15:01:36 +0200 Subject: [PATCH 31/72] chore: release 0.39.1 (#3800) --- examples/http/package.json | 6 +++--- examples/https/package.json | 6 +++--- examples/opentelemetry-web/package.json | 14 +++++++------- examples/otlp-exporter-node/package.json | 14 +++++++------- experimental/CHANGELOG.md | 8 ++++++-- .../backwards-compatability/node14/package.json | 4 ++-- .../backwards-compatability/node16/package.json | 4 ++-- experimental/examples/logs/package.json | 4 ++-- experimental/examples/prometheus/package.json | 4 ++-- experimental/packages/api-events/package.json | 2 +- experimental/packages/api-logs/package.json | 2 +- .../packages/exporter-logs-otlp-grpc/package.json | 12 ++++++------ .../packages/exporter-trace-otlp-grpc/package.json | 8 ++++---- .../packages/exporter-trace-otlp-http/package.json | 6 +++--- .../exporter-trace-otlp-proto/package.json | 8 ++++---- .../opentelemetry-browser-detector/package.json | 2 +- .../package.json | 8 ++++---- .../package.json | 6 +++--- .../package.json | 10 +++++----- .../opentelemetry-exporter-prometheus/package.json | 2 +- .../package.json | 4 ++-- .../package.json | 4 ++-- .../package.json | 4 ++-- .../package.json | 4 ++-- .../opentelemetry-instrumentation/package.json | 2 +- .../packages/opentelemetry-sdk-node/package.json | 10 +++++----- .../packages/otlp-exporter-base/package.json | 2 +- .../packages/otlp-grpc-exporter-base/package.json | 6 +++--- .../packages/otlp-proto-exporter-base/package.json | 4 ++-- .../packages/otlp-transformer/package.json | 8 ++++---- experimental/packages/sdk-logs/package.json | 4 ++-- experimental/packages/shim-opencensus/package.json | 2 +- selenium-tests/package.json | 8 ++++---- 33 files changed, 98 insertions(+), 94 deletions(-) diff --git a/examples/http/package.json b/examples/http/package.json index e5056a27d..e06dd1af2 100644 --- a/examples/http/package.json +++ b/examples/http/package.json @@ -1,7 +1,7 @@ { "name": "http-example", "private": true, - "version": "0.39.0", + "version": "0.39.1", "description": "Example of HTTP integration with OpenTelemetry", "main": "index.js", "scripts": { @@ -31,8 +31,8 @@ "@opentelemetry/api": "^1.3.0", "@opentelemetry/exporter-jaeger": "1.13.0", "@opentelemetry/exporter-zipkin": "1.13.0", - "@opentelemetry/instrumentation": "0.39.0", - "@opentelemetry/instrumentation-http": "0.39.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", diff --git a/examples/https/package.json b/examples/https/package.json index 1fad466c5..62b65273f 100644 --- a/examples/https/package.json +++ b/examples/https/package.json @@ -1,7 +1,7 @@ { "name": "https-example", "private": true, - "version": "0.39.0", + "version": "0.39.1", "description": "Example of HTTPs integration with OpenTelemetry", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -35,8 +35,8 @@ "@opentelemetry/api": "^1.0.0", "@opentelemetry/exporter-jaeger": "1.13.0", "@opentelemetry/exporter-zipkin": "1.13.0", - "@opentelemetry/instrumentation": "0.39.0", - "@opentelemetry/instrumentation-http": "0.39.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", diff --git a/examples/opentelemetry-web/package.json b/examples/opentelemetry-web/package.json index 3d9c439eb..c4c75e460 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.0", + "version": "0.39.1", "description": "Example of using @opentelemetry/sdk-trace-web and @opentelemetry/sdk-metrics in browser", "main": "index.js", "scripts": { @@ -45,13 +45,13 @@ "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-zone": "1.13.0", "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.39.0", - "@opentelemetry/exporter-trace-otlp-http": "0.39.0", - "@opentelemetry/exporter-trace-otlp-proto": "0.39.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.0", - "@opentelemetry/instrumentation-fetch": "0.39.0", - "@opentelemetry/instrumentation-xml-http-request": "0.39.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", diff --git a/examples/otlp-exporter-node/package.json b/examples/otlp-exporter-node/package.json index 5efbfd944..c19ae9ea5 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.0", + "version": "0.39.1", "description": "Example of using @opentelemetry/collector-exporter in Node.js", "main": "index.js", "scripts": { @@ -30,12 +30,12 @@ "dependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-metrics-otlp-grpc": "0.39.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.39.0", - "@opentelemetry/exporter-metrics-otlp-proto": "0.39.0", - "@opentelemetry/exporter-trace-otlp-grpc": "0.39.0", - "@opentelemetry/exporter-trace-otlp-http": "0.39.0", - "@opentelemetry/exporter-trace-otlp-proto": "0.39.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", diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index bd13465dd..bed394a8f 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -10,12 +10,16 @@ All notable changes to experimental packages in this project will be documented ### :bug: (Bug Fix) -fix(otlp-transformer): move api-logs to dependencies [#3798](https://github.com/open-telemetry/opentelemetry-js/pull/3798) @pichlermarc - ### :books: (Refine Doc) ### :house: (Internal) +## 0.39.1 + +### :bug: (Bug Fix) + +* fix(otlp-transformer): move api-logs to dependencies [#3798](https://github.com/open-telemetry/opentelemetry-js/pull/3798) @pichlermarc + ## 0.39.0 ### :rocket: (Enhancement) diff --git a/experimental/backwards-compatability/node14/package.json b/experimental/backwards-compatability/node14/package.json index 83d699ab2..fb30bd321 100644 --- a/experimental/backwards-compatability/node14/package.json +++ b/experimental/backwards-compatability/node14/package.json @@ -1,6 +1,6 @@ { "name": "backcompat-node14", - "version": "0.39.0", + "version": "0.39.1", "private": true, "description": "Backwards compatability app for node 14 types and the OpenTelemetry Node.js SDK", "main": "index.js", @@ -9,7 +9,7 @@ "peer-api-check": "node ../../../scripts/peer-api-check.js" }, "dependencies": { - "@opentelemetry/sdk-node": "0.39.0", + "@opentelemetry/sdk-node": "0.39.1", "@opentelemetry/sdk-trace-base": "1.13.0" }, "devDependencies": { diff --git a/experimental/backwards-compatability/node16/package.json b/experimental/backwards-compatability/node16/package.json index d21c9355b..bf7411806 100644 --- a/experimental/backwards-compatability/node16/package.json +++ b/experimental/backwards-compatability/node16/package.json @@ -1,6 +1,6 @@ { "name": "backcompat-node16", - "version": "0.39.0", + "version": "0.39.1", "private": true, "description": "Backwards compatability app for node 16 types and the OpenTelemetry Node.js SDK", "main": "index.js", @@ -9,7 +9,7 @@ "peer-api-check": "node ../../../scripts/peer-api-check.js" }, "dependencies": { - "@opentelemetry/sdk-node": "0.39.0", + "@opentelemetry/sdk-node": "0.39.1", "@opentelemetry/sdk-trace-base": "1.13.0" }, "devDependencies": { diff --git a/experimental/examples/logs/package.json b/experimental/examples/logs/package.json index eed77b870..3e10700d1 100644 --- a/experimental/examples/logs/package.json +++ b/experimental/examples/logs/package.json @@ -7,8 +7,8 @@ }, "dependencies": { "@opentelemetry/api": "^1.4.1", - "@opentelemetry/api-logs": "0.39.0", - "@opentelemetry/sdk-logs": "0.39.0" + "@opentelemetry/api-logs": "0.39.1", + "@opentelemetry/sdk-logs": "0.39.1" }, "devDependencies": { "@types/node": "18.6.5", diff --git a/experimental/examples/prometheus/package.json b/experimental/examples/prometheus/package.json index 091a96769..d1c5cb9ce 100644 --- a/experimental/examples/prometheus/package.json +++ b/experimental/examples/prometheus/package.json @@ -1,6 +1,6 @@ { "name": "prometheus-example", - "version": "0.39.0", + "version": "0.39.1", "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.0", + "@opentelemetry/exporter-prometheus": "0.39.1", "@opentelemetry/sdk-metrics": "1.13.0" } } diff --git a/experimental/packages/api-events/package.json b/experimental/packages/api-events/package.json index 9772c97ee..bc1a24a54 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.0", + "version": "0.39.1", "description": "Public events API for OpenTelemetry", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/experimental/packages/api-logs/package.json b/experimental/packages/api-logs/package.json index 16565f893..9143ef36d 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.0", + "version": "0.39.1", "description": "Public logs API for OpenTelemetry", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/experimental/packages/exporter-logs-otlp-grpc/package.json b/experimental/packages/exporter-logs-otlp-grpc/package.json index 4ef6fbd75..99cb19287 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.0", + "version": "0.39.1", "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", @@ -51,8 +51,8 @@ "@babel/core": "7.16.0", "@grpc/proto-loader": "^0.7.3", "@opentelemetry/api": "1.4.1", - "@opentelemetry/api-logs": "0.39.0", - "@opentelemetry/otlp-exporter-base": "0.39.0", + "@opentelemetry/api-logs": "0.39.1", + "@opentelemetry/otlp-exporter-base": "0.39.1", "@opentelemetry/resources": "1.13.0", "@types/mocha": "10.0.0", "@types/node": "18.6.5", @@ -72,9 +72,9 @@ "dependencies": { "@grpc/grpc-js": "^1.7.1", "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-grpc-exporter-base": "0.39.0", - "@opentelemetry/otlp-transformer": "0.39.0", - "@opentelemetry/sdk-logs": "0.39.0" + "@opentelemetry/otlp-grpc-exporter-base": "0.39.1", + "@opentelemetry/otlp-transformer": "0.39.1", + "@opentelemetry/sdk-logs": "0.39.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-trace-otlp-grpc/package.json b/experimental/packages/exporter-trace-otlp-grpc/package.json index bd9254b78..506bf706e 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.0", + "version": "0.39.1", "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", @@ -50,7 +50,7 @@ "@babel/core": "7.16.0", "@grpc/proto-loader": "^0.7.3", "@opentelemetry/api": "1.4.1", - "@opentelemetry/otlp-exporter-base": "0.39.0", + "@opentelemetry/otlp-exporter-base": "0.39.1", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", @@ -69,8 +69,8 @@ "dependencies": { "@grpc/grpc-js": "^1.7.1", "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-grpc-exporter-base": "0.39.0", - "@opentelemetry/otlp-transformer": "0.39.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" }, diff --git a/experimental/packages/exporter-trace-otlp-http/package.json b/experimental/packages/exporter-trace-otlp-http/package.json index 887687fb0..1c38a1fd5 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.0", + "version": "0.39.1", "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", @@ -94,8 +94,8 @@ }, "dependencies": { "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.0", - "@opentelemetry/otlp-transformer": "0.39.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" }, diff --git a/experimental/packages/exporter-trace-otlp-proto/package.json b/experimental/packages/exporter-trace-otlp-proto/package.json index 8149d94ca..bfe610b4d 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.0", + "version": "0.39.1", "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", @@ -81,9 +81,9 @@ }, "dependencies": { "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.0", - "@opentelemetry/otlp-proto-exporter-base": "0.39.0", - "@opentelemetry/otlp-transformer": "0.39.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" }, diff --git a/experimental/packages/opentelemetry-browser-detector/package.json b/experimental/packages/opentelemetry-browser-detector/package.json index f9e93c7c7..fa3e4746a 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.0", + "version": "0.39.1", "description": "OpenTelemetry Resource Detector for Browser", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/package.json b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/package.json index 166cadb91..85b92e6fc 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.0", + "version": "0.39.1", "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", @@ -68,9 +68,9 @@ "dependencies": { "@grpc/grpc-js": "^1.7.1", "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.39.0", - "@opentelemetry/otlp-grpc-exporter-base": "0.39.0", - "@opentelemetry/otlp-transformer": "0.39.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" }, diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/package.json b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/package.json index f93187419..7ddbd9487 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.0", + "version": "0.39.1", "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", @@ -94,8 +94,8 @@ }, "dependencies": { "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.0", - "@opentelemetry/otlp-transformer": "0.39.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" }, diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/package.json b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/package.json index 4ad465b62..d384051e5 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.0", + "version": "0.39.1", "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", @@ -66,10 +66,10 @@ }, "dependencies": { "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-metrics-otlp-http": "0.39.0", - "@opentelemetry/otlp-exporter-base": "0.39.0", - "@opentelemetry/otlp-proto-exporter-base": "0.39.0", - "@opentelemetry/otlp-transformer": "0.39.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" }, diff --git a/experimental/packages/opentelemetry-exporter-prometheus/package.json b/experimental/packages/opentelemetry-exporter-prometheus/package.json index a7f203cfe..144c4e62d 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.0", + "version": "0.39.1", "description": "OpenTelemetry Exporter Prometheus provides a metrics endpoint for Prometheus", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/experimental/packages/opentelemetry-instrumentation-fetch/package.json b/experimental/packages/opentelemetry-instrumentation-fetch/package.json index 407d23a59..29479c7c8 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.0", + "version": "0.39.1", "description": "OpenTelemetry fetch automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -87,7 +87,7 @@ }, "dependencies": { "@opentelemetry/core": "1.13.0", - "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/instrumentation": "0.39.1", "@opentelemetry/sdk-trace-web": "1.13.0", "@opentelemetry/semantic-conventions": "1.13.0" }, diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/package.json b/experimental/packages/opentelemetry-instrumentation-grpc/package.json index 335e0d9ad..a61d995bf 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.0", + "version": "0.39.1", "description": "OpenTelemetry grpc automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -70,7 +70,7 @@ "@opentelemetry/api": "^1.3.0" }, "dependencies": { - "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/instrumentation": "0.39.1", "@opentelemetry/semantic-conventions": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-grpc", diff --git a/experimental/packages/opentelemetry-instrumentation-http/package.json b/experimental/packages/opentelemetry-instrumentation-http/package.json index 99b790281..763dabdf9 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.0", + "version": "0.39.1", "description": "OpenTelemetry http/https automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -73,7 +73,7 @@ }, "dependencies": { "@opentelemetry/core": "1.13.0", - "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/instrumentation": "0.39.1", "@opentelemetry/semantic-conventions": "1.13.0", "semver": "^7.3.5" }, diff --git a/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json b/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json index 2306d5caf..4bf5707ca 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.0", + "version": "0.39.1", "description": "OpenTelemetry XMLHttpRequest automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -87,7 +87,7 @@ }, "dependencies": { "@opentelemetry/core": "1.13.0", - "@opentelemetry/instrumentation": "0.39.0", + "@opentelemetry/instrumentation": "0.39.1", "@opentelemetry/sdk-trace-web": "1.13.0", "@opentelemetry/semantic-conventions": "1.13.0" }, diff --git a/experimental/packages/opentelemetry-instrumentation/package.json b/experimental/packages/opentelemetry-instrumentation/package.json index 5c9cdc5f3..13f78ba0b 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.0", + "version": "0.39.1", "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", diff --git a/experimental/packages/opentelemetry-sdk-node/package.json b/experimental/packages/opentelemetry-sdk-node/package.json index 4501bf893..b6dd74071 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.0", + "version": "0.39.1", "description": "OpenTelemetry SDK for Node.js", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -46,11 +46,11 @@ "dependencies": { "@opentelemetry/core": "1.13.0", "@opentelemetry/exporter-jaeger": "1.13.0", - "@opentelemetry/exporter-trace-otlp-grpc": "0.39.0", - "@opentelemetry/exporter-trace-otlp-http": "0.39.0", - "@opentelemetry/exporter-trace-otlp-proto": "0.39.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.0", + "@opentelemetry/instrumentation": "0.39.1", "@opentelemetry/resources": "1.13.0", "@opentelemetry/sdk-metrics": "1.13.0", "@opentelemetry/sdk-trace-base": "1.13.0", diff --git a/experimental/packages/otlp-exporter-base/package.json b/experimental/packages/otlp-exporter-base/package.json index 9b7bd0999..8671fffcb 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.0", + "version": "0.39.1", "description": "OpenTelemetry OTLP Exporter base (for internal use only)", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/experimental/packages/otlp-grpc-exporter-base/package.json b/experimental/packages/otlp-grpc-exporter-base/package.json index 54771cdde..97f8940ef 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.0", + "version": "0.39.1", "description": "OpenTelemetry OTLP-gRPC Exporter base (for internal use only)", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -50,7 +50,7 @@ "devDependencies": { "@babel/core": "7.16.0", "@opentelemetry/api": "1.4.1", - "@opentelemetry/otlp-transformer": "0.39.0", + "@opentelemetry/otlp-transformer": "0.39.1", "@opentelemetry/resources": "1.13.0", "@opentelemetry/sdk-trace-base": "1.13.0", "@types/mocha": "10.0.0", @@ -72,7 +72,7 @@ "dependencies": { "@grpc/grpc-js": "^1.7.1", "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.0", + "@opentelemetry/otlp-exporter-base": "0.39.1", "protobufjs": "^7.2.2" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-grpc-exporter-base", diff --git a/experimental/packages/otlp-proto-exporter-base/package.json b/experimental/packages/otlp-proto-exporter-base/package.json index eebf5a23f..29018d61b 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.0", + "version": "0.39.1", "description": "OpenTelemetry OTLP-HTTP-protobuf Exporter base (for internal use only)", "main": "build/src/index.js", "module": "build/esm/index.js", @@ -78,7 +78,7 @@ }, "dependencies": { "@opentelemetry/core": "1.13.0", - "@opentelemetry/otlp-exporter-base": "0.39.0", + "@opentelemetry/otlp-exporter-base": "0.39.1", "protobufjs": "^7.1.2" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-proto-exporter-base", diff --git a/experimental/packages/otlp-transformer/package.json b/experimental/packages/otlp-transformer/package.json index 25e19a999..0935e4255 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.0", + "version": "0.39.1", "description": "Transform OpenTelemetry SDK data into OTLP", "module": "build/esm/index.js", "esnext": "build/esnext/index.js", @@ -56,7 +56,7 @@ }, "devDependencies": { "@opentelemetry/api": "1.4.1", - "@opentelemetry/api-logs": "0.39.0", + "@opentelemetry/api-logs": "0.39.1", "@types/mocha": "10.0.0", "@types/webpack-env": "1.16.3", "codecov": "3.8.3", @@ -75,10 +75,10 @@ "webpack": "4.46.0" }, "dependencies": { + "@opentelemetry/api-logs": "0.39.1", "@opentelemetry/core": "1.13.0", "@opentelemetry/resources": "1.13.0", - "@opentelemetry/api-logs": "0.39.0", - "@opentelemetry/sdk-logs": "0.39.0", + "@opentelemetry/sdk-logs": "0.39.1", "@opentelemetry/sdk-metrics": "1.13.0", "@opentelemetry/sdk-trace-base": "1.13.0" }, diff --git a/experimental/packages/sdk-logs/package.json b/experimental/packages/sdk-logs/package.json index 54b6e0431..be9010f5a 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.0", + "version": "0.39.1", "publishConfig": { "access": "public" }, @@ -73,7 +73,7 @@ }, "devDependencies": { "@opentelemetry/api": ">=1.4.0 <1.5.0", - "@opentelemetry/api-logs": "0.39.0", + "@opentelemetry/api-logs": "0.39.1", "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/sinon": "10.0.13", diff --git a/experimental/packages/shim-opencensus/package.json b/experimental/packages/shim-opencensus/package.json index 7753c276d..e744d9e09 100644 --- a/experimental/packages/shim-opencensus/package.json +++ b/experimental/packages/shim-opencensus/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/shim-opencensus", - "version": "0.39.0", + "version": "0.39.1", "description": "OpenCensus to OpenTelemetry shim", "private": true, "main": "build/src/index.js", diff --git a/selenium-tests/package.json b/selenium-tests/package.json index 8cd564c54..5635f40c0 100644 --- a/selenium-tests/package.json +++ b/selenium-tests/package.json @@ -58,11 +58,11 @@ "dependencies": { "@opentelemetry/context-zone-peer-dep": "1.13.0", "@opentelemetry/core": "1.13.0", - "@opentelemetry/exporter-trace-otlp-http": "0.39.0", + "@opentelemetry/exporter-trace-otlp-http": "0.39.1", "@opentelemetry/exporter-zipkin": "1.13.0", - "@opentelemetry/instrumentation": "0.39.0", - "@opentelemetry/instrumentation-fetch": "0.39.0", - "@opentelemetry/instrumentation-xml-http-request": "0.39.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", From 422a36ae12d1425470bf7f25dfab9fc9d0ae391b Mon Sep 17 00:00:00 2001 From: Jamie Danielson Date: Mon, 15 May 2023 04:30:52 -0400 Subject: [PATCH 32/72] feat: ESM support for instrumentation (#3698) Co-authored-by: Purvi Kanal Co-authored-by: Jamie Danielson Co-authored-by: Liz Fong-Jones Co-authored-by: Purvi Kanal --- examples/README.md | 1 + examples/esm-http-ts/README.md | 25 ++++ examples/esm-http-ts/index.ts | 43 ++++++ examples/esm-http-ts/package.json | 42 ++++++ examples/esm-http-ts/tsconfig.json | 25 ++++ experimental/CHANGELOG.md | 2 + .../src/http.ts | 11 +- .../opentelemetry-instrumentation/README.md | 12 +- .../opentelemetry-instrumentation/hook.mjs | 28 ++++ .../package.json | 8 +- .../src/platform/node/instrumentation.ts | 90 +++++++++++- .../test/node/EsmInstrumentation.test.mjs | 138 ++++++++++++++++++ .../test/node/node_modules/.gitkeep | 0 .../node_modules/test-esm-module/package.json | 6 + .../node_modules/test-esm-module/src/index.js | 9 ++ lerna.json | 3 +- scripts/update-ts-configs.js | 1 + 17 files changed, 432 insertions(+), 12 deletions(-) create mode 100644 examples/esm-http-ts/README.md create mode 100644 examples/esm-http-ts/index.ts create mode 100644 examples/esm-http-ts/package.json create mode 100644 examples/esm-http-ts/tsconfig.json create mode 100644 experimental/packages/opentelemetry-instrumentation/hook.mjs create mode 100644 experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs create mode 100644 experimental/packages/opentelemetry-instrumentation/test/node/node_modules/.gitkeep create mode 100644 experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/package.json create mode 100644 experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/src/index.js diff --git a/examples/README.md b/examples/README.md index c594e5f44..dcef5e8d8 100644 --- a/examples/README.md +++ b/examples/README.md @@ -17,6 +17,7 @@ use the latest and greatest features, and best practices. | [grpc](grpc/) | gRPC Instrumentation to automatically collect trace data and export them to the backend of choice | Intermediate | | [otlp-exporter-node](otlp-exporter-node/) | This example shows how to use `@opentelemetry/exporter-otlp-http` to instrument a simple Node.js application | Intermediate | | [opentracing-shim](opentracing-shim/) | This is a simple example that demonstrates how existing OpenTracing instrumentation can be integrated with OpenTelemetry | Intermediate | +| [esm-http-ts](esm-http-ts/) | This is a simple example that demonstrates tracing HTTP request, with an app written in TypeScript and transpiled to ES Modules. | Intermediate | Examples of experimental packages can be found at [experimental/examples](../experimental/examples). diff --git a/examples/esm-http-ts/README.md b/examples/esm-http-ts/README.md new file mode 100644 index 000000000..72f0e2dbf --- /dev/null +++ b/examples/esm-http-ts/README.md @@ -0,0 +1,25 @@ +# Overview + +This is a simple example that demonstrates tracing HTTP request, with an app written in TypeScript and transpiled to ES Modules. + +## Installation + +```sh +# from this directory +npm install +npm run build +npm start +``` + +In a separate terminal, `curl localhost:3000`. + +See two spans in the console (one manual, one for http instrumentation) + +## 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/esm-http-ts/index.ts b/examples/esm-http-ts/index.ts new file mode 100644 index 000000000..b4719a8bc --- /dev/null +++ b/examples/esm-http-ts/index.ts @@ -0,0 +1,43 @@ +import { registerInstrumentations } from '@opentelemetry/instrumentation'; +import { trace, DiagConsoleLogger, DiagLogLevel, diag } from '@opentelemetry/api'; +import { HttpInstrumentation } from '@opentelemetry/instrumentation-http'; +import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node'; +import { + ConsoleSpanExporter, + SimpleSpanProcessor, +} from '@opentelemetry/sdk-trace-base'; +import { Resource } from '@opentelemetry/resources'; +import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import http from 'http'; + +diag.setLogger(new DiagConsoleLogger(), DiagLogLevel.DEBUG); +const tracerProvider = new NodeTracerProvider({ + resource: new Resource({ + [SemanticResourceAttributes.SERVICE_NAME]: 'esm-http-ts-example', + }), +}); +const exporter = new ConsoleSpanExporter(); +const processor = new SimpleSpanProcessor(exporter); +tracerProvider.addSpanProcessor(processor); +tracerProvider.register(); + +registerInstrumentations({ + instrumentations: [new HttpInstrumentation()], +}); + +const hostname = '0.0.0.0'; +const port = 3000; + +const server = http.createServer((req, res) => { + res.statusCode = 200; + res.setHeader('Content-Type', 'text/plain'); + const tracer = trace.getTracer('esm-tracer'); + tracer.startActiveSpan('manual', span => { + span.end(); + }); + res.end('Hello, World!\n'); +}); + +server.listen(port, hostname, () => { + console.log(`Server running at http://${hostname}:${port}/`); +}); diff --git a/examples/esm-http-ts/package.json b/examples/esm-http-ts/package.json new file mode 100644 index 000000000..49c0e2601 --- /dev/null +++ b/examples/esm-http-ts/package.json @@ -0,0 +1,42 @@ +{ + "name": "esm-http-ts", + "private": true, + "version": "0.38.0", + "description": "Example of HTTP integration with OpenTelemetry using ESM and TypeScript", + "main": "build/index.js", + "type": "module", + "scripts": { + "build": "tsc --build", + "start": "node --experimental-loader=@opentelemetry/instrumentation/hook.mjs ./build/index.js" + }, + "repository": { + "type": "git", + "url": "git+ssh://git@github.com/open-telemetry/opentelemetry-js.git" + }, + "keywords": [ + "opentelemetry", + "http", + "tracing", + "esm", + "typescript" + ], + "engines": { + "node": ">=14" + }, + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "bugs": { + "url": "https://github.com/open-telemetry/opentelemetry-js/issues" + }, + "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" + } +} diff --git a/examples/esm-http-ts/tsconfig.json b/examples/esm-http-ts/tsconfig.json new file mode 100644 index 000000000..5f821d66c --- /dev/null +++ b/examples/esm-http-ts/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + /* Language and Environment */ + "target": "ES2020" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */, + + /* Modules */ + "module": "ESNext" /* Specify what module code is generated. */, + "rootDir": "." /* Specify the root folder within your source files. */, + "moduleResolution": "node" /* Specify how TypeScript looks up a file from a given module specifier. */, + "resolveJsonModule": true /* Enable importing .json files. */, + + /* Emit */ + "outDir": "build" /* Specify an output folder for all emitted files. */, + + /* Interop Constraints */ + "allowSyntheticDefaultImports": true /* Allow 'import x from y' when a module doesn't have a default export. */, + "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */, + "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */, + + /* Completeness */ + "skipLibCheck": true /* Skip type checking all .d.ts files. */ + }, + "include": ["**/*.ts", "**/*.js", "*.config.js"], + "exclude": ["node_modules"] +} diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index bed394a8f..398fa659e 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -8,6 +8,8 @@ All notable changes to experimental packages in this project will be documented ### :rocket: (Enhancement) +* feat(instrumentation): add ESM support for instrumentation. [#3698](https://github.com/open-telemetry/opentelemetry-js/pull/3698) @JamieDanielson, @pkanal, @vmarchaud, @lizthegrey, @bengl + ### :bug: (Bug Fix) ### :books: (Refine Doc) diff --git a/experimental/packages/opentelemetry-instrumentation-http/src/http.ts b/experimental/packages/opentelemetry-instrumentation-http/src/http.ts index 0b5c166dd..15ca92a45 100644 --- a/experimental/packages/opentelemetry-instrumentation-http/src/http.ts +++ b/experimental/packages/opentelemetry-instrumentation-http/src/http.ts @@ -66,7 +66,6 @@ import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; export class HttpInstrumentation extends InstrumentationBase { /** keep track on spans not ended */ private readonly _spanNotEnded: WeakSet = new WeakSet(); - private readonly _version = process.versions.node; private _headerCapture; private _httpServerDurationHistogram!: Histogram; private _httpClientDurationHistogram!: Histogram; @@ -112,11 +111,12 @@ export class HttpInstrumentation extends InstrumentationBase { } private _getHttpInstrumentation() { + const version = process.versions.node; return new InstrumentationNodeModuleDefinition( 'http', ['*'], moduleExports => { - this._diag.debug(`Applying patch for http@${this._version}`); + this._diag.debug(`Applying patch for http@${version}`); if (isWrapped(moduleExports.request)) { this._unwrap(moduleExports, 'request'); } @@ -145,7 +145,7 @@ export class HttpInstrumentation extends InstrumentationBase { }, moduleExports => { if (moduleExports === undefined) return; - this._diag.debug(`Removing patch for http@${this._version}`); + this._diag.debug(`Removing patch for http@${version}`); this._unwrap(moduleExports, 'request'); this._unwrap(moduleExports, 'get'); @@ -155,11 +155,12 @@ export class HttpInstrumentation extends InstrumentationBase { } private _getHttpsInstrumentation() { + const version = process.versions.node; return new InstrumentationNodeModuleDefinition( 'https', ['*'], moduleExports => { - this._diag.debug(`Applying patch for https@${this._version}`); + this._diag.debug(`Applying patch for https@${version}`); if (isWrapped(moduleExports.request)) { this._unwrap(moduleExports, 'request'); } @@ -188,7 +189,7 @@ export class HttpInstrumentation extends InstrumentationBase { }, moduleExports => { if (moduleExports === undefined) return; - this._diag.debug(`Removing patch for https@${this._version}`); + this._diag.debug(`Removing patch for https@${version}`); this._unwrap(moduleExports, 'request'); this._unwrap(moduleExports, 'get'); diff --git a/experimental/packages/opentelemetry-instrumentation/README.md b/experimental/packages/opentelemetry-instrumentation/README.md index 682fc5741..6c27e3d36 100644 --- a/experimental/packages/opentelemetry-instrumentation/README.md +++ b/experimental/packages/opentelemetry-instrumentation/README.md @@ -219,12 +219,18 @@ If nothing is specified the global registered provider is used. Usually this is There might be usecase where someone has the need for more providers within an application. Please note that special care must be takes in such setups to avoid leaking information from one provider to the other because there are a lot places where e.g. the global `ContextManager` or `Propagator` is used. +## Instrumentation for ES Modules In NodeJS (experimental) + +As the module loading mechanism for ESM is different than CJS, you need to select a custom loader so instrumentation can load hook on the esm module it want to patch. To do so, you must provide the `--experimental-loader=@opentelemetry/instrumentation/hook.mjs` flag to the `node` binary. Alternatively you can set the `NODE_OPTIONS` environment variable to `NODE_OPTIONS="--experimental-loader=@opentelemetry/instrumentation/hook.mjs"`. +As the ESM module loader from NodeJS is experimental, so is our support for it. Feel free to provide feedback or report issues about it. + +**Note**: ESM Instrumentation is not yet supported for Node 20. + ## Limitations -Instrumentations for external modules (e.g. express, mongodb,...) hooks the `require` call. Therefore following conditions need to be met that this mechanism can work: +Instrumentations for external modules (e.g. express, mongodb,...) hooks the `require` call or `import` statement. Therefore following conditions need to be met that this mechanism can work: -* `require` is used. ECMA script modules (using `import`) is not supported as of now -* Instrumentations are registered **before** the module to instrument is `require`ed +* Instrumentations are registered **before** the module to instrument is `require`ed (CJS only) * modules are not included in a bundle. Tools like `esbuild`, `webpack`, ... usually have some mechanism to exclude specific modules from bundling ## License diff --git a/experimental/packages/opentelemetry-instrumentation/hook.mjs b/experimental/packages/opentelemetry-instrumentation/hook.mjs new file mode 100644 index 000000000..7111b3769 --- /dev/null +++ b/experimental/packages/opentelemetry-instrumentation/hook.mjs @@ -0,0 +1,28 @@ +/*! + * Copyright 2021 Datadog, Inc. + * 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 + * + * 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. + */ + +// Unless explicitly stated otherwise all files in this repository are licensed under the Apache 2.0 License. +// +// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2021 Datadog, Inc. + +import { + load, + resolve, + getFormat, + getSource, +} from 'import-in-the-middle/hook.mjs'; +export { load, resolve, getFormat, getSource }; diff --git a/experimental/packages/opentelemetry-instrumentation/package.json b/experimental/packages/opentelemetry-instrumentation/package.json index 13f78ba0b..416495282 100644 --- a/experimental/packages/opentelemetry-instrumentation/package.json +++ b/experimental/packages/opentelemetry-instrumentation/package.json @@ -32,6 +32,7 @@ "build/src/**/*.js", "build/src/**/*.js.map", "build/src/**/*.d.ts", + "hook.mjs", "doc", "LICENSE", "README.md" @@ -47,7 +48,9 @@ "tdd": "npm run tdd:node", "tdd:node": "npm run test -- --watch-extensions ts --watch", "tdd:browser": "karma start", - "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:cjs": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:esm": "nyc node --experimental-loader=./hook.mjs ../../../node_modules/mocha/bin/mocha 'test/node/*.test.mjs' test/node/*.test.mjs", + "test": "npm run test:cjs && npm run test:esm", "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", @@ -68,6 +71,8 @@ "url": "https://github.com/open-telemetry/opentelemetry-js/issues" }, "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" @@ -82,7 +87,6 @@ "@types/mocha": "10.0.0", "@types/node": "18.6.5", "@types/semver": "7.3.9", - "@types/shimmer": "1.0.2", "@types/sinon": "10.0.13", "@types/webpack-env": "1.16.3", "babel-loader": "8.2.3", diff --git a/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts b/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts index 5790c9564..03d8f6ba3 100644 --- a/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts +++ b/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts @@ -16,12 +16,16 @@ import * as types from '../../types'; import * as path from 'path'; +import { types as utilTypes } from 'util'; import { satisfies } from 'semver'; +import { wrap, unwrap, massWrap, massUnwrap } from 'shimmer'; import { InstrumentationAbstract } from '../../instrumentation'; import { RequireInTheMiddleSingleton, Hooked, } from './RequireInTheMiddleSingleton'; +import type { HookFn } from 'import-in-the-middle'; +import * as ImportInTheMiddle from 'import-in-the-middle'; import { InstrumentationModuleDefinition } from './types'; import { diag } from '@opentelemetry/api'; import type { OnRequireFn } from 'require-in-the-middle'; @@ -68,6 +72,75 @@ export abstract class InstrumentationBase } } + protected override _wrap: typeof wrap = (moduleExports, name, wrapper) => { + if (!utilTypes.isProxy(moduleExports)) { + return wrap(moduleExports, name, wrapper); + } else { + const wrapped = wrap(Object.assign({}, moduleExports), name, wrapper); + + return Object.defineProperty(moduleExports, name, { + value: wrapped, + }); + } + }; + + protected override _unwrap: typeof unwrap = (moduleExports, name) => { + if (!utilTypes.isProxy(moduleExports)) { + return unwrap(moduleExports, name); + } else { + return Object.defineProperty(moduleExports, name, { + value: moduleExports[name], + }); + } + }; + + protected override _massWrap: typeof massWrap = ( + moduleExportsArray, + names, + wrapper + ) => { + if (!moduleExportsArray) { + diag.error('must provide one or more modules to patch'); + return; + } else if (!Array.isArray(moduleExportsArray)) { + moduleExportsArray = [moduleExportsArray]; + } + + if (!(names && Array.isArray(names))) { + diag.error('must provide one or more functions to wrap on modules'); + return; + } + + moduleExportsArray.forEach(moduleExports => { + names.forEach(name => { + this._wrap(moduleExports, name, wrapper); + }); + }); + }; + + protected override _massUnwrap: typeof massUnwrap = ( + moduleExportsArray, + names + ) => { + if (!moduleExportsArray) { + diag.error('must provide one or more modules to patch'); + return; + } else if (!Array.isArray(moduleExportsArray)) { + moduleExportsArray = [moduleExportsArray]; + } + + if (!(names && Array.isArray(names))) { + diag.error('must provide one or more functions to wrap on modules'); + return; + } + + moduleExportsArray.forEach(moduleExports => { + names.forEach(name => { + this._unwrap(moduleExports, name); + }); + }); + }; + private _warnOnPreloadedModules(): void { this._modules.forEach((module: InstrumentationModuleDefinition) => { const { name } = module; @@ -101,7 +174,7 @@ export abstract class InstrumentationBase module: InstrumentationModuleDefinition, exports: T, name: string, - baseDir?: string + baseDir?: string | void ): T { if (!baseDir) { if (typeof module.patch === 'function') { @@ -168,6 +241,14 @@ export abstract class InstrumentationBase this._warnOnPreloadedModules(); for (const module of this._modules) { + const hookFn: HookFn = (exports, name, baseDir) => { + return this._onRequire( + module as unknown as InstrumentationModuleDefinition, + exports, + name, + baseDir + ); + }; const onRequire: OnRequireFn = (exports, name, baseDir) => { return this._onRequire( module as unknown as InstrumentationModuleDefinition, @@ -185,6 +266,13 @@ export abstract class InstrumentationBase : this._requireInTheMiddleSingleton.register(module.name, onRequire); this._hooks.push(hook); + const esmHook = + new (ImportInTheMiddle as unknown as typeof ImportInTheMiddle.default)( + [module.name], + { internals: false }, + hookFn + ); + this._hooks.push(esmHook); } } diff --git a/experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs b/experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs new file mode 100644 index 000000000..f09097cd7 --- /dev/null +++ b/experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs @@ -0,0 +1,138 @@ +/* + * 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 { + InstrumentationBase, + InstrumentationNodeModuleDefinition, +} from '../../build/src/index.js'; +import * as exported from 'test-esm-module'; + +class TestInstrumentationWrapFn extends InstrumentationBase { + constructor(config) { + super('test-esm-instrumentation', '0.0.1', config); + } + init() { + console.log('test-esm-instrumentation initialized!'); + return new InstrumentationNodeModuleDefinition( + 'test-esm-module', + ['*'], + moduleExports => { + this._wrap(moduleExports, 'testFunction', () => { + return () => 'patched'; + }); + return moduleExports; + }, + moduleExports => { + this._unwrap(moduleExports, 'testFunction'); + return moduleExports; + } + ); + } +} + +class TestInstrumentationMasswrapFn extends InstrumentationBase { + constructor(config) { + super('test-esm-instrumentation', '0.0.1', config); + } + init() { + console.log('test-esm-instrumentation initialized!'); + return new InstrumentationNodeModuleDefinition( + 'test-esm-module', + ['*'], + moduleExports => { + this._massWrap( + [moduleExports], + ['testFunction', 'secondTestFunction'], + () => { + return () => 'patched'; + } + ); + return moduleExports; + }, + moduleExports => { + this._massUnwrap( + [moduleExports], + ['testFunction', 'secondTestFunction'] + ); + return moduleExports; + } + ); + } +} + +class TestInstrumentationSimple extends InstrumentationBase { + constructor(config) { + super('test-esm-instrumentation', '0.0.1', config); + } + init() { + console.log('test-esm-instrumentation initialized!'); + return new InstrumentationNodeModuleDefinition( + 'test-esm-module', + ['*'], + moduleExports => { + moduleExports.testConstant = 43; + return moduleExports; + } + ); + } +} +describe('when loading esm module', () => { + const instrumentationWrap = new TestInstrumentationWrapFn({ + enabled: false, + }); + + it('should patch module file directly', async () => { + const instrumentation = new TestInstrumentationSimple({ + enabled: false, + }); + instrumentation.enable(); + assert.deepEqual(exported.testConstant, 43); + }); + + it('should patch a module with the wrap function', async () => { + instrumentationWrap.enable(); + assert.deepEqual(exported.testFunction(), 'patched'); + }); + + it('should unwrap a patched function', async () => { + instrumentationWrap.enable(); + // disable to trigger unwrap + instrumentationWrap.disable(); + assert.deepEqual(exported.testFunction(), 'original'); + }); + + it('should wrap multiple functions with masswrap', () => { + const instrumentation = new TestInstrumentationMasswrapFn({ + enabled: false, + }); + + instrumentation.enable(); + assert.deepEqual(exported.testFunction(), 'patched'); + assert.deepEqual(exported.secondTestFunction(), 'patched'); + }); + + it('should unwrap multiple functions with massunwrap', () => { + const instrumentation = new TestInstrumentationMasswrapFn({ + enabled: false, + }); + + instrumentation.enable(); + instrumentation.disable(); + assert.deepEqual(exported.testFunction(), 'original'); + assert.deepEqual(exported.secondTestFunction(), 'original'); + }); +}); diff --git a/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/.gitkeep b/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/package.json b/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/package.json new file mode 100644 index 000000000..3caeae666 --- /dev/null +++ b/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/package.json @@ -0,0 +1,6 @@ +{ + "name": "test-esm-module", + "version": "0.1.0", + "main": "./src/index.js", + "type": "module" +} diff --git a/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/src/index.js b/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/src/index.js new file mode 100644 index 000000000..2fb6c6ed2 --- /dev/null +++ b/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/src/index.js @@ -0,0 +1,9 @@ +export const testFunction = () => { + return 'original'; +}; + +export const secondTestFunction = () => { + return 'original'; +}; + +export const testConstant = 42; diff --git a/lerna.json b/lerna.json index 6eba3f487..14fb76982 100644 --- a/lerna.json +++ b/lerna.json @@ -12,6 +12,7 @@ "examples/otlp-exporter-node", "examples/opentelemetry-web", "examples/http", - "examples/https" + "examples/https", + "examples/esm-http-ts" ] } diff --git a/scripts/update-ts-configs.js b/scripts/update-ts-configs.js index 283811997..3c4f43273 100644 --- a/scripts/update-ts-configs.js +++ b/scripts/update-ts-configs.js @@ -52,6 +52,7 @@ const ignoredLernaProjects = [ 'examples/opentelemetry-web', 'examples/http', 'examples/https', + 'examples/esm-http-ts', ]; let dryRun = false; From 758c7af0c183b36bbce0b0dfbda3dd43bdc0ca8d Mon Sep 17 00:00:00 2001 From: Jamie Danielson Date: Mon, 15 May 2023 05:14:12 -0400 Subject: [PATCH 33/72] feat(otlp-trace-exporters): Add User-Agent header to OTLP trace exporters (#3790) Co-authored-by: Marc Pichler --- experimental/CHANGELOG.md | 4 ++++ .../src/OTLPTraceExporter.ts | 14 +++++++++++--- .../test/OTLPTraceExporter.test.ts | 7 +++++++ .../src/platform/node/OTLPTraceExporter.ts | 15 ++++++++++----- .../test/node/CollectorTraceExporter.test.ts | 8 ++++++++ .../src/platform/node/OTLPTraceExporter.ts | 15 ++++++++++----- .../test/node/OTLPTraceExporter.test.ts | 11 +++++++++++ 7 files changed, 61 insertions(+), 13 deletions(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 398fa659e..f9adec9c9 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -4,6 +4,10 @@ All notable changes to experimental packages in this project will be documented ## Unreleased +### :rocket: (Enhancement) + +* feat(otlp-trace-exporters): Add User-Agent header to OTLP trace exporters. [#3790](https://github.com/open-telemetry/opentelemetry-js/pull/3790) @JamieDanielson + ### :boom: Breaking Change ### :rocket: (Enhancement) diff --git a/experimental/packages/exporter-trace-otlp-grpc/src/OTLPTraceExporter.ts b/experimental/packages/exporter-trace-otlp-grpc/src/OTLPTraceExporter.ts index 2cc5abcb2..c99826a17 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/src/OTLPTraceExporter.ts +++ b/experimental/packages/exporter-trace-otlp-grpc/src/OTLPTraceExporter.ts @@ -28,6 +28,11 @@ import { createExportTraceServiceRequest, IExportTraceServiceRequest, } from '@opentelemetry/otlp-transformer'; +import { VERSION } from './version'; + +const USER_AGENT = { + 'User-Agent': `OTel-OTLP-Exporter-JavaScript/${VERSION}`, +}; /** * OTLP Trace Exporter for Node @@ -38,9 +43,12 @@ export class OTLPTraceExporter { constructor(config: OTLPGRPCExporterConfigNode = {}) { super(config); - const headers = baggageUtils.parseKeyPairsIntoRecord( - getEnv().OTEL_EXPORTER_OTLP_TRACES_HEADERS - ); + const headers = { + ...USER_AGENT, + ...baggageUtils.parseKeyPairsIntoRecord( + getEnv().OTEL_EXPORTER_OTLP_TRACES_HEADERS + ), + }; this.metadata ||= new Metadata(); for (const [k, v] of Object.entries(headers)) { this.metadata.set(k, v); 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 29c080b96..17e551101 100644 --- a/experimental/packages/exporter-trace-otlp-grpc/test/OTLPTraceExporter.test.ts +++ b/experimental/packages/exporter-trace-otlp-grpc/test/OTLPTraceExporter.test.ts @@ -27,6 +27,7 @@ import * as grpc from '@grpc/grpc-js'; import * as path from 'path'; import * as sinon from 'sinon'; import { OTLPTraceExporter } from '../src'; +import { VERSION } from '../src/version'; import { ensureExportedSpanIsCorrect, @@ -336,6 +337,12 @@ describe('when configuring via environment', () => { assert.deepStrictEqual(collectorExporter.metadata?.get('foo'), ['bar']); envSource.OTEL_EXPORTER_OTLP_HEADERS = ''; }); + it('should include user agent in header', () => { + const collectorExporter = new OTLPTraceExporter(); + assert.deepStrictEqual(collectorExporter.metadata?.get('User-Agent'), [ + `OTel-OTLP-Exporter-JavaScript/${VERSION}`, + ]); + }); it('should override global headers config with signal headers defined via env', () => { const metadata = new grpc.Metadata(); metadata.set('foo', 'bar'); diff --git a/experimental/packages/exporter-trace-otlp-http/src/platform/node/OTLPTraceExporter.ts b/experimental/packages/exporter-trace-otlp-http/src/platform/node/OTLPTraceExporter.ts index 8704baf57..f10fbd0ec 100644 --- a/experimental/packages/exporter-trace-otlp-http/src/platform/node/OTLPTraceExporter.ts +++ b/experimental/packages/exporter-trace-otlp-http/src/platform/node/OTLPTraceExporter.ts @@ -26,9 +26,13 @@ import { createExportTraceServiceRequest, IExportTraceServiceRequest, } from '@opentelemetry/otlp-transformer'; +import { VERSION } from '../../version'; const DEFAULT_COLLECTOR_RESOURCE_PATH = 'v1/traces'; const DEFAULT_COLLECTOR_URL = `http://localhost:4318/${DEFAULT_COLLECTOR_RESOURCE_PATH}`; +const USER_AGENT = { + 'User-Agent': `OTel-OTLP-Exporter-JavaScript/${VERSION}`, +}; /** * Collector Trace Exporter for Node @@ -39,12 +43,13 @@ export class OTLPTraceExporter { constructor(config: OTLPExporterNodeConfigBase = {}) { super(config); - this.headers = Object.assign( - this.headers, - baggageUtils.parseKeyPairsIntoRecord( + this.headers = { + ...this.headers, + ...USER_AGENT, + ...baggageUtils.parseKeyPairsIntoRecord( getEnv().OTEL_EXPORTER_OTLP_TRACES_HEADERS - ) - ); + ), + }; } convert(spans: ReadableSpan[]): IExportTraceServiceRequest { diff --git a/experimental/packages/exporter-trace-otlp-http/test/node/CollectorTraceExporter.test.ts b/experimental/packages/exporter-trace-otlp-http/test/node/CollectorTraceExporter.test.ts index 426aed443..9238260d3 100644 --- a/experimental/packages/exporter-trace-otlp-http/test/node/CollectorTraceExporter.test.ts +++ b/experimental/packages/exporter-trace-otlp-http/test/node/CollectorTraceExporter.test.ts @@ -36,6 +36,7 @@ import { import { nextTick } from 'process'; import { MockedResponse } from './nodeHelpers'; import { IExportTraceServiceRequest } from '@opentelemetry/otlp-transformer'; +import { VERSION } from '../../src/version'; let fakeRequest: PassThrough; @@ -160,6 +161,13 @@ describe('OTLPTraceExporter - node with json over http', () => { assert.strictEqual(collectorExporter.headers.foo, 'bar'); envSource.OTEL_EXPORTER_OTLP_HEADERS = ''; }); + it('should include user agent in header', () => { + const collectorExporter = new OTLPTraceExporter(); + assert.strictEqual( + collectorExporter.headers['User-Agent'], + `OTel-OTLP-Exporter-JavaScript/${VERSION}` + ); + }); it('should override global headers config with signal headers defined via env', () => { envSource.OTEL_EXPORTER_OTLP_HEADERS = 'foo=bar,bar=foo'; envSource.OTEL_EXPORTER_OTLP_TRACES_HEADERS = 'foo=boo'; diff --git a/experimental/packages/exporter-trace-otlp-proto/src/platform/node/OTLPTraceExporter.ts b/experimental/packages/exporter-trace-otlp-proto/src/platform/node/OTLPTraceExporter.ts index 063401331..210a16145 100644 --- a/experimental/packages/exporter-trace-otlp-proto/src/platform/node/OTLPTraceExporter.ts +++ b/experimental/packages/exporter-trace-otlp-proto/src/platform/node/OTLPTraceExporter.ts @@ -29,9 +29,13 @@ import { createExportTraceServiceRequest, IExportTraceServiceRequest, } from '@opentelemetry/otlp-transformer'; +import { VERSION } from '../../version'; const DEFAULT_COLLECTOR_RESOURCE_PATH = 'v1/traces'; const DEFAULT_COLLECTOR_URL = `http://localhost:4318/${DEFAULT_COLLECTOR_RESOURCE_PATH}`; +const USER_AGENT = { + 'User-Agent': `OTel-OTLP-Exporter-JavaScript/${VERSION}`, +}; /** * Collector Trace Exporter for Node with protobuf @@ -42,12 +46,13 @@ export class OTLPTraceExporter { constructor(config: OTLPExporterNodeConfigBase = {}) { super(config); - this.headers = Object.assign( - this.headers, - baggageUtils.parseKeyPairsIntoRecord( + this.headers = { + ...this.headers, + ...USER_AGENT, + ...baggageUtils.parseKeyPairsIntoRecord( getEnv().OTEL_EXPORTER_OTLP_TRACES_HEADERS - ) - ); + ), + }; } convert(spans: ReadableSpan[]): IExportTraceServiceRequest { diff --git a/experimental/packages/exporter-trace-otlp-proto/test/node/OTLPTraceExporter.test.ts b/experimental/packages/exporter-trace-otlp-proto/test/node/OTLPTraceExporter.test.ts index 64f0e40ea..c0a604ce9 100644 --- a/experimental/packages/exporter-trace-otlp-proto/test/node/OTLPTraceExporter.test.ts +++ b/experimental/packages/exporter-trace-otlp-proto/test/node/OTLPTraceExporter.test.ts @@ -39,6 +39,7 @@ import { ServiceClientType, } from '@opentelemetry/otlp-proto-exporter-base'; import { IExportTraceServiceRequest } from '@opentelemetry/otlp-transformer'; +import { VERSION } from '../../src/version'; let fakeRequest: PassThrough; @@ -52,6 +53,16 @@ describe('OTLPTraceExporter - node with proto over http', () => { sinon.restore(); }); + describe('default behavior for headers', () => { + const collectorExporter = new OTLPTraceExporter(); + it('should include user agent in header', () => { + assert.strictEqual( + collectorExporter.headers['User-Agent'], + `OTel-OTLP-Exporter-JavaScript/${VERSION}` + ); + }); + }); + 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', () => { From 8ef95bccc2d03302089f256f3d0ee091869b4c44 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Mon, 15 May 2023 14:17:27 +0200 Subject: [PATCH 34/72] fix(deps): update otel core experimental to ^0.39.1 (#1493) --- .../opentelemetry-resource-detector-instana/package.json | 2 +- metapackages/auto-instrumentations-node/package.json | 8 ++++---- metapackages/auto-instrumentations-web/package.json | 6 +++--- packages/opentelemetry-test-utils/package.json | 2 +- plugins/node/instrumentation-amqplib/package.json | 2 +- plugins/node/instrumentation-dataloader/package.json | 2 +- plugins/node/instrumentation-fs/package.json | 2 +- plugins/node/instrumentation-lru-memoizer/package.json | 2 +- plugins/node/instrumentation-mongoose/package.json | 2 +- plugins/node/instrumentation-socket.io/package.json | 2 +- plugins/node/instrumentation-tedious/package.json | 2 +- .../opentelemetry-instrumentation-aws-lambda/package.json | 2 +- .../opentelemetry-instrumentation-aws-sdk/package.json | 2 +- .../opentelemetry-instrumentation-bunyan/package.json | 2 +- .../opentelemetry-instrumentation-cassandra/package.json | 2 +- .../opentelemetry-instrumentation-connect/package.json | 2 +- .../node/opentelemetry-instrumentation-dns/package.json | 2 +- .../examples/package.json | 4 ++-- .../opentelemetry-instrumentation-express/package.json | 2 +- .../opentelemetry-instrumentation-fastify/package.json | 4 ++-- .../package.json | 2 +- .../opentelemetry-instrumentation-graphql/package.json | 2 +- .../node/opentelemetry-instrumentation-hapi/package.json | 2 +- .../opentelemetry-instrumentation-ioredis/package.json | 2 +- .../node/opentelemetry-instrumentation-knex/package.json | 2 +- .../examples/package.json | 4 ++-- .../node/opentelemetry-instrumentation-koa/package.json | 2 +- .../opentelemetry-instrumentation-memcached/package.json | 2 +- .../examples/package.json | 4 ++-- .../opentelemetry-instrumentation-mongodb/package.json | 2 +- .../examples/package.json | 4 ++-- .../node/opentelemetry-instrumentation-mysql/package.json | 2 +- .../opentelemetry-instrumentation-mysql2/package.json | 2 +- .../package.json | 2 +- .../node/opentelemetry-instrumentation-net/package.json | 2 +- .../node/opentelemetry-instrumentation-pg/package.json | 2 +- .../node/opentelemetry-instrumentation-pino/package.json | 2 +- .../opentelemetry-instrumentation-redis-4/package.json | 2 +- .../examples/package.json | 4 ++-- .../node/opentelemetry-instrumentation-redis/package.json | 2 +- .../opentelemetry-instrumentation-restify/package.json | 2 +- .../opentelemetry-instrumentation-router/package.json | 2 +- .../opentelemetry-instrumentation-winston/package.json | 2 +- .../package.json | 2 +- .../opentelemetry-instrumentation-long-task/package.json | 2 +- .../package.json | 4 ++-- 46 files changed, 58 insertions(+), 58 deletions(-) diff --git a/detectors/node/opentelemetry-resource-detector-instana/package.json b/detectors/node/opentelemetry-resource-detector-instana/package.json index f9275e448..35c60c30c 100644 --- a/detectors/node/opentelemetry-resource-detector-instana/package.json +++ b/detectors/node/opentelemetry-resource-detector-instana/package.json @@ -41,7 +41,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/contrib-test-utils": "^0.33.2", - "@opentelemetry/sdk-node": "^0.38.0", + "@opentelemetry/sdk-node": "^0.39.1", "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/semver": "7.3.8", diff --git a/metapackages/auto-instrumentations-node/package.json b/metapackages/auto-instrumentations-node/package.json index 49a91d769..712b98955 100644 --- a/metapackages/auto-instrumentations-node/package.json +++ b/metapackages/auto-instrumentations-node/package.json @@ -49,7 +49,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/instrumentation-amqplib": "^0.32.3", "@opentelemetry/instrumentation-aws-lambda": "^0.35.1", "@opentelemetry/instrumentation-aws-sdk": "^0.34.1", @@ -63,9 +63,9 @@ "@opentelemetry/instrumentation-fastify": "^0.31.2", "@opentelemetry/instrumentation-generic-pool": "^0.31.2", "@opentelemetry/instrumentation-graphql": "^0.34.1", - "@opentelemetry/instrumentation-grpc": "^0.38.0", + "@opentelemetry/instrumentation-grpc": "^0.39.1", "@opentelemetry/instrumentation-hapi": "^0.31.2", - "@opentelemetry/instrumentation-http": "^0.38.0", + "@opentelemetry/instrumentation-http": "^0.39.1", "@opentelemetry/instrumentation-ioredis": "^0.34.1", "@opentelemetry/instrumentation-knex": "^0.31.2", "@opentelemetry/instrumentation-koa": "^0.34.4", @@ -91,6 +91,6 @@ "@opentelemetry/resource-detector-container": "^0.2.2", "@opentelemetry/resource-detector-gcp": "^0.28.0", "@opentelemetry/resources": "^1.12.0", - "@opentelemetry/sdk-node": "^0.38.0" + "@opentelemetry/sdk-node": "^0.39.1" } } diff --git a/metapackages/auto-instrumentations-web/package.json b/metapackages/auto-instrumentations-web/package.json index a8fddc239..41a61aa4d 100644 --- a/metapackages/auto-instrumentations-web/package.json +++ b/metapackages/auto-instrumentations-web/package.json @@ -59,10 +59,10 @@ "webpack-merge": "5.8.0" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/instrumentation-document-load": "^0.32.1", - "@opentelemetry/instrumentation-fetch": "^0.38.0", + "@opentelemetry/instrumentation-fetch": "^0.39.1", "@opentelemetry/instrumentation-user-interaction": "^0.32.2", - "@opentelemetry/instrumentation-xml-http-request": "^0.38.0" + "@opentelemetry/instrumentation-xml-http-request": "^0.39.1" } } diff --git a/packages/opentelemetry-test-utils/package.json b/packages/opentelemetry-test-utils/package.json index c88aa12ee..261cff858 100644 --- a/packages/opentelemetry-test-utils/package.json +++ b/packages/opentelemetry-test-utils/package.json @@ -48,7 +48,7 @@ "dependencies": { "@opentelemetry/core": "^1.0.0", "@opentelemetry/exporter-jaeger": "^1.3.1", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/sdk-trace-node": "^1.8.0", "@opentelemetry/resources": "^1.8.0", "@opentelemetry/sdk-trace-base": "^1.8.0", diff --git a/plugins/node/instrumentation-amqplib/package.json b/plugins/node/instrumentation-amqplib/package.json index 5c085d9bc..cc0a6efa2 100644 --- a/plugins/node/instrumentation-amqplib/package.json +++ b/plugins/node/instrumentation-amqplib/package.json @@ -47,7 +47,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "devDependencies": { diff --git a/plugins/node/instrumentation-dataloader/package.json b/plugins/node/instrumentation-dataloader/package.json index 06ced203a..90945d2a5 100644 --- a/plugins/node/instrumentation-dataloader/package.json +++ b/plugins/node/instrumentation-dataloader/package.json @@ -61,7 +61,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0" + "@opentelemetry/instrumentation": "^0.39.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-dataloader#readme" } diff --git a/plugins/node/instrumentation-fs/package.json b/plugins/node/instrumentation-fs/package.json index c40cd51e8..a004bff36 100644 --- a/plugins/node/instrumentation-fs/package.json +++ b/plugins/node/instrumentation-fs/package.json @@ -59,7 +59,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-fs#readme" diff --git a/plugins/node/instrumentation-lru-memoizer/package.json b/plugins/node/instrumentation-lru-memoizer/package.json index ff2a39aef..146dbb601 100644 --- a/plugins/node/instrumentation-lru-memoizer/package.json +++ b/plugins/node/instrumentation-lru-memoizer/package.json @@ -57,7 +57,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0" + "@opentelemetry/instrumentation": "^0.39.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-lru-memoizer#readme" } diff --git a/plugins/node/instrumentation-mongoose/package.json b/plugins/node/instrumentation-mongoose/package.json index 33358620a..c95680a7d 100644 --- a/plugins/node/instrumentation-mongoose/package.json +++ b/plugins/node/instrumentation-mongoose/package.json @@ -61,7 +61,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-mongoose#readme" diff --git a/plugins/node/instrumentation-socket.io/package.json b/plugins/node/instrumentation-socket.io/package.json index 513504f4a..9834c455f 100644 --- a/plugins/node/instrumentation-socket.io/package.json +++ b/plugins/node/instrumentation-socket.io/package.json @@ -58,7 +58,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-socket.io#readme" diff --git a/plugins/node/instrumentation-tedious/package.json b/plugins/node/instrumentation-tedious/package.json index 5468815ee..777349edc 100644 --- a/plugins/node/instrumentation-tedious/package.json +++ b/plugins/node/instrumentation-tedious/package.json @@ -62,7 +62,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/tedious": "^4.0.6" }, diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json index d1959d99a..d2e49fd08 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json @@ -59,7 +59,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/propagator-aws-xray": "^1.2.0", "@opentelemetry/resources": "^1.8.0", "@opentelemetry/semantic-conventions": "^1.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json index d1714eebf..7ec68a169 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json @@ -47,7 +47,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@opentelemetry/propagation-utils": "^0.29.3" }, diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/package.json b/plugins/node/opentelemetry-instrumentation-bunyan/package.json index 6c3c66c7f..a78087226 100644 --- a/plugins/node/opentelemetry-instrumentation-bunyan/package.json +++ b/plugins/node/opentelemetry-instrumentation-bunyan/package.json @@ -64,7 +64,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@types/bunyan": "1.8.7" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-bunyan#readme" diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/package.json b/plugins/node/opentelemetry-instrumentation-cassandra/package.json index 20eedc419..2537a7fe3 100644 --- a/plugins/node/opentelemetry-instrumentation-cassandra/package.json +++ b/plugins/node/opentelemetry-instrumentation-cassandra/package.json @@ -64,7 +64,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-cassandra#readme" diff --git a/plugins/node/opentelemetry-instrumentation-connect/package.json b/plugins/node/opentelemetry-instrumentation-connect/package.json index ebd9f11bc..2848ed92e 100644 --- a/plugins/node/opentelemetry-instrumentation-connect/package.json +++ b/plugins/node/opentelemetry-instrumentation-connect/package.json @@ -59,7 +59,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/connect": "3.4.35" }, diff --git a/plugins/node/opentelemetry-instrumentation-dns/package.json b/plugins/node/opentelemetry-instrumentation-dns/package.json index 7b5f5d7ff..404be920f 100644 --- a/plugins/node/opentelemetry-instrumentation-dns/package.json +++ b/plugins/node/opentelemetry-instrumentation-dns/package.json @@ -62,7 +62,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "semver": "^7.3.2" }, diff --git a/plugins/node/opentelemetry-instrumentation-express/examples/package.json b/plugins/node/opentelemetry-instrumentation-express/examples/package.json index e2d5cc1ea..f9d88983f 100644 --- a/plugins/node/opentelemetry-instrumentation-express/examples/package.json +++ b/plugins/node/opentelemetry-instrumentation-express/examples/package.json @@ -32,9 +32,9 @@ "@opentelemetry/api": "^1.0.0", "@opentelemetry/exporter-jaeger": "^1.0.0", "@opentelemetry/exporter-zipkin": "^1.0.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/instrumentation-express": "0.28.0", - "@opentelemetry/instrumentation-http": "^0.38.0", + "@opentelemetry/instrumentation-http": "^0.39.1", "@opentelemetry/resources": "^1.0.0", "@opentelemetry/sdk-trace-base": "^1.0.0", "@opentelemetry/sdk-trace-node": "^1.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-express/package.json b/plugins/node/opentelemetry-instrumentation-express/package.json index 1db32213b..90832ce8d 100644 --- a/plugins/node/opentelemetry-instrumentation-express/package.json +++ b/plugins/node/opentelemetry-instrumentation-express/package.json @@ -66,7 +66,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/express": "4.17.13" }, diff --git a/plugins/node/opentelemetry-instrumentation-fastify/package.json b/plugins/node/opentelemetry-instrumentation-fastify/package.json index cfde7f78e..84263b180 100644 --- a/plugins/node/opentelemetry-instrumentation-fastify/package.json +++ b/plugins/node/opentelemetry-instrumentation-fastify/package.json @@ -48,7 +48,7 @@ "@fastify/express": "^2.0.2", "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/instrumentation-http": "0.38.0", + "@opentelemetry/instrumentation-http": "0.39.1", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/express": "4.17.13", @@ -63,7 +63,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-fastify#readme" diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json index 33eef11c7..8becaa3c2 100644 --- a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json +++ b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json @@ -61,7 +61,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/generic-pool": "^3.1.9" }, diff --git a/plugins/node/opentelemetry-instrumentation-graphql/package.json b/plugins/node/opentelemetry-instrumentation-graphql/package.json index 0d3619a1a..940dacd14 100644 --- a/plugins/node/opentelemetry-instrumentation-graphql/package.json +++ b/plugins/node/opentelemetry-instrumentation-graphql/package.json @@ -61,7 +61,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0" + "@opentelemetry/instrumentation": "^0.39.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-graphql#readme" } diff --git a/plugins/node/opentelemetry-instrumentation-hapi/package.json b/plugins/node/opentelemetry-instrumentation-hapi/package.json index 532833bfd..805cde19c 100644 --- a/plugins/node/opentelemetry-instrumentation-hapi/package.json +++ b/plugins/node/opentelemetry-instrumentation-hapi/package.json @@ -60,7 +60,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/hapi__hapi": "20.0.9" }, diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/package.json b/plugins/node/opentelemetry-instrumentation-ioredis/package.json index 70eb4acfb..8b6d47a7d 100644 --- a/plugins/node/opentelemetry-instrumentation-ioredis/package.json +++ b/plugins/node/opentelemetry-instrumentation-ioredis/package.json @@ -69,7 +69,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/redis-common": "^0.35.0", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/ioredis4": "npm:@types/ioredis@^4.28.10" diff --git a/plugins/node/opentelemetry-instrumentation-knex/package.json b/plugins/node/opentelemetry-instrumentation-knex/package.json index 911ea3c18..2afd5dc3e 100644 --- a/plugins/node/opentelemetry-instrumentation-knex/package.json +++ b/plugins/node/opentelemetry-instrumentation-knex/package.json @@ -60,7 +60,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-knex#readme" diff --git a/plugins/node/opentelemetry-instrumentation-koa/examples/package.json b/plugins/node/opentelemetry-instrumentation-koa/examples/package.json index 09fa88ab1..cb6121661 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/examples/package.json +++ b/plugins/node/opentelemetry-instrumentation-koa/examples/package.json @@ -34,8 +34,8 @@ "@opentelemetry/api": "^1.0.0", "@opentelemetry/exporter-jaeger": "^1.0.0", "@opentelemetry/exporter-zipkin": "^1.0.0", - "@opentelemetry/instrumentation": "^0.38.0", - "@opentelemetry/instrumentation-http": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", + "@opentelemetry/instrumentation-http": "^0.39.1", "@opentelemetry/instrumentation-koa": "^0.31.0", "@opentelemetry/sdk-trace-node": "^1.0.0", "@opentelemetry/sdk-trace-base": "^1.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-koa/package.json b/plugins/node/opentelemetry-instrumentation-koa/package.json index 504b0781a..2993b0456 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/package.json +++ b/plugins/node/opentelemetry-instrumentation-koa/package.json @@ -68,7 +68,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/koa": "2.13.6", "@types/koa__router": "8.0.7" diff --git a/plugins/node/opentelemetry-instrumentation-memcached/package.json b/plugins/node/opentelemetry-instrumentation-memcached/package.json index 5ed4ce9f7..35f887853 100644 --- a/plugins/node/opentelemetry-instrumentation-memcached/package.json +++ b/plugins/node/opentelemetry-instrumentation-memcached/package.json @@ -63,7 +63,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/memcached": "^2.2.6" }, diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/examples/package.json b/plugins/node/opentelemetry-instrumentation-mongodb/examples/package.json index 4f74cc9ff..58375fd96 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/examples/package.json +++ b/plugins/node/opentelemetry-instrumentation-mongodb/examples/package.json @@ -33,8 +33,8 @@ "@opentelemetry/api": "^1.0.0", "@opentelemetry/exporter-jaeger": "^1.0.0", "@opentelemetry/exporter-zipkin": "^1.0.0", - "@opentelemetry/instrumentation": "^0.38.0", - "@opentelemetry/instrumentation-http": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", + "@opentelemetry/instrumentation-http": "^0.39.1", "@opentelemetry/instrumentation-mongodb": "^0.32.0", "@opentelemetry/sdk-trace-node": "^1.0.0", "@opentelemetry/sdk-trace-base": "^1.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/package.json b/plugins/node/opentelemetry-instrumentation-mongodb/package.json index fc1526c84..79006f86d 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/package.json +++ b/plugins/node/opentelemetry-instrumentation-mongodb/package.json @@ -68,7 +68,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-mongodb#readme" diff --git a/plugins/node/opentelemetry-instrumentation-mysql/examples/package.json b/plugins/node/opentelemetry-instrumentation-mysql/examples/package.json index 5abdb9fd0..2487460d5 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/examples/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql/examples/package.json @@ -34,8 +34,8 @@ "@opentelemetry/api": "^1.0.0", "@opentelemetry/exporter-jaeger": "^1.0.0", "@opentelemetry/exporter-zipkin": "^1.0.0", - "@opentelemetry/instrumentation": "^0.38.0", - "@opentelemetry/instrumentation-http": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", + "@opentelemetry/instrumentation-http": "^0.39.1", "@opentelemetry/instrumentation-mysql": "^0.31.0", "@opentelemetry/sdk-trace-base": "^1.0.0", "@opentelemetry/sdk-trace-node": "^1.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-mysql/package.json b/plugins/node/opentelemetry-instrumentation-mysql/package.json index 8bf39d0c1..c844fe0fb 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql/package.json @@ -63,7 +63,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/mysql": "2.15.19" }, diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/package.json b/plugins/node/opentelemetry-instrumentation-mysql2/package.json index 1ffddf6d7..52347f260 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql2/package.json @@ -65,7 +65,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-mysql2#readme" diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json index ec9eb1333..40e83f6a0 100644 --- a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json +++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json @@ -73,7 +73,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-nestjs-core#readme" diff --git a/plugins/node/opentelemetry-instrumentation-net/package.json b/plugins/node/opentelemetry-instrumentation-net/package.json index a4501047f..e0a8ac055 100644 --- a/plugins/node/opentelemetry-instrumentation-net/package.json +++ b/plugins/node/opentelemetry-instrumentation-net/package.json @@ -61,7 +61,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-net#readme" diff --git a/plugins/node/opentelemetry-instrumentation-pg/package.json b/plugins/node/opentelemetry-instrumentation-pg/package.json index 73350e61b..906c0d281 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/package.json +++ b/plugins/node/opentelemetry-instrumentation-pg/package.json @@ -75,7 +75,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/pg": "8.6.1", "@types/pg-pool": "2.0.3" diff --git a/plugins/node/opentelemetry-instrumentation-pino/package.json b/plugins/node/opentelemetry-instrumentation-pino/package.json index b70350fe2..5f698a139 100644 --- a/plugins/node/opentelemetry-instrumentation-pino/package.json +++ b/plugins/node/opentelemetry-instrumentation-pino/package.json @@ -66,7 +66,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0" + "@opentelemetry/instrumentation": "^0.39.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-pino#readme" } diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/package.json b/plugins/node/opentelemetry-instrumentation-redis-4/package.json index 9dde1c586..4c7ccccc1 100644 --- a/plugins/node/opentelemetry-instrumentation-redis-4/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis-4/package.json @@ -69,7 +69,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/redis-common": "^0.35.0", "@opentelemetry/semantic-conventions": "^1.0.0" }, diff --git a/plugins/node/opentelemetry-instrumentation-redis/examples/package.json b/plugins/node/opentelemetry-instrumentation-redis/examples/package.json index d313a4dc0..44258f9b3 100644 --- a/plugins/node/opentelemetry-instrumentation-redis/examples/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis/examples/package.json @@ -34,8 +34,8 @@ "@opentelemetry/api": "^1.0.0", "@opentelemetry/exporter-jaeger": "^1.0.0", "@opentelemetry/exporter-zipkin": "^1.0.0", - "@opentelemetry/instrumentation": "^0.38.0", - "@opentelemetry/instrumentation-http": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", + "@opentelemetry/instrumentation-http": "^0.39.1", "@opentelemetry/instrumentation-redis": "^0.32.0", "@opentelemetry/sdk-trace-base": "^1.0.0", "@opentelemetry/sdk-trace-node": "^1.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-redis/package.json b/plugins/node/opentelemetry-instrumentation-redis/package.json index ba761a43c..eb1eda885 100644 --- a/plugins/node/opentelemetry-instrumentation-redis/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis/package.json @@ -70,7 +70,7 @@ "@types/redis": "2.8.31" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/redis-common": "^0.35.0", "@opentelemetry/semantic-conventions": "^1.0.0" }, diff --git a/plugins/node/opentelemetry-instrumentation-restify/package.json b/plugins/node/opentelemetry-instrumentation-restify/package.json index ea8c245ea..c83afcc6f 100644 --- a/plugins/node/opentelemetry-instrumentation-restify/package.json +++ b/plugins/node/opentelemetry-instrumentation-restify/package.json @@ -65,7 +65,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-restify#readme" diff --git a/plugins/node/opentelemetry-instrumentation-router/package.json b/plugins/node/opentelemetry-instrumentation-router/package.json index a179f2f6f..c5055b8d9 100644 --- a/plugins/node/opentelemetry-instrumentation-router/package.json +++ b/plugins/node/opentelemetry-instrumentation-router/package.json @@ -59,7 +59,7 @@ "typescript": "4.4.4" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-router#readme" diff --git a/plugins/node/opentelemetry-instrumentation-winston/package.json b/plugins/node/opentelemetry-instrumentation-winston/package.json index a2c0c4e43..7a6e99cdd 100644 --- a/plugins/node/opentelemetry-instrumentation-winston/package.json +++ b/plugins/node/opentelemetry-instrumentation-winston/package.json @@ -66,7 +66,7 @@ "winston2": "npm:winston@2.4.5" }, "dependencies": { - "@opentelemetry/instrumentation": "^0.38.0" + "@opentelemetry/instrumentation": "^0.39.1" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-winston#readme" } diff --git a/plugins/web/opentelemetry-instrumentation-document-load/package.json b/plugins/web/opentelemetry-instrumentation-document-load/package.json index 1b656f7fc..5732b6f3c 100644 --- a/plugins/web/opentelemetry-instrumentation-document-load/package.json +++ b/plugins/web/opentelemetry-instrumentation-document-load/package.json @@ -77,7 +77,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/sdk-trace-base": "^1.0.0", "@opentelemetry/sdk-trace-web": "^1.8.0", "@opentelemetry/semantic-conventions": "^1.0.0" diff --git a/plugins/web/opentelemetry-instrumentation-long-task/package.json b/plugins/web/opentelemetry-instrumentation-long-task/package.json index a7eef4c1a..f869dfffa 100644 --- a/plugins/web/opentelemetry-instrumentation-long-task/package.json +++ b/plugins/web/opentelemetry-instrumentation-long-task/package.json @@ -78,7 +78,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/sdk-trace-web": "^1.8.0" }, "peerDependencies": { diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json index a7ce2daf6..c39bfb586 100644 --- a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json +++ b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json @@ -50,7 +50,7 @@ "@babel/core": "7.15.0", "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-zone-peer-dep": "^1.8.0", - "@opentelemetry/instrumentation-xml-http-request": "^0.38.0", + "@opentelemetry/instrumentation-xml-http-request": "^0.39.1", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/jquery": "3.5.6", "@types/mocha": "7.0.2", @@ -80,7 +80,7 @@ }, "dependencies": { "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.38.0", + "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/sdk-trace-web": "^1.8.0" }, "peerDependencies": { From 3e5a3b1a99a389857aa09687126b3b263328f3af Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Mon, 15 May 2023 18:00:10 +0200 Subject: [PATCH 35/72] chore(deps): update dependency rimraf to v5 (#1494) Co-authored-by: Amir Blum --- .../opentelemetry-resource-detector-alibaba-cloud/package.json | 2 +- detectors/node/opentelemetry-resource-detector-aws/package.json | 2 +- .../node/opentelemetry-resource-detector-container/package.json | 2 +- detectors/node/opentelemetry-resource-detector-gcp/package.json | 2 +- .../node/opentelemetry-resource-detector-github/package.json | 2 +- .../node/opentelemetry-resource-detector-instana/package.json | 2 +- metapackages/auto-instrumentations-node/package.json | 2 +- metapackages/auto-instrumentations-web/package.json | 2 +- packages/opentelemetry-host-metrics/package.json | 2 +- packages/opentelemetry-id-generator-aws-xray/package.json | 2 +- plugins/node/instrumentation-dataloader/package.json | 2 +- plugins/node/instrumentation-fs/package.json | 2 +- plugins/node/instrumentation-lru-memoizer/package.json | 2 +- plugins/node/instrumentation-mongoose/package.json | 2 +- plugins/node/instrumentation-socket.io/package.json | 2 +- plugins/node/instrumentation-tedious/package.json | 2 +- .../node/opentelemetry-instrumentation-aws-lambda/package.json | 2 +- plugins/node/opentelemetry-instrumentation-aws-sdk/package.json | 2 +- plugins/node/opentelemetry-instrumentation-bunyan/package.json | 2 +- .../node/opentelemetry-instrumentation-cassandra/package.json | 2 +- plugins/node/opentelemetry-instrumentation-connect/package.json | 2 +- plugins/node/opentelemetry-instrumentation-dns/package.json | 2 +- plugins/node/opentelemetry-instrumentation-express/package.json | 2 +- plugins/node/opentelemetry-instrumentation-fastify/package.json | 2 +- .../opentelemetry-instrumentation-generic-pool/package.json | 2 +- plugins/node/opentelemetry-instrumentation-graphql/package.json | 2 +- plugins/node/opentelemetry-instrumentation-hapi/package.json | 2 +- plugins/node/opentelemetry-instrumentation-ioredis/package.json | 2 +- plugins/node/opentelemetry-instrumentation-knex/package.json | 2 +- plugins/node/opentelemetry-instrumentation-koa/package.json | 2 +- .../node/opentelemetry-instrumentation-memcached/package.json | 2 +- plugins/node/opentelemetry-instrumentation-mongodb/package.json | 2 +- plugins/node/opentelemetry-instrumentation-mysql/package.json | 2 +- plugins/node/opentelemetry-instrumentation-mysql2/package.json | 2 +- .../node/opentelemetry-instrumentation-nestjs-core/package.json | 2 +- plugins/node/opentelemetry-instrumentation-net/package.json | 2 +- plugins/node/opentelemetry-instrumentation-pg/package.json | 2 +- plugins/node/opentelemetry-instrumentation-pino/package.json | 2 +- plugins/node/opentelemetry-instrumentation-redis-4/package.json | 2 +- plugins/node/opentelemetry-instrumentation-redis/package.json | 2 +- plugins/node/opentelemetry-instrumentation-restify/package.json | 2 +- plugins/node/opentelemetry-instrumentation-router/package.json | 2 +- plugins/node/opentelemetry-instrumentation-winston/package.json | 2 +- .../opentelemetry-instrumentation-document-load/package.json | 2 +- .../web/opentelemetry-instrumentation-long-task/package.json | 2 +- .../opentelemetry-instrumentation-user-interaction/package.json | 2 +- plugins/web/opentelemetry-plugin-react-load/package.json | 2 +- propagators/opentelemetry-propagator-aws-xray/package.json | 2 +- .../opentelemetry-propagator-grpc-census-binary/package.json | 2 +- 49 files changed, 49 insertions(+), 49 deletions(-) diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json index 960f3c28a..c5725e384 100644 --- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json +++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json @@ -50,7 +50,7 @@ "mocha": "7.2.0", "nock": "12.0.3", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/detectors/node/opentelemetry-resource-detector-aws/package.json b/detectors/node/opentelemetry-resource-detector-aws/package.json index f99a6d42c..ed0bf0ed4 100644 --- a/detectors/node/opentelemetry-resource-detector-aws/package.json +++ b/detectors/node/opentelemetry-resource-detector-aws/package.json @@ -49,7 +49,7 @@ "mocha": "7.2.0", "nock": "12.0.3", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/detectors/node/opentelemetry-resource-detector-container/package.json b/detectors/node/opentelemetry-resource-detector-container/package.json index c64a07b82..c5a863976 100644 --- a/detectors/node/opentelemetry-resource-detector-container/package.json +++ b/detectors/node/opentelemetry-resource-detector-container/package.json @@ -44,7 +44,7 @@ "mocha": "7.2.0", "nock": "12.0.3", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/detectors/node/opentelemetry-resource-detector-gcp/package.json b/detectors/node/opentelemetry-resource-detector-gcp/package.json index fc7c6460a..f018b7d61 100644 --- a/detectors/node/opentelemetry-resource-detector-gcp/package.json +++ b/detectors/node/opentelemetry-resource-detector-gcp/package.json @@ -49,7 +49,7 @@ "mocha": "7.2.0", "nock": "12.0.3", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, diff --git a/detectors/node/opentelemetry-resource-detector-github/package.json b/detectors/node/opentelemetry-resource-detector-github/package.json index 68516384f..b5d813919 100644 --- a/detectors/node/opentelemetry-resource-detector-github/package.json +++ b/detectors/node/opentelemetry-resource-detector-github/package.json @@ -51,7 +51,7 @@ "@types/sinon": "10.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/detectors/node/opentelemetry-resource-detector-instana/package.json b/detectors/node/opentelemetry-resource-detector-instana/package.json index 35c60c30c..fcef909a2 100644 --- a/detectors/node/opentelemetry-resource-detector-instana/package.json +++ b/detectors/node/opentelemetry-resource-detector-instana/package.json @@ -48,7 +48,7 @@ "mocha": "7.2.0", "nock": "12.0.3", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, diff --git a/metapackages/auto-instrumentations-node/package.json b/metapackages/auto-instrumentations-node/package.json index 712b98955..cdc663a53 100644 --- a/metapackages/auto-instrumentations-node/package.json +++ b/metapackages/auto-instrumentations-node/package.json @@ -43,7 +43,7 @@ "@types/sinon": "10.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/metapackages/auto-instrumentations-web/package.json b/metapackages/auto-instrumentations-web/package.json index 41a61aa4d..39db9b121 100644 --- a/metapackages/auto-instrumentations-web/package.json +++ b/metapackages/auto-instrumentations-web/package.json @@ -49,7 +49,7 @@ "karma-webpack": "4.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-loader": "8.3.0", "ts-mocha": "10.0.0", diff --git a/packages/opentelemetry-host-metrics/package.json b/packages/opentelemetry-host-metrics/package.json index 2a5fd25c0..323646552 100644 --- a/packages/opentelemetry-host-metrics/package.json +++ b/packages/opentelemetry-host-metrics/package.json @@ -52,7 +52,7 @@ "@types/sinon": "10.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/packages/opentelemetry-id-generator-aws-xray/package.json b/packages/opentelemetry-id-generator-aws-xray/package.json index 2248ea572..bbb2973c7 100644 --- a/packages/opentelemetry-id-generator-aws-xray/package.json +++ b/packages/opentelemetry-id-generator-aws-xray/package.json @@ -68,7 +68,7 @@ "karma-webpack": "4.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-loader": "8.3.0", "ts-mocha": "10.0.0", diff --git a/plugins/node/instrumentation-dataloader/package.json b/plugins/node/instrumentation-dataloader/package.json index 90945d2a5..1603a9417 100644 --- a/plugins/node/instrumentation-dataloader/package.json +++ b/plugins/node/instrumentation-dataloader/package.json @@ -55,7 +55,7 @@ "dataloader": "2.2.1", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/instrumentation-fs/package.json b/plugins/node/instrumentation-fs/package.json index a004bff36..576b9e4f3 100644 --- a/plugins/node/instrumentation-fs/package.json +++ b/plugins/node/instrumentation-fs/package.json @@ -52,7 +52,7 @@ "@types/sinon": "^10.0.11", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/instrumentation-lru-memoizer/package.json b/plugins/node/instrumentation-lru-memoizer/package.json index 146dbb601..2d43c0bf9 100644 --- a/plugins/node/instrumentation-lru-memoizer/package.json +++ b/plugins/node/instrumentation-lru-memoizer/package.json @@ -51,7 +51,7 @@ "lru-memoizer": "2.1.4", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/instrumentation-mongoose/package.json b/plugins/node/instrumentation-mongoose/package.json index c95680a7d..14208f467 100644 --- a/plugins/node/instrumentation-mongoose/package.json +++ b/plugins/node/instrumentation-mongoose/package.json @@ -54,7 +54,7 @@ "mocha": "7.2.0", "mongoose": "6.5.2", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/instrumentation-socket.io/package.json b/plugins/node/instrumentation-socket.io/package.json index 9834c455f..582cc1057 100644 --- a/plugins/node/instrumentation-socket.io/package.json +++ b/plugins/node/instrumentation-socket.io/package.json @@ -50,7 +50,7 @@ "expect": "27.4.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "socket.io": "^4.1.3", "socket.io-client": "^4.1.3", "test-all-versions": "5.0.1", diff --git a/plugins/node/instrumentation-tedious/package.json b/plugins/node/instrumentation-tedious/package.json index 777349edc..2365e9b26 100644 --- a/plugins/node/instrumentation-tedious/package.json +++ b/plugins/node/instrumentation-tedious/package.json @@ -55,7 +55,7 @@ "@types/node": "18.11.7", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "tedious": "14.1.0", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json index d2e49fd08..9eaf2d9cb 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json @@ -54,7 +54,7 @@ "@types/node": "18.11.7", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json index 7ec68a169..3b52fa4c7 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json @@ -70,7 +70,7 @@ "mocha": "7.2.0", "nock": "13.2.1", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/package.json b/plugins/node/opentelemetry-instrumentation-bunyan/package.json index a78087226..696dffcb0 100644 --- a/plugins/node/opentelemetry-instrumentation-bunyan/package.json +++ b/plugins/node/opentelemetry-instrumentation-bunyan/package.json @@ -57,7 +57,7 @@ "bunyan": "1.8.15", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/package.json b/plugins/node/opentelemetry-instrumentation-cassandra/package.json index 2537a7fe3..53574cef6 100644 --- a/plugins/node/opentelemetry-instrumentation-cassandra/package.json +++ b/plugins/node/opentelemetry-instrumentation-cassandra/package.json @@ -58,7 +58,7 @@ "cassandra-driver": "4.6.3", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-connect/package.json b/plugins/node/opentelemetry-instrumentation-connect/package.json index 2848ed92e..bdc60b58a 100644 --- a/plugins/node/opentelemetry-instrumentation-connect/package.json +++ b/plugins/node/opentelemetry-instrumentation-connect/package.json @@ -53,7 +53,7 @@ "connect": "3.7.0", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, diff --git a/plugins/node/opentelemetry-instrumentation-dns/package.json b/plugins/node/opentelemetry-instrumentation-dns/package.json index 404be920f..2f3de0534 100644 --- a/plugins/node/opentelemetry-instrumentation-dns/package.json +++ b/plugins/node/opentelemetry-instrumentation-dns/package.json @@ -56,7 +56,7 @@ "@types/sinon": "10.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-express/package.json b/plugins/node/opentelemetry-instrumentation-express/package.json index 90832ce8d..93fe28e06 100644 --- a/plugins/node/opentelemetry-instrumentation-express/package.json +++ b/plugins/node/opentelemetry-instrumentation-express/package.json @@ -58,7 +58,7 @@ "express": "4.17.3", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-fastify/package.json b/plugins/node/opentelemetry-instrumentation-fastify/package.json index 84263b180..af0842001 100644 --- a/plugins/node/opentelemetry-instrumentation-fastify/package.json +++ b/plugins/node/opentelemetry-instrumentation-fastify/package.json @@ -57,7 +57,7 @@ "fastify": "^4.5.3", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json index 8becaa3c2..ab841cf6c 100644 --- a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json +++ b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json @@ -55,7 +55,7 @@ "generic-pool": "3.8.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "semver": "7.3.5", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-graphql/package.json b/plugins/node/opentelemetry-instrumentation-graphql/package.json index 940dacd14..8e9ac120d 100644 --- a/plugins/node/opentelemetry-instrumentation-graphql/package.json +++ b/plugins/node/opentelemetry-instrumentation-graphql/package.json @@ -55,7 +55,7 @@ "graphql": "^16.5.0", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-hapi/package.json b/plugins/node/opentelemetry-instrumentation-hapi/package.json index 805cde19c..939607578 100644 --- a/plugins/node/opentelemetry-instrumentation-hapi/package.json +++ b/plugins/node/opentelemetry-instrumentation-hapi/package.json @@ -54,7 +54,7 @@ "@types/node": "18.11.7", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/package.json b/plugins/node/opentelemetry-instrumentation-ioredis/package.json index 8b6d47a7d..da481e35f 100644 --- a/plugins/node/opentelemetry-instrumentation-ioredis/package.json +++ b/plugins/node/opentelemetry-instrumentation-ioredis/package.json @@ -62,7 +62,7 @@ "ioredis": "5.2.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-knex/package.json b/plugins/node/opentelemetry-instrumentation-knex/package.json index 2afd5dc3e..bad5144a9 100644 --- a/plugins/node/opentelemetry-instrumentation-knex/package.json +++ b/plugins/node/opentelemetry-instrumentation-knex/package.json @@ -54,7 +54,7 @@ "knex": "0.95.9", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sqlite3": "5.1.5", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-koa/package.json b/plugins/node/opentelemetry-instrumentation-koa/package.json index 2993b0456..991272799 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/package.json +++ b/plugins/node/opentelemetry-instrumentation-koa/package.json @@ -60,7 +60,7 @@ "koa": "2.13.1", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-memcached/package.json b/plugins/node/opentelemetry-instrumentation-memcached/package.json index 35f887853..6070b2afb 100644 --- a/plugins/node/opentelemetry-instrumentation-memcached/package.json +++ b/plugins/node/opentelemetry-instrumentation-memcached/package.json @@ -58,7 +58,7 @@ "memcached": "2.2.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" }, diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/package.json b/plugins/node/opentelemetry-instrumentation-mongodb/package.json index 79006f86d..330367967 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/package.json +++ b/plugins/node/opentelemetry-instrumentation-mongodb/package.json @@ -62,7 +62,7 @@ "@types/mongodb": "3.6.20", "@types/bson": "4.0.5", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-mysql/package.json b/plugins/node/opentelemetry-instrumentation-mysql/package.json index c844fe0fb..77c35e5f3 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql/package.json @@ -57,7 +57,7 @@ "mocha": "7.2.0", "mysql": "2.18.1", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/package.json b/plugins/node/opentelemetry-instrumentation-mysql2/package.json index 52347f260..a1a1ae862 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql2/package.json @@ -58,7 +58,7 @@ "mocha": "7.2.0", "mysql2": "2.3.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "semver": "7.3.5", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json index 40e83f6a0..861faa01a 100644 --- a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json +++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json @@ -64,7 +64,7 @@ "mocha": "7.2.0", "nyc": "15.1.0", "reflect-metadata": "0.1.13", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "rxjs": "7.3.0", "rxjs-compat": "6.6.7", "semver": "7.3.5", diff --git a/plugins/node/opentelemetry-instrumentation-net/package.json b/plugins/node/opentelemetry-instrumentation-net/package.json index e0a8ac055..2e0d23ba6 100644 --- a/plugins/node/opentelemetry-instrumentation-net/package.json +++ b/plugins/node/opentelemetry-instrumentation-net/package.json @@ -55,7 +55,7 @@ "@types/sinon": "10.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-pg/package.json b/plugins/node/opentelemetry-instrumentation-pg/package.json index 906c0d281..df00b06a0 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/package.json +++ b/plugins/node/opentelemetry-instrumentation-pg/package.json @@ -66,7 +66,7 @@ "nyc": "15.1.0", "pg": "8.7.1", "pg-pool": "3.4.1", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "safe-stable-stringify": "^2.4.1", "sinon": "15.0.1", "test-all-versions": "5.0.1", diff --git a/plugins/node/opentelemetry-instrumentation-pino/package.json b/plugins/node/opentelemetry-instrumentation-pino/package.json index 5f698a139..d0fdb8f32 100644 --- a/plugins/node/opentelemetry-instrumentation-pino/package.json +++ b/plugins/node/opentelemetry-instrumentation-pino/package.json @@ -58,7 +58,7 @@ "mocha": "7.2.0", "nyc": "15.1.0", "pino": "8.3.1", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "semver": "7.3.5", "sinon": "15.0.1", "test-all-versions": "5.0.1", diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/package.json b/plugins/node/opentelemetry-instrumentation-redis-4/package.json index 4c7ccccc1..66f64e848 100644 --- a/plugins/node/opentelemetry-instrumentation-redis-4/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis-4/package.json @@ -63,7 +63,7 @@ "mocha": "7.2.0", "nyc": "15.1.0", "redis": "4.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-redis/package.json b/plugins/node/opentelemetry-instrumentation-redis/package.json index eb1eda885..fd485053f 100644 --- a/plugins/node/opentelemetry-instrumentation-redis/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis/package.json @@ -63,7 +63,7 @@ "mocha": "7.2.0", "nyc": "15.1.0", "redis": "3.1.2", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", "typescript": "4.4.4", diff --git a/plugins/node/opentelemetry-instrumentation-restify/package.json b/plugins/node/opentelemetry-instrumentation-restify/package.json index c83afcc6f..0d84f6b61 100644 --- a/plugins/node/opentelemetry-instrumentation-restify/package.json +++ b/plugins/node/opentelemetry-instrumentation-restify/package.json @@ -57,7 +57,7 @@ "mocha": "7.2.0", "nyc": "15.1.0", "restify": "8.6.1", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "semver": "^7.3.7", "test-all-versions": "^5.0.1", "ts-mocha": "10.0.0", diff --git a/plugins/node/opentelemetry-instrumentation-router/package.json b/plugins/node/opentelemetry-instrumentation-router/package.json index c5055b8d9..a01b8d047 100644 --- a/plugins/node/opentelemetry-instrumentation-router/package.json +++ b/plugins/node/opentelemetry-instrumentation-router/package.json @@ -53,7 +53,7 @@ "@types/node": "18.11.7", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "router": "1.3.5", "ts-mocha": "10.0.0", "typescript": "4.4.4" diff --git a/plugins/node/opentelemetry-instrumentation-winston/package.json b/plugins/node/opentelemetry-instrumentation-winston/package.json index 7a6e99cdd..716045ffa 100644 --- a/plugins/node/opentelemetry-instrumentation-winston/package.json +++ b/plugins/node/opentelemetry-instrumentation-winston/package.json @@ -57,7 +57,7 @@ "@types/triple-beam": "^1.3.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "test-all-versions": "5.0.1", "ts-mocha": "10.0.0", diff --git a/plugins/web/opentelemetry-instrumentation-document-load/package.json b/plugins/web/opentelemetry-instrumentation-document-load/package.json index 5732b6f3c..ddce75252 100644 --- a/plugins/web/opentelemetry-instrumentation-document-load/package.json +++ b/plugins/web/opentelemetry-instrumentation-document-load/package.json @@ -66,7 +66,7 @@ "karma-webpack": "4.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-loader": "8.3.0", "ts-mocha": "10.0.0", diff --git a/plugins/web/opentelemetry-instrumentation-long-task/package.json b/plugins/web/opentelemetry-instrumentation-long-task/package.json index f869dfffa..2a722c6c8 100644 --- a/plugins/web/opentelemetry-instrumentation-long-task/package.json +++ b/plugins/web/opentelemetry-instrumentation-long-task/package.json @@ -66,7 +66,7 @@ "karma-webpack": "4.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-loader": "8.3.0", "ts-mocha": "10.0.0", diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json index c39bfb586..f4e86c56a 100644 --- a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json +++ b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json @@ -68,7 +68,7 @@ "karma-webpack": "4.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-loader": "8.3.0", "ts-mocha": "10.0.0", diff --git a/plugins/web/opentelemetry-plugin-react-load/package.json b/plugins/web/opentelemetry-plugin-react-load/package.json index 12e25a268..ee602f6f6 100644 --- a/plugins/web/opentelemetry-plugin-react-load/package.json +++ b/plugins/web/opentelemetry-plugin-react-load/package.json @@ -70,7 +70,7 @@ "nyc": "15.1.0", "react": "17.0.2", "react-dom": "17.0.2", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "sinon": "15.0.1", "ts-loader": "8.3.0", "ts-mocha": "10.0.0", diff --git a/propagators/opentelemetry-propagator-aws-xray/package.json b/propagators/opentelemetry-propagator-aws-xray/package.json index 0e70815c6..352549fea 100644 --- a/propagators/opentelemetry-propagator-aws-xray/package.json +++ b/propagators/opentelemetry-propagator-aws-xray/package.json @@ -61,7 +61,7 @@ "karma-webpack": "4.0.2", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "ts-loader": "8.3.0", "ts-mocha": "10.0.0", "typescript": "4.4.4", diff --git a/propagators/opentelemetry-propagator-grpc-census-binary/package.json b/propagators/opentelemetry-propagator-grpc-census-binary/package.json index c19864f53..c457cc15e 100644 --- a/propagators/opentelemetry-propagator-grpc-census-binary/package.json +++ b/propagators/opentelemetry-propagator-grpc-census-binary/package.json @@ -51,7 +51,7 @@ "grpc": "1.24.11", "mocha": "7.2.0", "nyc": "15.1.0", - "rimraf": "4.2.0", + "rimraf": "5.0.0", "ts-loader": "8.3.0", "ts-mocha": "10.0.0", "typescript": "4.4.4" From 253126394872b9f33bfb961e02b87a4fe0d5292b Mon Sep 17 00:00:00 2001 From: Amir Blum Date: Mon, 15 May 2023 21:38:44 +0300 Subject: [PATCH 36/72] fix(sdk-node): use resource interface instead of concrete class (#3803) --- experimental/CHANGELOG.md | 2 ++ experimental/packages/opentelemetry-sdk-node/src/types.ts | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index f9adec9c9..3ee06e9fc 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -16,6 +16,8 @@ All notable changes to experimental packages in this project will be documented ### :bug: (Bug Fix) +* fix(sdk-node): use resource interface instead of concrete class [#3803](https://github.com/open-telemetry/opentelemetry-js/pull/3803) @blumamir + ### :books: (Refine Doc) ### :house: (Internal) diff --git a/experimental/packages/opentelemetry-sdk-node/src/types.ts b/experimental/packages/opentelemetry-sdk-node/src/types.ts index 82074719d..03efc3114 100644 --- a/experimental/packages/opentelemetry-sdk-node/src/types.ts +++ b/experimental/packages/opentelemetry-sdk-node/src/types.ts @@ -17,7 +17,7 @@ import type { ContextManager } from '@opentelemetry/api'; import { TextMapPropagator } from '@opentelemetry/api'; import { InstrumentationOption } from '@opentelemetry/instrumentation'; -import { Detector, DetectorSync, Resource } from '@opentelemetry/resources'; +import { Detector, DetectorSync, IResource } from '@opentelemetry/resources'; import { MetricReader, View } from '@opentelemetry/sdk-metrics'; import { Sampler, @@ -34,7 +34,7 @@ export interface NodeSDKConfiguration { metricReader: MetricReader; views: View[]; instrumentations: InstrumentationOption[]; - resource: Resource; + resource: IResource; resourceDetectors: Array; sampler: Sampler; serviceName?: string; From 68eba71191d7701198b8c777658af7156c364f7d Mon Sep 17 00:00:00 2001 From: Aaron Abbott Date: Tue, 16 May 2023 02:01:38 -0400 Subject: [PATCH 37/72] feat(opencensus-shim) add ShimTracer and ShimSpan implementations (#3756) Co-authored-by: Marc Pichler --- .../packages/shim-opencensus/package.json | 1 + .../packages/shim-opencensus/src/ShimSpan.ts | 188 ++++++++++++++++++ .../shim-opencensus/src/ShimTracer.ts | 162 +++++++++++++++ .../packages/shim-opencensus/src/index.ts | 2 + .../shim-opencensus/test/ShimSpan.test.ts | 128 ++++++++++++ .../shim-opencensus/test/ShimTracer.test.ts | 165 ++++++++++++++- .../test/otel-sandwich.test.ts | 88 ++++++++ .../packages/shim-opencensus/test/util.ts | 63 ++++++ .../packages/shim-opencensus/tsconfig.json | 3 + 9 files changed, 798 insertions(+), 2 deletions(-) create mode 100644 experimental/packages/shim-opencensus/src/ShimSpan.ts create mode 100644 experimental/packages/shim-opencensus/src/ShimTracer.ts create mode 100644 experimental/packages/shim-opencensus/test/ShimSpan.test.ts create mode 100644 experimental/packages/shim-opencensus/test/otel-sandwich.test.ts create mode 100644 experimental/packages/shim-opencensus/test/util.ts diff --git a/experimental/packages/shim-opencensus/package.json b/experimental/packages/shim-opencensus/package.json index e744d9e09..87512230d 100644 --- a/experimental/packages/shim-opencensus/package.json +++ b/experimental/packages/shim-opencensus/package.json @@ -47,6 +47,7 @@ "devDependencies": { "@opentelemetry/core": "1.13.0", "@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", diff --git a/experimental/packages/shim-opencensus/src/ShimSpan.ts b/experimental/packages/shim-opencensus/src/ShimSpan.ts new file mode 100644 index 000000000..498c73e5e --- /dev/null +++ b/experimental/packages/shim-opencensus/src/ShimSpan.ts @@ -0,0 +1,188 @@ +/* + * 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 oc from '@opencensus/core'; +import { ShimTracer } from './ShimTracer'; +import { AttributeValue, Span, SpanStatusCode, diag } from '@opentelemetry/api'; +import { mapMessageEvent, reverseMapSpanContext } from './transform'; + +// Copied from +// https://github.com/census-instrumentation/opencensus-node/blob/v0.1.0/packages/opencensus-core/src/trace/model/span.ts#L61 +export const DEFAULT_SPAN_NAME = 'span'; + +const STATUS_OK = { + code: oc.CanonicalCode.OK, +}; + +interface Options { + shimTracer: ShimTracer; + otelSpan: Span; + isRootSpan?: boolean | undefined; + kind?: oc.SpanKind | undefined; + parentSpanId?: string | undefined; +} + +export class ShimSpan implements oc.Span { + get id(): string { + return this.otelSpan.spanContext().spanId; + } + + get tracer(): oc.TracerBase { + return this._shimTracer; + } + + logger: oc.Logger = diag; + + /** These are not readable in OTel so we return empty values */ + attributes: oc.Attributes = {}; + annotations: oc.Annotation[] = []; + messageEvents: oc.MessageEvent[] = []; + spans: oc.Span[] = []; + links: oc.Link[] = []; + name = ''; + status: oc.Status = STATUS_OK; + activeTraceParams: oc.TraceParams = {}; + droppedAttributesCount = 0; + droppedLinksCount = 0; + droppedAnnotationsCount = 0; + droppedMessageEventsCount = 0; + started = true; + ended = false; + numberOfChildren = 0; + duration = 0; + + /** Actual private attributes */ + private _shimTracer: ShimTracer; + readonly otelSpan: Span; + private _isRootSpan: boolean; + + readonly kind: oc.SpanKind; + readonly parentSpanId: string; + + get remoteParent(): boolean { + return this.otelSpan.spanContext().isRemote ?? false; + } + + /** Constructs a new SpanBaseModel instance. */ + constructor({ + shimTracer, + otelSpan, + isRootSpan = false, + kind = oc.SpanKind.UNSPECIFIED, + parentSpanId = '', + }: Options) { + this._shimTracer = shimTracer; + this.otelSpan = otelSpan; + this._isRootSpan = isRootSpan; + this.kind = kind; + this.parentSpanId = parentSpanId; + } + + /** Returns whether a span is root or not. */ + isRootSpan(): boolean { + return this._isRootSpan; + } + + get traceId(): string { + return this.otelSpan.spanContext().traceId; + } + + /** Gets the trace state */ + get traceState(): oc.TraceState | undefined { + return this.otelSpan.spanContext().traceState?.serialize(); + } + + /** No-op implementation of this method. */ + get startTime(): Date { + return new Date(); + } + + /** No-op implementation of this method. */ + get endTime(): Date { + return new Date(); + } + + /** No-op implementation of this method. */ + allDescendants(): oc.Span[] { + return []; + } + + /** Gives the TraceContext of the span. */ + get spanContext(): oc.SpanContext { + return reverseMapSpanContext(this.otelSpan.spanContext()); + } + + addAttribute(key: string, value: string | number | boolean | object) { + this.otelSpan.setAttribute(key, value as AttributeValue); + } + + addAnnotation( + description: string, + attributes?: oc.Attributes, + timestamp?: number + ) { + this.otelSpan.addEvent(description, attributes, timestamp); + } + + /** No-op implementation of this method. */ + addLink() { + diag.info( + 'Call to OpenCensus Span.addLink() is being ignored. OTel does not support ' + + 'adding links after span creation' + ); + } + + /** No-op implementation of this method. */ + addMessageEvent( + type: oc.MessageEventType, + id: number, + timestamp?: number, + uncompressedSize?: number, + compressedSize?: number + ) { + this.otelSpan.addEvent( + ...mapMessageEvent(type, id, timestamp, uncompressedSize, compressedSize) + ); + } + + /** No-op implementation of this method. */ + setStatus(code: oc.CanonicalCode, message?: string) { + this.otelSpan.setStatus({ + code: + code === oc.CanonicalCode.OK ? SpanStatusCode.OK : SpanStatusCode.ERROR, + message, + }); + } + + /** No-op implementation of this method. */ + start() {} + + end(): void { + this.otelSpan.end(); + } + + /** No-op implementation of this method. */ + truncate() {} + + /** Starts a new Span instance as a child of this instance */ + startChildSpan(options?: oc.SpanOptions): oc.Span { + return this._shimTracer.startChildSpan({ + name: DEFAULT_SPAN_NAME, + childOf: this, + ...options, + }); + } +} diff --git a/experimental/packages/shim-opencensus/src/ShimTracer.ts b/experimental/packages/shim-opencensus/src/ShimTracer.ts new file mode 100644 index 000000000..f5e8164e3 --- /dev/null +++ b/experimental/packages/shim-opencensus/src/ShimTracer.ts @@ -0,0 +1,162 @@ +/* + * 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 oc from '@opencensus/core'; + +import { + Context, + context, + createContextKey, + diag, + INVALID_SPAN_CONTEXT, + trace, + Tracer, +} from '@opentelemetry/api'; +import { DEFAULT_SPAN_NAME, ShimSpan } from './ShimSpan'; +import { mapSpanContext, mapSpanKind } from './transform'; +import { shimPropagation } from './propagation'; + +// eslint-disable-next-line @typescript-eslint/no-non-null-assertion +const INVALID_SPAN = trace.getSpan( + trace.setSpanContext(context.active(), INVALID_SPAN_CONTEXT) +)!; +const ROOTSPAN_KEY = createContextKey('rootspan_for_oc_shim'); + +function setRootSpan(ctx: Context, span: ShimSpan): Context { + return ctx.setValue(ROOTSPAN_KEY, span); +} + +export function getRootSpan(ctx: Context): ShimSpan | null { + return ctx.getValue(ROOTSPAN_KEY) as ShimSpan | null; +} + +export class ShimTracer implements oc.Tracer { + logger: oc.Logger = diag; + active: boolean = false; + + /** Noop implementations */ + sampler: oc.Sampler = new oc.AlwaysSampler(); + activeTraceParams: oc.TraceParams = {}; + eventListeners: oc.SpanEventListener[] = []; + // Uses the global OpenTelemetry propagator by default + propagation: oc.Propagation = shimPropagation; + + constructor(private otelTracer: Tracer) {} + + start({ propagation }: oc.TracerConfig): this { + this.active = true; + // Pass a propagation here if you want the shim to use an OpenCensus propagation instance + // instead of the OpenTelemetry global propagator. + if (propagation) { + this.propagation = propagation; + } + return this; + } + + /** Noop implementations */ + stop(): this { + this.active = false; + return this; + } + registerSpanEventListener(): void {} + unregisterSpanEventListener(): void {} + clearCurrentTrace(): void {} + onStartSpan(): void {} + onEndSpan(): void {} + setCurrentRootSpan() { + // This can't be correctly overriden since OTel context does not provide a way to set + // context without a callback. Leave noop for now. + } + + /** Gets the current root span. */ + get currentRootSpan(): oc.Span { + return ( + getRootSpan(context.active()) ?? + new ShimSpan({ + shimTracer: this, + otelSpan: INVALID_SPAN, + }) + ); + } + + /** + * Starts a root span. + * @param options A TraceOptions object to start a root span. + * @param fn A callback function to run after starting a root span. + */ + startRootSpan( + { name, kind, spanContext }: oc.TraceOptions, + fn: (root: oc.Span) => T + ): T { + const parentCtx = + spanContext === undefined + ? context.active() + : trace.setSpanContext(context.active(), mapSpanContext(spanContext)); + + const otelSpan = this.otelTracer.startSpan( + name, + { kind: mapSpanKind(kind) }, + parentCtx + ); + const shimSpan = new ShimSpan({ + shimTracer: this, + otelSpan, + isRootSpan: true, + kind, + parentSpanId: trace.getSpanContext(parentCtx)?.spanId, + }); + + let ctx = trace.setSpan(parentCtx, otelSpan); + ctx = setRootSpan(ctx, shimSpan); + return context.with(ctx, () => fn(shimSpan)); + } + + startChildSpan(options?: oc.SpanOptions): oc.Span { + const { kind, name = DEFAULT_SPAN_NAME, childOf } = options ?? {}; + const rootSpan = getRootSpan(context.active()); + + let ctx = context.active(); + if (childOf) { + ctx = trace.setSpanContext(ctx, mapSpanContext(childOf.spanContext)); + } else if (rootSpan) { + ctx = trace.setSpan(ctx, rootSpan.otelSpan); + } + + const otelSpan = this.otelTracer.startSpan( + name, + { + kind: mapSpanKind(kind), + }, + ctx + ); + return new ShimSpan({ + shimTracer: this, + otelSpan, + isRootSpan: false, + kind, + parentSpanId: trace.getSpanContext(ctx)?.spanId, + }); + } + + wrap(fn: oc.Func): oc.Func { + return context.bind(context.active(), fn); + } + + wrapEmitter(emitter: NodeJS.EventEmitter): void { + // Not sure if this requires returning the modified emitter + context.bind(context.active(), emitter); + } +} diff --git a/experimental/packages/shim-opencensus/src/index.ts b/experimental/packages/shim-opencensus/src/index.ts index bcd7cadc0..ccfe42e2f 100644 --- a/experimental/packages/shim-opencensus/src/index.ts +++ b/experimental/packages/shim-opencensus/src/index.ts @@ -13,3 +13,5 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + +export { ShimTracer } from './ShimTracer'; diff --git a/experimental/packages/shim-opencensus/test/ShimSpan.test.ts b/experimental/packages/shim-opencensus/test/ShimSpan.test.ts new file mode 100644 index 000000000..f8883cf10 --- /dev/null +++ b/experimental/packages/shim-opencensus/test/ShimSpan.test.ts @@ -0,0 +1,128 @@ +/* + * 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 { ReadableSpan } from '@opentelemetry/sdk-trace-base'; +import * as oc from '@opencensus/core'; +import * as assert from 'assert'; +import { withTestTracer, setupNodeContextManager } from './util'; +import { ShimSpan } from '../src/ShimSpan'; + +async function withTestSpan( + func: (span: ShimSpan) => void | Promise +): Promise { + return await withTestTracer(tracer => + tracer.startRootSpan({ name: 'test' }, span => func(span as ShimSpan)) + ); +} + +describe('ShimSpan', () => { + setupNodeContextManager(before, after); + + describe('id', () => { + it('should return the span id of the underlying otel span', async () => { + await withTestSpan(span => { + assert.strictEqual(span.id, span.otelSpan.spanContext().spanId); + }); + }); + }); + + describe('traceId', () => { + it('should return the trace id of the underlying otel span', async () => { + await withTestSpan(span => { + assert.strictEqual(span.traceId, span.otelSpan.spanContext().traceId); + }); + }); + }); + + describe('addAttribute', () => { + it('should add attributes', async () => { + const [span] = await withTestSpan(span => { + span.addAttribute('foo', 'bar'); + span.end(); + }); + + assert.deepStrictEqual(span.attributes, { foo: 'bar' }); + }); + }); + + describe('addAnnotation', () => { + it('should add an event', async () => { + const [span] = await withTestSpan(span => { + span.addAnnotation('the annotation', { foo: 'bar' }); + span.end(); + }); + + assert.strictEqual(span.events.length, 1); + const [{ time, ...event }] = span.events; + assert.deepStrictEqual(event, { + attributes: { + foo: 'bar', + }, + droppedAttributesCount: 0, + name: 'the annotation', + }); + }); + }); + + describe('addMessageEvent', () => { + it('should add an event', async () => { + const [span] = await withTestSpan(span => { + span.addMessageEvent(oc.MessageEventType.SENT, 98, undefined, 12, 15); + span.end(); + }); + + assert.strictEqual(span.events.length, 1); + const [{ time, ...event }] = span.events; + assert.deepStrictEqual(event, { + attributes: { + 'message.event.size.compressed': 15, + 'message.event.size.uncompressed': 12, + 'message.event.type': 'SENT', + }, + droppedAttributesCount: 0, + name: '98', + }); + }); + }); + + describe('startChildSpan', () => { + it('should start a child of the current span without options', async () => { + const [childSpan, parentSpan] = await withTestSpan(span => { + span.startChildSpan().end(); + span.end(); + }); + + assert.strictEqual(childSpan.name, 'span'); + assert.deepStrictEqual( + childSpan.parentSpanId, + parentSpan.spanContext().spanId + ); + }); + + it('should start a child of the current span with options', async () => { + const [childSpan, parentSpan] = await withTestSpan(span => { + span.startChildSpan({ name: 'child' }).end(); + span.end(); + }); + + assert.strictEqual(childSpan.name, 'child'); + assert.deepStrictEqual( + childSpan.parentSpanId, + parentSpan.spanContext().spanId + ); + }); + }); +}); diff --git a/experimental/packages/shim-opencensus/test/ShimTracer.test.ts b/experimental/packages/shim-opencensus/test/ShimTracer.test.ts index 33c99a6d8..a65a2c67b 100644 --- a/experimental/packages/shim-opencensus/test/ShimTracer.test.ts +++ b/experimental/packages/shim-opencensus/test/ShimTracer.test.ts @@ -14,10 +14,171 @@ * limitations under the License. */ +import { Tracer as Tracer } from '@opentelemetry/sdk-trace-base'; import * as assert from 'assert'; +import * as sinon from 'sinon'; +import * as oc from '@opencensus/core'; +import { ShimTracer, getRootSpan } from '../src/ShimTracer'; +import { + INVALID_SPANID, + INVALID_TRACEID, + SpanKind, + context, + createContextKey, +} from '@opentelemetry/api'; +import { withTestTracer, setupNodeContextManager } from './util'; describe('ShimTracer', () => { - it('asserts true', () => { - assert.ok(true); + setupNodeContextManager(before, after); + + it('should initially be inactive', () => { + const shimTracer = new ShimTracer(sinon.createStubInstance(Tracer)); + assert(!shimTracer.active); + }); + describe('start', () => { + it('should set the tracer as active', () => { + const shimTracer = new ShimTracer(sinon.createStubInstance(Tracer)); + shimTracer.start({}); + assert(shimTracer.active); + }); + }); + describe('stop', () => { + it('should set the tracer as inactive', () => { + const shimTracer = new ShimTracer(sinon.createStubInstance(Tracer)); + shimTracer.start({}); + assert(shimTracer.active); + }); + }); + + describe('startRootSpan', () => { + it('should create an OTel span with name', async () => { + const otelSpans = await withTestTracer(shimTracer => { + shimTracer.startRootSpan({ name: 'test' }, span => span.end()); + }); + assert.strictEqual(otelSpans[0].name, 'test'); + }); + + it('should create an OTel span with kind', async () => { + const otelSpans = await withTestTracer(shimTracer => { + shimTracer.startRootSpan( + { name: 'test', kind: oc.SpanKind.CLIENT }, + span => span.end() + ); + }); + assert.strictEqual(otelSpans[0].kind, SpanKind.CLIENT); + }); + + it('should create an OTel span with parent from provided spanContext', async () => { + const otelSpans = await withTestTracer(shimTracer => { + shimTracer.startRootSpan( + { + name: 'test', + spanContext: { + traceId: '9e7ecdc193765065fee1efe757fdd874', + spanId: '4bf6239d37d8b0f0', + }, + }, + span => span.end() + ); + }); + assert.strictEqual( + otelSpans[0].spanContext().traceId, + '9e7ecdc193765065fee1efe757fdd874' + ); + assert.strictEqual(otelSpans[0].parentSpanId, '4bf6239d37d8b0f0'); + }); + + it('should set the span as root span in context', async () => { + await withTestTracer(shimTracer => { + shimTracer.startRootSpan({ name: 'test' }, span => { + assert.strictEqual(getRootSpan(context.active()), span); + }); + }); + }); + }); + + describe('currentRootSpan', () => { + it('should return an span with invalid span context if there is no root', async () => { + await withTestTracer(shimTracer => { + assert.strictEqual(shimTracer.currentRootSpan.traceId, INVALID_TRACEID); + assert.strictEqual(shimTracer.currentRootSpan.id, INVALID_SPANID); + }); + }); + + it('should return the current root span', async () => { + await withTestTracer(shimTracer => { + shimTracer.startRootSpan({ name: 'test' }, span => { + assert.strictEqual(shimTracer.currentRootSpan, span); + }); + }); + }); + }); + + describe('startChildSpan', () => { + it('should create an OTel span with a default name', async () => { + const otelSpans = await withTestTracer(shimTracer => { + shimTracer.startChildSpan().end(); + }); + assert.strictEqual(otelSpans[0].name, 'span'); + }); + + it('should create an OTel span with name', async () => { + const otelSpans = await withTestTracer(shimTracer => { + shimTracer.startChildSpan({ name: 'test' }).end(); + }); + assert.strictEqual(otelSpans[0].name, 'test'); + }); + + it('should create an OTel span with kind', async () => { + const otelSpans = await withTestTracer(shimTracer => { + shimTracer + .startChildSpan({ name: 'test', kind: oc.SpanKind.CLIENT }) + .end(); + }); + assert.strictEqual(otelSpans[0].kind, SpanKind.CLIENT); + }); + + it('should create an OTel span with parent from childOf', async () => { + const [childSpan, parentSpan] = await withTestTracer(shimTracer => { + const parent = shimTracer.startChildSpan({ + name: 'parent', + }); + shimTracer.startChildSpan({ name: 'child', childOf: parent }).end(); + parent.end(); + }); + assert.strictEqual( + childSpan.parentSpanId, + parentSpan.spanContext().spanId + ); + }); + + it('should create an OTel span with parent from root in context', async () => { + const [childSpan, rootSpan] = await withTestTracer(shimTracer => { + shimTracer.startRootSpan( + { + name: 'parent', + }, + root => { + shimTracer.startChildSpan({ name: 'child', childOf: root }).end(); + root.end(); + } + ); + }); + assert.strictEqual(childSpan.parentSpanId, rootSpan.spanContext().spanId); + }); + }); + + describe('wrap', () => { + it('should bind the provided function to active context at time of wrapping', () => { + const shimTracer = new ShimTracer(sinon.createStubInstance(Tracer)); + const key = createContextKey('key'); + const fnToWrap = () => + assert.strictEqual(context.active().getValue(key), 'value'); + + const fn = context.with(context.active().setValue(key, 'value'), () => + shimTracer.wrap(fnToWrap) + ); + fn(); + }); }); }); diff --git a/experimental/packages/shim-opencensus/test/otel-sandwich.test.ts b/experimental/packages/shim-opencensus/test/otel-sandwich.test.ts new file mode 100644 index 000000000..a1034bf08 --- /dev/null +++ b/experimental/packages/shim-opencensus/test/otel-sandwich.test.ts @@ -0,0 +1,88 @@ +/* + * 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 { setupNodeContextManager, withTestTracer } from './util'; + +/** + * Tests the "OpenTelemetry sandwich" problem described in the spec at + * https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/compatibility/opencensus.md#trace-bridge + */ +describe('OpenTelemetry sandwich', () => { + setupNodeContextManager(before, after); + + it('should maintain parent-child relationship for OTel -> OC', async () => { + const spans = await withTestTracer((shimTracer, otelTracer) => { + otelTracer.startActiveSpan('parent-otel', parentSpan => { + shimTracer.startChildSpan({ name: 'child-oc' }).end(); + parentSpan.end(); + }); + }); + + assert.strictEqual(spans.length, 2); + const [childSpan, parentSpan] = spans; + assert.strictEqual( + childSpan.spanContext().traceId, + parentSpan.spanContext().traceId + ); + assert.strictEqual(childSpan.parentSpanId, parentSpan.spanContext().spanId); + }); + + it('should maintain parent-child relationship for OC -> OTel', async () => { + const spans = await withTestTracer((shimTracer, otelTracer) => { + shimTracer.startRootSpan({ name: 'parent-oc' }, parentSpan => { + otelTracer.startSpan('child-otel').end(); + parentSpan.end(); + }); + }); + + assert.strictEqual(spans.length, 2); + const [childSpan, parentSpan] = spans; + assert.strictEqual( + childSpan.spanContext().traceId, + parentSpan.spanContext().traceId + ); + assert.strictEqual(childSpan.parentSpanId, parentSpan.spanContext().spanId); + }); + + it('should maintain structure for OTel -> OC -> OTel', async () => { + const spans = await withTestTracer((shimTracer, otelTracer) => { + otelTracer.startActiveSpan('parent-otel', parentSpan => { + shimTracer.startRootSpan({ name: 'middle-oc' }, middleSpan => { + otelTracer.startSpan('child-otel').end(); + middleSpan.end(); + }); + parentSpan.end(); + }); + }); + + assert.strictEqual(spans.length, 3); + const [childSpan, middleSpan, parentSpan] = spans; + assert.strictEqual( + childSpan.spanContext().traceId, + parentSpan.spanContext().traceId + ); + assert.strictEqual( + middleSpan.spanContext().traceId, + parentSpan.spanContext().traceId + ); + assert.strictEqual( + middleSpan.parentSpanId, + parentSpan.spanContext().spanId + ); + assert.strictEqual(childSpan.parentSpanId, middleSpan.spanContext().spanId); + }); +}); diff --git a/experimental/packages/shim-opencensus/test/util.ts b/experimental/packages/shim-opencensus/test/util.ts new file mode 100644 index 000000000..b28baca4d --- /dev/null +++ b/experimental/packages/shim-opencensus/test/util.ts @@ -0,0 +1,63 @@ +/* + * 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 { + AlwaysOnSampler, + BasicTracerProvider, + InMemorySpanExporter, + ReadableSpan, + SimpleSpanProcessor, +} from '@opentelemetry/sdk-trace-base'; +import { ShimTracer } from '../src/ShimTracer'; +import * as semver from 'semver'; +import { + AsyncHooksContextManager, + AsyncLocalStorageContextManager, +} from '@opentelemetry/context-async-hooks'; +import { Tracer, context } from '@opentelemetry/api'; + +export async function withTestTracer( + func: (shimTracer: ShimTracer, otelTracer: Tracer) => void | Promise +): Promise { + const tracerProvider = new BasicTracerProvider({ + sampler: new AlwaysOnSampler(), + }); + const inMemExporter = new InMemorySpanExporter(); + tracerProvider.addSpanProcessor(new SimpleSpanProcessor(inMemExporter)); + + await func( + new ShimTracer(tracerProvider.getTracer('test-shim')), + tracerProvider.getTracer('test-otel') + ); + + await tracerProvider.forceFlush(); + const spans = inMemExporter.getFinishedSpans(); + await tracerProvider.shutdown(); + return spans; +} + +export function setupNodeContextManager( + before: Mocha.HookFunction, + after: Mocha.HookFunction +) { + const ContextManager = semver.gte(process.version, '14.8.0') + ? AsyncLocalStorageContextManager + : AsyncHooksContextManager; + const instance = new ContextManager(); + instance.enable(); + before(() => context.setGlobalContextManager(instance)); + after(() => context.disable()); +} diff --git a/experimental/packages/shim-opencensus/tsconfig.json b/experimental/packages/shim-opencensus/tsconfig.json index ddf3cfdee..91cebb5ad 100644 --- a/experimental/packages/shim-opencensus/tsconfig.json +++ b/experimental/packages/shim-opencensus/tsconfig.json @@ -17,6 +17,9 @@ }, { "path": "../../../packages/opentelemetry-core" + }, + { + "path": "../../../packages/opentelemetry-sdk-trace-base" } ] } From 5f87026433950b40abb50fa819a163087b9a123b Mon Sep 17 00:00:00 2001 From: Thibaut SEVERAC Date: Tue, 16 May 2023 09:30:59 +0200 Subject: [PATCH 38/72] fix(aws-sdk): correct setting error in attributes (#1495) * fix(aws-sdk): correct setting error in attributes * fix(aws-sdk): record the exception * fix(aws-sdk): repair tests * fix(aws-sdk): improve tests --------- Co-authored-by: Amir Blum --- .../README.md | 5 ++- .../src/aws-sdk.ts | 2 +- .../src/enums.ts | 1 - .../test/aws-sdk-v2.test.ts | 34 ++++++++++++++++--- 4 files changed, 33 insertions(+), 9 deletions(-) diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/README.md b/plugins/node/opentelemetry-instrumentation-aws-sdk/README.md index 63c7a4cd3..a49b72860 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/README.md +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/README.md @@ -71,12 +71,11 @@ In addition to the above attributes, the instrumentation also collect the follow | `aws.service.identifier` | string | Identifier for the service in the sdk | "sqs" | | `aws.service.name` | string | Abbreviation name for the service | "Amazon SQS" | | `aws.request.id` | uuid | Request unique id, as returned from aws on response | "01234567-89ab-cdef-0123-456789abcdef" | -| `aws.error` | string | information about a service or networking error, as returned from AWS | "UriParameterError: Expected uri parameter to have length >= 1, but found "" for params.Bucket" | ### Custom User Attributes -The instrumentation user can configure a `preRequestHook` function which will be called before each request, with a normalized request object (across v2 and v3) and the corresponding span. -This hook can be used to add custom attributes to the span with any logic. +The instrumentation user can configure a `preRequestHook` function which will be called before each request, with a normalized request object (across v2 and v3) and the corresponding span. +This hook can be used to add custom attributes to the span with any logic. For example, user can add interesting attributes from the `request.params`, and write custom logic based on the service and operation. Usage example: diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/aws-sdk.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/aws-sdk.ts index 0342a87a7..c74f0433c 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/aws-sdk.ts +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/aws-sdk.ts @@ -320,7 +320,7 @@ export class AwsInstrumentation extends InstrumentationBase { self._callUserResponseHook(span, normalizedResponse); if (response.error) { - span.setAttribute(AttributeNames.AWS_ERROR, response.error); + span.recordException(response.error); } else { this.servicesExtensions.responseHook( normalizedResponse, diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/enums.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/enums.ts index 8d8f2d297..c3a36dcb1 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/enums.ts +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/enums.ts @@ -14,7 +14,6 @@ * limitations under the License. */ export enum AttributeNames { - AWS_ERROR = 'aws.error', AWS_OPERATION = 'aws.operation', AWS_REGION = 'aws.region', AWS_SERVICE_API = 'aws.service.api', diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/test/aws-sdk-v2.test.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/aws-sdk-v2.test.ts index 0d7d8a8ae..bf11de206 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/test/aws-sdk-v2.test.ts +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/aws-sdk-v2.test.ts @@ -33,6 +33,8 @@ import { AttributeNames } from '../src/enums'; import { mockV2AwsSend } from './testing-utils'; import { expect } from 'expect'; import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +import { AWSError } from 'aws-sdk'; +import { HttpResponse } from 'aws-sdk/lib/http_response'; describe('instrumentation-aws-sdk-v2', () => { const responseMockSuccess = { @@ -43,9 +45,20 @@ describe('instrumentation-aws-sdk-v2', () => { }, }; - const responseMockWithError = { + const error: AWSError = { + name: 'error', + message: 'something went wrong', + stack: 'fakeStack', + code: 'errorCode', + time: new Date(), + }; + + const responseMockWithError: Pick< + AWS.Response, + 'requestId' | 'error' + > & { httpResponse: Partial } = { requestId: '0000000000000', - error: 'something went wrong', + error, httpResponse: { statusCode: 400, }, @@ -275,9 +288,22 @@ describe('instrumentation-aws-sdk-v2', () => { const awsSpans = getAwsSpans(); expect(awsSpans.length).toBe(1); const [spanCreateBucket] = awsSpans; - expect(spanCreateBucket.attributes[AttributeNames.AWS_ERROR]).toBe( - responseMockWithError.error + const exceptionEvent = spanCreateBucket.events.filter( + event => event.name === 'exception' ); + expect(exceptionEvent.length).toBe(1); + + expect(exceptionEvent[0]).toStrictEqual( + expect.objectContaining({ + name: 'exception', + attributes: { + 'exception.message': 'something went wrong', + 'exception.stacktrace': 'fakeStack', + 'exception.type': 'errorCode', + }, + }) + ); + expect( spanCreateBucket.attributes[SemanticAttributes.HTTP_STATUS_CODE] ).toBe(400); From 418b6f6d471b4b38507e8c6ef2916bee31ed2001 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Tue, 16 May 2023 08:47:00 -0400 Subject: [PATCH 39/72] chore: release main (#1484) * chore: release main * chore: release main --- .release-please-manifest.json | 2 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 15 ++++ .../package.json | 4 +- .../auto-instrumentations-node/CHANGELOG.md | 57 ++++++++++++++ .../auto-instrumentations-node/package.json | 78 +++++++++---------- .../auto-instrumentations-web/CHANGELOG.md | 16 ++++ .../auto-instrumentations-web/package.json | 6 +- .../opentelemetry-host-metrics/CHANGELOG.md | 7 ++ .../opentelemetry-host-metrics/package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 14 ++++ .../package.json | 4 +- .../opentelemetry-redis-common/CHANGELOG.md | 7 ++ .../opentelemetry-redis-common/package.json | 2 +- .../opentelemetry-test-utils/CHANGELOG.md | 8 ++ .../opentelemetry-test-utils/package.json | 2 +- .../node/instrumentation-amqplib/CHANGELOG.md | 15 ++++ .../node/instrumentation-amqplib/package.json | 4 +- .../instrumentation-dataloader/CHANGELOG.md | 8 ++ .../instrumentation-dataloader/package.json | 2 +- plugins/node/instrumentation-fs/CHANGELOG.md | 8 ++ plugins/node/instrumentation-fs/package.json | 2 +- .../instrumentation-lru-memoizer/CHANGELOG.md | 15 ++++ .../instrumentation-lru-memoizer/package.json | 4 +- .../instrumentation-mongoose/CHANGELOG.md | 15 ++++ .../instrumentation-mongoose/package.json | 4 +- .../instrumentation-socket.io/CHANGELOG.md | 15 ++++ .../instrumentation-socket.io/package.json | 4 +- .../node/instrumentation-tedious/CHANGELOG.md | 15 ++++ .../node/instrumentation-tedious/package.json | 4 +- .../CHANGELOG.md | 17 ++++ .../package.json | 4 +- .../CHANGELOG.md | 19 +++++ .../package.json | 6 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 15 ++++ .../package.json | 4 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 10 +++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 17 ++++ .../package.json | 6 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 9 +++ .../package.json | 2 +- .../CHANGELOG.md | 15 ++++ .../package.json | 4 +- .../CHANGELOG.md | 15 ++++ .../package.json | 4 +- .../CHANGELOG.md | 16 ++++ .../package.json | 4 +- .../CHANGELOG.md | 16 ++++ .../package.json | 4 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 17 ++++ .../package.json | 4 +- .../CHANGELOG.md | 9 +++ .../package.json | 2 +- .../CHANGELOG.md | 17 ++++ .../package.json | 6 +- .../CHANGELOG.md | 17 ++++ .../package.json | 6 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 7 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- .../CHANGELOG.md | 8 ++ .../package.json | 2 +- 111 files changed, 781 insertions(+), 122 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 67946c342..c29ddc9e8 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1 +1 @@ -{"detectors/node/opentelemetry-resource-detector-alibaba-cloud":"0.27.5","detectors/node/opentelemetry-resource-detector-aws":"1.2.3","detectors/node/opentelemetry-resource-detector-container":"0.2.3","detectors/node/opentelemetry-resource-detector-gcp":"0.28.1","detectors/node/opentelemetry-resource-detector-github":"0.27.0","detectors/node/opentelemetry-resource-detector-instana":"0.4.2","metapackages/auto-instrumentations-node":"0.36.6","metapackages/auto-instrumentations-web":"0.32.1","packages/opentelemetry-host-metrics":"0.32.1","packages/opentelemetry-id-generator-aws-xray":"1.1.1","packages/opentelemetry-propagation-utils":"0.29.3","packages/opentelemetry-redis-common":"0.35.0","packages/opentelemetry-test-utils":"0.33.2","plugins/node/instrumentation-amqplib":"0.32.3","plugins/node/instrumentation-dataloader":"0.4.1","plugins/node/instrumentation-fs":"0.7.2","plugins/node/instrumentation-lru-memoizer":"0.32.2","plugins/node/instrumentation-mongoose":"0.32.2","plugins/node/instrumentation-socket.io":"0.33.2","plugins/node/instrumentation-tedious":"0.5.2","plugins/node/opentelemetry-instrumentation-aws-lambda":"0.35.1","plugins/node/opentelemetry-instrumentation-aws-sdk":"0.34.1","plugins/node/opentelemetry-instrumentation-bunyan":"0.31.2","plugins/node/opentelemetry-instrumentation-cassandra":"0.32.2","plugins/node/opentelemetry-instrumentation-connect":"0.31.2","plugins/node/opentelemetry-instrumentation-dns":"0.31.3","plugins/node/opentelemetry-instrumentation-express":"0.32.2","plugins/node/opentelemetry-instrumentation-fastify":"0.31.2","plugins/node/opentelemetry-instrumentation-generic-pool":"0.31.2","plugins/node/opentelemetry-instrumentation-graphql":"0.34.1","plugins/node/opentelemetry-instrumentation-hapi":"0.31.2","plugins/node/opentelemetry-instrumentation-ioredis":"0.34.1","plugins/node/opentelemetry-instrumentation-knex":"0.31.2","plugins/node/opentelemetry-instrumentation-koa":"0.34.4","plugins/node/opentelemetry-instrumentation-memcached":"0.31.2","plugins/node/opentelemetry-instrumentation-mongodb":"0.34.2","plugins/node/opentelemetry-instrumentation-mysql":"0.33.1","plugins/node/opentelemetry-instrumentation-mysql2":"0.33.2","plugins/node/opentelemetry-instrumentation-nestjs-core":"0.32.3","plugins/node/opentelemetry-instrumentation-net":"0.31.2","plugins/node/opentelemetry-instrumentation-pg":"0.35.1","plugins/node/opentelemetry-instrumentation-pino":"0.33.2","plugins/node/opentelemetry-instrumentation-redis":"0.34.5","plugins/node/opentelemetry-instrumentation-redis-4":"0.34.4","plugins/node/opentelemetry-instrumentation-restify":"0.32.2","plugins/node/opentelemetry-instrumentation-router":"0.32.2","plugins/node/opentelemetry-instrumentation-winston":"0.31.2","plugins/web/opentelemetry-instrumentation-document-load":"0.32.1","plugins/web/opentelemetry-instrumentation-long-task":"0.32.3","plugins/web/opentelemetry-instrumentation-user-interaction":"0.32.2","plugins/web/opentelemetry-plugin-react-load":"0.28.1","propagators/opentelemetry-propagator-aws-xray":"1.2.0","propagators/opentelemetry-propagator-grpc-census-binary":"0.26.0","propagators/opentelemetry-propagator-instana":"0.2.1","propagators/opentelemetry-propagator-ot-trace":"0.26.2"} +{"detectors/node/opentelemetry-resource-detector-alibaba-cloud":"0.27.6","detectors/node/opentelemetry-resource-detector-aws":"1.2.4","detectors/node/opentelemetry-resource-detector-container":"0.2.4","detectors/node/opentelemetry-resource-detector-gcp":"0.28.2","detectors/node/opentelemetry-resource-detector-github":"0.27.1","detectors/node/opentelemetry-resource-detector-instana":"0.4.3","metapackages/auto-instrumentations-node":"0.37.0","metapackages/auto-instrumentations-web":"0.32.2","packages/opentelemetry-host-metrics":"0.32.2","packages/opentelemetry-id-generator-aws-xray":"1.1.2","packages/opentelemetry-propagation-utils":"0.29.4","packages/opentelemetry-redis-common":"0.35.1","packages/opentelemetry-test-utils":"0.33.3","plugins/node/instrumentation-amqplib":"0.32.4","plugins/node/instrumentation-dataloader":"0.4.2","plugins/node/instrumentation-fs":"0.7.3","plugins/node/instrumentation-lru-memoizer":"0.32.3","plugins/node/instrumentation-mongoose":"0.32.3","plugins/node/instrumentation-socket.io":"0.33.3","plugins/node/instrumentation-tedious":"0.5.3","plugins/node/opentelemetry-instrumentation-aws-lambda":"0.35.2","plugins/node/opentelemetry-instrumentation-aws-sdk":"0.34.2","plugins/node/opentelemetry-instrumentation-bunyan":"0.31.3","plugins/node/opentelemetry-instrumentation-cassandra":"0.32.3","plugins/node/opentelemetry-instrumentation-connect":"0.31.3","plugins/node/opentelemetry-instrumentation-dns":"0.31.4","plugins/node/opentelemetry-instrumentation-express":"0.32.3","plugins/node/opentelemetry-instrumentation-fastify":"0.31.3","plugins/node/opentelemetry-instrumentation-generic-pool":"0.31.3","plugins/node/opentelemetry-instrumentation-graphql":"0.34.2","plugins/node/opentelemetry-instrumentation-hapi":"0.31.3","plugins/node/opentelemetry-instrumentation-ioredis":"0.34.2","plugins/node/opentelemetry-instrumentation-knex":"0.31.3","plugins/node/opentelemetry-instrumentation-koa":"0.34.5","plugins/node/opentelemetry-instrumentation-memcached":"0.31.3","plugins/node/opentelemetry-instrumentation-mongodb":"0.34.3","plugins/node/opentelemetry-instrumentation-mysql":"0.33.2","plugins/node/opentelemetry-instrumentation-mysql2":"0.33.3","plugins/node/opentelemetry-instrumentation-nestjs-core":"0.32.4","plugins/node/opentelemetry-instrumentation-net":"0.31.3","plugins/node/opentelemetry-instrumentation-pg":"0.35.2","plugins/node/opentelemetry-instrumentation-pino":"0.33.3","plugins/node/opentelemetry-instrumentation-redis":"0.34.6","plugins/node/opentelemetry-instrumentation-redis-4":"0.34.5","plugins/node/opentelemetry-instrumentation-restify":"0.32.3","plugins/node/opentelemetry-instrumentation-router":"0.32.3","plugins/node/opentelemetry-instrumentation-winston":"0.31.3","plugins/web/opentelemetry-instrumentation-document-load":"0.32.2","plugins/web/opentelemetry-instrumentation-long-task":"0.32.4","plugins/web/opentelemetry-instrumentation-user-interaction":"0.32.3","plugins/web/opentelemetry-plugin-react-load":"0.28.2","propagators/opentelemetry-propagator-aws-xray":"1.2.1","propagators/opentelemetry-propagator-grpc-census-binary":"0.26.1","propagators/opentelemetry-propagator-instana":"0.2.2","propagators/opentelemetry-propagator-ot-trace":"0.26.3"} diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md index 875df530e..c6e38eb3f 100644 --- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md @@ -30,6 +30,20 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 +## [0.27.6](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.27.5...resource-detector-alibaba-cloud-v0.27.6) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.27.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.26.2...resource-detector-alibaba-cloud-v0.27.0) (2022-05-14) diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json index c5725e384..f75e0d200 100644 --- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json +++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-alibaba-cloud", - "version": "0.27.5", + "version": "0.27.6", "description": "OpenTelemetry resource detector for Alibaba Cloud", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -43,7 +43,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/sinon": "10.0.2", diff --git a/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md index 1ee8654d5..5f6ce0f30 100644 --- a/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md @@ -30,6 +30,20 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 +## [1.2.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-aws-v1.2.3...resource-detector-aws-v1.2.4) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [1.2.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-aws-v1.1.2...resource-detector-aws-v1.2.0) (2022-11-02) diff --git a/detectors/node/opentelemetry-resource-detector-aws/package.json b/detectors/node/opentelemetry-resource-detector-aws/package.json index ed0bf0ed4..68080bda5 100644 --- a/detectors/node/opentelemetry-resource-detector-aws/package.json +++ b/detectors/node/opentelemetry-resource-detector-aws/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-aws", - "version": "1.2.3", + "version": "1.2.4", "description": "OpenTelemetry SDK resource detector for AWS", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -42,7 +42,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/sinon": "10.0.2", diff --git a/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md index ba00ad3ac..77b5fe850 100644 --- a/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md @@ -24,6 +24,20 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 +## [0.2.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.2.3...resource-detector-container-v0.2.4) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.2.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.1.2...resource-detector-container-v0.2.0) (2022-11-02) diff --git a/detectors/node/opentelemetry-resource-detector-container/package.json b/detectors/node/opentelemetry-resource-detector-container/package.json index c5a863976..934f9a9b7 100644 --- a/detectors/node/opentelemetry-resource-detector-container/package.json +++ b/detectors/node/opentelemetry-resource-detector-container/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-container", - "version": "0.2.3", + "version": "0.2.4", "description": "Opentelemetry resource detector to get container resource attributes", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -36,7 +36,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@types/mocha": "8.2.3", "@types/node": "^18.0.0", "@types/sinon": "10.0.2", diff --git a/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md index 5e228b0e0..7ac02947f 100644 --- a/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md @@ -30,6 +30,20 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 +## [0.28.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-gcp-v0.28.1...resource-detector-gcp-v0.28.2) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.28.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-gcp-v0.27.5...resource-detector-gcp-v0.28.0) (2023-02-08) diff --git a/detectors/node/opentelemetry-resource-detector-gcp/package.json b/detectors/node/opentelemetry-resource-detector-gcp/package.json index f018b7d61..fcbd570f2 100644 --- a/detectors/node/opentelemetry-resource-detector-gcp/package.json +++ b/detectors/node/opentelemetry-resource-detector-gcp/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-gcp", - "version": "0.28.1", + "version": "0.28.2", "description": "OpenTelemetry SDK resource detector for GCP", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -42,7 +42,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@types/mocha": "8.2.3", "@types/node": "18.11.7", "@types/semver": "7.3.8", diff --git a/detectors/node/opentelemetry-resource-detector-github/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-github/CHANGELOG.md index f47ee9e66..cc96bf973 100644 --- a/detectors/node/opentelemetry-resource-detector-github/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-github/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.27.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-github-v0.27.0...resource-detector-github-v0.27.1) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.27.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-github-v0.26.1...resource-detector-github-v0.27.0) (2022-05-14) diff --git a/detectors/node/opentelemetry-resource-detector-github/package.json b/detectors/node/opentelemetry-resource-detector-github/package.json index b5d813919..9977b32bd 100644 --- a/detectors/node/opentelemetry-resource-detector-github/package.json +++ b/detectors/node/opentelemetry-resource-detector-github/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-github", - "version": "0.27.0", + "version": "0.27.1", "description": "OpenTelemetry SDK resource detector for GitHub", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md index 7b8c167df..b593abcd3 100644 --- a/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md +++ b/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [0.4.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-instana-v0.4.2...resource-detector-instana-v0.4.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.4.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-instana-v0.4.1...resource-detector-instana-v0.4.2) (2023-04-25) diff --git a/detectors/node/opentelemetry-resource-detector-instana/package.json b/detectors/node/opentelemetry-resource-detector-instana/package.json index fcef909a2..6f36435fb 100644 --- a/detectors/node/opentelemetry-resource-detector-instana/package.json +++ b/detectors/node/opentelemetry-resource-detector-instana/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/resource-detector-instana", - "version": "0.4.2", + "version": "0.4.3", "description": "OpenTelemetry SDK resource detector for Instana", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -40,7 +40,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-node": "^0.39.1", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/metapackages/auto-instrumentations-node/CHANGELOG.md b/metapackages/auto-instrumentations-node/CHANGELOG.md index 9e86e111e..351d21106 100644 --- a/metapackages/auto-instrumentations-node/CHANGELOG.md +++ b/metapackages/auto-instrumentations-node/CHANGELOG.md @@ -87,6 +87,63 @@ * @opentelemetry/instrumentation-koa bumped from ^0.34.2 to ^0.34.3 * @opentelemetry/instrumentation-redis bumped from ^0.34.3 to ^0.34.4 +## [0.37.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.36.6...auto-instrumentations-node-v0.37.0) (2023-05-16) + + +### Features + +* **auto-instrumentations-node:** Add "@opentelemetry/auto-instrumentations-node/register" for an agent-like experience ([#1400](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1400)) ([2d8e2b8](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2d8e2b893f9d7987ae5dc00682c59817d3d57fb8)) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/instrumentation-amqplib bumped from ^0.32.3 to ^0.32.4 + * @opentelemetry/instrumentation-aws-lambda bumped from ^0.35.1 to ^0.35.2 + * @opentelemetry/instrumentation-aws-sdk bumped from ^0.34.1 to ^0.34.2 + * @opentelemetry/instrumentation-bunyan bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/instrumentation-cassandra-driver bumped from ^0.32.2 to ^0.32.3 + * @opentelemetry/instrumentation-connect bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/instrumentation-dataloader bumped from ^0.4.1 to ^0.4.2 + * @opentelemetry/instrumentation-dns bumped from ^0.31.3 to ^0.31.4 + * @opentelemetry/instrumentation-express bumped from ^0.32.2 to ^0.32.3 + * @opentelemetry/instrumentation-fs bumped from ^0.7.2 to ^0.7.3 + * @opentelemetry/instrumentation-fastify bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/instrumentation-generic-pool bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/instrumentation-graphql bumped from ^0.34.1 to ^0.34.2 + * @opentelemetry/instrumentation-hapi bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/instrumentation-ioredis bumped from ^0.34.1 to ^0.34.2 + * @opentelemetry/instrumentation-knex bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/instrumentation-koa bumped from ^0.34.4 to ^0.34.5 + * @opentelemetry/instrumentation-lru-memoizer bumped from ^0.32.2 to ^0.32.3 + * @opentelemetry/instrumentation-memcached bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/instrumentation-mongodb bumped from ^0.34.2 to ^0.34.3 + * @opentelemetry/instrumentation-mongoose bumped from ^0.32.2 to ^0.32.3 + * @opentelemetry/instrumentation-mysql bumped from ^0.33.1 to ^0.33.2 + * @opentelemetry/instrumentation-mysql2 bumped from ^0.33.2 to ^0.33.3 + * @opentelemetry/instrumentation-nestjs-core bumped from ^0.32.3 to ^0.32.4 + * @opentelemetry/instrumentation-net bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/instrumentation-pg bumped from ^0.35.1 to ^0.35.2 + * @opentelemetry/instrumentation-pino bumped from ^0.33.2 to ^0.33.3 + * @opentelemetry/instrumentation-redis bumped from ^0.34.5 to ^0.34.6 + * @opentelemetry/instrumentation-redis-4 bumped from ^0.34.4 to ^0.34.5 + * @opentelemetry/instrumentation-restify bumped from ^0.32.2 to ^0.32.3 + * @opentelemetry/instrumentation-router bumped from ^0.32.2 to ^0.32.3 + * @opentelemetry/instrumentation-socket.io bumped from ^0.33.2 to ^0.33.3 + * @opentelemetry/instrumentation-tedious bumped from ^0.5.2 to ^0.5.3 + * @opentelemetry/instrumentation-winston bumped from ^0.31.2 to ^0.31.3 + * @opentelemetry/resource-detector-alibaba-cloud bumped from ^0.27.4 to ^0.27.6 + * @opentelemetry/resource-detector-aws bumped from ^1.2.2 to ^1.2.4 + * @opentelemetry/resource-detector-container bumped from ^0.2.2 to ^0.2.4 + * @opentelemetry/resource-detector-gcp bumped from ^0.28.0 to ^0.28.2 + ## [0.36.6](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.36.5...auto-instrumentations-node-v0.36.6) (2023-04-25) diff --git a/metapackages/auto-instrumentations-node/package.json b/metapackages/auto-instrumentations-node/package.json index cdc663a53..6ceb12a32 100644 --- a/metapackages/auto-instrumentations-node/package.json +++ b/metapackages/auto-instrumentations-node/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/auto-instrumentations-node", - "version": "0.36.6", + "version": "0.37.0", "description": "Metapackage which bundles opentelemetry node core and contrib instrumentations", "author": "OpenTelemetry Authors", "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/metapackages/auto-instrumentations-node#readme", @@ -50,46 +50,46 @@ }, "dependencies": { "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/instrumentation-amqplib": "^0.32.3", - "@opentelemetry/instrumentation-aws-lambda": "^0.35.1", - "@opentelemetry/instrumentation-aws-sdk": "^0.34.1", - "@opentelemetry/instrumentation-bunyan": "^0.31.2", - "@opentelemetry/instrumentation-cassandra-driver": "^0.32.2", - "@opentelemetry/instrumentation-connect": "^0.31.2", - "@opentelemetry/instrumentation-dataloader": "^0.4.1", - "@opentelemetry/instrumentation-dns": "^0.31.3", - "@opentelemetry/instrumentation-express": "^0.32.2", - "@opentelemetry/instrumentation-fs": "^0.7.2", - "@opentelemetry/instrumentation-fastify": "^0.31.2", - "@opentelemetry/instrumentation-generic-pool": "^0.31.2", - "@opentelemetry/instrumentation-graphql": "^0.34.1", + "@opentelemetry/instrumentation-amqplib": "^0.32.4", + "@opentelemetry/instrumentation-aws-lambda": "^0.35.2", + "@opentelemetry/instrumentation-aws-sdk": "^0.34.2", + "@opentelemetry/instrumentation-bunyan": "^0.31.3", + "@opentelemetry/instrumentation-cassandra-driver": "^0.32.3", + "@opentelemetry/instrumentation-connect": "^0.31.3", + "@opentelemetry/instrumentation-dataloader": "^0.4.2", + "@opentelemetry/instrumentation-dns": "^0.31.4", + "@opentelemetry/instrumentation-express": "^0.32.3", + "@opentelemetry/instrumentation-fs": "^0.7.3", + "@opentelemetry/instrumentation-fastify": "^0.31.3", + "@opentelemetry/instrumentation-generic-pool": "^0.31.3", + "@opentelemetry/instrumentation-graphql": "^0.34.2", "@opentelemetry/instrumentation-grpc": "^0.39.1", - "@opentelemetry/instrumentation-hapi": "^0.31.2", + "@opentelemetry/instrumentation-hapi": "^0.31.3", "@opentelemetry/instrumentation-http": "^0.39.1", - "@opentelemetry/instrumentation-ioredis": "^0.34.1", - "@opentelemetry/instrumentation-knex": "^0.31.2", - "@opentelemetry/instrumentation-koa": "^0.34.4", - "@opentelemetry/instrumentation-lru-memoizer": "^0.32.2", - "@opentelemetry/instrumentation-memcached": "^0.31.2", - "@opentelemetry/instrumentation-mongodb": "^0.34.2", - "@opentelemetry/instrumentation-mongoose": "^0.32.2", - "@opentelemetry/instrumentation-mysql": "^0.33.1", - "@opentelemetry/instrumentation-mysql2": "^0.33.2", - "@opentelemetry/instrumentation-nestjs-core": "^0.32.3", - "@opentelemetry/instrumentation-net": "^0.31.2", - "@opentelemetry/instrumentation-pg": "^0.35.1", - "@opentelemetry/instrumentation-pino": "^0.33.2", - "@opentelemetry/instrumentation-redis": "^0.34.5", - "@opentelemetry/instrumentation-redis-4": "^0.34.4", - "@opentelemetry/instrumentation-restify": "^0.32.2", - "@opentelemetry/instrumentation-router": "^0.32.2", - "@opentelemetry/instrumentation-socket.io": "^0.33.2", - "@opentelemetry/instrumentation-tedious": "^0.5.2", - "@opentelemetry/instrumentation-winston": "^0.31.2", - "@opentelemetry/resource-detector-alibaba-cloud": "^0.27.4", - "@opentelemetry/resource-detector-aws": "^1.2.2", - "@opentelemetry/resource-detector-container": "^0.2.2", - "@opentelemetry/resource-detector-gcp": "^0.28.0", + "@opentelemetry/instrumentation-ioredis": "^0.34.2", + "@opentelemetry/instrumentation-knex": "^0.31.3", + "@opentelemetry/instrumentation-koa": "^0.34.5", + "@opentelemetry/instrumentation-lru-memoizer": "^0.32.3", + "@opentelemetry/instrumentation-memcached": "^0.31.3", + "@opentelemetry/instrumentation-mongodb": "^0.34.3", + "@opentelemetry/instrumentation-mongoose": "^0.32.3", + "@opentelemetry/instrumentation-mysql": "^0.33.2", + "@opentelemetry/instrumentation-mysql2": "^0.33.3", + "@opentelemetry/instrumentation-nestjs-core": "^0.32.4", + "@opentelemetry/instrumentation-net": "^0.31.3", + "@opentelemetry/instrumentation-pg": "^0.35.2", + "@opentelemetry/instrumentation-pino": "^0.33.3", + "@opentelemetry/instrumentation-redis": "^0.34.6", + "@opentelemetry/instrumentation-redis-4": "^0.34.5", + "@opentelemetry/instrumentation-restify": "^0.32.3", + "@opentelemetry/instrumentation-router": "^0.32.3", + "@opentelemetry/instrumentation-socket.io": "^0.33.3", + "@opentelemetry/instrumentation-tedious": "^0.5.3", + "@opentelemetry/instrumentation-winston": "^0.31.3", + "@opentelemetry/resource-detector-alibaba-cloud": "^0.27.6", + "@opentelemetry/resource-detector-aws": "^1.2.4", + "@opentelemetry/resource-detector-container": "^0.2.4", + "@opentelemetry/resource-detector-gcp": "^0.28.2", "@opentelemetry/resources": "^1.12.0", "@opentelemetry/sdk-node": "^0.39.1" } diff --git a/metapackages/auto-instrumentations-web/CHANGELOG.md b/metapackages/auto-instrumentations-web/CHANGELOG.md index a15dda040..f450c69ee 100644 --- a/metapackages/auto-instrumentations-web/CHANGELOG.md +++ b/metapackages/auto-instrumentations-web/CHANGELOG.md @@ -12,6 +12,22 @@ * dependencies * @opentelemetry/instrumentation-document-load bumped from ^0.31.1 to ^0.31.2 +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-web-v0.32.1...auto-instrumentations-web-v0.32.2) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/instrumentation-document-load bumped from ^0.32.1 to ^0.32.2 + * @opentelemetry/instrumentation-user-interaction bumped from ^0.32.2 to ^0.32.3 + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-web-v0.32.0...auto-instrumentations-web-v0.32.1) (2023-04-25) diff --git a/metapackages/auto-instrumentations-web/package.json b/metapackages/auto-instrumentations-web/package.json index 39db9b121..1a6f3794c 100644 --- a/metapackages/auto-instrumentations-web/package.json +++ b/metapackages/auto-instrumentations-web/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/auto-instrumentations-web", - "version": "0.32.1", + "version": "0.32.2", "description": "Metapackage which bundles opentelemetry node core and contrib instrumentations", "author": "OpenTelemetry Authors", "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/metapackages/auto-instrumentations-web#readme", @@ -60,9 +60,9 @@ }, "dependencies": { "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/instrumentation-document-load": "^0.32.1", + "@opentelemetry/instrumentation-document-load": "^0.32.2", "@opentelemetry/instrumentation-fetch": "^0.39.1", - "@opentelemetry/instrumentation-user-interaction": "^0.32.2", + "@opentelemetry/instrumentation-user-interaction": "^0.32.3", "@opentelemetry/instrumentation-xml-http-request": "^0.39.1" } } diff --git a/packages/opentelemetry-host-metrics/CHANGELOG.md b/packages/opentelemetry-host-metrics/CHANGELOG.md index a5554b478..4de1a4d20 100644 --- a/packages/opentelemetry-host-metrics/CHANGELOG.md +++ b/packages/opentelemetry-host-metrics/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/host-metrics-v0.32.1...host-metrics-v0.32.2) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/host-metrics-v0.32.0...host-metrics-v0.32.1) (2023-04-25) diff --git a/packages/opentelemetry-host-metrics/package.json b/packages/opentelemetry-host-metrics/package.json index 323646552..9f13f4b66 100644 --- a/packages/opentelemetry-host-metrics/package.json +++ b/packages/opentelemetry-host-metrics/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/host-metrics", - "version": "0.32.1", + "version": "0.32.2", "description": "OpenTelemetry Host Metrics for Node.js", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/packages/opentelemetry-id-generator-aws-xray/CHANGELOG.md b/packages/opentelemetry-id-generator-aws-xray/CHANGELOG.md index 14bea4ba4..1449444b8 100644 --- a/packages/opentelemetry-id-generator-aws-xray/CHANGELOG.md +++ b/packages/opentelemetry-id-generator-aws-xray/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [1.1.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/id-generator-aws-xray-v1.1.1...id-generator-aws-xray-v1.1.2) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [1.1.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/id-generator-aws-xray-v1.1.0...id-generator-aws-xray-v1.1.1) (2022-11-02) diff --git a/packages/opentelemetry-id-generator-aws-xray/package.json b/packages/opentelemetry-id-generator-aws-xray/package.json index bbb2973c7..eb92b38a1 100644 --- a/packages/opentelemetry-id-generator-aws-xray/package.json +++ b/packages/opentelemetry-id-generator-aws-xray/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/id-generator-aws-xray", - "version": "1.1.1", + "version": "1.1.2", "description": "AWS X-Ray ID generator for OpenTelemetry", "main": "build/src/index.js", "publishConfig": { diff --git a/packages/opentelemetry-propagation-utils/CHANGELOG.md b/packages/opentelemetry-propagation-utils/CHANGELOG.md index 1fdcd0a4d..6199cce4f 100644 --- a/packages/opentelemetry-propagation-utils/CHANGELOG.md +++ b/packages/opentelemetry-propagation-utils/CHANGELOG.md @@ -18,6 +18,20 @@ * devDependencies * @opentelemetry/contrib-test-utils bumped from ^0.33.1 to ^0.33.2 +## [0.29.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagation-utils-v0.29.3...propagation-utils-v0.29.4) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.29.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagation-utils-v0.28.0...propagation-utils-v0.29.0) (2022-09-27) diff --git a/packages/opentelemetry-propagation-utils/package.json b/packages/opentelemetry-propagation-utils/package.json index 013c3123a..c3c861b44 100644 --- a/packages/opentelemetry-propagation-utils/package.json +++ b/packages/opentelemetry-propagation-utils/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/propagation-utils", - "version": "0.29.3", + "version": "0.29.4", "description": "Propagation utilities for opentelemetry instrumentations", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -45,7 +45,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.0.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@types/mocha": "^9.1.1", "@types/node": "18.11.7", "@types/sinon": "^10.0.11", diff --git a/packages/opentelemetry-redis-common/CHANGELOG.md b/packages/opentelemetry-redis-common/CHANGELOG.md index a1c141041..beb728a3b 100644 --- a/packages/opentelemetry-redis-common/CHANGELOG.md +++ b/packages/opentelemetry-redis-common/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.35.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/redis-common-v0.35.0...redis-common-v0.35.1) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.35.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/redis-common-v0.34.0...redis-common-v0.35.0) (2023-03-03) diff --git a/packages/opentelemetry-redis-common/package.json b/packages/opentelemetry-redis-common/package.json index e8622926c..62bde4fd0 100644 --- a/packages/opentelemetry-redis-common/package.json +++ b/packages/opentelemetry-redis-common/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/redis-common", - "version": "0.35.0", + "version": "0.35.1", "description": "Redis utilities for redis instrumentations", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/packages/opentelemetry-test-utils/CHANGELOG.md b/packages/opentelemetry-test-utils/CHANGELOG.md index c6215dafe..fbbc70177 100644 --- a/packages/opentelemetry-test-utils/CHANGELOG.md +++ b/packages/opentelemetry-test-utils/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.33.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/contrib-test-utils-v0.33.2...contrib-test-utils-v0.33.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.33.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/contrib-test-utils-v0.33.1...contrib-test-utils-v0.33.2) (2023-04-25) diff --git a/packages/opentelemetry-test-utils/package.json b/packages/opentelemetry-test-utils/package.json index 261cff858..31defbbec 100644 --- a/packages/opentelemetry-test-utils/package.json +++ b/packages/opentelemetry-test-utils/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/contrib-test-utils", - "version": "0.33.2", + "version": "0.33.3", "description": "Test utilities for opentelemetry components", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/instrumentation-amqplib/CHANGELOG.md b/plugins/node/instrumentation-amqplib/CHANGELOG.md index d17f68af9..c5e378956 100644 --- a/plugins/node/instrumentation-amqplib/CHANGELOG.md +++ b/plugins/node/instrumentation-amqplib/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [0.32.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.32.3...instrumentation-amqplib-v0.32.4) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.32.2...instrumentation-amqplib-v0.32.3) (2023-04-25) diff --git a/plugins/node/instrumentation-amqplib/package.json b/plugins/node/instrumentation-amqplib/package.json index cc0a6efa2..7b851c71c 100644 --- a/plugins/node/instrumentation-amqplib/package.json +++ b/plugins/node/instrumentation-amqplib/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-amqplib", - "version": "0.32.3", + "version": "0.32.4", "description": "OpenTelemetry automatic instrumentation for the `amqplib` package", "keywords": [ "amqplib", @@ -52,7 +52,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@types/amqplib": "^0.5.17", "@types/lodash": "4.14.178", "@types/mocha": "8.2.3", diff --git a/plugins/node/instrumentation-dataloader/CHANGELOG.md b/plugins/node/instrumentation-dataloader/CHANGELOG.md index e68c02a4e..149c549a9 100644 --- a/plugins/node/instrumentation-dataloader/CHANGELOG.md +++ b/plugins/node/instrumentation-dataloader/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.4.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dataloader-v0.4.1...instrumentation-dataloader-v0.4.2) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.4.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dataloader-v0.4.0...instrumentation-dataloader-v0.4.1) (2023-04-25) diff --git a/plugins/node/instrumentation-dataloader/package.json b/plugins/node/instrumentation-dataloader/package.json index 1603a9417..cf92f318a 100644 --- a/plugins/node/instrumentation-dataloader/package.json +++ b/plugins/node/instrumentation-dataloader/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-dataloader", - "version": "0.4.1", + "version": "0.4.2", "description": "OpenTelemetry instrumentation for dataloader", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/instrumentation-fs/CHANGELOG.md b/plugins/node/instrumentation-fs/CHANGELOG.md index 70a5e3083..bc3909fa9 100644 --- a/plugins/node/instrumentation-fs/CHANGELOG.md +++ b/plugins/node/instrumentation-fs/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.7.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fs-v0.7.2...instrumentation-fs-v0.7.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.7.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fs-v0.7.1...instrumentation-fs-v0.7.2) (2023-04-25) diff --git a/plugins/node/instrumentation-fs/package.json b/plugins/node/instrumentation-fs/package.json index 576b9e4f3..17e5ec4c4 100644 --- a/plugins/node/instrumentation-fs/package.json +++ b/plugins/node/instrumentation-fs/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-fs", - "version": "0.7.2", + "version": "0.7.3", "description": "OpenTelemetry automatic instrumentation package for fs", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md b/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md index c8ef8b6d1..0ab8caa1d 100644 --- a/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md +++ b/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-lru-memoizer-v0.32.2...instrumentation-lru-memoizer-v0.32.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-lru-memoizer-v0.32.1...instrumentation-lru-memoizer-v0.32.2) (2023-04-25) diff --git a/plugins/node/instrumentation-lru-memoizer/package.json b/plugins/node/instrumentation-lru-memoizer/package.json index 2d43c0bf9..3ff6445f8 100644 --- a/plugins/node/instrumentation-lru-memoizer/package.json +++ b/plugins/node/instrumentation-lru-memoizer/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-lru-memoizer", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry automatic instrumentation package for lru-memoizer", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -43,7 +43,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@types/lru-cache": "7.10.9", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/plugins/node/instrumentation-mongoose/CHANGELOG.md b/plugins/node/instrumentation-mongoose/CHANGELOG.md index 205fe474f..7d4224bfb 100644 --- a/plugins/node/instrumentation-mongoose/CHANGELOG.md +++ b/plugins/node/instrumentation-mongoose/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongoose-v0.32.2...instrumentation-mongoose-v0.32.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongoose-v0.32.1...instrumentation-mongoose-v0.32.2) (2023-04-25) diff --git a/plugins/node/instrumentation-mongoose/package.json b/plugins/node/instrumentation-mongoose/package.json index 14208f467..6afafdb15 100644 --- a/plugins/node/instrumentation-mongoose/package.json +++ b/plugins/node/instrumentation-mongoose/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-mongoose", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry automatic instrumentation package for mongoose", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -46,7 +46,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/plugins/node/instrumentation-socket.io/CHANGELOG.md b/plugins/node/instrumentation-socket.io/CHANGELOG.md index 77ef5af55..8725f9087 100644 --- a/plugins/node/instrumentation-socket.io/CHANGELOG.md +++ b/plugins/node/instrumentation-socket.io/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [0.33.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-socket.io-v0.33.2...instrumentation-socket.io-v0.33.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.33.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-socket.io-v0.33.1...instrumentation-socket.io-v0.33.2) (2023-04-25) diff --git a/plugins/node/instrumentation-socket.io/package.json b/plugins/node/instrumentation-socket.io/package.json index 582cc1057..6816de959 100644 --- a/plugins/node/instrumentation-socket.io/package.json +++ b/plugins/node/instrumentation-socket.io/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-socket.io", - "version": "0.33.2", + "version": "0.33.3", "description": "OpenTelemetry automatic instrumentation package for socket.io", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -43,7 +43,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/plugins/node/instrumentation-tedious/CHANGELOG.md b/plugins/node/instrumentation-tedious/CHANGELOG.md index 239ea8f52..14d02f75e 100644 --- a/plugins/node/instrumentation-tedious/CHANGELOG.md +++ b/plugins/node/instrumentation-tedious/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [0.5.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-tedious-v0.5.2...instrumentation-tedious-v0.5.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.5.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-tedious-v0.5.1...instrumentation-tedious-v0.5.2) (2023-04-25) diff --git a/plugins/node/instrumentation-tedious/package.json b/plugins/node/instrumentation-tedious/package.json index 2365e9b26..ab9a04e39 100644 --- a/plugins/node/instrumentation-tedious/package.json +++ b/plugins/node/instrumentation-tedious/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-tedious", - "version": "0.5.2", + "version": "0.5.3", "description": "OpenTelemetry instrumentation for `tedious`", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -49,7 +49,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md index 360a1d4fa..12eca807c 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md @@ -1,5 +1,22 @@ # Changelog +## [0.35.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.35.1...instrumentation-aws-lambda-v0.35.2) (2023-05-16) + + +### Bug Fixes + +* .cjs extension support for lambda functions ([#1442](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1442)) ([da737f1](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/da737f1c1eda59d7e340c4026a212d21abcb72d6)) +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) +* **eslint-eqeqeq:** updated the `eqeqeq` rule to match the core repo ([#1485](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1485)) ([5709008](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/5709008dfa4d05cae0c2226b9926e36cdf60c631)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/propagator-aws-xray bumped from ^1.2.0 to ^1.2.1 + ## [0.35.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.35.0...instrumentation-aws-lambda-v0.35.1) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json index 9eaf2d9cb..a80a61a83 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-aws-lambda", - "version": "0.35.1", + "version": "0.35.2", "description": "OpenTelemetry AWS Lambda automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -60,7 +60,7 @@ }, "dependencies": { "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/propagator-aws-xray": "^1.2.0", + "@opentelemetry/propagator-aws-xray": "^1.2.1", "@opentelemetry/resources": "^1.8.0", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/aws-lambda": "8.10.81" diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md index 0705b1ece..8433e8ead 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md @@ -1,5 +1,24 @@ # Changelog +## [0.34.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.34.1...instrumentation-aws-sdk-v0.34.2) (2023-05-16) + + +### Bug Fixes + +* **aws-sdk:** correct setting error in attributes ([#1495](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1495)) ([5f87026](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/5f87026433950b40abb50fa819a163087b9a123b)) +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) +* **eslint-eqeqeq:** updated the `eqeqeq` rule to match the core repo ([#1485](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1485)) ([5709008](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/5709008dfa4d05cae0c2226b9926e36cdf60c631)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/propagation-utils bumped from ^0.29.3 to ^0.29.4 + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.34.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.34.0...instrumentation-aws-sdk-v0.34.1) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json index 3b52fa4c7..da7684090 100644 --- a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json +++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-aws-sdk", - "version": "0.34.1", + "version": "0.34.2", "description": "OpenTelemetry automatic instrumentation for the `aws-sdk` package", "keywords": [ "aws", @@ -49,7 +49,7 @@ "@opentelemetry/core": "^1.8.0", "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0", - "@opentelemetry/propagation-utils": "^0.29.3" + "@opentelemetry/propagation-utils": "^0.29.4" }, "devDependencies": { "@aws-sdk/client-dynamodb": "3.85.0", @@ -59,7 +59,7 @@ "@aws-sdk/client-sns": "3.85.0", "@aws-sdk/types": "3.78.0", "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "8.2.3", "@types/node": "18.11.7", diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md index 284b791f9..e7f424545 100644 --- a/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-bunyan-v0.31.2...instrumentation-bunyan-v0.31.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-bunyan-v0.31.1...instrumentation-bunyan-v0.31.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/package.json b/plugins/node/opentelemetry-instrumentation-bunyan/package.json index 696dffcb0..255f6eef7 100644 --- a/plugins/node/opentelemetry-instrumentation-bunyan/package.json +++ b/plugins/node/opentelemetry-instrumentation-bunyan/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-bunyan", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry instrumentation for bunyan", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md index ace63fe55..810605a76 100644 --- a/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cassandra-driver-v0.32.2...instrumentation-cassandra-driver-v0.32.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cassandra-driver-v0.32.1...instrumentation-cassandra-driver-v0.32.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/package.json b/plugins/node/opentelemetry-instrumentation-cassandra/package.json index 53574cef6..d8d5313aa 100644 --- a/plugins/node/opentelemetry-instrumentation-cassandra/package.json +++ b/plugins/node/opentelemetry-instrumentation-cassandra/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-cassandra-driver", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry instrumentation for cassandra-driver", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -48,7 +48,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", diff --git a/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md index 7bb82f0c8..9a3320200 100644 --- a/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-connect-v0.31.2...instrumentation-connect-v0.31.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-connect-v0.31.1...instrumentation-connect-v0.31.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-connect/package.json b/plugins/node/opentelemetry-instrumentation-connect/package.json index bdc60b58a..ed3d3fff8 100644 --- a/plugins/node/opentelemetry-instrumentation-connect/package.json +++ b/plugins/node/opentelemetry-instrumentation-connect/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-connect", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry connect automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md index 2bb4d8a55..814c572ff 100644 --- a/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.31.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dns-v0.31.3...instrumentation-dns-v0.31.4) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dns-v0.31.2...instrumentation-dns-v0.31.3) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-dns/package.json b/plugins/node/opentelemetry-instrumentation-dns/package.json index 2f3de0534..88a5bd3a7 100644 --- a/plugins/node/opentelemetry-instrumentation-dns/package.json +++ b/plugins/node/opentelemetry-instrumentation-dns/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-dns", - "version": "0.31.3", + "version": "0.31.4", "description": "OpenTelemetry dns automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md index fc1e4ef37..4a2414ae8 100644 --- a/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.32.2...instrumentation-express-v0.32.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.32.1...instrumentation-express-v0.32.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-express/package.json b/plugins/node/opentelemetry-instrumentation-express/package.json index 93fe28e06..32cbf305d 100644 --- a/plugins/node/opentelemetry-instrumentation-express/package.json +++ b/plugins/node/opentelemetry-instrumentation-express/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-express", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry express automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md index a4fef65d3..e6821df5f 100644 --- a/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fastify-v0.31.2...instrumentation-fastify-v0.31.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fastify-v0.31.1...instrumentation-fastify-v0.31.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-fastify/package.json b/plugins/node/opentelemetry-instrumentation-fastify/package.json index af0842001..66c75e0d6 100644 --- a/plugins/node/opentelemetry-instrumentation-fastify/package.json +++ b/plugins/node/opentelemetry-instrumentation-fastify/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-fastify", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry fastify automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md index 5dc40f587..617fd22f8 100644 --- a/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-generic-pool-v0.31.2...instrumentation-generic-pool-v0.31.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-generic-pool-v0.31.1...instrumentation-generic-pool-v0.31.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json index ab841cf6c..746b5b69e 100644 --- a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json +++ b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-generic-pool", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry Generic Pool automatic instrumentation package", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md index ad90b3f5f..92bcc1e38 100644 --- a/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md @@ -1,5 +1,15 @@ # Changelog +## [0.34.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-graphql-v0.34.1...instrumentation-graphql-v0.34.2) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) +* **eslint-eqeqeq:** updated the `eqeqeq` rule to match the core repo ([#1485](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1485)) ([5709008](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/5709008dfa4d05cae0c2226b9926e36cdf60c631)) +* **eslint-no-floating-promises:** added no-floating-promises rule ([#1488](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1488)) ([4eb405e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/4eb405ee4875b17f8368d9a88d68c10f24d9987e)) + ## [0.34.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-graphql-v0.34.0...instrumentation-graphql-v0.34.1) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-graphql/package.json b/plugins/node/opentelemetry-instrumentation-graphql/package.json index 8e9ac120d..d71f68d89 100644 --- a/plugins/node/opentelemetry-instrumentation-graphql/package.json +++ b/plugins/node/opentelemetry-instrumentation-graphql/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-graphql", - "version": "0.34.1", + "version": "0.34.2", "description": "OpenTelemetry @opentelemetry/instrumentation-graphql automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md index 1ffe858da..f97e99d13 100644 --- a/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-hapi-v0.31.2...instrumentation-hapi-v0.31.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-hapi-v0.31.1...instrumentation-hapi-v0.31.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-hapi/package.json b/plugins/node/opentelemetry-instrumentation-hapi/package.json index 939607578..f48fe8c89 100644 --- a/plugins/node/opentelemetry-instrumentation-hapi/package.json +++ b/plugins/node/opentelemetry-instrumentation-hapi/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-hapi", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry Hapi automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md index 2cd7b7f80..6e6945043 100644 --- a/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md @@ -1,5 +1,22 @@ # Changelog +## [0.34.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-ioredis-v0.34.1...instrumentation-ioredis-v0.34.2) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/redis-common bumped from ^0.35.0 to ^0.35.1 + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.34.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-ioredis-v0.34.0...instrumentation-ioredis-v0.34.1) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/package.json b/plugins/node/opentelemetry-instrumentation-ioredis/package.json index da481e35f..cdcb08971 100644 --- a/plugins/node/opentelemetry-instrumentation-ioredis/package.json +++ b/plugins/node/opentelemetry-instrumentation-ioredis/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-ioredis", - "version": "0.34.1", + "version": "0.34.2", "description": "OpenTelemetry ioredis automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -52,7 +52,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", @@ -70,7 +70,7 @@ }, "dependencies": { "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/redis-common": "^0.35.0", + "@opentelemetry/redis-common": "^0.35.1", "@opentelemetry/semantic-conventions": "^1.0.0", "@types/ioredis4": "npm:@types/ioredis@^4.28.10" }, diff --git a/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md index c4d63514b..f88a6ec3c 100644 --- a/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-knex-v0.31.2...instrumentation-knex-v0.31.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-knex-v0.31.1...instrumentation-knex-v0.31.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-knex/package.json b/plugins/node/opentelemetry-instrumentation-knex/package.json index bad5144a9..59bfff66a 100644 --- a/plugins/node/opentelemetry-instrumentation-knex/package.json +++ b/plugins/node/opentelemetry-instrumentation-knex/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-knex", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry Knex automatic instrumentation package", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md index 25bbc422c..30353e41b 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## [0.34.5](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-koa-v0.34.4...instrumentation-koa-v0.34.5) (2023-05-16) + + +### Bug Fixes + +* **deps:** update dependency @koa/router to v12 ([#1483](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1483)) ([b5b951e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/b5b951e5d943d9ef9df7ae3acefe8ea40b8e514f)) +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.34.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-koa-v0.34.3...instrumentation-koa-v0.34.4) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-koa/package.json b/plugins/node/opentelemetry-instrumentation-koa/package.json index 991272799..22a2f099c 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/package.json +++ b/plugins/node/opentelemetry-instrumentation-koa/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-koa", - "version": "0.34.4", + "version": "0.34.5", "description": "OpenTelemetry Koa automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md index 7d7f658cd..90f45041c 100644 --- a/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-memcached-v0.31.2...instrumentation-memcached-v0.31.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-memcached-v0.31.1...instrumentation-memcached-v0.31.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-memcached/package.json b/plugins/node/opentelemetry-instrumentation-memcached/package.json index 6070b2afb..a0ef5a8e5 100644 --- a/plugins/node/opentelemetry-instrumentation-memcached/package.json +++ b/plugins/node/opentelemetry-instrumentation-memcached/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-memcached", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry memcached automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -49,7 +49,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md index caef8b408..318f3d2f5 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [0.34.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.34.2...instrumentation-mongodb-v0.34.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.34.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.34.1...instrumentation-mongodb-v0.34.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/package.json b/plugins/node/opentelemetry-instrumentation-mongodb/package.json index 330367967..22947a115 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/package.json +++ b/plugins/node/opentelemetry-instrumentation-mongodb/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-mongodb", - "version": "0.34.2", + "version": "0.34.3", "description": "OpenTelemetry mongodb automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -51,7 +51,7 @@ }, "devDependencies": { "@opentelemetry/api": "^1.3.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/context-async-hooks": "^1.8.0", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", diff --git a/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md index f5b1a6a6c..462e8f259 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md @@ -1,5 +1,21 @@ # Changelog +## [0.33.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql-v0.33.1...instrumentation-mysql-v0.33.2) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) +* **mysql:** metrics - align metrics description and unit to semconv ([#1480](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1480)) ([9fbd9e8](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fbd9e81b2ecb5dd06436cad41a9786d657c0ff8)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.33.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql-v0.33.0...instrumentation-mysql-v0.33.1) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-mysql/package.json b/plugins/node/opentelemetry-instrumentation-mysql/package.json index 77c35e5f3..647c1334a 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-mysql", - "version": "0.33.1", + "version": "0.33.2", "description": "OpenTelemetry mysql automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -49,7 +49,7 @@ "@opentelemetry/api": "^1.3.0", "@opentelemetry/sdk-metrics": "^1.8.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "7.0.2", "@types/node": "18.11.7", diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md index b483cda31..3437db07e 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md @@ -1,5 +1,21 @@ # Changelog +## [0.33.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql2-v0.33.2...instrumentation-mysql2-v0.33.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) +* **mysql2-tav:** add 'pretest' command to tav.yml for mysql2 version 3 ([#1490](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1490)) ([1f6299d](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/1f6299d9d48ef2f7b206170827d3858e947474db)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.33.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql2-v0.33.1...instrumentation-mysql2-v0.33.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/package.json b/plugins/node/opentelemetry-instrumentation-mysql2/package.json index a1a1ae862..e8ff0555f 100644 --- a/plugins/node/opentelemetry-instrumentation-mysql2/package.json +++ b/plugins/node/opentelemetry-instrumentation-mysql2/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-mysql2", - "version": "0.33.2", + "version": "0.33.3", "description": "OpenTelemetry mysql2 automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -49,7 +49,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@types/mocha": "7.0.2", "@types/mysql2": "github:types/mysql2", diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md index d776e1988..11a8bfbaf 100644 --- a/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.32.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-nestjs-core-v0.32.3...instrumentation-nestjs-core-v0.32.4) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-nestjs-core-v0.32.2...instrumentation-nestjs-core-v0.32.3) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json index 861faa01a..6ed259495 100644 --- a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json +++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-nestjs-core", - "version": "0.32.3", + "version": "0.32.4", "description": "OpenTelemetry NestJS automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md index 5df4e5b3e..1ccf36a4f 100644 --- a/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-net-v0.31.2...instrumentation-net-v0.31.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-net-v0.31.1...instrumentation-net-v0.31.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-net/package.json b/plugins/node/opentelemetry-instrumentation-net/package.json index 2e0d23ba6..ac9975380 100644 --- a/plugins/node/opentelemetry-instrumentation-net/package.json +++ b/plugins/node/opentelemetry-instrumentation-net/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-net", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry net module automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md index 536c67b1d..3595f1159 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md @@ -1,5 +1,22 @@ # Changelog +## [0.35.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.35.1...instrumentation-pg-v0.35.2) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) +* **pg-values:** values should be parsable when enhancedDatabaseRepoting:true ([#1453](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1453)) ([49a0389](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/49a03892c05dbeda98badeb07847240869442384)) +* **pg:** do not replace argument with plain object ([#1432](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1432)) ([e691537](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/e6915373aaa8c1226f6dc122b49ae6bfb2fc1ddd)) + + +### Dependencies + +* The following workspace dependencies were updated + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.35.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.35.0...instrumentation-pg-v0.35.1) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-pg/package.json b/plugins/node/opentelemetry-instrumentation-pg/package.json index df00b06a0..ec72a3559 100644 --- a/plugins/node/opentelemetry-instrumentation-pg/package.json +++ b/plugins/node/opentelemetry-instrumentation-pg/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-pg", - "version": "0.35.1", + "version": "0.35.2", "description": "OpenTelemetry postgres automatic instrumentation package.", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -55,7 +55,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", diff --git a/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md index ad64e2277..ddc3dc51c 100644 --- a/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## [0.33.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pino-v0.33.2...instrumentation-pino-v0.33.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) +* **eslint-eqeqeq:** updated the `eqeqeq` rule to match the core repo ([#1485](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1485)) ([5709008](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/5709008dfa4d05cae0c2226b9926e36cdf60c631)) + ## [0.33.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pino-v0.33.1...instrumentation-pino-v0.33.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-pino/package.json b/plugins/node/opentelemetry-instrumentation-pino/package.json index d0fdb8f32..8568ecd27 100644 --- a/plugins/node/opentelemetry-instrumentation-pino/package.json +++ b/plugins/node/opentelemetry-instrumentation-pino/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-pino", - "version": "0.33.2", + "version": "0.33.3", "description": "OpenTelemetry instrumentation for pino", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md index f82492d59..0acfa682f 100644 --- a/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md @@ -6,6 +6,23 @@ * dependencies * @opentelemetry/redis-common bumped from ^0.34.0 to ^0.35.0 +## [0.34.5](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.34.4...instrumentation-redis-4-v0.34.5) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/redis-common bumped from ^0.35.0 to ^0.35.1 + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.34.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.34.3...instrumentation-redis-4-v0.34.4) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/package.json b/plugins/node/opentelemetry-instrumentation-redis-4/package.json index 66f64e848..aaf682788 100644 --- a/plugins/node/opentelemetry-instrumentation-redis-4/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis-4/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-redis-4", - "version": "0.34.4", + "version": "0.34.5", "description": "Automatic OpenTelemetry instrumentation for redis package version 4", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -54,7 +54,7 @@ "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", "@opentelemetry/core": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", @@ -70,7 +70,7 @@ }, "dependencies": { "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/redis-common": "^0.35.0", + "@opentelemetry/redis-common": "^0.35.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-redis-4#readme" diff --git a/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md index 5e7674627..0ae69e681 100644 --- a/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md @@ -6,6 +6,23 @@ * dependencies * @opentelemetry/redis-common bumped from ^0.34.0 to ^0.35.0 +## [0.34.6](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-v0.34.5...instrumentation-redis-v0.34.6) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + + +### Dependencies + +* The following workspace dependencies were updated + * dependencies + * @opentelemetry/redis-common bumped from ^0.35.0 to ^0.35.1 + * devDependencies + * @opentelemetry/contrib-test-utils bumped from ^0.33.2 to ^0.33.3 + ## [0.34.5](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-v0.34.4...instrumentation-redis-v0.34.5) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-redis/package.json b/plugins/node/opentelemetry-instrumentation-redis/package.json index fd485053f..2c94df5df 100644 --- a/plugins/node/opentelemetry-instrumentation-redis/package.json +++ b/plugins/node/opentelemetry-instrumentation-redis/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-redis", - "version": "0.34.5", + "version": "0.34.6", "description": "Automatic OpenTelemetry instrumentation for redis package version 2 and 3", "main": "build/src/index.js", "types": "build/src/index.d.ts", @@ -54,7 +54,7 @@ "devDependencies": { "@opentelemetry/api": "^1.3.0", "@opentelemetry/context-async-hooks": "^1.8.0", - "@opentelemetry/contrib-test-utils": "^0.33.2", + "@opentelemetry/contrib-test-utils": "^0.33.3", "@opentelemetry/sdk-trace-base": "^1.8.0", "@opentelemetry/sdk-trace-node": "^1.8.0", "@types/mocha": "7.0.2", @@ -71,7 +71,7 @@ }, "dependencies": { "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/redis-common": "^0.35.0", + "@opentelemetry/redis-common": "^0.35.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-redis#readme" diff --git a/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md index 84209a065..dd164923a 100644 --- a/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-restify-v0.32.2...instrumentation-restify-v0.32.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-restify-v0.32.1...instrumentation-restify-v0.32.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-restify/package.json b/plugins/node/opentelemetry-instrumentation-restify/package.json index 0d84f6b61..8f234efe8 100644 --- a/plugins/node/opentelemetry-instrumentation-restify/package.json +++ b/plugins/node/opentelemetry-instrumentation-restify/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-restify", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry restify automatic instrumentation package", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md index e855577f1..f694f6498 100644 --- a/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-router-v0.32.2...instrumentation-router-v0.32.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-router-v0.32.1...instrumentation-router-v0.32.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-router/package.json b/plugins/node/opentelemetry-instrumentation-router/package.json index a01b8d047..6b467f134 100644 --- a/plugins/node/opentelemetry-instrumentation-router/package.json +++ b/plugins/node/opentelemetry-instrumentation-router/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-router", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry Router automatic instrumentation package", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md index 376d16fdc..df482fec7 100644 --- a/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md +++ b/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.31.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-winston-v0.31.2...instrumentation-winston-v0.31.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.31.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-winston-v0.31.1...instrumentation-winston-v0.31.2) (2023-04-25) diff --git a/plugins/node/opentelemetry-instrumentation-winston/package.json b/plugins/node/opentelemetry-instrumentation-winston/package.json index 716045ffa..bce1b1124 100644 --- a/plugins/node/opentelemetry-instrumentation-winston/package.json +++ b/plugins/node/opentelemetry-instrumentation-winston/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-winston", - "version": "0.31.2", + "version": "0.31.3", "description": "OpenTelemetry instrumentation for winston", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md b/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md index 82977e082..9480d99ab 100644 --- a/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md +++ b/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-document-load-v0.32.1...instrumentation-document-load-v0.32.2) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.32.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-document-load-v0.32.0...instrumentation-document-load-v0.32.1) (2023-04-25) diff --git a/plugins/web/opentelemetry-instrumentation-document-load/package.json b/plugins/web/opentelemetry-instrumentation-document-load/package.json index ddce75252..344c49e72 100644 --- a/plugins/web/opentelemetry-instrumentation-document-load/package.json +++ b/plugins/web/opentelemetry-instrumentation-document-load/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-document-load", - "version": "0.32.1", + "version": "0.32.2", "description": "OpenTelemetry document-load automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md b/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md index 2f7ff1c67..c2ee4947a 100644 --- a/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md +++ b/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.32.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-long-task-v0.32.3...instrumentation-long-task-v0.32.4) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-long-task-v0.32.2...instrumentation-long-task-v0.32.3) (2023-04-25) diff --git a/plugins/web/opentelemetry-instrumentation-long-task/package.json b/plugins/web/opentelemetry-instrumentation-long-task/package.json index 2a722c6c8..721a8e14c 100644 --- a/plugins/web/opentelemetry-instrumentation-long-task/package.json +++ b/plugins/web/opentelemetry-instrumentation-long-task/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-long-task", - "version": "0.32.3", + "version": "0.32.4", "description": "OpenTelemetry long task API automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md b/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md index f603c6b9d..99bb3aed7 100644 --- a/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md +++ b/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.32.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-user-interaction-v0.32.2...instrumentation-user-interaction-v0.32.3) (2023-05-16) + + +### Bug Fixes + +* **deps:** update otel core experimental to ^0.39.1 ([#1493](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1493)) ([8ef95bc](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8ef95bccc2d03302089f256f3d0ee091869b4c44)) +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.32.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-user-interaction-v0.32.1...instrumentation-user-interaction-v0.32.2) (2023-04-25) diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json index f4e86c56a..88c2cd852 100644 --- a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json +++ b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/instrumentation-user-interaction", - "version": "0.32.2", + "version": "0.32.3", "description": "OpenTelemetry UserInteraction automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/plugins/web/opentelemetry-plugin-react-load/CHANGELOG.md b/plugins/web/opentelemetry-plugin-react-load/CHANGELOG.md index b20778cfc..74924d12e 100644 --- a/plugins/web/opentelemetry-plugin-react-load/CHANGELOG.md +++ b/plugins/web/opentelemetry-plugin-react-load/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.28.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/plugin-react-load-v0.28.1...plugin-react-load-v0.28.2) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.28.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/plugin-react-load-v0.28.0...plugin-react-load-v0.28.1) (2022-11-02) diff --git a/plugins/web/opentelemetry-plugin-react-load/package.json b/plugins/web/opentelemetry-plugin-react-load/package.json index ee602f6f6..9dc58e1b5 100644 --- a/plugins/web/opentelemetry-plugin-react-load/package.json +++ b/plugins/web/opentelemetry-plugin-react-load/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/plugin-react-load", - "version": "0.28.1", + "version": "0.28.2", "description": "OpenTelemetry React loading automatic instrumentation package.", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/propagators/opentelemetry-propagator-aws-xray/CHANGELOG.md b/propagators/opentelemetry-propagator-aws-xray/CHANGELOG.md index 3104c626b..bcba2c5f8 100644 --- a/propagators/opentelemetry-propagator-aws-xray/CHANGELOG.md +++ b/propagators/opentelemetry-propagator-aws-xray/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [1.2.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-aws-xray-v1.2.0...propagator-aws-xray-v1.2.1) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [1.2.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-aws-xray-v1.1.1...propagator-aws-xray-v1.2.0) (2023-02-07) diff --git a/propagators/opentelemetry-propagator-aws-xray/package.json b/propagators/opentelemetry-propagator-aws-xray/package.json index 352549fea..d08745075 100644 --- a/propagators/opentelemetry-propagator-aws-xray/package.json +++ b/propagators/opentelemetry-propagator-aws-xray/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/propagator-aws-xray", - "version": "1.2.0", + "version": "1.2.1", "description": "OpenTelemetry AWS Xray propagator provides context propagation for systems that are using AWS X-Ray format.", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/propagators/opentelemetry-propagator-grpc-census-binary/CHANGELOG.md b/propagators/opentelemetry-propagator-grpc-census-binary/CHANGELOG.md index 158e62df2..e4c4d75ac 100644 --- a/propagators/opentelemetry-propagator-grpc-census-binary/CHANGELOG.md +++ b/propagators/opentelemetry-propagator-grpc-census-binary/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.26.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-grpc-census-binary-v0.26.0...propagator-grpc-census-binary-v0.26.1) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) + ## [0.26.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-grpc-census-binary-v0.25.1...propagator-grpc-census-binary-v0.26.0) (2022-05-14) diff --git a/propagators/opentelemetry-propagator-grpc-census-binary/package.json b/propagators/opentelemetry-propagator-grpc-census-binary/package.json index c457cc15e..0a2f8e870 100644 --- a/propagators/opentelemetry-propagator-grpc-census-binary/package.json +++ b/propagators/opentelemetry-propagator-grpc-census-binary/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/propagator-grpc-census-binary", - "version": "0.26.0", + "version": "0.26.1", "description": "OpenTelemetry gRPC Census propagator provides a context propagator for OpenTelemetry that can use the gRPC binary header: 'grpc-trace-bin' for interoperability with OpenCensus", "main": "build/src/index.js", "types": "build/src/index.d.ts", diff --git a/propagators/opentelemetry-propagator-instana/CHANGELOG.md b/propagators/opentelemetry-propagator-instana/CHANGELOG.md index 6eb857375..a2184d829 100644 --- a/propagators/opentelemetry-propagator-instana/CHANGELOG.md +++ b/propagators/opentelemetry-propagator-instana/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.2.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-instana-v0.2.1...propagator-instana-v0.2.2) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) +* **eslint-eqeqeq:** updated the `eqeqeq` rule to match the core repo ([#1485](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1485)) ([5709008](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/5709008dfa4d05cae0c2226b9926e36cdf60c631)) + ## [0.2.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-instana-v0.2.0...propagator-instana-v0.2.1) (2022-11-02) diff --git a/propagators/opentelemetry-propagator-instana/package.json b/propagators/opentelemetry-propagator-instana/package.json index e24f8b49b..d97f70201 100644 --- a/propagators/opentelemetry-propagator-instana/package.json +++ b/propagators/opentelemetry-propagator-instana/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/propagator-instana", - "version": "0.2.1", + "version": "0.2.2", "description": "The OpenTelemetry Instana Propagator implements the propagation format used by IBM Observability by Instana", "main": "build/src/index.js", "module": "build/esm/index.js", diff --git a/propagators/opentelemetry-propagator-ot-trace/CHANGELOG.md b/propagators/opentelemetry-propagator-ot-trace/CHANGELOG.md index ab5ecffe5..3322053e4 100644 --- a/propagators/opentelemetry-propagator-ot-trace/CHANGELOG.md +++ b/propagators/opentelemetry-propagator-ot-trace/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## [0.26.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-ot-trace-v0.26.2...propagator-ot-trace-v0.26.3) (2023-05-16) + + +### Bug Fixes + +* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab)) +* **eslint-eqeqeq:** updated the `eqeqeq` rule to match the core repo ([#1485](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1485)) ([5709008](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/5709008dfa4d05cae0c2226b9926e36cdf60c631)) + ## [0.26.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-ot-trace-v0.26.1...propagator-ot-trace-v0.26.2) (2022-11-02) diff --git a/propagators/opentelemetry-propagator-ot-trace/package.json b/propagators/opentelemetry-propagator-ot-trace/package.json index 36bd939f5..75dffaed4 100644 --- a/propagators/opentelemetry-propagator-ot-trace/package.json +++ b/propagators/opentelemetry-propagator-ot-trace/package.json @@ -1,6 +1,6 @@ { "name": "@opentelemetry/propagator-ot-trace", - "version": "0.26.2", + "version": "0.26.3", "description": "The OpenTelemetry OTTracepropagator implements the propagation format used by the \"basic tracer\" implementations from the OpenTracing project", "main": "build/src/index.js", "module": "build/esm/index.js", From 6a876a053fdcaeea20e53c2fa0d829c8a6819826 Mon Sep 17 00:00:00 2001 From: Jamie Danielson Date: Wed, 17 May 2023 01:22:27 -0400 Subject: [PATCH 40/72] feat(otlp-metric-exporters): Add User-Agent header to OTLP metric exporters (#3806) Co-authored-by: Marc Pichler --- experimental/CHANGELOG.md | 1 + .../src/OTLPMetricExporter.ts | 15 ++++++++++++--- .../test/OTLPMetricExporter.test.ts | 8 ++++++++ .../src/platform/node/OTLPMetricExporter.ts | 15 ++++++++++----- .../test/node/CollectorMetricExporter.test.ts | 8 ++++++++ .../src/OTLPMetricExporter.ts | 15 ++++++++++----- .../test/OTLPMetricExporter.test.ts | 11 +++++++++++ 7 files changed, 60 insertions(+), 13 deletions(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 3ee06e9fc..19a69846e 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -7,6 +7,7 @@ All notable changes to experimental packages in this project will be documented ### :rocket: (Enhancement) * feat(otlp-trace-exporters): Add User-Agent header to OTLP trace exporters. [#3790](https://github.com/open-telemetry/opentelemetry-js/pull/3790) @JamieDanielson +* feat(otlp-metric-exporters): Add User-Agent header to OTLP metric exporters. [#3806](https://github.com/open-telemetry/opentelemetry-js/pull/3806) @JamieDanielson ### :boom: Breaking Change diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/src/OTLPMetricExporter.ts b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/src/OTLPMetricExporter.ts index 20f917e54..0ada75d43 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/src/OTLPMetricExporter.ts +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-grpc/src/OTLPMetricExporter.ts @@ -32,6 +32,11 @@ import { createExportMetricsServiceRequest, IExportMetricsServiceRequest, } from '@opentelemetry/otlp-transformer'; +import { VERSION } from './version'; + +const USER_AGENT = { + 'User-Agent': `OTel-OTLP-Exporter-JavaScript/${VERSION}`, +}; class OTLPMetricExporterProxy extends OTLPGRPCExporterNodeBase< ResourceMetrics, @@ -39,9 +44,13 @@ class OTLPMetricExporterProxy extends OTLPGRPCExporterNodeBase< > { constructor(config?: OTLPGRPCExporterConfigNode & OTLPMetricExporterOptions) { super(config); - const headers = baggageUtils.parseKeyPairsIntoRecord( - getEnv().OTEL_EXPORTER_OTLP_METRICS_HEADERS - ); + const headers = { + ...USER_AGENT, + ...baggageUtils.parseKeyPairsIntoRecord( + getEnv().OTEL_EXPORTER_OTLP_METRICS_HEADERS + ), + }; + this.metadata ||= new Metadata(); for (const [k, v] of Object.entries(headers)) { this.metadata.set(k, v); 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 4b8d32654..9e4e27ecb 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 @@ -43,6 +43,7 @@ import { IExportMetricsServiceRequest, IResourceMetrics, } from '@opentelemetry/otlp-transformer'; +import { VERSION } from '../src/version'; const metricsServiceProtoPath = 'opentelemetry/proto/collector/metrics/v1/metrics_service.proto'; @@ -314,6 +315,13 @@ describe('when configuring via environment', () => { ); envSource.OTEL_EXPORTER_OTLP_HEADERS = ''; }); + it('should include user agent in header', () => { + const collectorExporter = new OTLPMetricExporter(); + assert.deepStrictEqual( + collectorExporter._otlpExporter.metadata?.get('User-Agent'), + [`OTel-OTLP-Exporter-JavaScript/${VERSION}`] + ); + }); it('should override global headers config with signal headers defined via env', () => { const metadata = new grpc.Metadata(); metadata.set('foo', 'bar'); diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/platform/node/OTLPMetricExporter.ts b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/platform/node/OTLPMetricExporter.ts index 980931a6c..f83e414e7 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/platform/node/OTLPMetricExporter.ts +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-http/src/platform/node/OTLPMetricExporter.ts @@ -28,9 +28,13 @@ import { createExportMetricsServiceRequest, IExportMetricsServiceRequest, } from '@opentelemetry/otlp-transformer'; +import { VERSION } from '../../version'; const DEFAULT_COLLECTOR_RESOURCE_PATH = 'v1/metrics'; const DEFAULT_COLLECTOR_URL = `http://localhost:4318/${DEFAULT_COLLECTOR_RESOURCE_PATH}`; +const USER_AGENT = { + 'User-Agent': `OTel-OTLP-Exporter-JavaScript/${VERSION}`, +}; class OTLPExporterNodeProxy extends OTLPExporterNodeBase< ResourceMetrics, @@ -38,12 +42,13 @@ class OTLPExporterNodeProxy extends OTLPExporterNodeBase< > { constructor(config?: OTLPExporterNodeConfigBase & OTLPMetricExporterOptions) { super(config); - this.headers = Object.assign( - this.headers, - baggageUtils.parseKeyPairsIntoRecord( + this.headers = { + ...this.headers, + ...USER_AGENT, + ...baggageUtils.parseKeyPairsIntoRecord( getEnv().OTEL_EXPORTER_OTLP_METRICS_HEADERS - ) - ); + ), + }; } convert(metrics: ResourceMetrics[]): IExportMetricsServiceRequest { 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 d23ca628f..042e5ebb4 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 @@ -50,6 +50,7 @@ import { OTLPExporterNodeConfigBase, } from '@opentelemetry/otlp-exporter-base'; import { IExportMetricsServiceRequest } from '@opentelemetry/otlp-transformer'; +import { VERSION } from '../../src/version'; let fakeRequest: PassThrough; @@ -188,6 +189,13 @@ describe('OTLPMetricExporter - node with json over http', () => { assert.strictEqual(collectorExporter._otlpExporter.headers.foo, 'bar'); envSource.OTEL_EXPORTER_OTLP_HEADERS = ''; }); + it('should include user agent in header', () => { + const collectorExporter = new OTLPMetricExporter(); + assert.strictEqual( + collectorExporter._otlpExporter.headers['User-Agent'], + `OTel-OTLP-Exporter-JavaScript/${VERSION}` + ); + }); it('should override global headers config with signal headers defined via env', () => { envSource.OTEL_EXPORTER_OTLP_HEADERS = 'foo=bar,bar=foo'; envSource.OTEL_EXPORTER_OTLP_METRICS_HEADERS = 'foo=boo'; diff --git a/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/src/OTLPMetricExporter.ts b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/src/OTLPMetricExporter.ts index c29ae0085..8d1fb114b 100644 --- a/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/src/OTLPMetricExporter.ts +++ b/experimental/packages/opentelemetry-exporter-metrics-otlp-proto/src/OTLPMetricExporter.ts @@ -31,9 +31,13 @@ import { createExportMetricsServiceRequest, IExportMetricsServiceRequest, } from '@opentelemetry/otlp-transformer'; +import { VERSION } from './version'; const DEFAULT_COLLECTOR_RESOURCE_PATH = 'v1/metrics'; const DEFAULT_COLLECTOR_URL = `http://localhost:4318/${DEFAULT_COLLECTOR_RESOURCE_PATH}`; +const USER_AGENT = { + 'User-Agent': `OTel-OTLP-Exporter-JavaScript/${VERSION}`, +}; class OTLPMetricExporterNodeProxy extends OTLPProtoExporterNodeBase< ResourceMetrics, @@ -41,12 +45,13 @@ class OTLPMetricExporterNodeProxy extends OTLPProtoExporterNodeBase< > { constructor(config?: OTLPExporterNodeConfigBase & OTLPMetricExporterOptions) { super(config); - this.headers = Object.assign( - this.headers, - baggageUtils.parseKeyPairsIntoRecord( + this.headers = { + ...this.headers, + ...USER_AGENT, + ...baggageUtils.parseKeyPairsIntoRecord( getEnv().OTEL_EXPORTER_OTLP_METRICS_HEADERS - ) - ); + ), + }; } convert(metrics: ResourceMetrics[]): IExportMetricsServiceRequest { 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 05ca183dc..d3270b6a9 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 @@ -46,6 +46,7 @@ import { OTLPMetricExporterOptions } from '@opentelemetry/exporter-metrics-otlp- import { Stream, PassThrough } from 'stream'; import { OTLPExporterNodeConfigBase } from '@opentelemetry/otlp-exporter-base'; import { IExportMetricsServiceRequest } from '@opentelemetry/otlp-transformer'; +import { VERSION } from '../src/version'; let fakeRequest: PassThrough; @@ -60,6 +61,16 @@ describe('OTLPMetricExporter - node with proto over http', () => { sinon.restore(); }); + describe('default behavior for headers', () => { + const collectorExporter = new OTLPMetricExporter(); + it('should include user agent in header', () => { + assert.strictEqual( + collectorExporter._otlpExporter.headers['User-Agent'], + `OTel-OTLP-Exporter-JavaScript/${VERSION}` + ); + }); + }); + 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', () => { From 81ee1df218401bb34e5340fd9b1531b8935ad910 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Wed, 17 May 2023 15:18:40 +0200 Subject: [PATCH 41/72] chore(deps): update node.js to v20 (#3768) Co-authored-by: Daniel Dyla --- .github/workflows/peer-api.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/peer-api.yml b/.github/workflows/peer-api.yml index ac90efe98..e6f52cccd 100644 --- a/.github/workflows/peer-api.yml +++ b/.github/workflows/peer-api.yml @@ -11,7 +11,7 @@ jobs: peer-api-check: runs-on: ubuntu-latest container: - image: node:18 + image: node:20 steps: - name: Checkout uses: actions/checkout@v3 From c3feabe4e754055bad3805c7feb1b65e05a1742e Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Wed, 17 May 2023 16:06:12 +0200 Subject: [PATCH 42/72] fix(deps): update dependency axios to v1 (#3299) * fix(deps): update dependency axios to v1 * fix(deps): update dependency axios to v1 * Fix types --------- Co-authored-by: Daniel Dyla --- .../packages/opentelemetry-instrumentation-http/package.json | 2 +- .../test/functionals/http-package.test.ts | 2 +- .../test/functionals/https-package.test.ts | 2 +- integration-tests/propagation-validation-server/package.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/experimental/packages/opentelemetry-instrumentation-http/package.json b/experimental/packages/opentelemetry-instrumentation-http/package.json index 763dabdf9..b46eef6a1 100644 --- a/experimental/packages/opentelemetry-instrumentation-http/package.json +++ b/experimental/packages/opentelemetry-instrumentation-http/package.json @@ -56,7 +56,7 @@ "@types/semver": "7.3.9", "@types/sinon": "10.0.13", "@types/superagent": "4.1.13", - "axios": "0.24.0", + "axios": "1.4.0", "codecov": "3.8.3", "mocha": "10.0.0", "nock": "13.0.11", diff --git a/experimental/packages/opentelemetry-instrumentation-http/test/functionals/http-package.test.ts b/experimental/packages/opentelemetry-instrumentation-http/test/functionals/http-package.test.ts index 39b288ccd..c07039f29 100644 --- a/experimental/packages/opentelemetry-instrumentation-http/test/functionals/http-package.test.ts +++ b/experimental/packages/opentelemetry-instrumentation-http/test/functionals/http-package.test.ts @@ -104,7 +104,7 @@ describe('Packages', () => { const result = await httpPackage.get(urlparsed.href!); if (!resHeaders) { const res = result as AxiosResponse; - resHeaders = res.headers; + resHeaders = res.headers as any; } const spans = memoryExporter.getFinishedSpans(); const span = spans[0]; diff --git a/experimental/packages/opentelemetry-instrumentation-http/test/functionals/https-package.test.ts b/experimental/packages/opentelemetry-instrumentation-http/test/functionals/https-package.test.ts index dada803e4..a7c5972a6 100644 --- a/experimental/packages/opentelemetry-instrumentation-http/test/functionals/https-package.test.ts +++ b/experimental/packages/opentelemetry-instrumentation-http/test/functionals/https-package.test.ts @@ -110,7 +110,7 @@ describe('Packages', () => { const result = await httpPackage.get(urlparsed.href!); if (!resHeaders) { const res = result as AxiosResponse; - resHeaders = res.headers; + resHeaders = res.headers as any; } const spans = memoryExporter.getFinishedSpans(); const span = spans[0]; diff --git a/integration-tests/propagation-validation-server/package.json b/integration-tests/propagation-validation-server/package.json index f2d5d6e94..88846f5d9 100644 --- a/integration-tests/propagation-validation-server/package.json +++ b/integration-tests/propagation-validation-server/package.json @@ -15,7 +15,7 @@ "@opentelemetry/context-async-hooks": "1.13.0", "@opentelemetry/core": "1.13.0", "@opentelemetry/sdk-trace-base": "1.13.0", - "axios": "0.24.0", + "axios": "1.4.0", "body-parser": "1.19.0", "express": "4.17.3" }, From 18ea3df2b7f8c517195f6f579aab38472e460fe1 Mon Sep 17 00:00:00 2001 From: Aaron Abbott Date: Wed, 17 May 2023 11:56:23 -0400 Subject: [PATCH 43/72] chore(changelog): combine accidental multiple enhancement sections into one (#3815) --- experimental/CHANGELOG.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 19a69846e..23bce4b24 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -4,16 +4,13 @@ All notable changes to experimental packages in this project will be documented ## Unreleased -### :rocket: (Enhancement) - -* feat(otlp-trace-exporters): Add User-Agent header to OTLP trace exporters. [#3790](https://github.com/open-telemetry/opentelemetry-js/pull/3790) @JamieDanielson -* feat(otlp-metric-exporters): Add User-Agent header to OTLP metric exporters. [#3806](https://github.com/open-telemetry/opentelemetry-js/pull/3806) @JamieDanielson - ### :boom: Breaking Change ### :rocket: (Enhancement) * feat(instrumentation): add ESM support for instrumentation. [#3698](https://github.com/open-telemetry/opentelemetry-js/pull/3698) @JamieDanielson, @pkanal, @vmarchaud, @lizthegrey, @bengl +* feat(otlp-trace-exporters): Add User-Agent header to OTLP trace exporters. [#3790](https://github.com/open-telemetry/opentelemetry-js/pull/3790) @JamieDanielson +* feat(otlp-metric-exporters): Add User-Agent header to OTLP metric exporters. [#3806](https://github.com/open-telemetry/opentelemetry-js/pull/3806) @JamieDanielson ### :bug: (Bug Fix) From 17eca4c79206fb13d6800920213c9f959c1699ec Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Wed, 17 May 2023 17:57:17 +0200 Subject: [PATCH 44/72] fix(deps): update dependency require-in-the-middle to v7 (#3782) Co-authored-by: Daniel Dyla --- experimental/packages/shim-opencensus/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/experimental/packages/shim-opencensus/package.json b/experimental/packages/shim-opencensus/package.json index 87512230d..1dae7c52a 100644 --- a/experimental/packages/shim-opencensus/package.json +++ b/experimental/packages/shim-opencensus/package.json @@ -67,7 +67,7 @@ "dependencies": { "@opentelemetry/context-async-hooks": "1.13.0", "@opentelemetry/core": "1.13.0", - "require-in-the-middle": "^6.0.0", + "require-in-the-middle": "^7.0.0", "semver": "^7.3.5" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/shim-opencensus", From fcd75dfda82b84c2131ed91e4362eb13085cd578 Mon Sep 17 00:00:00 2001 From: Jackson Weber <47067795+JacksonWeber@users.noreply.github.com> Date: Wed, 17 May 2023 13:07:26 -0700 Subject: [PATCH 45/72] feat(opentelemetry-sdk-trace-base): Add optional forceFlush property to SpanExporter interface (#3753) * feat(opentelemetry-sdk-trace-base): Add optional forceFlush property to SpanExporter interface Signed-off-by: Sidartha Gracias * feat(opentelemetry-sdk-trace-base): fixup changelog Signed-off-by: Sidartha Gracias * feat(opentelemetry-sdk-trace-base): fixup changelog Signed-off-by: Sidartha Gracias * feat(opentelemetry-sdk-trace-base): add exporter forceflush functions Signed-off-by: Sidartha Gracias * feat(opentelemetry-sdk-trace-base): add tests, add empty implemtation for downstream exporters Signed-off-by: Sidartha Gracias * feat(opentelemetry-sdk-trace-base): add implementation for forceflush for zipkin, jaeger, otlp * feat(opentelemetry-sdk-trace-base): fix lint, minor review change * feat(opentelemetry-sdk-trace-base): minor review change * feat(opentelemetry-sdk-trace-base): fix lint * feat(opentelemetry-sdk-trace-base): minor change * Fix lint. * Have the SimpleSpanProcessor handle force flush. * Update changelog. * Update the span processor to call forceFlush in the exporter. * Fix lint. * Make the forceFlush method optional. * fix(changelog): replace mandatory -> optional * Add or update the Azure App Service build and deployment workflow config * Delete issue_3067_jacksonweber-test-github.yml * Add comment for ignoring resolved values. --------- Signed-off-by: Sidartha Gracias Co-authored-by: Sidartha Gracias Co-authored-by: Sidartha Gracias <97981532+sgracias1@users.noreply.github.com> Co-authored-by: Marc Pichler --- CHANGELOG.md | 2 ++ .../test/fetch.test.ts | 4 ++++ .../test/xhr.test.ts | 4 ++++ .../otlp-exporter-base/src/OTLPExporterBase.ts | 13 ++++++++++--- .../otlp-exporter-base/test/node/util.test.ts | 7 +++++++ .../opentelemetry-exporter-jaeger/src/jaeger.ts | 7 +++++++ .../test/jaeger.test.ts | 8 ++++++++ .../opentelemetry-exporter-zipkin/src/zipkin.ts | 7 +++++++ .../test/node/zipkin.test.ts | 7 +++++++ .../src/export/ConsoleSpanExporter.ts | 7 +++++++ .../src/export/InMemorySpanExporter.ts | 7 +++++++ .../src/export/SimpleSpanProcessor.ts | 3 +++ .../src/export/SpanExporter.ts | 3 +++ .../test/common/export/ConsoleSpanExporter.test.ts | 7 +++++++ .../test/common/export/InMemorySpanExporter.test.ts | 7 +++++++ .../test/common/export/SimpleSpanProcessor.test.ts | 8 ++++++++ 16 files changed, 98 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f3ebf020f..f827e3158 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,8 @@ 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 + ### :bug: (Bug Fix) ### :books: (Refine Doc) diff --git a/experimental/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts b/experimental/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts index 40f3381db..318e0f98c 100644 --- a/experimental/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts +++ b/experimental/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts @@ -49,6 +49,10 @@ class DummySpanExporter implements tracing.SpanExporter { shutdown() { return Promise.resolve(); } + + forceFlush(): Promise { + return Promise.resolve(); + } } const getData = (url: string, method?: string) => { diff --git a/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/xhr.test.ts b/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/xhr.test.ts index 6176dd005..b304bb9c0 100644 --- a/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/xhr.test.ts +++ b/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/xhr.test.ts @@ -46,6 +46,10 @@ class DummySpanExporter implements tracing.SpanExporter { shutdown() { return Promise.resolve(); } + + forceFlush(): Promise { + return Promise.resolve(); + } } const XHR_TIMEOUT = 2000; diff --git a/experimental/packages/otlp-exporter-base/src/OTLPExporterBase.ts b/experimental/packages/otlp-exporter-base/src/OTLPExporterBase.ts index c78adb7e2..c96030578 100644 --- a/experimental/packages/otlp-exporter-base/src/OTLPExporterBase.ts +++ b/experimental/packages/otlp-exporter-base/src/OTLPExporterBase.ts @@ -117,15 +117,22 @@ export abstract class OTLPExporterBase< return this._shutdownOnce.call(); } + /** + * Exports any pending spans in the exporter + */ + forceFlush(): Promise { + return Promise.all(this._sendingPromises).then(() => { + /** ignore resolved values */ + }); + } + /** * Called by _shutdownOnce with BindOnceFuture */ private _shutdown(): Promise { diag.debug('shutdown started'); this.onShutdown(); - return Promise.all(this._sendingPromises).then(() => { - /** ignore resolved values */ - }); + return this.forceFlush(); } abstract onShutdown(): void; diff --git a/experimental/packages/otlp-exporter-base/test/node/util.test.ts b/experimental/packages/otlp-exporter-base/test/node/util.test.ts index 86c8df40a..b279e57b9 100644 --- a/experimental/packages/otlp-exporter-base/test/node/util.test.ts +++ b/experimental/packages/otlp-exporter-base/test/node/util.test.ts @@ -60,6 +60,13 @@ class Exporter extends OTLPExporterNodeBase { } } +describe('force flush', () => { + it('forceFlush should flush spans and return', async () => { + const exporter = new Exporter({}); + await exporter.forceFlush(); + }); +}); + describe('configureExporterTimeout', () => { const envSource = process.env; it('should use timeoutMillis parameter as export timeout value', () => { diff --git a/packages/opentelemetry-exporter-jaeger/src/jaeger.ts b/packages/opentelemetry-exporter-jaeger/src/jaeger.ts index 28d3ccb33..aafc884cd 100644 --- a/packages/opentelemetry-exporter-jaeger/src/jaeger.ts +++ b/packages/opentelemetry-exporter-jaeger/src/jaeger.ts @@ -97,6 +97,13 @@ export class JaegerExporter implements SpanExporter { return this._shutdownOnce.call(); } + /** + * Exports any pending spans in exporter + */ + forceFlush(): Promise { + return this._flush(); + } + private _shutdown(): Promise { return Promise.race([ new Promise((_resolve, reject) => { diff --git a/packages/opentelemetry-exporter-jaeger/test/jaeger.test.ts b/packages/opentelemetry-exporter-jaeger/test/jaeger.test.ts index bcfdbf051..d66757963 100644 --- a/packages/opentelemetry-exporter-jaeger/test/jaeger.test.ts +++ b/packages/opentelemetry-exporter-jaeger/test/jaeger.test.ts @@ -178,6 +178,14 @@ describe('JaegerExporter', () => { }); }); + describe('force flush', () => { + let exporter: JaegerExporter; + it('forceFlush should flush spans and return', async () => { + exporter = new JaegerExporter(); + await exporter.forceFlush(); + }); + }); + describe('export', () => { let exporter: JaegerExporter; diff --git a/packages/opentelemetry-exporter-zipkin/src/zipkin.ts b/packages/opentelemetry-exporter-zipkin/src/zipkin.ts index 2cb3e4443..ca52806d3 100644 --- a/packages/opentelemetry-exporter-zipkin/src/zipkin.ts +++ b/packages/opentelemetry-exporter-zipkin/src/zipkin.ts @@ -102,6 +102,13 @@ export class ZipkinExporter implements SpanExporter { shutdown(): Promise { diag.debug('Zipkin exporter shutdown'); this._isShutdown = true; + return this.forceFlush(); + } + + /** + * Exports any pending spans in exporter + */ + forceFlush(): Promise { return new Promise((resolve, reject) => { Promise.all(this._sendingPromises).then(() => { resolve(); diff --git a/packages/opentelemetry-exporter-zipkin/test/node/zipkin.test.ts b/packages/opentelemetry-exporter-zipkin/test/node/zipkin.test.ts index eeab75348..300166249 100644 --- a/packages/opentelemetry-exporter-zipkin/test/node/zipkin.test.ts +++ b/packages/opentelemetry-exporter-zipkin/test/node/zipkin.test.ts @@ -526,6 +526,13 @@ describe('Zipkin Exporter - node', () => { }); }); + describe('force flush', () => { + it('forceFlush should flush spans and return', async () => { + const exporter = new ZipkinExporter({}); + await exporter.forceFlush(); + }); + }); + describe('when env.OTEL_EXPORTER_ZIPKIN_ENDPOINT is set', () => { before(() => { process.env.OTEL_EXPORTER_ZIPKIN_ENDPOINT = 'http://localhost:9412'; diff --git a/packages/opentelemetry-sdk-trace-base/src/export/ConsoleSpanExporter.ts b/packages/opentelemetry-sdk-trace-base/src/export/ConsoleSpanExporter.ts index 77b096559..596b3cefd 100644 --- a/packages/opentelemetry-sdk-trace-base/src/export/ConsoleSpanExporter.ts +++ b/packages/opentelemetry-sdk-trace-base/src/export/ConsoleSpanExporter.ts @@ -46,6 +46,13 @@ export class ConsoleSpanExporter implements SpanExporter { */ shutdown(): Promise { this._sendSpans([]); + return this.forceFlush(); + } + + /** + * Exports any pending spans in exporter + */ + forceFlush(): Promise { return Promise.resolve(); } diff --git a/packages/opentelemetry-sdk-trace-base/src/export/InMemorySpanExporter.ts b/packages/opentelemetry-sdk-trace-base/src/export/InMemorySpanExporter.ts index c7c17d80c..4a755ea8c 100644 --- a/packages/opentelemetry-sdk-trace-base/src/export/InMemorySpanExporter.ts +++ b/packages/opentelemetry-sdk-trace-base/src/export/InMemorySpanExporter.ts @@ -48,6 +48,13 @@ export class InMemorySpanExporter implements SpanExporter { shutdown(): Promise { this._stopped = true; this._finishedSpans = []; + return this.forceFlush(); + } + + /** + * Exports any pending spans in the exporter + */ + forceFlush(): Promise { return Promise.resolve(); } diff --git a/packages/opentelemetry-sdk-trace-base/src/export/SimpleSpanProcessor.ts b/packages/opentelemetry-sdk-trace-base/src/export/SimpleSpanProcessor.ts index 8351b4b6e..463e8376b 100644 --- a/packages/opentelemetry-sdk-trace-base/src/export/SimpleSpanProcessor.ts +++ b/packages/opentelemetry-sdk-trace-base/src/export/SimpleSpanProcessor.ts @@ -46,6 +46,9 @@ export class SimpleSpanProcessor implements SpanProcessor { async forceFlush(): Promise { // await unresolved resources before resolving await Promise.all(Array.from(this._unresolvedExports)); + if (this._exporter.forceFlush) { + await this._exporter.forceFlush(); + } } onStart(_span: Span, _parentContext: Context): void {} diff --git a/packages/opentelemetry-sdk-trace-base/src/export/SpanExporter.ts b/packages/opentelemetry-sdk-trace-base/src/export/SpanExporter.ts index b3b89d4aa..c9ca9c0c8 100644 --- a/packages/opentelemetry-sdk-trace-base/src/export/SpanExporter.ts +++ b/packages/opentelemetry-sdk-trace-base/src/export/SpanExporter.ts @@ -36,4 +36,7 @@ export interface SpanExporter { /** Stops the exporter. */ shutdown(): Promise; + + /** Immediately export all spans */ + forceFlush?(): Promise; } diff --git a/packages/opentelemetry-sdk-trace-base/test/common/export/ConsoleSpanExporter.test.ts b/packages/opentelemetry-sdk-trace-base/test/common/export/ConsoleSpanExporter.test.ts index 72642927a..d005a2f80 100644 --- a/packages/opentelemetry-sdk-trace-base/test/common/export/ConsoleSpanExporter.test.ts +++ b/packages/opentelemetry-sdk-trace-base/test/common/export/ConsoleSpanExporter.test.ts @@ -99,4 +99,11 @@ describe('ConsoleSpanExporter', () => { }); }); }); + + describe('force flush', () => { + it('forceFlush should flush spans and return', async () => { + consoleExporter = new ConsoleSpanExporter(); + await consoleExporter.forceFlush(); + }); + }); }); diff --git a/packages/opentelemetry-sdk-trace-base/test/common/export/InMemorySpanExporter.test.ts b/packages/opentelemetry-sdk-trace-base/test/common/export/InMemorySpanExporter.test.ts index df9105d97..585610514 100644 --- a/packages/opentelemetry-sdk-trace-base/test/common/export/InMemorySpanExporter.test.ts +++ b/packages/opentelemetry-sdk-trace-base/test/common/export/InMemorySpanExporter.test.ts @@ -86,6 +86,13 @@ describe('InMemorySpanExporter', () => { assert.strictEqual(memoryExporter.getFinishedSpans().length, 0); }); + describe('force flush', () => { + it('forceFlush should flush spans and return', async () => { + memoryExporter = new InMemorySpanExporter(); + await memoryExporter.forceFlush(); + }); + }); + it('should return the success result', () => { const exorter = new InMemorySpanExporter(); exorter.export([], (result: ExportResult) => { diff --git a/packages/opentelemetry-sdk-trace-base/test/common/export/SimpleSpanProcessor.test.ts b/packages/opentelemetry-sdk-trace-base/test/common/export/SimpleSpanProcessor.test.ts index 88490c527..94e86eeed 100644 --- a/packages/opentelemetry-sdk-trace-base/test/common/export/SimpleSpanProcessor.test.ts +++ b/packages/opentelemetry-sdk-trace-base/test/common/export/SimpleSpanProcessor.test.ts @@ -152,6 +152,14 @@ describe('SimpleSpanProcessor', () => { }); describe('force flush', () => { + it('should call forceflush on exporter', () => { + const spyflush = sinon.spy(exporter, 'forceFlush'); + const processor = new SimpleSpanProcessor(exporter); + processor.forceFlush().then(() => { + assert.ok(spyflush.calledOnce); + }); + }); + it('should await unresolved resources', async () => { const processor = new SimpleSpanProcessor(exporter); const providerWithAsyncResource = new BasicTracerProvider({ From d4a41bd815dd50703f692000a70c59235ad71959 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Wed, 17 May 2023 17:11:03 -0400 Subject: [PATCH 46/72] Add scripts to prepare releases automatically (#3805) --- .github/workflows/label-releases.yml | 12 ++++++++++++ package.json | 20 ++++++++++++++++++-- 2 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/label-releases.yml diff --git a/.github/workflows/label-releases.yml b/.github/workflows/label-releases.yml new file mode 100644 index 000000000..29c5357f7 --- /dev/null +++ b/.github/workflows/label-releases.yml @@ -0,0 +1,12 @@ +on: + pull_request_target: + branches: + - main + +jobs: + label-release: + if: ${{ startsWith(github.event.pull_request.title, 'release:') }} + runs-on: ubuntu-latest + steps: + - run: echo this is a release PR + - run: gh pr edit ${{ github.event.pull_request.number }} --add-label release diff --git a/package.json b/package.json index d03e6ff43..0d232ef63 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,24 @@ "lint:markdown": "./node_modules/.bin/markdownlint $(git ls-files '*.md') -i ./CHANGELOG.md", "lint:markdown:fix": "./node_modules/.bin/markdownlint $(git ls-files '*.md') -i ./CHANGELOG.md --fix", "reset": "lerna clean -y && rm -rf node_modules && npm i && npm run compile && npm run lint:fix", - "update-ts-configs": "node scripts/update-ts-configs.js" + "update-ts-configs": "node scripts/update-ts-configs.js", + + "comment_prepare_1": "echo scripts in this section automatically prepare releases. Intended for use by maintainers only.", + "comment_prepare_2": "echo experimental preparation scripts only prepare experimental packages", + "prepare_release:experimental:patch": "npm run _check:no_changes && npm run _backup:lerna && npm run _lerna:remove_api && npm run _lerna:remove_stable && npm run _lerna:version_patch && npm run _restore:lerna", + "prepare_release:experimental:minor": "npm run _check:no_changes && npm run _backup:lerna && npm run _lerna:remove_api && npm run _lerna:remove_stable && npm run _lerna:version_minor && npm run _restore:lerna", + "comment_prepare_3": "echo sdk preparation scripts prepare all stable and experimental packages", + "prepare_release:sdk:patch": "npm run _check:no_changes && npm run _backup:lerna && npm run _lerna:remove_api && npm run _lerna:version_patch && npm run _restore:lerna", + "prepare_release:sdk:minor": "npm run _check:no_changes && npm run _backup:lerna && npm run _lerna:remove_api && npm run _lerna:version_minor && npm run _restore:lerna", + + "comment_internal": "echo scripts below this line are for internal use", + "_check:no_changes": "if [ ! -z \"$(git status -uall --porcelain)\" ]; then echo Please ensure all changes are committed; exit 1; fi", + "_backup:lerna": "cp lerna.json lerna.json.backup", + "_restore:lerna": "mv lerna.json.backup lerna.json", + "_lerna:remove_api": "node -e 'var fs=require(\"fs\");var l=require(\"./lerna.json\");l.packages=l.packages.filter(p=>p!==\"api\");fs.writeFileSync(\"lerna.json\",JSON.stringify(l,null,2))'", + "_lerna:remove_stable": "node -e 'var fs=require(\"fs\");var l=require(\"./lerna.json\");l.packages=l.packages.filter(p=>p!==\"packages/*\");fs.writeFileSync(\"lerna.json\",JSON.stringify(l,null,2))'", + "_lerna:version_patch": "npx lerna version patch --exact --no-git-tag-version --no-push --yes", + "_lerna:version_minor": "npx lerna version minor --exact --no-git-tag-version --no-push --yes" }, "repository": "open-telemetry/opentelemetry-js", "keywords": [ @@ -55,7 +72,6 @@ "eslint-plugin-prettier": "4.2.1", "gh-pages": "5.0.0", "lerna": "6.0.3", - "lerna-changelog": "2.2.0", "linkinator": "4.0.3", "markdownlint-cli": "0.32.2", "prettier": "2.8.0", From 9fe1f7d8d5aef51136b9d9313a0d4175de67f268 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Fri, 19 May 2023 20:30:03 +0200 Subject: [PATCH 47/72] chore(deps): update dependency chromedriver to v113 (#3822) --- selenium-tests/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selenium-tests/package.json b/selenium-tests/package.json index 5635f40c0..1bef831b3 100644 --- a/selenium-tests/package.json +++ b/selenium-tests/package.json @@ -40,7 +40,7 @@ "babel-loader": "8.2.3", "babel-polyfill": "6.26.0", "browserstack-local": "1.4.8", - "chromedriver": "112.0.0", + "chromedriver": "113.0.0", "dotenv": "16.0.0", "fast-safe-stringify": "2.1.1", "geckodriver": "3.0.1", From de22983c50a341364871af753b6cf9ad99a7550e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=B2=92=E7=B2=92=E6=A9=99?= Date: Sat, 20 May 2023 03:13:37 +0800 Subject: [PATCH 48/72] feat(api-logs): add `ObservedTimestamp` to `LogRecord` (#3787) * feat(api-logs): add `ObservedTimestamp` to `LogRecord` * chore(changelog): add changelog * fix(sdk-logs): use `Date` instead of `hrTime()` for timestamps --------- Co-authored-by: Marc Pichler Co-authored-by: Daniel Dyla --- experimental/CHANGELOG.md | 1 + experimental/packages/api-logs/src/types/LogRecord.ts | 5 +++++ .../packages/exporter-logs-otlp-grpc/test/logsHelper.ts | 3 ++- experimental/packages/otlp-transformer/src/logs/index.ts | 2 +- experimental/packages/otlp-transformer/test/logs.test.ts | 4 +++- experimental/packages/sdk-logs/src/LogRecord.ts | 9 +++++++-- .../packages/sdk-logs/src/export/ReadableLogRecord.ts | 1 + 7 files changed, 20 insertions(+), 5 deletions(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 23bce4b24..86f868f6f 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -35,6 +35,7 @@ All notable changes to experimental packages in this project will be documented * feat(exporter-logs-otlp-grpc): otlp-grpc exporter for logs. [#3712](https://github.com/open-telemetry/opentelemetry-js/pull/3712/) @llc1123 * feat(otlp-grpc-exporter-base): use statically generated protobuf code [#3705](https://github.com/open-telemetry/opentelemetry-js/pull/3705) @pichlermarc * refactor(otlp-transformer): refine metric transformers. [#3770](https://github.com/open-telemetry/opentelemetry-js/pull/3770/) @llc1123 +* feat(api-logs): add `ObservedTimestamp` to `LogRecord`. [#3787](https://github.com/open-telemetry/opentelemetry-js/pull/3787/) @llc1123 ### :bug: (Bug Fix) diff --git a/experimental/packages/api-logs/src/types/LogRecord.ts b/experimental/packages/api-logs/src/types/LogRecord.ts index a2c7d25ad..e1c1100c5 100644 --- a/experimental/packages/api-logs/src/types/LogRecord.ts +++ b/experimental/packages/api-logs/src/types/LogRecord.ts @@ -50,6 +50,11 @@ export interface LogRecord { */ timestamp?: number; + /** + * Time when the event was observed by the collection system. + */ + observedTimestamp?: number; + /** * Numerical value of the severity. */ diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts b/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts index b57b2682b..1dfd82675 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts +++ b/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts @@ -45,6 +45,7 @@ export const mockedReadableLogRecord: ReadableLogRecord = { schemaUrl: 'http://url.to.schema', }, hrTime: [1680253513, 123241635] as HrTime, + hrTimeObserved: [1683526948, 965142784] as HrTime, attributes: { 'some-attribute': 'some attribute value', }, @@ -92,7 +93,7 @@ export function ensureExportedLogRecordIsCorrect(logRecord: ILogRecord) { ); assert.strictEqual( logRecord.observedTimeUnixNano, - '1680253513123241728', + '1683526948965142784', 'observedTimeUnixNano is wrong' ); assert.strictEqual( diff --git a/experimental/packages/otlp-transformer/src/logs/index.ts b/experimental/packages/otlp-transformer/src/logs/index.ts index 4fd114fa6..6fa4d11e8 100644 --- a/experimental/packages/otlp-transformer/src/logs/index.ts +++ b/experimental/packages/otlp-transformer/src/logs/index.ts @@ -93,7 +93,7 @@ function logRecordsToResourceLogs( function toLogRecord(log: ReadableLogRecord, useHex?: boolean): ILogRecord { return { timeUnixNano: hrTimeToNanoseconds(log.hrTime), - observedTimeUnixNano: hrTimeToNanoseconds(log.hrTime), + observedTimeUnixNano: hrTimeToNanoseconds(log.hrTimeObserved), severityNumber: toSeverityNumber(log.severityNumber), severityText: log.severityText, body: toAnyValue(log.body), diff --git a/experimental/packages/otlp-transformer/test/logs.test.ts b/experimental/packages/otlp-transformer/test/logs.test.ts index c184134ce..ef0a4cf9d 100644 --- a/experimental/packages/otlp-transformer/test/logs.test.ts +++ b/experimental/packages/otlp-transformer/test/logs.test.ts @@ -52,7 +52,7 @@ function createExpectedLogJson(useHex: boolean): IExportLogsServiceRequest { // eslint-disable-next-line @typescript-eslint/no-loss-of-precision timeUnixNano: 1680253513123241635, // eslint-disable-next-line @typescript-eslint/no-loss-of-precision - observedTimeUnixNano: 1680253513123241635, + observedTimeUnixNano: 1683526948965142784, severityNumber: ESeverityNumber.SEVERITY_NUMBER_ERROR, severityText: 'error', body: { stringValue: 'some_log_body' }, @@ -105,6 +105,7 @@ describe('Logs', () => { }; const log_fragment_1 = { hrTime: [1680253513, 123241635] as HrTime, + hrTimeObserved: [1683526948, 965142784] as HrTime, attributes: { 'some-attribute': 'some attribute value', }, @@ -119,6 +120,7 @@ describe('Logs', () => { }; const log_fragment_2 = { hrTime: [1680253797, 687038506] as HrTime, + hrTimeObserved: [1680253797, 687038506] as HrTime, attributes: { 'another-attribute': 'another attribute value', }, diff --git a/experimental/packages/sdk-logs/src/LogRecord.ts b/experimental/packages/sdk-logs/src/LogRecord.ts index a4601af6f..9d3e909fe 100644 --- a/experimental/packages/sdk-logs/src/LogRecord.ts +++ b/experimental/packages/sdk-logs/src/LogRecord.ts @@ -30,6 +30,7 @@ import { Logger } from './Logger'; export class LogRecord implements ReadableLogRecord { readonly hrTime: api.HrTime; + readonly hrTimeObserved: api.HrTime; readonly spanContext?: api.SpanContext; readonly resource: IResource; readonly instrumentationScope: InstrumentationScope; @@ -73,7 +74,8 @@ export class LogRecord implements ReadableLogRecord { constructor(logger: Logger, logRecord: logsAPI.LogRecord) { const { - timestamp = Date.now(), + timestamp, + observedTimestamp, severityNumber, severityText, body, @@ -81,7 +83,10 @@ export class LogRecord implements ReadableLogRecord { context, } = logRecord; - this.hrTime = timeInputToHrTime(timestamp); + const now = Date.now(); + this.hrTime = timeInputToHrTime(timestamp ?? now); + this.hrTimeObserved = timeInputToHrTime(observedTimestamp ?? now); + if (context) { const spanContext = api.trace.getSpanContext(context); if (spanContext && api.isSpanContextValid(spanContext)) { diff --git a/experimental/packages/sdk-logs/src/export/ReadableLogRecord.ts b/experimental/packages/sdk-logs/src/export/ReadableLogRecord.ts index e02d53dae..72fe7d1d3 100644 --- a/experimental/packages/sdk-logs/src/export/ReadableLogRecord.ts +++ b/experimental/packages/sdk-logs/src/export/ReadableLogRecord.ts @@ -21,6 +21,7 @@ import type { SeverityNumber } from '@opentelemetry/api-logs'; export interface ReadableLogRecord { readonly hrTime: HrTime; + readonly hrTimeObserved: HrTime; readonly spanContext?: SpanContext; readonly severityText?: string; readonly severityNumber?: SeverityNumber; From 0471c54a4ca2119c77c04c860de1705f137d2815 Mon Sep 17 00:00:00 2001 From: fuaiyi Date: Mon, 22 May 2023 16:48:37 +0800 Subject: [PATCH 49/72] =?UTF-8?q?fix(exporter-logs-otlp-grpc):=20change=20?= =?UTF-8?q?OTLPLogsExporter=20to=20OTLPLogExpo=E2=80=A6=20(#3819)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- experimental/CHANGELOG.md | 2 ++ .../exporter-logs-otlp-grpc/README.md | 6 ++-- ...OTLPLogsExporter.ts => OTLPLogExporter.ts} | 2 +- .../exporter-logs-otlp-grpc/src/index.ts | 2 +- ...porter.test.ts => OTLPLogExporter.test.ts} | 36 +++++++++---------- 5 files changed, 25 insertions(+), 23 deletions(-) rename experimental/packages/exporter-logs-otlp-grpc/src/{OTLPLogsExporter.ts => OTLPLogExporter.ts} (98%) rename experimental/packages/exporter-logs-otlp-grpc/test/{OTLPLogsExporter.test.ts => OTLPLogExporter.test.ts} (92%) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 86f868f6f..1a5a6595c 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -6,6 +6,8 @@ All notable changes to experimental packages in this project will be documented ### :boom: Breaking Change +* fix(exporter-logs-otlp-grpc): change OTLPLogsExporter to OTLPLogExporter [#3819](https://github.com/open-telemetry/opentelemetry-js/pull/3819) @fuaiyi + ### :rocket: (Enhancement) * feat(instrumentation): add ESM support for instrumentation. [#3698](https://github.com/open-telemetry/opentelemetry-js/pull/3698) @JamieDanielson, @pkanal, @vmarchaud, @lizthegrey, @bengl diff --git a/experimental/packages/exporter-logs-otlp-grpc/README.md b/experimental/packages/exporter-logs-otlp-grpc/README.md index dee62b496..17c957339 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/README.md +++ b/experimental/packages/exporter-logs-otlp-grpc/README.md @@ -22,7 +22,7 @@ To see documentation and sample code for the metric exporter, see the [exporter- ## Logs in Node - GRPC -The OTLPLogsExporter in Node expects the URL to only be the hostname. It will not work with `/v1/logs`. All +The OTLPLogExporter in Node expects the URL to only be the hostname. It will not work with `/v1/logs`. All options that work with trace also work with logs. ```js @@ -30,14 +30,14 @@ import { LoggerProvider, BatchLogRecordProcessor, } from '@opentelemetry/sdk-logs'; -import { OTLPLogsExporter } from '@opentelemetry/exporter-logs-otlp-grpc'; +import { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-grpc'; const collectorOptions = { // url is optional and can be omitted - default is http://localhost:4317 url: 'http://:', }; -const loggerExporter = new OTLPLogsExporter(collectorOptions); +const loggerExporter = new OTLPLogExporter(collectorOptions); const loggerProvider = new LoggerProvider(); loggerProvider.addLogRecordProcessor( diff --git a/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogsExporter.ts b/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogExporter.ts similarity index 98% rename from experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogsExporter.ts rename to experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogExporter.ts index e4484fdb3..675ce83db 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogsExporter.ts +++ b/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogExporter.ts @@ -32,7 +32,7 @@ import { /** * OTLP Logs Exporter for Node */ -export class OTLPLogsExporter +export class OTLPLogExporter extends OTLPGRPCExporterNodeBase implements LogRecordExporter { diff --git a/experimental/packages/exporter-logs-otlp-grpc/src/index.ts b/experimental/packages/exporter-logs-otlp-grpc/src/index.ts index b35d852d9..b071c78ef 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/src/index.ts +++ b/experimental/packages/exporter-logs-otlp-grpc/src/index.ts @@ -14,4 +14,4 @@ * limitations under the License. */ -export * from './OTLPLogsExporter'; +export * from './OTLPLogExporter'; diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogsExporter.test.ts b/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts similarity index 92% rename from experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogsExporter.test.ts rename to experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts index d413b8902..c229d5e5d 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogsExporter.test.ts +++ b/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts @@ -22,7 +22,7 @@ import * as fs from 'fs'; import * as grpc from '@grpc/grpc-js'; import * as path from 'path'; import * as sinon from 'sinon'; -import { OTLPLogsExporter } from '../src'; +import { OTLPLogExporter } from '../src'; import { ensureExportedLogRecordIsCorrect, @@ -55,10 +55,10 @@ const metadata = new grpc.Metadata(); metadata.set('k', 'v'); const testCollectorExporter = (params: TestParams) => - describe(`OTLPLogsExporter - node ${ - params.useTLS ? 'with' : 'without' - } TLS, ${params.metadata ? 'with' : 'without'} metadata`, () => { - let collectorExporter: OTLPLogsExporter; + describe(`OTLPLogExporter - node ${params.useTLS ? 'with' : 'without'} TLS, ${ + params.metadata ? 'with' : 'without' + } metadata`, () => { + let collectorExporter: OTLPLogExporter; let server: grpc.Server; let exportedData: IResourceLogs | undefined; let reqMetadata: grpc.Metadata | undefined; @@ -122,7 +122,7 @@ const testCollectorExporter = (params: TestParams) => fs.readFileSync('./test/certs/client.crt') ) : grpc.credentials.createInsecure(); - collectorExporter = new OTLPLogsExporter({ + collectorExporter = new OTLPLogExporter({ url: 'https://' + address, credentials, metadata: params.metadata, @@ -140,7 +140,7 @@ const testCollectorExporter = (params: TestParams) => it('should warn about headers when using grpc', () => { // Need to stub/spy on the underlying logger as the 'diag' instance is global const spyLoggerWarn = sinon.stub(diag, 'warn'); - collectorExporter = new OTLPLogsExporter({ + collectorExporter = new OTLPLogExporter({ url: `http://${address}`, headers: { foo: 'bar', @@ -151,7 +151,7 @@ const testCollectorExporter = (params: TestParams) => }); it('should warn about path in url', () => { const spyLoggerWarn = sinon.stub(diag, 'warn'); - collectorExporter = new OTLPLogsExporter({ + collectorExporter = new OTLPLogExporter({ url: `http://${address}/v1/logs`, }); const args = spyLoggerWarn.args[0]; @@ -198,7 +198,7 @@ const testCollectorExporter = (params: TestParams) => ) : grpc.credentials.createInsecure(); - const collectorExporterWithTimeout = new OTLPLogsExporter({ + const collectorExporterWithTimeout = new OTLPLogExporter({ url: 'grpcs://' + address, credentials, metadata: params.metadata, @@ -229,7 +229,7 @@ const testCollectorExporter = (params: TestParams) => fs.readFileSync('./test/certs/client.crt') ) : grpc.credentials.createInsecure(); - collectorExporter = new OTLPLogsExporter({ + collectorExporter = new OTLPLogExporter({ url: 'https://' + address, credentials, metadata: params.metadata, @@ -272,7 +272,7 @@ const testCollectorExporter = (params: TestParams) => : grpc.credentials.createInsecure(); envSource.OTEL_EXPORTER_OTLP_COMPRESSION = 'gzip'; - collectorExporter = new OTLPLogsExporter({ + collectorExporter = new OTLPLogExporter({ url: 'https://' + address, credentials, metadata: params.metadata, @@ -286,9 +286,9 @@ const testCollectorExporter = (params: TestParams) => }); }); -describe('OTLPLogsExporter - node (getDefaultUrl)', () => { +describe('OTLPLogExporter - node (getDefaultUrl)', () => { it('should default to localhost', done => { - const collectorExporter = new OTLPLogsExporter({}); + const collectorExporter = new OTLPLogExporter({}); setTimeout(() => { assert.strictEqual(collectorExporter['url'], 'localhost:4317'); done(); @@ -296,7 +296,7 @@ describe('OTLPLogsExporter - node (getDefaultUrl)', () => { }); it('should keep the URL if included', done => { const url = 'http://foo.bar.com'; - const collectorExporter = new OTLPLogsExporter({ url }); + const collectorExporter = new OTLPLogExporter({ url }); setTimeout(() => { assert.strictEqual(collectorExporter['url'], 'foo.bar.com'); done(); @@ -308,21 +308,21 @@ describe('when configuring via environment', () => { const envSource = process.env; it('should use url defined in env', () => { envSource.OTEL_EXPORTER_OTLP_ENDPOINT = 'http://foo.bar'; - const collectorExporter = new OTLPLogsExporter(); + const collectorExporter = new OTLPLogExporter(); assert.strictEqual(collectorExporter.url, 'foo.bar'); envSource.OTEL_EXPORTER_OTLP_ENDPOINT = ''; }); it('should override global exporter url with signal url defined in env', () => { envSource.OTEL_EXPORTER_OTLP_ENDPOINT = 'http://foo.bar'; envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = 'http://foo.logs'; - const collectorExporter = new OTLPLogsExporter(); + const collectorExporter = new OTLPLogExporter(); assert.strictEqual(collectorExporter.url, 'foo.logs'); envSource.OTEL_EXPORTER_OTLP_ENDPOINT = ''; envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = ''; }); it('should use headers defined via env', () => { envSource.OTEL_EXPORTER_OTLP_HEADERS = 'foo=bar'; - const collectorExporter = new OTLPLogsExporter(); + const collectorExporter = new OTLPLogExporter(); assert.deepStrictEqual(collectorExporter.metadata?.get('foo'), ['bar']); envSource.OTEL_EXPORTER_OTLP_HEADERS = ''; }); @@ -332,7 +332,7 @@ describe('when configuring via environment', () => { metadata.set('goo', 'lol'); envSource.OTEL_EXPORTER_OTLP_HEADERS = 'foo=jar,bar=foo'; envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS = 'foo=boo'; - const collectorExporter = new OTLPLogsExporter({ metadata }); + const collectorExporter = new OTLPLogExporter({ metadata }); assert.deepStrictEqual(collectorExporter.metadata?.get('foo'), ['boo']); assert.deepStrictEqual(collectorExporter.metadata?.get('bar'), ['foo']); assert.deepStrictEqual(collectorExporter.metadata?.get('goo'), ['lol']); From fbccf1d5085a5928f553cd5b6204b34ba6f1bb52 Mon Sep 17 00:00:00 2001 From: opentelemetrybot <107717825+opentelemetrybot@users.noreply.github.com> Date: Mon, 22 May 2023 16:08:52 +0000 Subject: [PATCH 50/72] [AutoMerge] Identifying and fixing merge issues from staged repos Processing otel-js - (xM) /auto-merge/js/examples/esm-http-ts/README.md - Re-Copying master file - (xM) /auto-merge/js/examples/esm-http-ts/index.ts - Re-Copying master file - (xM) /auto-merge/js/examples/esm-http-ts/package.json - Re-Copying master file - (xM) /auto-merge/js/examples/esm-http-ts/tsconfig.json - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/.eslintignore - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/.eslintrc.js - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/.npmignore - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/LICENSE - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/README.md - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/package.json - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogExporter.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/src/index.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key - Re-Copying master file ...truncated... - (*F) /examples - Removing extra folder examples Processing otel-js-contrib --- .../.eslintignore | 0 .../.eslintrc.js | 0 .../opentelemetry-sampler-aws-xray/LICENSE | 0 .../opentelemetry-sampler-aws-xray/README.md | 0 .../package.json | 0 .../src/index.ts | 0 .../src/remote-sampler.ts | 0 .../src/types.ts | 0 .../test/remote-sampler.test.ts | 0 .../tsconfig.esm.json | 0 .../tsconfig.json | 0 .../contrib/prettier.config.js | 0 .../js/examples}/esm-http-ts/README.md | 0 .../js/examples}/esm-http-ts/index.ts | 0 .../js/examples}/esm-http-ts/package.json | 0 .../js/examples}/esm-http-ts/tsconfig.json | 0 .../exporter-logs-otlp-grpc/.eslintignore | 0 .../exporter-logs-otlp-grpc/.eslintrc.js | 0 .../exporter-logs-otlp-grpc/.npmignore | 0 .../packages/exporter-logs-otlp-grpc/LICENSE | 0 .../exporter-logs-otlp-grpc/README.md | 0 .../exporter-logs-otlp-grpc/package.json | 0 .../src/OTLPLogExporter.ts | 0 .../exporter-logs-otlp-grpc/src/index.ts | 0 .../test/OTLPLogExporter.test.ts | 0 .../exporter-logs-otlp-grpc/test/certs/ca.crt | 0 .../exporter-logs-otlp-grpc/test/certs/ca.key | 0 .../test/certs/client.crt | 0 .../test/certs/client.csr | 0 .../test/certs/client.key | 0 .../test/certs/regenerate.sh | 0 .../test/certs/server.crt | 0 .../test/certs/server.csr | 0 .../test/certs/server.key | 0 .../test/logsHelper.ts | 0 .../exporter-logs-otlp-grpc/tsconfig.json | 0 .../platform/node/require-in-the-middle.d.ts | 22 ------- .../scripts/protos.js | 64 ------------------- .../otlp-transformer/src/logs/index.ts | 0 .../otlp-transformer/src/logs/types.ts | 0 .../packages/shim-opencensus/.eslintignore | 0 .../packages/shim-opencensus/.eslintrc.js | 0 .../packages/shim-opencensus/.npmignore | 0 .../packages/shim-opencensus/LICENSE | 0 .../packages/shim-opencensus/README.md | 0 .../packages/shim-opencensus/package.json | 0 .../packages/shim-opencensus/src/ShimSpan.ts | 0 .../shim-opencensus/src/ShimTracer.ts | 0 .../packages/shim-opencensus/src/index.ts | 0 .../shim-opencensus/src/propagation.ts | 0 .../packages/shim-opencensus/src/transform.ts | 0 .../shim-opencensus/test/ShimSpan.test.ts | 0 .../shim-opencensus/test/ShimTracer.test.ts | 0 .../test/otel-sandwich.test.ts | 0 .../shim-opencensus/test/propagation.test.ts | 0 .../shim-opencensus/test/transform.test.ts | 0 .../packages/shim-opencensus/test/util.ts | 0 .../packages/shim-opencensus/tsconfig.json | 0 58 files changed, 86 deletions(-) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/.eslintignore (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/.eslintrc.js (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/LICENSE (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/README.md (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/package.json (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/src/index.ts (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/src/remote-sampler.ts (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/src/types.ts (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/test/remote-sampler.test.ts (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/tsconfig.esm.json (100%) rename {packages => auto-merge/contrib/packages}/opentelemetry-sampler-aws-xray/tsconfig.json (100%) rename prettier.config.js => auto-merge/contrib/prettier.config.js (100%) rename {examples => auto-merge/js/examples}/esm-http-ts/README.md (100%) rename {examples => auto-merge/js/examples}/esm-http-ts/index.ts (100%) rename {examples => auto-merge/js/examples}/esm-http-ts/package.json (100%) rename {examples => auto-merge/js/examples}/esm-http-ts/tsconfig.json (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/.eslintignore (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/.eslintrc.js (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/.npmignore (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/LICENSE (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/README.md (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/package.json (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/src/OTLPLogExporter.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/src/index.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/certs/ca.crt (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/certs/ca.key (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/certs/client.crt (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/certs/client.csr (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/certs/client.key (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/certs/server.crt (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/certs/server.csr (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/certs/server.key (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/test/logsHelper.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-grpc/tsconfig.json (100%) delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/require-in-the-middle.d.ts delete mode 100644 auto-merge/js/experimental/packages/otlp-proto-exporter-base/scripts/protos.js rename {experimental => auto-merge/js/experimental}/packages/otlp-transformer/src/logs/index.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/otlp-transformer/src/logs/types.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/.eslintignore (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/.eslintrc.js (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/.npmignore (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/LICENSE (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/README.md (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/package.json (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/src/ShimSpan.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/src/ShimTracer.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/src/index.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/src/propagation.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/src/transform.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/test/ShimSpan.test.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/test/ShimTracer.test.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/test/otel-sandwich.test.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/test/propagation.test.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/test/transform.test.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/test/util.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/shim-opencensus/tsconfig.json (100%) diff --git a/packages/opentelemetry-sampler-aws-xray/.eslintignore b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/.eslintignore similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/.eslintignore rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/.eslintignore diff --git a/packages/opentelemetry-sampler-aws-xray/.eslintrc.js b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/.eslintrc.js similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/.eslintrc.js rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/.eslintrc.js diff --git a/packages/opentelemetry-sampler-aws-xray/LICENSE b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/LICENSE similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/LICENSE rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/LICENSE diff --git a/packages/opentelemetry-sampler-aws-xray/README.md b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/README.md similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/README.md rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/README.md diff --git a/packages/opentelemetry-sampler-aws-xray/package.json b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/package.json similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/package.json rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/package.json diff --git a/packages/opentelemetry-sampler-aws-xray/src/index.ts b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/src/index.ts similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/src/index.ts rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/src/index.ts diff --git a/packages/opentelemetry-sampler-aws-xray/src/remote-sampler.ts b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/src/remote-sampler.ts similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/src/remote-sampler.ts rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/src/remote-sampler.ts diff --git a/packages/opentelemetry-sampler-aws-xray/src/types.ts b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/src/types.ts similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/src/types.ts rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/src/types.ts diff --git a/packages/opentelemetry-sampler-aws-xray/test/remote-sampler.test.ts b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/test/remote-sampler.test.ts similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/test/remote-sampler.test.ts rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/test/remote-sampler.test.ts diff --git a/packages/opentelemetry-sampler-aws-xray/tsconfig.esm.json b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/tsconfig.esm.json similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/tsconfig.esm.json rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/tsconfig.esm.json diff --git a/packages/opentelemetry-sampler-aws-xray/tsconfig.json b/auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/tsconfig.json similarity index 100% rename from packages/opentelemetry-sampler-aws-xray/tsconfig.json rename to auto-merge/contrib/packages/opentelemetry-sampler-aws-xray/tsconfig.json diff --git a/prettier.config.js b/auto-merge/contrib/prettier.config.js similarity index 100% rename from prettier.config.js rename to auto-merge/contrib/prettier.config.js diff --git a/examples/esm-http-ts/README.md b/auto-merge/js/examples/esm-http-ts/README.md similarity index 100% rename from examples/esm-http-ts/README.md rename to auto-merge/js/examples/esm-http-ts/README.md diff --git a/examples/esm-http-ts/index.ts b/auto-merge/js/examples/esm-http-ts/index.ts similarity index 100% rename from examples/esm-http-ts/index.ts rename to auto-merge/js/examples/esm-http-ts/index.ts diff --git a/examples/esm-http-ts/package.json b/auto-merge/js/examples/esm-http-ts/package.json similarity index 100% rename from examples/esm-http-ts/package.json rename to auto-merge/js/examples/esm-http-ts/package.json diff --git a/examples/esm-http-ts/tsconfig.json b/auto-merge/js/examples/esm-http-ts/tsconfig.json similarity index 100% rename from examples/esm-http-ts/tsconfig.json rename to auto-merge/js/examples/esm-http-ts/tsconfig.json diff --git a/experimental/packages/exporter-logs-otlp-grpc/.eslintignore b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/.eslintignore similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/.eslintignore rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/.eslintignore diff --git a/experimental/packages/exporter-logs-otlp-grpc/.eslintrc.js b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/.eslintrc.js similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/.eslintrc.js rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/.eslintrc.js diff --git a/experimental/packages/exporter-logs-otlp-grpc/.npmignore b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/.npmignore similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/.npmignore rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/.npmignore diff --git a/experimental/packages/exporter-logs-otlp-grpc/LICENSE b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/LICENSE similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/LICENSE rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/LICENSE diff --git a/experimental/packages/exporter-logs-otlp-grpc/README.md b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/README.md similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/README.md rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/README.md diff --git a/experimental/packages/exporter-logs-otlp-grpc/package.json b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/package.json similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/package.json rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/package.json diff --git a/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogExporter.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogExporter.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogExporter.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/src/OTLPLogExporter.ts diff --git a/experimental/packages/exporter-logs-otlp-grpc/src/index.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/src/index.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/src/index.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/src/index.ts diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.crt diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/ca.key diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.crt diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.csr diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/client.key diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/regenerate.sh diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.crt diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.csr diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/certs/server.key diff --git a/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/test/logsHelper.ts diff --git a/experimental/packages/exporter-logs-otlp-grpc/tsconfig.json b/auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/tsconfig.json similarity index 100% rename from experimental/packages/exporter-logs-otlp-grpc/tsconfig.json rename to auto-merge/js/experimental/packages/exporter-logs-otlp-grpc/tsconfig.json diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/require-in-the-middle.d.ts b/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/require-in-the-middle.d.ts deleted file mode 100644 index 8d108a0a2..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/require-in-the-middle.d.ts +++ /dev/null @@ -1,22 +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 protobuf from 'protobufjs'; - -export interface ExportType unknown }> { - encode(message: T, writer?: protobuf.Writer): protobuf.Writer; - decode(reader: protobuf.Reader | Uint8Array, length?: number): R; -} diff --git a/auto-merge/js/experimental/packages/otlp-proto-exporter-base/scripts/protos.js b/auto-merge/js/experimental/packages/otlp-proto-exporter-base/scripts/protos.js deleted file mode 100644 index 972969f80..000000000 --- a/auto-merge/js/experimental/packages/otlp-proto-exporter-base/scripts/protos.js +++ /dev/null @@ -1,64 +0,0 @@ -'use strict'; - -const cp = require('child_process'); -const path = require('path'); - -const appRoot = process.cwd(); - -const generatedPath = path.resolve(appRoot, './src/generated'); -const protosPath = path.resolve(appRoot, './protos'); -const protos = [ - 'opentelemetry/proto/common/v1/common.proto', - 'opentelemetry/proto/resource/v1/resource.proto', - 'opentelemetry/proto/trace/v1/trace.proto', - 'opentelemetry/proto/collector/trace/v1/trace_service.proto', - 'opentelemetry/proto/metrics/v1/metrics.proto', - 'opentelemetry/proto/collector/metrics/v1/metrics_service.proto', - 'opentelemetry/proto/logs/v1/logs.proto', - 'opentelemetry/proto/collector/logs/v1/logs_service.proto', -].map(it => { - return path.join(protosPath, it); -}); - -function exec(command, argv) { - return new Promise((resolve, reject) => { - const child = cp.spawn(command, argv, { - shell: true, - stdio: ['ignore', 'inherit', 'inherit'], - }); - child.on('exit', (code, signal) => { - if (code !== 0) { - reject(new Error(`${command} exited with non-zero code(${code}, ${signal})`)); - return; - } - resolve(); - }); - }); -} - -function pbts(pbjsOutFile) { - const pbtsPath = path.resolve(appRoot, './node_modules/.bin/pbts'); - const pbtsOptions = [ - '-o', path.join(generatedPath, 'root.d.ts'), - ]; - return exec(pbtsPath, [...pbtsOptions, pbjsOutFile]); -} - -async function pbjs(files) { - const pbjsPath = path.resolve(appRoot, './node_modules/.bin/pbjs'); - const outFile = path.join(generatedPath, 'root.js'); - const pbjsOptions = [ - '-t', 'static-module', - '-p', protosPath, - '-w', 'commonjs', - '--null-defaults', - '-o', outFile, - ]; - await exec(pbjsPath, [...pbjsOptions, ...files]); - return outFile; -} - -(async function main() { - const pbjsOut = await pbjs(protos); - await pbts(pbjsOut); -})(); diff --git a/experimental/packages/otlp-transformer/src/logs/index.ts b/auto-merge/js/experimental/packages/otlp-transformer/src/logs/index.ts similarity index 100% rename from experimental/packages/otlp-transformer/src/logs/index.ts rename to auto-merge/js/experimental/packages/otlp-transformer/src/logs/index.ts diff --git a/experimental/packages/otlp-transformer/src/logs/types.ts b/auto-merge/js/experimental/packages/otlp-transformer/src/logs/types.ts similarity index 100% rename from experimental/packages/otlp-transformer/src/logs/types.ts rename to auto-merge/js/experimental/packages/otlp-transformer/src/logs/types.ts diff --git a/experimental/packages/shim-opencensus/.eslintignore b/auto-merge/js/experimental/packages/shim-opencensus/.eslintignore similarity index 100% rename from experimental/packages/shim-opencensus/.eslintignore rename to auto-merge/js/experimental/packages/shim-opencensus/.eslintignore diff --git a/experimental/packages/shim-opencensus/.eslintrc.js b/auto-merge/js/experimental/packages/shim-opencensus/.eslintrc.js similarity index 100% rename from experimental/packages/shim-opencensus/.eslintrc.js rename to auto-merge/js/experimental/packages/shim-opencensus/.eslintrc.js diff --git a/experimental/packages/shim-opencensus/.npmignore b/auto-merge/js/experimental/packages/shim-opencensus/.npmignore similarity index 100% rename from experimental/packages/shim-opencensus/.npmignore rename to auto-merge/js/experimental/packages/shim-opencensus/.npmignore diff --git a/experimental/packages/shim-opencensus/LICENSE b/auto-merge/js/experimental/packages/shim-opencensus/LICENSE similarity index 100% rename from experimental/packages/shim-opencensus/LICENSE rename to auto-merge/js/experimental/packages/shim-opencensus/LICENSE diff --git a/experimental/packages/shim-opencensus/README.md b/auto-merge/js/experimental/packages/shim-opencensus/README.md similarity index 100% rename from experimental/packages/shim-opencensus/README.md rename to auto-merge/js/experimental/packages/shim-opencensus/README.md diff --git a/experimental/packages/shim-opencensus/package.json b/auto-merge/js/experimental/packages/shim-opencensus/package.json similarity index 100% rename from experimental/packages/shim-opencensus/package.json rename to auto-merge/js/experimental/packages/shim-opencensus/package.json diff --git a/experimental/packages/shim-opencensus/src/ShimSpan.ts b/auto-merge/js/experimental/packages/shim-opencensus/src/ShimSpan.ts similarity index 100% rename from experimental/packages/shim-opencensus/src/ShimSpan.ts rename to auto-merge/js/experimental/packages/shim-opencensus/src/ShimSpan.ts diff --git a/experimental/packages/shim-opencensus/src/ShimTracer.ts b/auto-merge/js/experimental/packages/shim-opencensus/src/ShimTracer.ts similarity index 100% rename from experimental/packages/shim-opencensus/src/ShimTracer.ts rename to auto-merge/js/experimental/packages/shim-opencensus/src/ShimTracer.ts diff --git a/experimental/packages/shim-opencensus/src/index.ts b/auto-merge/js/experimental/packages/shim-opencensus/src/index.ts similarity index 100% rename from experimental/packages/shim-opencensus/src/index.ts rename to auto-merge/js/experimental/packages/shim-opencensus/src/index.ts diff --git a/experimental/packages/shim-opencensus/src/propagation.ts b/auto-merge/js/experimental/packages/shim-opencensus/src/propagation.ts similarity index 100% rename from experimental/packages/shim-opencensus/src/propagation.ts rename to auto-merge/js/experimental/packages/shim-opencensus/src/propagation.ts diff --git a/experimental/packages/shim-opencensus/src/transform.ts b/auto-merge/js/experimental/packages/shim-opencensus/src/transform.ts similarity index 100% rename from experimental/packages/shim-opencensus/src/transform.ts rename to auto-merge/js/experimental/packages/shim-opencensus/src/transform.ts diff --git a/experimental/packages/shim-opencensus/test/ShimSpan.test.ts b/auto-merge/js/experimental/packages/shim-opencensus/test/ShimSpan.test.ts similarity index 100% rename from experimental/packages/shim-opencensus/test/ShimSpan.test.ts rename to auto-merge/js/experimental/packages/shim-opencensus/test/ShimSpan.test.ts diff --git a/experimental/packages/shim-opencensus/test/ShimTracer.test.ts b/auto-merge/js/experimental/packages/shim-opencensus/test/ShimTracer.test.ts similarity index 100% rename from experimental/packages/shim-opencensus/test/ShimTracer.test.ts rename to auto-merge/js/experimental/packages/shim-opencensus/test/ShimTracer.test.ts diff --git a/experimental/packages/shim-opencensus/test/otel-sandwich.test.ts b/auto-merge/js/experimental/packages/shim-opencensus/test/otel-sandwich.test.ts similarity index 100% rename from experimental/packages/shim-opencensus/test/otel-sandwich.test.ts rename to auto-merge/js/experimental/packages/shim-opencensus/test/otel-sandwich.test.ts diff --git a/experimental/packages/shim-opencensus/test/propagation.test.ts b/auto-merge/js/experimental/packages/shim-opencensus/test/propagation.test.ts similarity index 100% rename from experimental/packages/shim-opencensus/test/propagation.test.ts rename to auto-merge/js/experimental/packages/shim-opencensus/test/propagation.test.ts diff --git a/experimental/packages/shim-opencensus/test/transform.test.ts b/auto-merge/js/experimental/packages/shim-opencensus/test/transform.test.ts similarity index 100% rename from experimental/packages/shim-opencensus/test/transform.test.ts rename to auto-merge/js/experimental/packages/shim-opencensus/test/transform.test.ts diff --git a/experimental/packages/shim-opencensus/test/util.ts b/auto-merge/js/experimental/packages/shim-opencensus/test/util.ts similarity index 100% rename from experimental/packages/shim-opencensus/test/util.ts rename to auto-merge/js/experimental/packages/shim-opencensus/test/util.ts diff --git a/experimental/packages/shim-opencensus/tsconfig.json b/auto-merge/js/experimental/packages/shim-opencensus/tsconfig.json similarity index 100% rename from experimental/packages/shim-opencensus/tsconfig.json rename to auto-merge/js/experimental/packages/shim-opencensus/tsconfig.json From 58dbbb4b893a43912e696dc32164ea53f59e58eb Mon Sep 17 00:00:00 2001 From: Hector Hernandez <39923391+hectorhdzg@users.noreply.github.com> Date: Tue, 23 May 2023 02:42:16 -0700 Subject: [PATCH 51/72] [sdk-logs] remove includeTraceContext configuration and use LogRecord context when available (#3817) Co-authored-by: Daniel Dyla --- experimental/CHANGELOG.md | 1 + experimental/packages/sdk-logs/src/Logger.ts | 4 +-- .../packages/sdk-logs/src/LoggerProvider.ts | 1 - experimental/packages/sdk-logs/src/index.ts | 1 + experimental/packages/sdk-logs/src/types.ts | 3 -- .../sdk-logs/test/common/Logger.test.ts | 36 +++++++++---------- 6 files changed, 21 insertions(+), 25 deletions(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 1a5a6595c..4ef6fff61 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -17,6 +17,7 @@ All notable changes to experimental packages in this project will be documented ### :bug: (Bug Fix) * 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) diff --git a/experimental/packages/sdk-logs/src/Logger.ts b/experimental/packages/sdk-logs/src/Logger.ts index 0e6cfbe2d..5ea4e8f28 100644 --- a/experimental/packages/sdk-logs/src/Logger.ts +++ b/experimental/packages/sdk-logs/src/Logger.ts @@ -39,9 +39,7 @@ export class Logger implements logsAPI.Logger { } public emit(logRecord: logsAPI.LogRecord): void { - const currentContext = this._loggerConfig.includeTraceContext - ? context.active() - : undefined; + const currentContext = logRecord.context || context.active(); /** * If a Logger was obtained with include_trace_context=true, * the LogRecords it emits MUST automatically include the Trace Context from the active Context, diff --git a/experimental/packages/sdk-logs/src/LoggerProvider.ts b/experimental/packages/sdk-logs/src/LoggerProvider.ts index a51438408..81515dab8 100644 --- a/experimental/packages/sdk-logs/src/LoggerProvider.ts +++ b/experimental/packages/sdk-logs/src/LoggerProvider.ts @@ -84,7 +84,6 @@ export class LoggerProvider implements logsAPI.LoggerProvider { { name: loggerName, version, schemaUrl: options?.schemaUrl }, { logRecordLimits: this._config.logRecordLimits, - includeTraceContext: options?.includeTraceContext, }, this ) diff --git a/experimental/packages/sdk-logs/src/index.ts b/experimental/packages/sdk-logs/src/index.ts index 60124da1f..e718ae069 100644 --- a/experimental/packages/sdk-logs/src/index.ts +++ b/experimental/packages/sdk-logs/src/index.ts @@ -16,6 +16,7 @@ export { LoggerConfig, + LoggerProviderConfig, LogRecordLimits, BufferConfig, BatchLogRecordProcessorBrowserConfig, diff --git a/experimental/packages/sdk-logs/src/types.ts b/experimental/packages/sdk-logs/src/types.ts index 5bdad2a1e..026843dc1 100644 --- a/experimental/packages/sdk-logs/src/types.ts +++ b/experimental/packages/sdk-logs/src/types.ts @@ -33,9 +33,6 @@ export interface LoggerProviderConfig { export interface LoggerConfig { /** Log Record Limits*/ logRecordLimits?: LogRecordLimits; - - /** include Trace Context */ - includeTraceContext?: boolean; } export interface LogRecordLimits { diff --git a/experimental/packages/sdk-logs/test/common/Logger.test.ts b/experimental/packages/sdk-logs/test/common/Logger.test.ts index 5df756c90..a5f690a4b 100644 --- a/experimental/packages/sdk-logs/test/common/Logger.test.ts +++ b/experimental/packages/sdk-logs/test/common/Logger.test.ts @@ -18,8 +18,8 @@ import * as assert from 'assert'; import * as sinon from 'sinon'; import { LogRecord, Logger, LoggerConfig, LoggerProvider } from '../../src'; -import { loadDefaultConfig } from '../../src/config'; -import { context } from '@opentelemetry/api'; +import { ROOT_CONTEXT, TraceFlags, context, trace } from '@opentelemetry/api'; +import { LogRecord as ApiLogRecord } from '@opentelemetry/api-logs'; const setup = (loggerConfig: LoggerConfig = {}) => { const logger = new Logger( @@ -40,14 +40,6 @@ describe('Logger', () => { const { logger } = setup(); assert.ok(logger instanceof Logger); }); - - it('should a default value with config.includeTraceContext', () => { - const { logger } = setup(); - assert.ok( - logger['_loggerConfig'].includeTraceContext === - loadDefaultConfig().includeTraceContext - ); - }); }); describe('emit', () => { @@ -69,8 +61,8 @@ describe('Logger', () => { assert.ok(makeOnlySpy.called); }); - it('should emit with current Context when includeTraceContext is true', () => { - const { logger } = setup({ includeTraceContext: true }); + it('should emit with current Context', () => { + const { logger } = setup({}); const callSpy = sinon.spy(logger.getActiveLogRecordProcessor(), 'onEmit'); logger.emit({ body: 'test log body', @@ -78,13 +70,21 @@ describe('Logger', () => { assert.ok(callSpy.calledWith(sinon.match.any, context.active())); }); - it('should emit with empty Context when includeTraceContext is false', () => { - const { logger } = setup({ includeTraceContext: false }); + it('should emit with Context specified in LogRecord', () => { + const { logger } = setup({}); + const spanContext = { + traceId: 'd4cda95b652f4a1592b449d5929fda1b', + spanId: '6e0c63257de34c92', + traceFlags: TraceFlags.SAMPLED, + }; + const activeContext = trace.setSpanContext(ROOT_CONTEXT, spanContext); + const logRecordData: ApiLogRecord = { + context: activeContext, + }; + const callSpy = sinon.spy(logger.getActiveLogRecordProcessor(), 'onEmit'); - logger.emit({ - body: 'test log body', - }); - assert.ok(callSpy.calledWith(sinon.match.any, undefined)); + logger.emit(logRecordData); + assert.ok(callSpy.calledWith(sinon.match.any, activeContext)); }); }); }); From 988e1f8ea5fbce055d8ef73e40827f750da935d6 Mon Sep 17 00:00:00 2001 From: Osher Vaknin <81672378+osherv@users.noreply.github.com> Date: Tue, 23 May 2023 13:54:34 +0300 Subject: [PATCH 52/72] feat(mongodb): collect mongodb4 metrics (#1170) * feat(mongodb): started working on mongodb connection pool instrumentations * feat(mongodb): started working on mongodb connection pool instrumentations * feat(mongodb): started working on mongodb connection pool instrumentations * feat(mongodb): started working on mongodb connection pool instrumentations * feat(mongodb): added connection metrics mongodb4 before tests * feat(mongodb): started working on tests * feat(mongodb): started working on tests * feat(mongodb): started working on tests * feat(mongodb): started working on tests * feat(mongodb): started working on tests * feat(mongodb): added mongodb4 metric tests * feat(mongodb): added mongodb4 metric tests * feat(mongodb): added mongodb4 metric tests * feat(mongodb): started working on mongodb3 metrics * feat(mongodb): removed <4 supprot * fix(mongo4): mongodb v4 instrumentation. fix idle/used counting * fix(mongo4): lint * fix(mongo4): use _updateMetricInstruments() as described in #3267 * fix(mongo4): lint * fix(mongo4): change deps * fix(mongo4): change deps 2 * fix(mongo4): revert deps * fix(mongo4): fixes * fix(mongo4): lint * fix(mongo4): lexport type * fix(mongo4): fixes * fix(mongo4): fixes * fix(mongo4): fixes: remote redundant from types, remove unneeded comments * fix(mongo4): add connection_string * fix(mongo4): add undefined instead of connection_string for for mongo v3 * Update plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts Co-authored-by: Marc Pichler * Update plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts Co-authored-by: Marc Pichler * fix(mongo4): move V4Connect and V4Session to internal-types * fix(mongo): lint * fix(mongo): align metric description with semconv * Update plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4.metrics.test.ts Co-authored-by: Marc Pichler * fix(mongo): fix sessions.length to work also for versions 4.1 - 4.11 * fix(mongo): try to fix TAV for node 16 & 18 that doesn't work for mongo 3.6.2 --------- Co-authored-by: haddasbronfman Co-authored-by: Haddas Bronfman <85441461+haddasbronfman@users.noreply.github.com> Co-authored-by: Marc Pichler --- .../examples/package.json | 2 +- .../package.json | 3 +- .../src/instrumentation.ts | 276 +++++++++++++++--- .../src/internal-types.ts | 18 ++ .../src/types.ts | 19 ++ .../test/mongodb-v3.test.ts | 57 +++- .../test/mongodb-v4.metrics.test.ts | 169 +++++++++++ .../test/mongodb-v4.test.ts | 65 ++++- .../test/utils.ts | 11 +- 9 files changed, 555 insertions(+), 65 deletions(-) create mode 100644 plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4.metrics.test.ts diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/examples/package.json b/plugins/node/opentelemetry-instrumentation-mongodb/examples/package.json index 58375fd96..57883bace 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/examples/package.json +++ b/plugins/node/opentelemetry-instrumentation-mongodb/examples/package.json @@ -38,7 +38,7 @@ "@opentelemetry/instrumentation-mongodb": "^0.32.0", "@opentelemetry/sdk-trace-node": "^1.0.0", "@opentelemetry/sdk-trace-base": "^1.0.0", - "mongodb": "^3.5.7" + "mongodb": "^3.7.3" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib#readme", "devDependencies": { diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/package.json b/plugins/node/opentelemetry-instrumentation-mongodb/package.json index 22947a115..2c5a13e5e 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/package.json +++ b/plugins/node/opentelemetry-instrumentation-mongodb/package.json @@ -8,7 +8,7 @@ "scripts": { "docker:start": "docker run -e MONGODB_DB=opentelemetry-tests -e MONGODB_PORT=27017 -e MONGODB_HOST=127.0.0.1 -p 27017:27017 --rm mongo", "test": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/**/mongodb-v3.test.ts'", - "test-new-versions": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/**mongodb-v4.test.ts'", + "test-new-versions": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/mongodb-v4**.test.ts'", "test-all-versions": "tav", "tdd": "npm run test -- --watch-extensions ts --watch", "clean": "rimraf build/*", @@ -68,6 +68,7 @@ "typescript": "4.4.4" }, "dependencies": { + "@opentelemetry/sdk-metrics": "^1.9.1", "@opentelemetry/instrumentation": "^0.39.1", "@opentelemetry/semantic-conventions": "^1.0.0" }, diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts index 8361de772..f1f66f8f4 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts +++ b/plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts @@ -36,23 +36,47 @@ import { import { MongoDBInstrumentationConfig, CommandResult } from './types'; import { CursorState, + ServerSession, MongodbCommandType, MongoInternalCommand, MongoInternalTopology, WireProtocolInternal, V4Connection, } from './internal-types'; +import { V4Connect, V4Session } from './internal-types'; import { VERSION } from './version'; +import { UpDownCounter } from '@opentelemetry/api'; /** mongodb instrumentation plugin for OpenTelemetry */ export class MongoDBInstrumentation extends InstrumentationBase { + private _connectionsUsage!: UpDownCounter; + private _poolName!: string; + constructor(protected override _config: MongoDBInstrumentationConfig = {}) { super('@opentelemetry/instrumentation-mongodb', VERSION, _config); } + override _updateMetricInstruments() { + this._connectionsUsage = this.meter.createUpDownCounter( + 'db.client.connections.usage', + { + description: + 'The number of connections that are currently in state described by the state attribute.', + unit: '{connection}', + } + ); + } + init() { - const { v3Patch, v3Unpatch } = this._getV3Patches(); - const { v4Patch, v4Unpatch } = this._getV4Patches(); + const { + v3PatchConnection: v3PatchConnection, + v3UnpatchConnection: v3UnpatchConnection, + } = this._getV3ConnectionPatches(); + + const { v4PatchConnect, v4UnpatchConnect } = this._getV4ConnectPatches(); + const { v4PatchConnection, v4UnpatchConnection } = + this._getV4ConnectionPatches(); + const { v4PatchSessions, v4UnpatchSessions } = this._getV4SessionsPatches(); return [ new InstrumentationNodeModuleDefinition( @@ -64,8 +88,8 @@ export class MongoDBInstrumentation extends InstrumentationBase { new InstrumentationNodeModuleFile( 'mongodb/lib/core/wireprotocol/index.js', ['>=3.3 <4'], - v3Patch, - v3Unpatch + v3PatchConnection, + v3UnpatchConnection ), ] ), @@ -78,17 +102,29 @@ export class MongoDBInstrumentation extends InstrumentationBase { new InstrumentationNodeModuleFile( 'mongodb/lib/cmap/connection.js', ['4.*'], - v4Patch, - v4Unpatch + v4PatchConnection, + v4UnpatchConnection + ), + new InstrumentationNodeModuleFile( + 'mongodb/lib/cmap/connect.js', + ['4.*'], + v4PatchConnect, + v4UnpatchConnect + ), + new InstrumentationNodeModuleFile( + 'mongodb/lib/sessions.js', + ['4.*'], + v4PatchSessions, + v4UnpatchSessions ), ] ), ]; } - private _getV3Patches() { + private _getV3ConnectionPatches() { return { - v3Patch: (moduleExports: T, moduleVersion?: string) => { + v3PatchConnection: (moduleExports: T, moduleVersion?: string) => { diag.debug(`Applying patch for mongodb@${moduleVersion}`); // patch insert operation if (isWrapped(moduleExports.insert)) { @@ -134,7 +170,7 @@ export class MongoDBInstrumentation extends InstrumentationBase { this._wrap(moduleExports, 'getMore', this._getV3PatchCursor()); return moduleExports; }, - v3Unpatch: (moduleExports?: T, moduleVersion?: string) => { + v3UnpatchConnection: (moduleExports?: T, moduleVersion?: string) => { if (moduleExports === undefined) return; diag.debug(`Removing internal patch for mongodb@${moduleVersion}`); this._unwrap(moduleExports, 'insert'); @@ -147,10 +183,137 @@ export class MongoDBInstrumentation extends InstrumentationBase { }; } + private _getV4SessionsPatches() { + return { + v4PatchSessions: (moduleExports: any, moduleVersion?: string) => { + diag.debug(`Applying patch for mongodb@${moduleVersion}`); + if (isWrapped(moduleExports.acquire)) { + this._unwrap(moduleExports, 'acquire'); + } + this._wrap( + moduleExports.ServerSessionPool.prototype, + 'acquire', + this._getV4AcquireCommand() + ); + + if (isWrapped(moduleExports.release)) { + this._unwrap(moduleExports, 'release'); + } + this._wrap( + moduleExports.ServerSessionPool.prototype, + 'release', + this._getV4ReleaseCommand() + ); + return moduleExports; + }, + v4UnpatchSessions: (moduleExports?: T, moduleVersion?: string) => { + diag.debug(`Removing internal patch for mongodb@${moduleVersion}`); + if (moduleExports === undefined) return; + if (isWrapped(moduleExports.acquire)) { + this._unwrap(moduleExports, 'acquire'); + } + if (isWrapped(moduleExports.release)) { + this._unwrap(moduleExports, 'release'); + } + }, + }; + } + + private _getV4AcquireCommand() { + const instrumentation = this; + return (original: V4Session['acquire']) => { + return function patchAcquire(this: any) { + const nSessionsBeforeAcquire = this.sessions.length; + const session = original.call(this); + const nSessionsAfterAcquire = this.sessions.length; + + if (nSessionsBeforeAcquire === nSessionsAfterAcquire) { + //no session in the pool. a new session was created and used + instrumentation._connectionsUsage.add(1, { + state: 'used', + 'pool.name': instrumentation._poolName, + }); + } else if (nSessionsBeforeAcquire - 1 === nSessionsAfterAcquire) { + //a session was already in the pool. remove it from the pool and use it. + instrumentation._connectionsUsage.add(-1, { + state: 'idle', + 'pool.name': instrumentation._poolName, + }); + instrumentation._connectionsUsage.add(1, { + state: 'used', + 'pool.name': instrumentation._poolName, + }); + } + return session; + }; + }; + } + + private _getV4ReleaseCommand() { + const instrumentation = this; + return (original: V4Session['release']) => { + return function patchRelease(this: any, session: ServerSession) { + const cmdPromise = original.call(this, session); + + instrumentation._connectionsUsage.add(-1, { + state: 'used', + 'pool.name': instrumentation._poolName, + }); + instrumentation._connectionsUsage.add(1, { + state: 'idle', + 'pool.name': instrumentation._poolName, + }); + return cmdPromise; + }; + }; + } + + private _getV4ConnectPatches() { + return { + v4PatchConnect: (moduleExports: any, moduleVersion?: string) => { + diag.debug(`Applying patch for mongodb@${moduleVersion}`); + if (isWrapped(moduleExports.connect)) { + this._unwrap(moduleExports, 'connect'); + } + + this._wrap(moduleExports, 'connect', this._getV4ConnectCommand()); + return moduleExports; + }, + v4UnpatchConnect: (moduleExports?: T, moduleVersion?: string) => { + diag.debug(`Removing internal patch for mongodb@${moduleVersion}`); + if (moduleExports === undefined) return; + + this._unwrap(moduleExports, 'connect'); + }, + }; + } + + private _getV4ConnectCommand() { + const instrumentation = this; + + return (original: V4Connect['connect']) => { + return function patchedConnect( + this: unknown, + options: any, + callback: any + ) { + const patchedCallback = function (err: any, conn: any) { + if (err || !conn) { + callback(err, conn); + return; + } + instrumentation.setPoolName(options); + callback(err, conn); + }; + return original.call(this, options, patchedCallback); + }; + }; + } + // eslint-disable-next-line @typescript-eslint/no-unused-vars - private _getV4Patches() { + private _getV4ConnectionPatches() { return { - v4Patch: (moduleExports: any, moduleVersion?: string) => { + v4PatchConnection: (moduleExports: any, moduleVersion?: string) => { diag.debug(`Applying patch for mongodb@${moduleVersion}`); // patch insert operation if (isWrapped(moduleExports.Connection.prototype.command)) { @@ -164,7 +327,7 @@ export class MongoDBInstrumentation extends InstrumentationBase { ); return moduleExports; }, - v4Unpatch: (moduleExports?: any, moduleVersion?: string) => { + v4UnpatchConnection: (moduleExports?: any, moduleVersion?: string) => { if (moduleExports === undefined) return; diag.debug(`Removing internal patch for mongodb@${moduleVersion}`); this._unwrap(moduleExports.Connection.prototype, 'command'); @@ -275,7 +438,7 @@ export class MongoDBInstrumentation extends InstrumentationBase { const instrumentation = this; return (original: V4Connection['command']) => { return function patchedV4ServerCommand( - this: unknown, + this: any, ns: any, cmd: any, options: undefined | unknown, @@ -283,8 +446,9 @@ export class MongoDBInstrumentation extends InstrumentationBase { ) { const currentSpan = trace.getSpan(context.active()); const resultHandler = callback; + const commandType = Object.keys(cmd)[0]; + if ( - !currentSpan || typeof resultHandler !== 'function' || typeof cmd !== 'object' || cmd.ismaster || @@ -292,16 +456,38 @@ export class MongoDBInstrumentation extends InstrumentationBase { ) { return original.call(this, ns, cmd, options, callback); } - const commandType = Object.keys(cmd)[0]; - const span = instrumentation.tracer.startSpan( - `mongodb.${commandType}`, - { - kind: SpanKind.CLIENT, - } - ); - instrumentation._populateV4Attributes(span, this, ns, cmd, commandType); - const patchedCallback = instrumentation._patchEnd(span, resultHandler); - return original.call(this, ns, cmd, options, patchedCallback); + if (!currentSpan) { + const patchedCallback = instrumentation._patchEnd( + undefined, + resultHandler, + this.id, + commandType + ); + + return original.call(this, ns, cmd, options, patchedCallback); + } else { + const span = instrumentation.tracer.startSpan( + `mongodb.${commandType}`, + { + kind: SpanKind.CLIENT, + } + ); + instrumentation._populateV4Attributes( + span, + this, + ns, + cmd, + commandType + ); + const patchedCallback = instrumentation._patchEnd( + span, + resultHandler, + this.id, + commandType + ); + + return original.call(this, ns, cmd, options, patchedCallback); + } }; }; } @@ -575,6 +761,7 @@ export class MongoDBInstrumentation extends InstrumentationBase { [SemanticAttributes.DB_NAME]: dbName, [SemanticAttributes.DB_MONGODB_COLLECTION]: dbCollection, [SemanticAttributes.DB_OPERATION]: operation, + [SemanticAttributes.DB_CONNECTION_STRING]: `mongodb://${host}:${port}/${dbName}`, }); if (host && port) { @@ -640,28 +827,49 @@ export class MongoDBInstrumentation extends InstrumentationBase { * Ends a created span. * @param span The created span to end. * @param resultHandler A callback function. + * @param connectionId: The connection ID of the Command response. */ - private _patchEnd(span: Span, resultHandler: Function): Function { + private _patchEnd( + span: Span | undefined, + resultHandler: Function, + connectionId?: number, + commandType?: string + ): Function { // mongodb is using "tick" when calling a callback, this way the context // in final callback (resultHandler) is lost const activeContext = context.active(); const instrumentation = this; return function patchedEnd(this: {}, ...args: unknown[]) { const error = args[0]; - if (error instanceof Error) { - span.setStatus({ - code: SpanStatusCode.ERROR, - message: error.message, - }); - } else { - const result = args[1] as CommandResult; - instrumentation._handleExecutionResult(span, result); + if (span) { + if (error instanceof Error) { + span?.setStatus({ + code: SpanStatusCode.ERROR, + message: error.message, + }); + } else { + const result = args[1] as CommandResult; + instrumentation._handleExecutionResult(span, result); + } + span.end(); } - span.end(); return context.with(activeContext, () => { + if (commandType === 'endSessions') { + instrumentation._connectionsUsage.add(-1, { + state: 'idle', + 'pool.name': instrumentation._poolName, + }); + } return resultHandler.apply(this, args); }); }; } + private setPoolName(options: any) { + const host = options.hostAddress?.host; + const port = options.hostAddress?.port; + const database = options.dbName; + const poolName = `mongodb://${host}:${port}/${database}`; + this._poolName = poolName; + } } diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/src/internal-types.ts b/plugins/node/opentelemetry-instrumentation-mongodb/src/internal-types.ts index 8e9ff0245..03131aa12 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/src/internal-types.ts +++ b/plugins/node/opentelemetry-instrumentation-mongodb/src/internal-types.ts @@ -64,6 +64,13 @@ export type MongoInternalCommand = { u?: Record; }; +export type ServerSession = { + id: any; + lastUse: number; + txnNumber: number; + isDirty: boolean; +}; + export type CursorState = { cmd: MongoInternalCommand } & Record< string, unknown @@ -176,3 +183,14 @@ export type V4Connection = { callback: any ): void; }; + +// https://github.com/mongodb/node-mongodb-native/blob/v4.2.2/src/cmap/connect.ts +export type V4Connect = { + connect: (options: any, callback: any) => void; +}; + +// https://github.com/mongodb/node-mongodb-native/blob/v4.2.2/src/sessions.ts +export type V4Session = { + acquire: () => ServerSession; + release: (session: ServerSession) => void; +}; diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/src/types.ts b/plugins/node/opentelemetry-instrumentation-mongodb/src/types.ts index 9c75c45d1..e0389de00 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/src/types.ts +++ b/plugins/node/opentelemetry-instrumentation-mongodb/src/types.ts @@ -61,3 +61,22 @@ export type CommandResult = { connection?: unknown; message?: unknown; }; + +export enum MongodbCommandType { + CREATE_INDEXES = 'createIndexes', + FIND_AND_MODIFY = 'findAndModify', + IS_MASTER = 'isMaster', + COUNT = 'count', + UNKNOWN = 'unknown', +} + +// https://github.com/mongodb/node-mongodb-native/blob/v4.2.2/src/cmap/connection.ts +export type V4Connection = { + id: number | ''; + command( + ns: any, + cmd: Document, + options: undefined | unknown, + callback: any + ): void; +}; diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v3.test.ts b/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v3.test.ts index 5a0b39e77..f3368d75f 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v3.test.ts +++ b/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v3.test.ts @@ -83,7 +83,7 @@ describe('MongoDBInstrumentation', () => { } // Non traced insertion of basic data to perform tests const insertData = [{ a: 1 }, { a: 2 }, { a: 3 }]; - collection.insertMany(insertData, (err, result) => { + collection.insertMany(insertData, (err: any, result: any) => { resetMemoryExporter(); done(); }); @@ -116,7 +116,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.insert', SpanKind.CLIENT, - 'insert' + 'insert', + undefined ); done(); }) @@ -137,7 +138,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.update', SpanKind.CLIENT, - 'update' + 'update', + undefined ); done(); }) @@ -158,7 +160,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.remove', SpanKind.CLIENT, - 'remove' + 'remove', + undefined ); done(); }) @@ -183,7 +186,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.find', SpanKind.CLIENT, - 'find' + 'find', + undefined ); done(); }) @@ -211,7 +215,8 @@ describe('MongoDBInstrumentation', () => { ), 'mongodb.find', SpanKind.CLIENT, - 'find' + 'find', + undefined ); // assert that we correctly got the first as a find assertSpans( @@ -220,7 +225,8 @@ describe('MongoDBInstrumentation', () => { ), 'mongodb.getMore', SpanKind.CLIENT, - 'getMore' + 'getMore', + undefined ); done(); }) @@ -245,7 +251,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.createIndexes', SpanKind.CLIENT, - 'createIndexes' + 'createIndexes', + undefined ); done(); }) @@ -281,6 +288,7 @@ describe('MongoDBInstrumentation', () => { operationName, SpanKind.CLIENT, 'insert', + undefined, false, false ); @@ -326,6 +334,7 @@ describe('MongoDBInstrumentation', () => { operationName, SpanKind.CLIENT, 'insert', + undefined, false, true ); @@ -361,7 +370,13 @@ describe('MongoDBInstrumentation', () => { .then(() => { span.end(); const spans = getTestSpans(); - assertSpans(spans, 'mongodb.insert', SpanKind.CLIENT, 'insert'); + assertSpans( + spans, + 'mongodb.insert', + SpanKind.CLIENT, + 'insert', + undefined + ); done(); }) .catch(err => { @@ -458,7 +473,13 @@ describe('MongoDBInstrumentation', () => { .then(() => { span.end(); const spans = getTestSpans(); - assertSpans(spans, 'mongodb.find', SpanKind.CLIENT, 'find'); + assertSpans( + spans, + 'mongodb.find', + SpanKind.CLIENT, + 'find', + undefined + ); done(); }) .catch(err => { @@ -480,7 +501,13 @@ describe('MongoDBInstrumentation', () => { span.end(); const spans = getTestSpans(); const mainSpan = spans[spans.length - 1]; - assertSpans(spans, 'mongodb.insert', SpanKind.CLIENT, 'insert'); + assertSpans( + spans, + 'mongodb.insert', + SpanKind.CLIENT, + 'insert', + undefined + ); resetMemoryExporter(); collection @@ -490,7 +517,13 @@ describe('MongoDBInstrumentation', () => { const spans2 = getTestSpans(); spans2.push(mainSpan); - assertSpans(spans2, 'mongodb.find', SpanKind.CLIENT, 'find'); + assertSpans( + spans2, + 'mongodb.find', + SpanKind.CLIENT, + 'find', + undefined + ); assert.strictEqual( mainSpan.spanContext().spanId, spans2[0].parentSpanId diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4.metrics.test.ts b/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4.metrics.test.ts new file mode 100644 index 000000000..b6fb8c36d --- /dev/null +++ b/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4.metrics.test.ts @@ -0,0 +1,169 @@ +/* + * 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. + */ + +// for testing locally "npm run docker:start" + +import { MongoDBInstrumentation } from '../src'; + +// TODO: use test-utils after the new package has released. +import { + AggregationTemporality, + DataPointType, + InMemoryMetricExporter, + MeterProvider, + PeriodicExportingMetricReader, + ResourceMetrics, +} from '@opentelemetry/sdk-metrics'; + +import * as mongodb from 'mongodb'; + +const otelTestingMeterProvider = new MeterProvider(); +const inMemoryMetricsExporter = new InMemoryMetricExporter( + AggregationTemporality.CUMULATIVE +); +const metricReader = new PeriodicExportingMetricReader({ + exporter: inMemoryMetricsExporter, + exportIntervalMillis: 100, + exportTimeoutMillis: 100, +}); + +otelTestingMeterProvider.addMetricReader(metricReader); + +import { registerInstrumentationTesting } from '@opentelemetry/contrib-test-utils'; +const instrumentation = registerInstrumentationTesting( + new MongoDBInstrumentation() +); + +instrumentation.setMeterProvider(otelTestingMeterProvider); + +import { accessCollection, DEFAULT_MONGO_HOST } from './utils'; + +import * as assert from 'assert'; + +async function waitForNumberOfExports( + exporter: InMemoryMetricExporter, + numberOfExports: number +): Promise { + if (numberOfExports <= 0) { + throw new Error('numberOfExports must be greater than or equal to 0'); + } + + let totalExports = 0; + while (totalExports < numberOfExports) { + await new Promise(resolve => setTimeout(resolve, 20)); + const exportedMetrics = exporter.getMetrics(); + totalExports = exportedMetrics.length; + } + + return exporter.getMetrics(); +} + +describe('MongoDBInstrumentation-Metrics', () => { + // For these tests, mongo must be running. Add RUN_MONGODB_TESTS to run + // these tests. + const RUN_MONGODB_TESTS = process.env.RUN_MONGODB_TESTS as string; + let shouldTest = true; + if (!RUN_MONGODB_TESTS) { + console.log('Skipping test-mongodb. Run MongoDB to test'); + shouldTest = false; + } + + const HOST = process.env.MONGODB_HOST || DEFAULT_MONGO_HOST; + const PORT = process.env.MONGODB_PORT || '27017'; + const DB_NAME = process.env.MONGODB_DB || 'opentelemetry-tests-metrics'; + const COLLECTION_NAME = 'test-metrics'; + const URL = `mongodb://${HOST}:${PORT}/${DB_NAME}`; + + let client: mongodb.MongoClient; + let collection: mongodb.Collection; + beforeEach(function mongoBeforeEach(done) { + // Skipping all tests in beforeEach() is a workaround. Mocha does not work + // properly when skipping tests in before() on nested describe() calls. + // https://github.com/mochajs/mocha/issues/2819 + if (!shouldTest) { + this.skip(); + } + inMemoryMetricsExporter.reset(); + done(); + }); + + it('Should add connection usage metrics', async () => { + const result = await accessCollection(URL, DB_NAME, COLLECTION_NAME); + client = result.client; + collection = result.collection; + const insertData = [{ a: 1 }, { a: 2 }, { a: 3 }]; + await collection.insertMany(insertData); + await collection.deleteMany({}); + let exportedMetrics = await waitForNumberOfExports( + inMemoryMetricsExporter, + 1 + ); + + assert.strictEqual(exportedMetrics.length, 1); + let metrics = exportedMetrics[0].scopeMetrics[0].metrics; + assert.strictEqual(metrics.length, 1); + assert.strictEqual(metrics[0].dataPointType, DataPointType.SUM); + + assert.strictEqual( + metrics[0].descriptor.description, + 'The number of connections that are currently in state described by the state attribute.' + ); + assert.strictEqual(metrics[0].descriptor.unit, '{connection}'); + assert.strictEqual( + metrics[0].descriptor.name, + 'db.client.connections.usage' + ); + assert.strictEqual(metrics[0].dataPoints.length, 2); + assert.strictEqual(metrics[0].dataPoints[0].value, 0); + assert.strictEqual(metrics[0].dataPoints[0].attributes['state'], 'used'); + assert.strictEqual( + metrics[0].dataPoints[0].attributes['pool.name'], + `mongodb://${HOST}:${PORT}/${DB_NAME}` + ); + + assert.strictEqual(metrics[0].dataPoints[1].value, 1); + assert.strictEqual(metrics[0].dataPoints[1].attributes['state'], 'idle'); + assert.strictEqual( + metrics[0].dataPoints[1].attributes['pool.name'], + `mongodb://${HOST}:${PORT}/${DB_NAME}` + ); + await client.close(); + + exportedMetrics = await waitForNumberOfExports(inMemoryMetricsExporter, 2); + assert.strictEqual(exportedMetrics.length, 2); + metrics = exportedMetrics[1].scopeMetrics[0].metrics; + assert.strictEqual(metrics.length, 1); + assert.strictEqual(metrics[0].dataPointType, DataPointType.SUM); + + assert.strictEqual( + metrics[0].descriptor.description, + 'The number of connections that are currently in state described by the state attribute.' + ); + assert.strictEqual(metrics[0].dataPoints.length, 2); + assert.strictEqual(metrics[0].dataPoints[0].value, 0); + assert.strictEqual(metrics[0].dataPoints[0].attributes['state'], 'used'); + assert.strictEqual( + metrics[0].dataPoints[0].attributes['pool.name'], + `mongodb://${HOST}:${PORT}/${DB_NAME}` + ); + assert.strictEqual(metrics[0].dataPoints[1].value, 0); + assert.strictEqual(metrics[0].dataPoints[1].attributes['state'], 'idle'); + assert.strictEqual( + metrics[0].dataPoints[1].attributes['pool.name'], + `mongodb://${HOST}:${PORT}/${DB_NAME}` + ); + }); +}); diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4.test.ts b/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4.test.ts index 3101a947d..10025b8a7 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4.test.ts +++ b/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v4.test.ts @@ -34,7 +34,7 @@ import * as mongodb from 'mongodb'; import { assertSpans, accessCollection, DEFAULT_MONGO_HOST } from './utils'; import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; -describe('MongoDBInstrumentation', () => { +describe('MongoDBInstrumentation-Tracing', () => { function create(config: MongoDBInstrumentationConfig = {}) { instrumentation.setConfig(config); } @@ -50,14 +50,14 @@ describe('MongoDBInstrumentation', () => { const URL = `mongodb://${process.env.MONGODB_HOST || DEFAULT_MONGO_HOST}:${ process.env.MONGODB_PORT || '27017' }`; - const DB_NAME = process.env.MONGODB_DB || 'opentelemetry-tests'; - const COLLECTION_NAME = 'test'; + const DB_NAME = process.env.MONGODB_DB || 'opentelemetry-tests-traces'; + const COLLECTION_NAME = 'test-traces'; + const conn_string = `${URL}/${DB_NAME}`; let client: mongodb.MongoClient; let collection: mongodb.Collection; before(done => { - shouldTest = true; accessCollection(URL, DB_NAME, COLLECTION_NAME) .then(result => { client = result.client; @@ -82,7 +82,7 @@ describe('MongoDBInstrumentation', () => { } // Non traced insertion of basic data to perform tests const insertData = [{ a: 1 }, { a: 2 }, { a: 3 }]; - collection.insertMany(insertData, (err, result) => { + collection.insertMany(insertData, (err: any, result: any) => { resetMemoryExporter(); done(); }); @@ -115,7 +115,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.insert', SpanKind.CLIENT, - 'insert' + 'insert', + conn_string ); done(); }) @@ -136,7 +137,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.update', SpanKind.CLIENT, - 'update' + 'update', + conn_string ); done(); }) @@ -157,7 +159,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.delete', SpanKind.CLIENT, - 'delete' + 'delete', + conn_string ); done(); }) @@ -182,7 +185,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.find', SpanKind.CLIENT, - 'find' + 'find', + conn_string ); done(); }) @@ -210,7 +214,8 @@ describe('MongoDBInstrumentation', () => { ), 'mongodb.find', SpanKind.CLIENT, - 'find' + 'find', + conn_string ); // assert that we correctly got the first as a find assertSpans( @@ -219,7 +224,8 @@ describe('MongoDBInstrumentation', () => { ), 'mongodb.getMore', SpanKind.CLIENT, - 'getMore' + 'getMore', + conn_string ); done(); }) @@ -244,7 +250,8 @@ describe('MongoDBInstrumentation', () => { getTestSpans(), 'mongodb.createIndexes', SpanKind.CLIENT, - 'createIndexes' + 'createIndexes', + conn_string ); done(); }) @@ -280,6 +287,7 @@ describe('MongoDBInstrumentation', () => { operationName, SpanKind.CLIENT, 'insert', + conn_string, false, false ); @@ -325,6 +333,7 @@ describe('MongoDBInstrumentation', () => { operationName, SpanKind.CLIENT, 'insert', + conn_string, false, true ); @@ -360,7 +369,13 @@ describe('MongoDBInstrumentation', () => { .then(() => { span.end(); const spans = getTestSpans(); - assertSpans(spans, 'mongodb.insert', SpanKind.CLIENT, 'insert'); + assertSpans( + spans, + 'mongodb.insert', + SpanKind.CLIENT, + 'insert', + conn_string + ); done(); }) .catch(err => { @@ -454,7 +469,13 @@ describe('MongoDBInstrumentation', () => { .then(() => { span.end(); const spans = getTestSpans(); - assertSpans(spans, 'mongodb.find', SpanKind.CLIENT, 'find'); + assertSpans( + spans, + 'mongodb.find', + SpanKind.CLIENT, + 'find', + conn_string + ); done(); }) .catch(err => { @@ -476,7 +497,13 @@ describe('MongoDBInstrumentation', () => { span.end(); const spans = getTestSpans(); const mainSpan = spans[spans.length - 1]; - assertSpans(spans, 'mongodb.insert', SpanKind.CLIENT, 'insert'); + assertSpans( + spans, + 'mongodb.insert', + SpanKind.CLIENT, + 'insert', + conn_string + ); resetMemoryExporter(); collection @@ -485,7 +512,13 @@ describe('MongoDBInstrumentation', () => { .then(() => { const spans2 = getTestSpans(); spans2.push(mainSpan); - assertSpans(spans2, 'mongodb.find', SpanKind.CLIENT, 'find'); + assertSpans( + spans2, + 'mongodb.find', + SpanKind.CLIENT, + 'find', + conn_string + ); assert.strictEqual( mainSpan.spanContext().spanId, spans2[0].parentSpanId diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/test/utils.ts b/plugins/node/opentelemetry-instrumentation-mongodb/test/utils.ts index 3da0a1833..02b26705f 100644 --- a/plugins/node/opentelemetry-instrumentation-mongodb/test/utils.ts +++ b/plugins/node/opentelemetry-instrumentation-mongodb/test/utils.ts @@ -41,7 +41,9 @@ export function accessCollection( options: mongodb.MongoClientOptions = {} ): Promise { return new Promise((resolve, reject) => { - mongodb.MongoClient.connect(url, { serverSelectionTimeoutMS: 1000 }) + mongodb.MongoClient.connect(url, { + serverSelectionTimeoutMS: 1000, + }) .then(client => { const db = client.db(dbName); const collection = db.collection(collectionName); @@ -66,6 +68,7 @@ export function assertSpans( expectedName: string, expectedKind: SpanKind, expectedOperation: string, + expectedConnString: string | undefined, log = false, isEnhancedDatabaseReportingEnabled = false ) { @@ -93,6 +96,12 @@ export function assertSpans( process.env.MONGODB_HOST || DEFAULT_MONGO_HOST ); assert.strictEqual(mongoSpan.status.code, SpanStatusCode.UNSET); + if (expectedConnString) { + assert.strictEqual( + mongoSpan.attributes[SemanticAttributes.DB_CONNECTION_STRING], + expectedConnString + ); + } if (isEnhancedDatabaseReportingEnabled) { const dbStatement = JSON.parse( From 60618788bc6c270548f139966c8c122c637e5de2 Mon Sep 17 00:00:00 2001 From: Jamie Danielson Date: Wed, 24 May 2023 11:05:02 -0400 Subject: [PATCH 53/72] chore: add express owners jamie and purvi (#1508) --- .github/component_owners.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/component_owners.yml b/.github/component_owners.yml index 0b2aa8fdc..6696f56db 100644 --- a/.github/component_owners.yml +++ b/.github/component_owners.yml @@ -65,8 +65,9 @@ components: # Unmaintained? plugins/node/opentelemetry-instrumentation-dns: [] # Unmaintained? - plugins/node/opentelemetry-instrumentation-express: [] - # Unmaintained? + plugins/node/opentelemetry-instrumentation-express: + - JamieDanielson + - pkanal plugins/node/opentelemetry-instrumentation-fastify: [] # Unmaintained? plugins/node/opentelemetry-instrumentation-generic-pool: From 5fb44c044771cffdfbf82a719324c7839c36e711 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Wed, 24 May 2023 12:21:22 -0400 Subject: [PATCH 54/72] Add Jamie to approvers (#3830) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9daf9d738..5187030f9 100644 --- a/README.md +++ b/README.md @@ -188,6 +188,7 @@ We have a weekly SIG meeting! See the [community page](https://github.com/open-t - [Gerhard Stöbich](https://github.com/Flarna), Dynatrace - [Haddas Bronfman](https://github.com/haddasbronfman), Cisco +- [Jamie Danielson](https://github.com/JamieDanielson), Honeycomb - [John Bley](https://github.com/johnbley), Splunk - [Mark Wolff](https://github.com/markwolff), Microsoft - [Martin Kuba](https://github.com/martinkuba), Lightstep From a6635428a9b20e49694bcc8fab787acbbd66979a Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Wed, 24 May 2023 12:22:02 -0400 Subject: [PATCH 55/72] Add Hector to approvers (#3831) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5187030f9..d22874b9a 100644 --- a/README.md +++ b/README.md @@ -188,6 +188,7 @@ We have a weekly SIG meeting! See the [community page](https://github.com/open-t - [Gerhard Stöbich](https://github.com/Flarna), Dynatrace - [Haddas Bronfman](https://github.com/haddasbronfman), Cisco +- [Hector Hernandez](https://github.com/hectorhdzg), Microsoft - [Jamie Danielson](https://github.com/JamieDanielson), Honeycomb - [John Bley](https://github.com/johnbley), Splunk - [Mark Wolff](https://github.com/markwolff), Microsoft From c6635fa4960407396aa87cdae41c9aa2075e2981 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Wed, 24 May 2023 12:22:28 -0400 Subject: [PATCH 56/72] Add Purvi to approvers (#3832) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d22874b9a..ca7279674 100644 --- a/README.md +++ b/README.md @@ -197,6 +197,7 @@ We have a weekly SIG meeting! See the [community page](https://github.com/open-t - [Naseem K. Ullah](https://github.com/naseemkullah), Transit - [Neville Wylie](https://github.com/MSNev), Microsoft - [Olivier Albertini](https://github.com/OlivierAlbertini), Ville de Montréal +- [Purvi Kanal](https://github.com/pkanal), Honeycomb - [Svetlana Brennan](https://github.com/svetlanabrennan), New Relic *Find more about the approver role in [community repository](https://github.com/open-telemetry/community/blob/main/community-membership.md#approver).* From fe82d7b005e1db631e23835cf5b8d26a7a64b6a9 Mon Sep 17 00:00:00 2001 From: fuaiyi Date: Thu, 25 May 2023 22:16:47 +0800 Subject: [PATCH 57/72] feat(exporter-logs-otlp-http): implements otlp-http exporter for logs (#3764) * feat(exporter-logs-otlp-http): implements otlp-http exporter for logs * feat(exporter-logs-otlp-http): improve README * feat(exporter-logs-otlp-http): add browser section in package.json * feat(exporter-logs-otlp-http): update log-sdk version * feat(logs-exporter-otlp-http): update version of @opentelemetry/core * feat(exporter-logs-otlp-http): update README --------- Co-authored-by: Marc Pichler --- experimental/CHANGELOG.md | 1 + .../exporter-logs-otlp-http/.eslintignore | 1 + .../exporter-logs-otlp-http/.eslintrc.js | 9 + .../exporter-logs-otlp-http/.npmignore | 4 + .../packages/exporter-logs-otlp-http/LICENSE | 201 ++++++++++++++++++ .../exporter-logs-otlp-http/README.md | 114 ++++++++++ .../exporter-logs-otlp-http/karma.conf.js | 28 +++ .../exporter-logs-otlp-http/package.json | 110 ++++++++++ .../exporter-logs-otlp-http/src/index.ts | 17 ++ .../src/platform/browser/OTLPLogExporter.ts | 57 +++++ .../src/platform/browser/index.ts | 17 ++ .../src/platform/config.ts | 43 ++++ .../src/platform/index.ts | 17 ++ .../src/platform/node/OTLPLogExporter.ts | 57 +++++ .../src/platform/node/index.ts | 17 ++ .../test/browser/OTLPLogExporter.test.ts | 64 ++++++ .../test/browser/index-webpack.ts | 20 ++ .../test/config.test.ts | 136 ++++++++++++ .../test/node/OTLPLogExporter.test.ts | 64 ++++++ .../exporter-logs-otlp-http/tsconfig.esm.json | 28 +++ .../tsconfig.esnext.json | 28 +++ .../exporter-logs-otlp-http/tsconfig.json | 29 +++ karma.webpack.js | 10 +- tsconfig.esm.json | 3 + tsconfig.esnext.json | 3 + tsconfig.json | 4 + 26 files changed, 1077 insertions(+), 5 deletions(-) create mode 100644 experimental/packages/exporter-logs-otlp-http/.eslintignore create mode 100644 experimental/packages/exporter-logs-otlp-http/.eslintrc.js create mode 100644 experimental/packages/exporter-logs-otlp-http/.npmignore create mode 100644 experimental/packages/exporter-logs-otlp-http/LICENSE create mode 100644 experimental/packages/exporter-logs-otlp-http/README.md create mode 100644 experimental/packages/exporter-logs-otlp-http/karma.conf.js create mode 100644 experimental/packages/exporter-logs-otlp-http/package.json create mode 100644 experimental/packages/exporter-logs-otlp-http/src/index.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/src/platform/browser/index.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/src/platform/config.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/src/platform/index.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/src/platform/node/index.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/test/config.test.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts create mode 100644 experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json create mode 100644 experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json create mode 100644 experimental/packages/exporter-logs-otlp-http/tsconfig.json diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 4ef6fff61..94ecff2d2 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -11,6 +11,7 @@ All notable changes to experimental packages in this project will be documented ### :rocket: (Enhancement) * feat(instrumentation): add ESM support for instrumentation. [#3698](https://github.com/open-telemetry/opentelemetry-js/pull/3698) @JamieDanielson, @pkanal, @vmarchaud, @lizthegrey, @bengl +* feat(exporter-logs-otlp-http): otlp-http exporter for logs. [#3764](https://github.com/open-telemetry/opentelemetry-js/pull/3764/) @fuaiyi * feat(otlp-trace-exporters): Add User-Agent header to OTLP trace exporters. [#3790](https://github.com/open-telemetry/opentelemetry-js/pull/3790) @JamieDanielson * feat(otlp-metric-exporters): Add User-Agent header to OTLP metric exporters. [#3806](https://github.com/open-telemetry/opentelemetry-js/pull/3806) @JamieDanielson diff --git a/experimental/packages/exporter-logs-otlp-http/.eslintignore b/experimental/packages/exporter-logs-otlp-http/.eslintignore new file mode 100644 index 000000000..378eac25d --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/.eslintignore @@ -0,0 +1 @@ +build diff --git a/experimental/packages/exporter-logs-otlp-http/.eslintrc.js b/experimental/packages/exporter-logs-otlp-http/.eslintrc.js new file mode 100644 index 000000000..f3f22e861 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/.eslintrc.js @@ -0,0 +1,9 @@ +module.exports = { + env: { + mocha: true, + commonjs: true, + node: true, + browser: true, + }, + ...require('../../../eslint.config.js'), +}; diff --git a/experimental/packages/exporter-logs-otlp-http/.npmignore b/experimental/packages/exporter-logs-otlp-http/.npmignore new file mode 100644 index 000000000..9505ba945 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/.npmignore @@ -0,0 +1,4 @@ +/bin +/coverage +/doc +/test diff --git a/experimental/packages/exporter-logs-otlp-http/LICENSE b/experimental/packages/exporter-logs-otlp-http/LICENSE new file mode 100644 index 000000000..261eeb9e9 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + 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. diff --git a/experimental/packages/exporter-logs-otlp-http/README.md b/experimental/packages/exporter-logs-otlp-http/README.md new file mode 100644 index 000000000..256e1d88d --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/README.md @@ -0,0 +1,114 @@ +# OpenTelemetry Collector Logs Exporter for web and node with HTTP + +[![NPM Published Version][npm-img]][npm-url] +[![Apache License][license-image]][license-image] + +**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`. + +## Installation + +```bash +npm install --save @opentelemetry/exporter-logs-otlp-http +``` + +## Further Documentation + +To see documentation and sample code for the traces exporter, as well as instructions for using TLS, visit the [Collector Trace Exporter for web and node][trace-exporter-url]. +To see documentation and sample code for the metric exporter, see the [exporter-metrics-otlp-grpc package][metrics-exporter-url] + +## Logs in Web + +The OTLPLogExporter in Web expects the endpoint to end in `/v1/logs`. + +```js +import { SeverityNumber } from '@opentelemetry/api-logs'; +import { + LoggerProvider, + BatchLogRecordProcessor, +} from '@opentelemetry/sdk-logs'; +import { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http'; + +// exporter options. see all options in OTLPExporterConfigBase +const collectorOptions = { + url: '', // url is optional and can be omitted - default is http://localhost:4318/v1/logs + headers: {}, // an optional object containing custom headers to be sent with each request + concurrencyLimit: 1, // an optional limit on pending requests +}; +const logExporter = new OTLPLogExporter(collectorOptions); +const loggerProvider = new LoggerProvider(); + +loggerProvider.addLogRecordProcessor(new BatchLogRecordProcessor(logExporter)); + +const logger = loggerProvider.getLogger('default', '1.0.0'); +// Emit a log +logger.emit({ + severityNumber: SeverityNumber.INFO, + severityText: 'info', + body: 'this is a log body', + attributes: { 'log.type': 'custom' }, +}); +``` + +## Logs in Node + +```js +import { + LoggerProvider, + BatchLogRecordProcessor, +} from '@opentelemetry/sdk-logs'; +import { OTLPLogsExporter } from '@opentelemetry/exporter-logs-otlp-http'; + +// exporter options. see all options in OTLPExporterNodeConfigBase +const collectorOptions = { + url: '', // url is optional and can be omitted - default is http://localhost:4318/v1/logs + concurrencyLimit: 1, // an optional limit on pending requests +}; +const logExporter = new OTLPLogExporter(collectorOptions); +const loggerProvider = new LoggerProvider(); + +loggerProvider.addLogRecordProcessor(new BatchLogRecordProcessor(logExporter)); + +const logger = loggerProvider.getLogger('default', '1.0.0'); +// Emit a log +logger.emit({ + severityNumber: SeverityNumber.INFO, + severityText: 'info', + body: 'this is a log body', + attributes: { 'log.type': 'custom' }, +}); +``` + +## Environment Variable Configuration + +In addition to settings passed to the constructor, the exporter also supports configuration via environment variables: + +| Environment variable | Description | +| -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| OTEL_EXPORTER_OTLP_ENDPOINT | The endpoint to send logs 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/logs` will be automatically appended to configured values. | +| OTEL_EXPORTER_OTLP_LOGS_ENDPOINT | The endpoint to send logs to. By default `https://localhost:4318/v1/logs` will be used. `v1/logs` will not be appended automatically and has to be added explicitly. | +| OTEL_EXPORTER_OTLP_LOGS_TIMEOUT | The maximum waiting time, in milliseconds, allowed to send each OTLP log batch. Default is 10000. | +| OTEL_EXPORTER_OTLP_TIMEOUT | The maximum waiting time, in milliseconds, allowed to send each OTLP trace/metric/log batch. Default is 10000. | + +> Settings configured programmatically take precedence over environment variables. Per-signal environment variables take precedence over non-per-signal environment variables. + +## Useful links + +- For more information on OpenTelemetry, visit: +- For more about OpenTelemetry JavaScript: +- For help or feedback on this project, join us in [GitHub Discussions][discussions-url] + +## License + +Apache 2.0 - See [LICENSE][license-url] for more information. + +[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions +[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE +[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat +[npm-url]: https://www.npmjs.com/package/@opentelemetry/exporter-logs-otlp-http +[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fexporter-logs-otlp-http.svg +[opentelemetry-collector-url]: https://github.com/open-telemetry/opentelemetry-collector +[semconv-resource-service-name]: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/semantic_conventions/README.md#service +[trace-exporter-url]: https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/exporter-trace-otlp-http +[metrics-exporter-url]: https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-metrics-otlp-http diff --git a/experimental/packages/exporter-logs-otlp-http/karma.conf.js b/experimental/packages/exporter-logs-otlp-http/karma.conf.js new file mode 100644 index 000000000..bfd7a0332 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/karma.conf.js @@ -0,0 +1,28 @@ +/*! + * 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 + * + * 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. + */ + +const karmaWebpackConfig = require('../../../karma.webpack'); +const karmaBaseConfig = require('../../../karma.base'); + +module.exports = config => { + config.set( + Object.assign({}, karmaBaseConfig, { + webpack: karmaWebpackConfig, + files: ['test/browser/index-webpack.ts'], + preprocessors: { 'test/browser/index-webpack.ts': ['webpack'] }, + }) + ); +}; diff --git a/experimental/packages/exporter-logs-otlp-http/package.json b/experimental/packages/exporter-logs-otlp-http/package.json new file mode 100644 index 000000000..9ecf97db6 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/package.json @@ -0,0 +1,110 @@ +{ + "name": "@opentelemetry/exporter-logs-otlp-http", + "version": "0.38.0", + "publishConfig": { + "access": "public" + }, + "description": "OpenTelemetry Collector Logs Exporter allows user to send collected logs to the OpenTelemetry Collector", + "author": "OpenTelemetry Authors", + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/exporter-logs-otlp-http", + "license": "Apache-2.0", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "browser": { + "./src/platform/index.ts": "./src/platform/browser/index.ts", + "./build/esm/platform/index.js": "./build/esm/platform/browser/index.js", + "./build/esnext/platform/index.js": "./build/esnext/platform/browser/index.js", + "./build/src/platform/index.js": "./build/src/platform/browser/index.js" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/open-telemetry/opentelemetry-js.git" + }, + "bugs": { + "url": "https://github.com/open-telemetry/opentelemetry-js/issues" + }, + "engines": { + "node": ">=14" + }, + "scripts": { + "prepublishOnly": "npm run compile", + "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", + "lint": "eslint . --ext .ts", + "lint:fix": "eslint . --ext .ts --fix", + "tdd": "npm run test -- --watch-extensions ts --watch", + "tdd:browser": "karma start", + "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "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", + "prewatch": "npm run precompile", + "peer-api-check": "node ../../../scripts/peer-api-check.js", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../" + }, + "keywords": [ + "opentelemetry", + "nodejs", + "browser", + "tracing", + "profiling", + "logs", + "stats" + ], + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "sideEffects": false, + "devDependencies": { + "@babel/core": "7.16.0", + "@opentelemetry/api-logs": ">=0.38.0", + "@types/mocha": "10.0.0", + "@types/node": "18.6.5", + "@types/sinon": "10.0.13", + "@types/webpack-env": "1.16.3", + "babel-loader": "8.2.3", + "codecov": "3.8.3", + "cpx": "1.5.0", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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-webpack": "4.0.2", + "mocha": "10.0.0", + "nyc": "15.1.0", + "rimraf": "3.0.2", + "sinon": "14.0.0", + "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" + }, + "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" + } +} diff --git a/experimental/packages/exporter-logs-otlp-http/src/index.ts b/experimental/packages/exporter-logs-otlp-http/src/index.ts new file mode 100644 index 000000000..89954d478 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/src/index.ts @@ -0,0 +1,17 @@ +/* + * 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. + */ + +export { OTLPLogExporter } from './platform'; 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 new file mode 100644 index 000000000..ef837614e --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts @@ -0,0 +1,57 @@ +/* + * 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 { + ReadableLogRecord, + LogRecordExporter, +} from '@opentelemetry/sdk-logs'; +import type { OTLPExporterConfigBase } from '@opentelemetry/otlp-exporter-base'; +import type { IExportLogsServiceRequest } from '@opentelemetry/otlp-transformer'; +import { OTLPExporterBrowserBase } from '@opentelemetry/otlp-exporter-base'; +import { baggageUtils, getEnv } from '@opentelemetry/core'; +import { createExportLogsServiceRequest } from '@opentelemetry/otlp-transformer'; + +import { getDefaultUrl } from '../config'; + +/** + * Collector Logs Exporter for Web + */ +export class OTLPLogExporter + extends OTLPExporterBrowserBase + implements LogRecordExporter +{ + constructor(config: OTLPExporterConfigBase = {}) { + // load OTEL_EXPORTER_OTLP_LOGS_TIMEOUT env var + super({ + timeoutMillis: getEnv().OTEL_EXPORTER_OTLP_LOGS_TIMEOUT, + ...config, + }); + this._headers = { + ...this._headers, + ...baggageUtils.parseKeyPairsIntoRecord( + getEnv().OTEL_EXPORTER_OTLP_LOGS_HEADERS + ), + }; + } + + convert(logRecords: ReadableLogRecord[]): IExportLogsServiceRequest { + return createExportLogsServiceRequest(logRecords); + } + + getDefaultUrl(config: OTLPExporterConfigBase): string { + return getDefaultUrl(config); + } +} diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/browser/index.ts b/experimental/packages/exporter-logs-otlp-http/src/platform/browser/index.ts new file mode 100644 index 000000000..2472e4a79 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/src/platform/browser/index.ts @@ -0,0 +1,17 @@ +/* + * 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. + */ + +export { OTLPLogExporter } from './OTLPLogExporter'; diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/config.ts b/experimental/packages/exporter-logs-otlp-http/src/platform/config.ts new file mode 100644 index 000000000..a41ee9646 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/src/platform/config.ts @@ -0,0 +1,43 @@ +/* + * 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 { getEnv } from '@opentelemetry/core'; +import { + appendResourcePathToUrl, + appendRootPathToUrlIfNeeded, + OTLPExporterConfigBase, +} from '@opentelemetry/otlp-exporter-base'; + +const DEFAULT_COLLECTOR_RESOURCE_PATH = 'v1/logs'; +export const DEFAULT_COLLECTOR_URL = `http://localhost:4318/${DEFAULT_COLLECTOR_RESOURCE_PATH}`; + +/** + * common get default url + * @param config exporter config + * @returns url string + */ +export function getDefaultUrl(config: OTLPExporterConfigBase): string { + return typeof config.url === 'string' + ? config.url + : getEnv().OTEL_EXPORTER_OTLP_LOGS_ENDPOINT.length > 0 + ? appendRootPathToUrlIfNeeded(getEnv().OTEL_EXPORTER_OTLP_LOGS_ENDPOINT) + : getEnv().OTEL_EXPORTER_OTLP_ENDPOINT.length > 0 + ? appendResourcePathToUrl( + getEnv().OTEL_EXPORTER_OTLP_ENDPOINT, + DEFAULT_COLLECTOR_RESOURCE_PATH + ) + : DEFAULT_COLLECTOR_URL; +} diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/index.ts b/experimental/packages/exporter-logs-otlp-http/src/platform/index.ts new file mode 100644 index 000000000..830bf10b2 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/src/platform/index.ts @@ -0,0 +1,17 @@ +/* + * 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. + */ + +export { OTLPLogExporter } from './node'; 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 new file mode 100644 index 000000000..7f7c538df --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts @@ -0,0 +1,57 @@ +/* + * 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 { + ReadableLogRecord, + LogRecordExporter, +} from '@opentelemetry/sdk-logs'; +import type { OTLPExporterNodeConfigBase } from '@opentelemetry/otlp-exporter-base'; +import type { IExportLogsServiceRequest } from '@opentelemetry/otlp-transformer'; +import { getEnv, baggageUtils } from '@opentelemetry/core'; +import { OTLPExporterNodeBase } from '@opentelemetry/otlp-exporter-base'; +import { createExportLogsServiceRequest } from '@opentelemetry/otlp-transformer'; + +import { getDefaultUrl } from '../config'; + +/** + * Collector Logs Exporter for Node + */ +export class OTLPLogExporter + extends OTLPExporterNodeBase + implements LogRecordExporter +{ + constructor(config: OTLPExporterNodeConfigBase = {}) { + // load OTEL_EXPORTER_OTLP_LOGS_TIMEOUT env + super({ + timeoutMillis: getEnv().OTEL_EXPORTER_OTLP_LOGS_TIMEOUT, + ...config, + }); + this.headers = { + ...this.headers, + ...baggageUtils.parseKeyPairsIntoRecord( + getEnv().OTEL_EXPORTER_OTLP_LOGS_HEADERS + ), + }; + } + + convert(logRecords: ReadableLogRecord[]): IExportLogsServiceRequest { + return createExportLogsServiceRequest(logRecords); + } + + getDefaultUrl(config: OTLPExporterNodeConfigBase): string { + return getDefaultUrl(config); + } +} diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/node/index.ts b/experimental/packages/exporter-logs-otlp-http/src/platform/node/index.ts new file mode 100644 index 000000000..2472e4a79 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/src/platform/node/index.ts @@ -0,0 +1,17 @@ +/* + * 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. + */ + +export { OTLPLogExporter } from './OTLPLogExporter'; 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 new file mode 100644 index 000000000..66958a9fe --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts @@ -0,0 +1,64 @@ +/* + * 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 * as Config from '../../src/platform/config'; +import { OTLPLogExporter } from '../../src/platform/browser'; + +describe('OTLPLogExporter', () => { + let envSource: Record; + + if (typeof process === 'undefined') { + envSource = globalThis as unknown as Record; + } else { + envSource = process.env as Record; + } + + describe('constructor', () => { + it('should create an instance', () => { + const exporter = new OTLPLogExporter(); + assert.ok(exporter instanceof OTLPLogExporter); + }); + + it('should use headers defined via env', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS = 'foo=bar'; + const exporter = new OTLPLogExporter(); + assert.strictEqual(exporter['_headers'].foo, 'bar'); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS; + }); + + it('should use timeout defined via env', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS = ''; + envSource.OTEL_EXPORTER_OTLP_LOGS_TIMEOUT = 30000; + const exporter = new OTLPLogExporter(); + assert.strictEqual(exporter.timeoutMillis, 30000); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS; + delete envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS; + }); + }); + + describe('getDefaultUrl', () => { + it('should call getDefaultUrl', () => { + const getDefaultUrl = sinon.stub(Config, 'getDefaultUrl'); + const exporter = new OTLPLogExporter(); + exporter.getDefaultUrl({}); + // this callCount is 2, because new OTLPLogExporter also call it + assert.strictEqual(getDefaultUrl.callCount, 2); + }); + }); +}); diff --git a/experimental/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts b/experimental/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts new file mode 100644 index 000000000..9a4c86560 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts @@ -0,0 +1,20 @@ +/* + * 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. + */ + +{ + const testsContext = require.context('../browser', true, /test$/); + testsContext.keys().forEach(testsContext); +} diff --git a/experimental/packages/exporter-logs-otlp-http/test/config.test.ts b/experimental/packages/exporter-logs-otlp-http/test/config.test.ts new file mode 100644 index 000000000..77656de56 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/test/config.test.ts @@ -0,0 +1,136 @@ +/* + * 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 { getDefaultUrl } from '../src/platform/config'; + +describe('getDefaultUrl', () => { + let envSource: Record; + + if (typeof process === 'undefined') { + envSource = globalThis as unknown as Record; + } else { + envSource = process.env as Record; + } + + it('should use config url if config url is defined', () => { + const configUrl = 'http://foo.bar/v1/logs/'; + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = 'http://foo.bar.logs/'; + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = 'http://foo.bar/'; + const defaultUrl = getDefaultUrl({ url: configUrl }); + assert.strictEqual(defaultUrl, configUrl); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT; + delete envSource.OTEL_EXPORTER_OTLP_ENDPOINT; + }); + + it('should use url defined in env that ends with root path and append version and signal path', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = ''; + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = 'http://foo.bar/'; + const defaultUrl = getDefaultUrl({}); + assert.strictEqual( + defaultUrl, + `${envSource.OTEL_EXPORTER_OTLP_ENDPOINT}v1/logs` + ); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT; + delete envSource.OTEL_EXPORTER_OTLP_ENDPOINT; + }); + + it('should use url defined in env without checking if path is already present', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = ''; + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = 'http://foo.bar/v1/logs'; + const defaultUrl = getDefaultUrl({}); + assert.strictEqual( + defaultUrl, + `${envSource.OTEL_EXPORTER_OTLP_ENDPOINT}/v1/logs` + ); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT; + delete envSource.OTEL_EXPORTER_OTLP_ENDPOINT; + }); + + it('should use url defined in env and append version and signal', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = ''; + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = 'http://foo.bar'; + const defaultUrl = getDefaultUrl({}); + assert.strictEqual( + defaultUrl, + `${envSource.OTEL_EXPORTER_OTLP_ENDPOINT}/v1/logs` + ); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT; + delete envSource.OTEL_EXPORTER_OTLP_ENDPOINT; + }); + + it('should override global exporter url with signal url defined in env', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = 'http://foo.logs/'; + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = 'http://foo.bar/'; + const defaultUrl = getDefaultUrl({}); + assert.strictEqual( + defaultUrl, + `${envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT}` + ); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT; + delete envSource.OTEL_EXPORTER_OTLP_ENDPOINT; + }); + + it('should add root path when signal url defined in env contains no path and no root path', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = 'http://foo.logs'; + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = ''; + + const defaultUrl = getDefaultUrl({}); + assert.strictEqual( + defaultUrl, + `${envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT}/` + ); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT; + delete envSource.OTEL_EXPORTER_OTLP_ENDPOINT; + }); + + it('should not add root path when signal url defined in env contains root path but no path', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = 'http://foo.bar/'; + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = ''; + const defaultUrl = getDefaultUrl({}); + assert.strictEqual( + defaultUrl, + `${envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT}` + ); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT; + delete envSource.OTEL_EXPORTER_OTLP_ENDPOINT; + }); + + it('should not add root path when signal url defined in env contains path', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = 'http://foo.bar/v1/logs'; + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = ''; + const defaultUrl = getDefaultUrl({}); + assert.strictEqual( + defaultUrl, + `${envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT}` + ); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT; + delete envSource.OTEL_EXPORTER_OTLP_ENDPOINT; + }); + + it('should not add root path when signal url defined in env contains path and ends in /', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT = 'http://foo.bar/v1/logs/'; + envSource.OTEL_EXPORTER_OTLP_ENDPOINT = ''; + const defaultUrl = getDefaultUrl({}); + assert.strictEqual( + defaultUrl, + `${envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT}` + ); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_ENDPOINT; + delete envSource.OTEL_EXPORTER_OTLP_ENDPOINT; + }); +}); 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 new file mode 100644 index 000000000..aa0d34534 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts @@ -0,0 +1,64 @@ +/* + * 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 * as Config from '../../src/platform/config'; +import { OTLPLogExporter } from '../../src/platform/node'; + +describe('OTLPLogExporter', () => { + let envSource: Record; + + if (typeof process === 'undefined') { + envSource = globalThis as unknown as Record; + } else { + envSource = process.env as Record; + } + + describe('constructor', () => { + it('should create an instance', () => { + const exporter = new OTLPLogExporter(); + assert.ok(exporter instanceof OTLPLogExporter); + }); + + it('should use headers defined via env', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS = 'foo=bar'; + const exporter = new OTLPLogExporter(); + assert.strictEqual(exporter.headers.foo, 'bar'); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS; + }); + + it('should use timeout defined via env', () => { + envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS = ''; + envSource.OTEL_EXPORTER_OTLP_LOGS_TIMEOUT = 30000; + const exporter = new OTLPLogExporter(); + assert.strictEqual(exporter.timeoutMillis, 30000); + delete envSource.OTEL_EXPORTER_OTLP_LOGS_HEADERS; + delete envSource.OTEL_EXPORTER_OTLP_LOGS_TIMEOUT; + }); + }); + + describe('getDefaultUrl', () => { + it('should call getDefaultUrl', () => { + const getDefaultUrl = sinon.stub(Config, 'getDefaultUrl'); + const exporter = new OTLPLogExporter(); + exporter.getDefaultUrl({}); + // this callCount is 2, because new OTLPLogExporter also call it + assert.strictEqual(getDefaultUrl.callCount, 2); + }); + }); +}); diff --git a/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json b/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json new file mode 100644 index 000000000..554367c37 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json @@ -0,0 +1,28 @@ +{ + "extends": "../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ], + "references": [ + { + "path": "../../../packages/opentelemetry-core" + }, + { + "path": "../api-logs" + }, + { + "path": "../otlp-exporter-base" + }, + { + "path": "../otlp-transformer" + }, + { + "path": "../sdk-logs" + } + ] +} diff --git a/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json b/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json new file mode 100644 index 000000000..87a369521 --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json @@ -0,0 +1,28 @@ +{ + "extends": "../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ], + "references": [ + { + "path": "../../../packages/opentelemetry-core" + }, + { + "path": "../api-logs" + }, + { + "path": "../otlp-exporter-base" + }, + { + "path": "../otlp-transformer" + }, + { + "path": "../sdk-logs" + } + ] +} diff --git a/experimental/packages/exporter-logs-otlp-http/tsconfig.json b/experimental/packages/exporter-logs-otlp-http/tsconfig.json new file mode 100644 index 000000000..c4eda837a --- /dev/null +++ b/experimental/packages/exporter-logs-otlp-http/tsconfig.json @@ -0,0 +1,29 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "esModuleInterop": true, + "outDir": "build", + "rootDir": "." + }, + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ], + "references": [ + { + "path": "../../../packages/opentelemetry-core" + }, + { + "path": "../api-logs" + }, + { + "path": "../otlp-exporter-base" + }, + { + "path": "../otlp-transformer" + }, + { + "path": "../sdk-logs" + } + ] +} diff --git a/karma.webpack.js b/karma.webpack.js index 559d129b6..138112547 100644 --- a/karma.webpack.js +++ b/karma.webpack.js @@ -32,12 +32,12 @@ module.exports = { test: /\.ts$/, use: { loader: 'istanbul-instrumenter-loader', - options: { esModules: true } - } + options: { esModules: true }, + }, }, // This setting configures Node polyfills for the browser that will be // added to the webpack bundle for Karma tests. - { parser: { node: webpackNodePolyfills } } - ] - } + { parser: { node: webpackNodePolyfills } }, + ], + }, }; diff --git a/tsconfig.esm.json b/tsconfig.esm.json index eccabd638..e10c92621 100644 --- a/tsconfig.esm.json +++ b/tsconfig.esm.json @@ -11,6 +11,9 @@ { "path": "experimental/packages/api-logs/tsconfig.esm.json" }, + { + "path": "experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json" + }, { "path": "experimental/packages/exporter-trace-otlp-http/tsconfig.esm.json" }, diff --git a/tsconfig.esnext.json b/tsconfig.esnext.json index 4b0d0df9f..507c4d430 100644 --- a/tsconfig.esnext.json +++ b/tsconfig.esnext.json @@ -11,6 +11,9 @@ { "path": "experimental/packages/api-logs/tsconfig.esnext.json" }, + { + "path": "experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json" + }, { "path": "experimental/packages/exporter-trace-otlp-http/tsconfig.esnext.json" }, diff --git a/tsconfig.json b/tsconfig.json index 4448fed79..ce2c0e6a2 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,6 +8,7 @@ "experimental/packages/api-events", "experimental/packages/api-logs", "experimental/packages/exporter-logs-otlp-grpc", + "experimental/packages/exporter-logs-otlp-http", "experimental/packages/exporter-trace-otlp-grpc", "experimental/packages/exporter-trace-otlp-http", "experimental/packages/exporter-trace-otlp-proto", @@ -66,6 +67,9 @@ { "path": "experimental/packages/exporter-logs-otlp-grpc" }, + { + "path": "experimental/packages/exporter-logs-otlp-http" + }, { "path": "experimental/packages/exporter-trace-otlp-grpc" }, From 73d7b6735b505476cbc6e417a953c075352077b0 Mon Sep 17 00:00:00 2001 From: Marc Pichler Date: Thu, 25 May 2023 17:01:14 +0200 Subject: [PATCH 58/72] fix(exporter-logs-otlp-http): bump version to 0.39.1 (#3836) --- experimental/packages/exporter-logs-otlp-http/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/experimental/packages/exporter-logs-otlp-http/package.json b/experimental/packages/exporter-logs-otlp-http/package.json index 9ecf97db6..684402a44 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.38.0", + "version": "0.39.1", "publishConfig": { "access": "public" }, From 12debb37cae2ec878fb63d03f2b7b6d7dfd7ed61 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Thu, 25 May 2023 13:39:06 -0400 Subject: [PATCH 59/72] chore: mark plugin react load unmaintained (#1512) --- plugins/web/opentelemetry-plugin-react-load/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/web/opentelemetry-plugin-react-load/README.md b/plugins/web/opentelemetry-plugin-react-load/README.md index 92571e71e..63b1c0b97 100644 --- a/plugins/web/opentelemetry-plugin-react-load/README.md +++ b/plugins/web/opentelemetry-plugin-react-load/README.md @@ -7,7 +7,11 @@ This module provides automatic instrumentation for *React lifecycles* for Web ap If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-web`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-web) bundle with [`@opentelemetry/sdk-trace-web`](https://www.npmjs.com/package/@opentelemetry/sdk-trace-web) for the most seamless instrumentation experience. -Compatible with OpenTelemetry JS API and SDK `1.0+`. +## Status + +| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility | +| ---------------------------------------- | -------------------------------------------------------- | --------------------- | +| [Unmaintained](../../../CONTRIBUTING.md) | N/A | API 1.0+
SDK 1.0+ | ## Installation From ce68729d03937bbe8f5601938ad7295569925e2d Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Thu, 25 May 2023 13:39:56 -0400 Subject: [PATCH 60/72] chore: mark plugin connect unmaintained (#1516) --- .../node/opentelemetry-instrumentation-connect/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/node/opentelemetry-instrumentation-connect/README.md b/plugins/node/opentelemetry-instrumentation-connect/README.md index 3eff98624..5f6cd30f7 100644 --- a/plugins/node/opentelemetry-instrumentation-connect/README.md +++ b/plugins/node/opentelemetry-instrumentation-connect/README.md @@ -7,7 +7,11 @@ This module provides automatic instrumentation for the [`connect`](https://githu If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience. -Compatible with OpenTelemetry JS API and SDK `1.0+`. +## Status + +| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility | +| ----------------------------------------------------- | -------------------------------------------------------- | --------------------- | +| [Unmaintained](../../../CONTRIBUTING.md#unmaintained) | N/A | API 1.0+
SDK 1.0+ | ## Installation From 2ab502f5503657293a6f0d7a7e4e22793ee1ceb9 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Thu, 25 May 2023 13:40:18 -0400 Subject: [PATCH 61/72] chore: mark plugin dns unmaintained (#1515) --- plugins/node/opentelemetry-instrumentation-dns/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/node/opentelemetry-instrumentation-dns/README.md b/plugins/node/opentelemetry-instrumentation-dns/README.md index 565a07145..c0aaaa1c9 100644 --- a/plugins/node/opentelemetry-instrumentation-dns/README.md +++ b/plugins/node/opentelemetry-instrumentation-dns/README.md @@ -7,7 +7,11 @@ This module provides automatic instrumentation for the [`dns`](http://nodejs.org If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience. -Compatible with OpenTelemetry JS API and SDK `1.0+`. +## Status + +| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility | +| ----------------------------------------------------- | -------------------------------------------------------- | --------------------- | +| [Unmaintained](../../../CONTRIBUTING.md#unmaintained) | N/A | API 1.0+
SDK 1.0+ | ## Installation From 750bdad14d26fc1ff1ea9fce2355dad412637729 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Thu, 25 May 2023 13:40:48 -0400 Subject: [PATCH 62/72] chore: mark plugin hapi unmaintained (#1514) --- plugins/node/opentelemetry-instrumentation-hapi/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/node/opentelemetry-instrumentation-hapi/README.md b/plugins/node/opentelemetry-instrumentation-hapi/README.md index 39bc6d801..5868e6a53 100644 --- a/plugins/node/opentelemetry-instrumentation-hapi/README.md +++ b/plugins/node/opentelemetry-instrumentation-hapi/README.md @@ -7,7 +7,11 @@ This module provides automatic instrumentation for the [Hapi Framework](https:// If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience. -Compatible with OpenTelemetry JS API and SDK `1.0+`. +## Status + +| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility | +| ----------------------------------------------------- | -------------------------------------------------------- | --------------------- | +| [Unmaintained](../../../CONTRIBUTING.md#unmaintained) | N/A | API 1.0+
SDK 1.0+ | ## Installation From 59628bb337f24818d94772551ee70ce465ccbd15 Mon Sep 17 00:00:00 2001 From: Daniel Dyla Date: Thu, 25 May 2023 13:41:02 -0400 Subject: [PATCH 63/72] chore: mark plugin koa unmaintained (#1513) --- .../opentelemetry-instrumentation-koa/README.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/plugins/node/opentelemetry-instrumentation-koa/README.md b/plugins/node/opentelemetry-instrumentation-koa/README.md index d964ca8c7..4c9cbfba0 100644 --- a/plugins/node/opentelemetry-instrumentation-koa/README.md +++ b/plugins/node/opentelemetry-instrumentation-koa/README.md @@ -7,7 +7,11 @@ This module provides automatic instrumentation for the [Koa](https://github.com/ If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience. -Compatible with OpenTelemetry JS API and SDK `1.0+`. +## Status + +| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility | +| ----------------------------------------------------- | -------------------------------------------------------- | --------------------- | +| [Unmaintained](../../../CONTRIBUTING.md#unmaintained) | N/A | API 1.0+
SDK 1.0+ | ## Installation @@ -45,10 +49,10 @@ Note that generator-based middleware are deprecated and won't be instrumented. ### Koa Instrumentation Options -| Options | Type | Example | Description | -| ------- | ---- | ------- | ----------- | -| `ignoreLayersType`| `KoaLayerType[]` | `['middleware']` | Ignore layers of specified type. | -| `requestHook` | `KoaRequestCustomAttributeFunction` | `(span, info) => {}` | Function for adding custom attributes to Koa middleware layers. Receives params: `Span, KoaRequestInfo`. | +| Options | Type | Example | Description | +| ------------------ | ----------------------------------- | -------------------- | -------------------------------------------------------------------------------------------------------- | +| `ignoreLayersType` | `KoaLayerType[]` | `['middleware']` | Ignore layers of specified type. | +| `requestHook` | `KoaRequestCustomAttributeFunction` | `(span, info) => {}` | Function for adding custom attributes to Koa middleware layers. Receives params: `Span, KoaRequestInfo`. | `ignoreLayersType` accepts an array of `KoaLayerType` which can take the following string values: From 48d3fa97406db8113befbd87b5da9023515e4efe Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Thu, 25 May 2023 19:41:58 +0200 Subject: [PATCH 64/72] Update instrumentation.ts (#1518) --- .../src/instrumentation.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts b/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts index 0b59b4bfb..1a12953fc 100644 --- a/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts +++ b/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts @@ -109,11 +109,12 @@ export class UserInteractionInstrumentation extends InstrumentationBase * Creates a new span * @param element * @param eventName + * @param parentSpan */ private _createSpan( element: EventTarget | null | undefined, eventName: EventName, - parentSpan?: api.Span | undefined + parentSpan?: api.Span ): api.Span | undefined { if (!(element instanceof HTMLElement)) { return undefined; From 0c12777c987151e8aaf26c54111d7157982890c3 Mon Sep 17 00:00:00 2001 From: Marc Pichler Date: Fri, 26 May 2023 09:11:53 +0200 Subject: [PATCH 65/72] deps(exporter-logs-otlp-http): remove unused rimraf devDependency (#3840) --- experimental/packages/exporter-logs-otlp-http/package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/experimental/packages/exporter-logs-otlp-http/package.json b/experimental/packages/exporter-logs-otlp-http/package.json index 684402a44..b6f4808b4 100644 --- a/experimental/packages/exporter-logs-otlp-http/package.json +++ b/experimental/packages/exporter-logs-otlp-http/package.json @@ -89,7 +89,6 @@ "karma-webpack": "4.0.2", "mocha": "10.0.0", "nyc": "15.1.0", - "rimraf": "3.0.2", "sinon": "14.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", From 2fb1b3064e0f9a3f977b5a61ca6845a82ab97312 Mon Sep 17 00:00:00 2001 From: Marc Pichler Date: Fri, 26 May 2023 21:28:00 +0200 Subject: [PATCH 66/72] chore(instrumentation-grpc): add 'grpc' deprecation notice postinstall script (#3833) --- experimental/CHANGELOG.md | 3 +++ .../packages/opentelemetry-instrumentation-grpc/package.json | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 94ecff2d2..7bdbe404c 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -7,6 +7,9 @@ All notable changes to experimental packages in this project will be documented ### :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 + deprecated for over 1 year, please migrate to [`@grpc/grpc-js`](https://www.npmjs.com/package/@grpc/grpc-js) to continue receiving telemetry. ### :rocket: (Enhancement) diff --git a/experimental/packages/opentelemetry-instrumentation-grpc/package.json b/experimental/packages/opentelemetry-instrumentation-grpc/package.json index a61d995bf..1e63a6dd0 100644 --- a/experimental/packages/opentelemetry-instrumentation-grpc/package.json +++ b/experimental/packages/opentelemetry-instrumentation-grpc/package.json @@ -18,7 +18,8 @@ "watch": "tsc --build --watch", "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", "prewatch": "node ../../../scripts/version-update.js", - "peer-api-check": "node ../../../scripts/peer-api-check.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.\\\");\"" }, "keywords": [ "opentelemetry", From a8ac8baa5129e3f9e10acd76c5990f98233a3306 Mon Sep 17 00:00:00 2001 From: Jorge Padilla Date: Tue, 30 May 2023 01:53:32 -0500 Subject: [PATCH 67/72] fix(semantic-conventions): update trace semantic conventions url (#3843) --- packages/opentelemetry-semantic-conventions/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/opentelemetry-semantic-conventions/README.md b/packages/opentelemetry-semantic-conventions/README.md index 9974e9117..bf2700473 100644 --- a/packages/opentelemetry-semantic-conventions/README.md +++ b/packages/opentelemetry-semantic-conventions/README.md @@ -38,4 +38,4 @@ Apache 2.0 - See [LICENSE][license-url] for more information. [npm-url]: https://www.npmjs.com/package/@opentelemetry/semantic-conventions [npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fsemantic-conventions.svg -[trace-semantic_conventions]: https://github.com/open-telemetry/opentelemetry-specification/tree/master/specification/trace/semantic_conventions +[trace-semantic_conventions]: https://github.com/open-telemetry/semantic-conventions/tree/main/specification/trace/semantic_conventions From 622955a95de2625b5fe711f3bc09cdfddaff8121 Mon Sep 17 00:00:00 2001 From: Aaron Abbott Date: Wed, 31 May 2023 01:54:13 -0400 Subject: [PATCH 68/72] feat(opencensus-shim) add require-in-the-middle hook to patch @opencensus/core (#3809) --- experimental/CHANGELOG.md | 1 + .../packages/shim-opencensus/README.md | 4 -- .../packages/shim-opencensus/package.json | 3 - .../packages/shim-opencensus/src/register.ts | 19 +++++ .../packages/shim-opencensus/src/shim.ts | 62 ++++++++++++++++ .../shim-opencensus/test/shim.test.ts | 72 +++++++++++++++++++ .../packages/shim-opencensus/test/util.ts | 18 +++-- 7 files changed, 167 insertions(+), 12 deletions(-) create mode 100644 experimental/packages/shim-opencensus/src/register.ts create mode 100644 experimental/packages/shim-opencensus/src/shim.ts create mode 100644 experimental/packages/shim-opencensus/test/shim.test.ts diff --git a/experimental/CHANGELOG.md b/experimental/CHANGELOG.md index 7bdbe404c..60a3bb266 100644 --- a/experimental/CHANGELOG.md +++ b/experimental/CHANGELOG.md @@ -17,6 +17,7 @@ All notable changes to experimental packages in this project will be documented * feat(exporter-logs-otlp-http): otlp-http exporter for logs. [#3764](https://github.com/open-telemetry/opentelemetry-js/pull/3764/) @fuaiyi * feat(otlp-trace-exporters): Add User-Agent header to OTLP trace exporters. [#3790](https://github.com/open-telemetry/opentelemetry-js/pull/3790) @JamieDanielson * feat(otlp-metric-exporters): Add User-Agent header to OTLP metric exporters. [#3806](https://github.com/open-telemetry/opentelemetry-js/pull/3806) @JamieDanielson +* feat(opencensus-shim): add OpenCensus trace shim [#3809](https://github.com/open-telemetry/opentelemetry-js/pull/3809) @aabmass ### :bug: (Bug Fix) diff --git a/experimental/packages/shim-opencensus/README.md b/experimental/packages/shim-opencensus/README.md index 63bea4df4..e614fccf3 100644 --- a/experimental/packages/shim-opencensus/README.md +++ b/experimental/packages/shim-opencensus/README.md @@ -3,10 +3,6 @@ [![NPM Published Version][npm-img]][npm-url] [![Apache License][license-image]][license-image] -> **Note** -> This package is in active development and has not yet been released. You cannot install this -> package from NPM yet. - OpenCensus shim allows existing OpenCensus instrumentation to report to OpenTelemetry. This allows you to incrementally migrate your existing OpenCensus instrumentation to OpenTelemetry. More details are available in the [OpenCensus Compatibility Specification](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/compatibility/opencensus.md). diff --git a/experimental/packages/shim-opencensus/package.json b/experimental/packages/shim-opencensus/package.json index 1dae7c52a..202f8e2d6 100644 --- a/experimental/packages/shim-opencensus/package.json +++ b/experimental/packages/shim-opencensus/package.json @@ -2,7 +2,6 @@ "name": "@opentelemetry/shim-opencensus", "version": "0.39.1", "description": "OpenCensus to OpenTelemetry shim", - "private": true, "main": "build/src/index.js", "types": "build/src/index.d.ts", "repository": "open-telemetry/opentelemetry-js", @@ -45,7 +44,6 @@ "access": "public" }, "devDependencies": { - "@opentelemetry/core": "1.13.0", "@opentelemetry/context-async-hooks": "1.13.0", "@opentelemetry/sdk-trace-base": "1.13.0", "@opencensus/core": "0.1.0", @@ -65,7 +63,6 @@ "@opentelemetry/api": "^1.0.0" }, "dependencies": { - "@opentelemetry/context-async-hooks": "1.13.0", "@opentelemetry/core": "1.13.0", "require-in-the-middle": "^7.0.0", "semver": "^7.3.5" diff --git a/experimental/packages/shim-opencensus/src/register.ts b/experimental/packages/shim-opencensus/src/register.ts new file mode 100644 index 000000000..c07f54c2b --- /dev/null +++ b/experimental/packages/shim-opencensus/src/register.ts @@ -0,0 +1,19 @@ +/* + * 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 { installShim } from './shim'; + +installShim(); diff --git a/experimental/packages/shim-opencensus/src/shim.ts b/experimental/packages/shim-opencensus/src/shim.ts new file mode 100644 index 000000000..0426561c7 --- /dev/null +++ b/experimental/packages/shim-opencensus/src/shim.ts @@ -0,0 +1,62 @@ +/* + * 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 { diag, trace, Tracer } from '@opentelemetry/api'; +import { Hook } from 'require-in-the-middle'; +import * as oc from '@opencensus/core'; + +import { ShimTracer } from './ShimTracer'; +import { VERSION } from './version'; + +type CoreTracerConstructor = new ( + ...args: ConstructorParameters +) => oc.Tracer; + +let hook: Hook | null = null; + +interface OpenCensusShimConfig { + /** + * An optional OpenTelemetry tracer to send OpenCensus spans to. If not provided, one will be + * created for you. + */ + tracer?: Tracer | undefined; +} + +/** + * Patches OpenCensus to redirect all instrumentation to OpenTelemetry. Uses + * require-in-the-middle to override the implementation of OpenCensus's CoreTracer. + * + * Use {@link uninstallShim} to undo the effects of this function. + * + * @param config + */ +export function installShim({ + tracer = trace.getTracer('@opentelemetry/shim-opencensus', VERSION), +}: OpenCensusShimConfig = {}): void { + diag.info('Installing OpenCensus shim require-in-the-middle hook'); + + hook = new Hook(['@opencensus/core'], exports => { + const CoreTracer: CoreTracerConstructor = ShimTracer.bind(null, tracer); + return { + ...exports, + CoreTracer, + }; + }); +} + +export function uninstallShim(): void { + hook?.unhook(); +} diff --git a/experimental/packages/shim-opencensus/test/shim.test.ts b/experimental/packages/shim-opencensus/test/shim.test.ts new file mode 100644 index 000000000..525a8026a --- /dev/null +++ b/experimental/packages/shim-opencensus/test/shim.test.ts @@ -0,0 +1,72 @@ +/* + * 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 { installShim, uninstallShim } from '../src/shim'; +import { ShimTracer } from '../src'; +import { CoreTracer as OrigCoreTracer } from '@opencensus/core'; +import { withTestTracerProvider } from './util'; +import { trace } from '@opentelemetry/api'; + +describe('shim', () => { + beforeEach(uninstallShim); + afterEach(uninstallShim); + afterEach(() => { + trace.disable(); + }); + + describe('installShim', () => { + it('should patch the @opencensus/core CoreTracer to create instances of the ShimTracer', () => { + installShim(); + const { CoreTracer } = require('@opencensus/core'); + assert.notStrictEqual(CoreTracer, OrigCoreTracer); + assert(new CoreTracer() instanceof ShimTracer); + }); + + it('should use the provided Tracer', async () => { + const spans = await withTestTracerProvider(tracerProvider => { + const tracer = tracerProvider.getTracer('test'); + installShim({ tracer }); + const CoreTracer: typeof OrigCoreTracer = + require('@opencensus/core').CoreTracer; + const coreTracer = new CoreTracer(); + coreTracer.startChildSpan().end(); + }); + assert.strictEqual(spans.length, 1); + }); + + it('should use the global OpenTelemetry TracerProvider if none provided', async () => { + installShim(); + const spans = await withTestTracerProvider(tracerProvider => { + trace.setGlobalTracerProvider(tracerProvider); + const CoreTracer: typeof OrigCoreTracer = + require('@opencensus/core').CoreTracer; + const coreTracer = new CoreTracer(); + coreTracer.startChildSpan().end(); + }); + assert.strictEqual(spans.length, 1); + }); + }); + + describe('uninstallShim', () => { + it('should restore the original CoreTracer', () => { + installShim(); + uninstallShim(); + const { CoreTracer } = require('@opencensus/core'); + assert.strictEqual(CoreTracer, OrigCoreTracer); + }); + }); +}); diff --git a/experimental/packages/shim-opencensus/test/util.ts b/experimental/packages/shim-opencensus/test/util.ts index b28baca4d..842525ea0 100644 --- a/experimental/packages/shim-opencensus/test/util.ts +++ b/experimental/packages/shim-opencensus/test/util.ts @@ -27,10 +27,21 @@ import { AsyncHooksContextManager, AsyncLocalStorageContextManager, } from '@opentelemetry/context-async-hooks'; -import { Tracer, context } from '@opentelemetry/api'; +import { Tracer, TracerProvider, context } from '@opentelemetry/api'; export async function withTestTracer( func: (shimTracer: ShimTracer, otelTracer: Tracer) => void | Promise +): Promise { + return await withTestTracerProvider(tracerProvider => + func( + new ShimTracer(tracerProvider.getTracer('test-shim')), + tracerProvider.getTracer('test-otel') + ) + ); +} + +export async function withTestTracerProvider( + func: (otelTracerProvider: TracerProvider) => void | Promise ): Promise { const tracerProvider = new BasicTracerProvider({ sampler: new AlwaysOnSampler(), @@ -38,10 +49,7 @@ export async function withTestTracer( const inMemExporter = new InMemorySpanExporter(); tracerProvider.addSpanProcessor(new SimpleSpanProcessor(inMemExporter)); - await func( - new ShimTracer(tracerProvider.getTracer('test-shim')), - tracerProvider.getTracer('test-otel') - ); + await func(tracerProvider); await tracerProvider.forceFlush(); const spans = inMemExporter.getFinishedSpans(); From b5fab9a583eb9c2abd6540cbde6762525d7033bf Mon Sep 17 00:00:00 2001 From: Tristan Sloughter Date: Wed, 31 May 2023 02:02:05 -0600 Subject: [PATCH 69/72] chore(examples-web): bump web examples dependencies and use exporter-trace-otlp-http (#1520) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Gerhard Stöbich Co-authored-by: Marc Pichler --- examples/web/examples/document-load/index.js | 2 +- examples/web/examples/meta/index.js | 2 +- .../web/examples/user-interaction/index.js | 2 +- examples/web/package.json | 33 +++++++++---------- 4 files changed, 18 insertions(+), 21 deletions(-) diff --git a/examples/web/examples/document-load/index.js b/examples/web/examples/document-load/index.js index f000d7a86..0cb675508 100644 --- a/examples/web/examples/document-load/index.js +++ b/examples/web/examples/document-load/index.js @@ -4,7 +4,7 @@ import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; import { DocumentLoadInstrumentation } from '@opentelemetry/instrumentation-document-load'; import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request'; import { ZoneContextManager } from '@opentelemetry/context-zone'; -import { OTLPTraceExporter } from '@opentelemetry/exporter-otlp-http'; +import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http'; import { B3Propagator } from '@opentelemetry/propagator-b3'; import { CompositePropagator, W3CTraceContextPropagator } from '@opentelemetry/core'; import { registerInstrumentations } from '@opentelemetry/instrumentation'; diff --git a/examples/web/examples/meta/index.js b/examples/web/examples/meta/index.js index aabd30991..621779d0d 100644 --- a/examples/web/examples/meta/index.js +++ b/examples/web/examples/meta/index.js @@ -1,7 +1,7 @@ import { ConsoleSpanExporter, SimpleSpanProcessor } from '@opentelemetry/sdk-trace-base'; import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; import { ZoneContextManager } from '@opentelemetry/context-zone'; -import { OTLPTraceExporter } from '@opentelemetry/exporter-otlp-http'; +import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http'; import { B3Propagator } from '@opentelemetry/propagator-b3'; import { getWebAutoInstrumentations } from '@opentelemetry/auto-instrumentations-web'; import { registerInstrumentations } from '@opentelemetry/instrumentation'; diff --git a/examples/web/examples/user-interaction/index.js b/examples/web/examples/user-interaction/index.js index 751804471..34606eb0e 100644 --- a/examples/web/examples/user-interaction/index.js +++ b/examples/web/examples/user-interaction/index.js @@ -2,7 +2,7 @@ import { ConsoleSpanExporter, SimpleSpanProcessor } from '@opentelemetry/sdk-tra import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; import { UserInteractionInstrumentation } from '@opentelemetry/instrumentation-user-interaction'; import { ZoneContextManager } from '@opentelemetry/context-zone'; -import { OTLPTraceExporter } from '@opentelemetry/exporter-otlp-http'; +import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http'; import { B3Propagator } from '@opentelemetry/propagator-b3'; import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request'; import { registerInstrumentations } from '@opentelemetry/instrumentation'; diff --git a/examples/web/package.json b/examples/web/package.json index 1e083db6b..0bc5691c5 100644 --- a/examples/web/package.json +++ b/examples/web/package.json @@ -27,29 +27,26 @@ "url": "https://github.com/open-telemetry/opentelemetry-js-contrib/issues" }, "devDependencies": { - "@babel/core": "^7.12.10", - "babel-loader": "^8.2.2", + "@babel/core": "^7.21.8", + "babel-loader": "^8.3.0", "ts-loader": "^6.2.2", - "webpack": "^4.44.2", + "webpack": "^4.46.0", "webpack-cli": "^3.3.12", - "webpack-dev-server": "^3.11.0", + "webpack-dev-server": "^3.11.3", "webpack-merge": "^4.2.2" }, "dependencies": { - "@opentelemetry/api": "^1.0.3", - "@opentelemetry/auto-instrumentations-web": "~0.26.0", - "@opentelemetry/context-zone": "~1.0.0", - "@opentelemetry/core": "~1.0.0", - "@opentelemetry/exporter-otlp-http": "~0.26.0", - "@opentelemetry/instrumentation": "~0.26.0", - "@opentelemetry/instrumentation-document-load": "~0.26.0", - "@opentelemetry/instrumentation-user-interaction": "~0.26.0", - "@opentelemetry/instrumentation-xml-http-request": "~0.26.0", - "@opentelemetry/propagator-b3": "~1.0.0", - "@opentelemetry/resources": "~1.0.0", - "@opentelemetry/sdk-trace-base": "~1.0.0", - "@opentelemetry/sdk-trace-web": "~1.0.0", - "@opentelemetry/semantic-conventions": "~1.0.0" + "@opentelemetry/api": "^1.4.1", + "@opentelemetry/auto-instrumentations-web": "^0.32.2", + "@opentelemetry/context-zone": "^1.13.0", + "@opentelemetry/exporter-trace-otlp-http": "^0.39.1", + "@opentelemetry/instrumentation": "^0.39.1", + "@opentelemetry/instrumentation-document-load": "^0.32.2", + "@opentelemetry/instrumentation-user-interaction": "^0.32.3", + "@opentelemetry/instrumentation-xml-http-request": "^0.39.1", + "@opentelemetry/propagator-b3": "^1.13.0", + "@opentelemetry/sdk-trace-web": "^1.13.0", + "@opentelemetry/semantic-conventions": "^1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib#readme" } From a4f0b42f1eeea0db25bd8da46d437fda0ad263fd Mon Sep 17 00:00:00 2001 From: Marc Pichler Date: Wed, 31 May 2023 15:54:39 +0200 Subject: [PATCH 70/72] fix(exporter-logs-otlp-grpc): make test server use port 1503 (#3842) --- .../exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 c229d5e5d..48f1fa865 100644 --- a/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts +++ b/experimental/packages/exporter-logs-otlp-grpc/test/OTLPLogExporter.test.ts @@ -44,7 +44,7 @@ const includeDirs = [ path.resolve(__dirname, '../../otlp-grpc-exporter-base/protos'), ]; -const address = 'localhost:1501'; +const address = 'localhost:1503'; type TestParams = { useTLS?: boolean; From e074fa8d8c2dc3c1fb1c9cc9907b433f1e3638a6 Mon Sep 17 00:00:00 2001 From: opentelemetrybot <107717825+opentelemetrybot@users.noreply.github.com> Date: Wed, 31 May 2023 15:56:41 +0000 Subject: [PATCH 71/72] [AutoMerge] Identifying and fixing merge issues from staged repos Processing otel-js - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/.eslintignore - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/.eslintrc.js - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/.npmignore - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/LICENSE - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/README.md - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/karma.conf.js - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/package.json - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/index.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/browser/index.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/config.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/index.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/node/index.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts - Re-Copying master file - (xM) /auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/config.test.ts - Re-Copying master file ...truncated... Processing otel-js-contrib --- .../experimental}/packages/exporter-logs-otlp-http/.eslintignore | 0 .../experimental}/packages/exporter-logs-otlp-http/.eslintrc.js | 0 .../js/experimental}/packages/exporter-logs-otlp-http/.npmignore | 0 .../js/experimental}/packages/exporter-logs-otlp-http/LICENSE | 0 .../js/experimental}/packages/exporter-logs-otlp-http/README.md | 0 .../experimental}/packages/exporter-logs-otlp-http/karma.conf.js | 0 .../experimental}/packages/exporter-logs-otlp-http/package.json | 0 .../experimental}/packages/exporter-logs-otlp-http/src/index.ts | 0 .../src/platform/browser/OTLPLogExporter.ts | 0 .../exporter-logs-otlp-http/src/platform/browser/index.ts | 0 .../packages/exporter-logs-otlp-http/src/platform/config.ts | 0 .../packages/exporter-logs-otlp-http/src/platform/index.ts | 0 .../exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts | 0 .../packages/exporter-logs-otlp-http/src/platform/node/index.ts | 0 .../exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts | 0 .../exporter-logs-otlp-http/test/browser/index-webpack.ts | 0 .../packages/exporter-logs-otlp-http/test/config.test.ts | 0 .../exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts | 0 .../packages/exporter-logs-otlp-http/tsconfig.esm.json | 0 .../packages/exporter-logs-otlp-http/tsconfig.esnext.json | 0 .../experimental}/packages/exporter-logs-otlp-http/tsconfig.json | 0 21 files changed, 0 insertions(+), 0 deletions(-) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/.eslintignore (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/.eslintrc.js (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/.npmignore (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/LICENSE (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/README.md (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/karma.conf.js (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/package.json (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/src/index.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/src/platform/browser/index.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/src/platform/config.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/src/platform/index.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/src/platform/node/index.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/test/config.test.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/tsconfig.esm.json (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/tsconfig.esnext.json (100%) rename {experimental => auto-merge/js/experimental}/packages/exporter-logs-otlp-http/tsconfig.json (100%) diff --git a/experimental/packages/exporter-logs-otlp-http/.eslintignore b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/.eslintignore similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/.eslintignore rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/.eslintignore diff --git a/experimental/packages/exporter-logs-otlp-http/.eslintrc.js b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/.eslintrc.js similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/.eslintrc.js rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/.eslintrc.js diff --git a/experimental/packages/exporter-logs-otlp-http/.npmignore b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/.npmignore similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/.npmignore rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/.npmignore diff --git a/experimental/packages/exporter-logs-otlp-http/LICENSE b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/LICENSE similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/LICENSE rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/LICENSE diff --git a/experimental/packages/exporter-logs-otlp-http/README.md b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/README.md similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/README.md rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/README.md diff --git a/experimental/packages/exporter-logs-otlp-http/karma.conf.js b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/karma.conf.js similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/karma.conf.js rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/karma.conf.js diff --git a/experimental/packages/exporter-logs-otlp-http/package.json b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/package.json similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/package.json rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/package.json diff --git a/experimental/packages/exporter-logs-otlp-http/src/index.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/index.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/src/index.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/index.ts diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/browser/OTLPLogExporter.ts diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/browser/index.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/browser/index.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/src/platform/browser/index.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/browser/index.ts diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/config.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/config.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/src/platform/config.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/config.ts diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/index.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/index.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/src/platform/index.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/index.ts diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/node/OTLPLogExporter.ts diff --git a/experimental/packages/exporter-logs-otlp-http/src/platform/node/index.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/node/index.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/src/platform/node/index.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/src/platform/node/index.ts diff --git a/experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/browser/OTLPLogExporter.test.ts diff --git a/experimental/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/browser/index-webpack.ts diff --git a/experimental/packages/exporter-logs-otlp-http/test/config.test.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/config.test.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/test/config.test.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/config.test.ts diff --git a/experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/test/node/OTLPLogExporter.test.ts diff --git a/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/tsconfig.esm.json diff --git a/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/tsconfig.esnext.json diff --git a/experimental/packages/exporter-logs-otlp-http/tsconfig.json b/auto-merge/js/experimental/packages/exporter-logs-otlp-http/tsconfig.json similarity index 100% rename from experimental/packages/exporter-logs-otlp-http/tsconfig.json rename to auto-merge/js/experimental/packages/exporter-logs-otlp-http/tsconfig.json From 83cd761bc9dd3af820d6c208051b2cbb2720ee4b Mon Sep 17 00:00:00 2001 From: opentelemetrybot <107717825+opentelemetrybot@users.noreply.github.com> Date: Tue, 6 Jun 2023 15:11:31 +0000 Subject: [PATCH 72/72] [AutoMerge] staging @ [cdb8c8e...](https://github.com/open-telemetry/opentelemetry-sandbox-web-js/commit/cdb8c8e9c75503bc964b968b009fc5c8e61572fb) ### Moving package from auto-merge/js/api to pkgs/api/ ### Moving package from auto-merge/js/packages/opentelemetry-semantic-conventions/ to pkgs/semantic-conventions/ ### Moving package from auto-merge/js/packages/opentelemetry-core/ to pkgs/core/ ### Moving package from auto-merge/js/packages/opentelemetry-resources/ to pkgs/resources/ ### Moving package from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/ to pkgs/context/zone-peer-dep/ ### Moving package from auto-merge/js/packages/opentelemetry-context-zone/ to pkgs/context/zone/ ### Moving package from auto-merge/js/packages/opentelemetry-propagator-b3/ to pkgs/propagators/b3/ ### Moving package from auto-merge/js/packages/opentelemetry-sdk-trace-base/ to pkgs/sdk/trace/base/ ### Moving package from auto-merge/js/packages/opentelemetry-sdk-trace-web/ to pkgs/sdk/trace/web/ ### Moving package from auto-merge/js/packages/sdk-metrics/ to pkgs/sdk/metrics/ ### Moving package from auto-merge/js/experimental/packages/sdk-logs/ to pkgs/sdk/logs/ ### Moving package from auto-merge/js/experimental/packages/otlp-exporter-base to pkgs/exporters/otlp/base/ ### Moving package from auto-merge/js/experimental/packages/opentelemetry-instrumentation/ to pkgs/instrumentations/instrumentation/ ### Moving package from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/ to pkgs/instrumentations/web/fetch ### Moving package from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/ to pkgs/instrumentations/web/xhr ### Moving package from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/ to pkgs/instrumentations/web/document-load/ ### Moving package from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/ to pkgs/instrumentations/web/user-interaction/ ### Moving package from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/ to pkgs/instrumentations/web/long-task/ ### Moving package from auto-merge/contrib/metapackages/auto-instrumentations-web/ to pkgs/instrumentations/web/auto/ ### Moving package from auto-merge/js/experimental/packages/opentelemetry-browser-detector/ to pkgs/detectors/browser/ ### Moving package from auto-merge/js/experimental/packages/api-logs/ to pkgs/api-logs/ ### Moving package from auto-merge/js/experimental/packages/api-events/ to pkgs/api-events/ --- .../.markdownlint.json => .markdownlint.json | 0 .../auto-instrumentations-web/package.json | 68 ---------- .../package.json | 86 ------------ .../package.json | 89 ------------- .../package.json | 92 ------------- auto-merge/js/api/.eslintrc.js | 8 -- .../package.json | 77 ----------- .../tsconfig.esm.json | 22 ---- .../tsconfig.esnext.json | 22 ---- .../tsconfig.json | 23 ---- .../package.json | 96 -------------- .../tsconfig.esm.json | 37 ------ .../tsconfig.esnext.json | 37 ------ .../tsconfig.json | 38 ------ .../package.json | 96 -------------- .../tsconfig.esm.json | 37 ------ .../tsconfig.esnext.json | 37 ------ .../tsconfig.json | 38 ------ .../tsconfig.esm.json | 19 --- .../tsconfig.esnext.json | 19 --- .../tsconfig.json | 20 --- .../packages/otlp-exporter-base/package.json | 86 ------------ .../otlp-exporter-base/tsconfig.esm.json | 19 --- .../otlp-exporter-base/tsconfig.esnext.json | 19 --- .../packages/otlp-exporter-base/tsconfig.json | 20 --- .../packages/sdk-logs/package.json | 97 -------------- .../packages/sdk-logs/tsconfig.esm.json | 25 ---- .../packages/sdk-logs/tsconfig.esnext.json | 25 ---- .../packages/sdk-logs/tsconfig.json | 25 ---- .../package.json | 88 ------------- .../tsconfig.esm.json | 19 --- .../opentelemetry-context-zone/.eslintrc.js | 7 - .../opentelemetry-context-zone/package.json | 81 ------------ .../tsconfig.esm.json | 19 --- .../tsconfig.esnext.json | 19 --- .../opentelemetry-core/tsconfig.esm.json | 19 --- .../opentelemetry-core/tsconfig.esnext.json | 19 --- .../opentelemetry-propagator-b3/package.json | 73 ----------- .../tsconfig.esm.json | 19 --- .../opentelemetry-resources/tsconfig.esm.json | 22 ---- .../tsconfig.esnext.json | 22 ---- .../opentelemetry-resources/tsconfig.json | 23 ---- .../tsconfig.esm.json | 25 ---- .../tsconfig.esnext.json | 25 ---- .../tsconfig.json | 26 ---- .../opentelemetry-sdk-trace-web/package.json | 99 -------------- .../tsconfig.esm.json | 34 ----- .../tsconfig.esnext.json | 34 ----- .../opentelemetry-sdk-trace-web/tsconfig.json | 35 ----- .../package.json | 65 --------- .../js/packages/sdk-metrics/package.json | 85 ------------ .../js/packages/sdk-metrics/tsconfig.esm.json | 22 ---- .../packages/sdk-metrics/tsconfig.esnext.json | 22 ---- .../js/packages/sdk-metrics/tsconfig.json | 23 ---- .../js/eslint.config.js => eslint.config.js | 0 auto-merge/js/karma.base.js => karma.base.js | 0 karma.debug.js | 57 ++++++++ .../js/karma.webpack.js => karma.webpack.js | 0 .../js/karma.worker.js => karma.worker.js | 0 .../api-events}/.eslintignore | 0 .../packages => pkgs}/api-events/.eslintrc.js | 2 +- .../js/api => pkgs/api-events}/LICENSE | 0 .../packages => pkgs}/api-events/README.md | 2 +- .../api-events}/karma.conf.js | 0 pkgs/api-events/karma.debug.conf.js | 22 ++++ .../packages => pkgs}/api-events/package.json | 67 ++++++---- pkgs/api-events/rollup.config.js | 21 +++ .../api-events/src/NoopEventEmitter.ts | 0 .../src/NoopEventEmitterProvider.ts | 0 .../api-events/src/api/events.ts | 0 .../packages => pkgs}/api-events/src/index.ts | 0 .../api-events/src/internal/global-utils.ts | 0 .../src/platform/browser/globalThis.ts | 0 .../api-events}/src/platform/browser/index.ts | 0 .../api-events}/src/platform/index.ts | 0 .../src/platform/node/globalThis.ts | 0 .../api-events}/src/platform/node/index.ts | 0 .../api-events/src/types/Event.ts | 2 +- .../api-events/src/types/EventEmitter.ts | 0 .../src/types/EventEmitterOptions.ts | 2 +- .../src/types/EventEmitterProvider.ts | 0 .../api-events/test/api/api.test.ts | 0 .../api-events}/test/index-webpack.ts | 0 .../api-events/test/internal/global.test.ts | 0 .../noop-event-emitter-provider.test.ts | 0 .../noop-event-emitter.test.ts | 0 .../api-events}/tsconfig.esm.json | 5 +- .../api-events}/tsconfig.esnext.json | 5 +- .../api-events}/tsconfig.json | 5 +- .../api-logs}/.eslintignore | 0 .../packages => pkgs}/api-logs/.eslintrc.js | 2 +- .../api-events => pkgs/api-logs}/LICENSE | 0 .../packages => pkgs}/api-logs/README.md | 2 +- .../api-logs}/karma.conf.js | 0 pkgs/api-logs/karma.debug.conf.js | 22 ++++ .../packages => pkgs}/api-logs/package.json | 67 ++++++---- pkgs/api-logs/rollup.config.js | 21 +++ .../api-logs/src/NoopLogger.ts | 0 .../api-logs/src/NoopLoggerProvider.ts | 0 .../api-logs/src/api/logs.ts | 0 .../packages => pkgs}/api-logs/src/index.ts | 0 .../api-logs/src/internal/global-utils.ts | 0 .../src/platform/browser/globalThis.ts | 0 .../api-logs}/src/platform/browser/index.ts | 0 .../api-logs}/src/platform/index.ts | 0 .../api-logs}/src/platform/node/globalThis.ts | 0 .../api-logs}/src/platform/node/index.ts | 0 .../api-logs/src/types/LogRecord.ts | 2 +- .../api-logs/src/types/Logger.ts | 0 .../api-logs/src/types/LoggerOptions.ts | 2 +- .../api-logs/src/types/LoggerProvider.ts | 0 .../api-logs/test/api/api.test.ts | 0 .../api-logs}/test/index-webpack.ts | 0 .../api-logs/test/internal/global.test.ts | 0 .../noop-logger-provider.test.ts | 0 .../noop-implementations/noop-logger.test.ts | 0 .../api-logs}/tsconfig.esm.json | 5 +- .../api-logs}/tsconfig.esnext.json | 7 +- .../js/api => pkgs/api-logs}/tsconfig.json | 7 +- .../api}/.eslintignore | 0 .../api}/.eslintrc.js | 4 +- {auto-merge/js => pkgs}/api/CHANGELOG.md | 0 .../packages/api-logs => pkgs/api}/LICENSE | 0 {auto-merge/js => pkgs}/api/README.md | 4 +- .../api}/karma.conf.js | 0 pkgs/api/karma.debug.conf.js | 22 ++++ .../api}/karma.worker.js | 0 {auto-merge/js => pkgs}/api/package.json | 68 ++++++---- pkgs/api/rollup.config.js | 21 +++ .../js => pkgs}/api/src/api/context.ts | 0 {auto-merge/js => pkgs}/api/src/api/diag.ts | 0 .../js => pkgs}/api/src/api/metrics.ts | 0 .../js => pkgs}/api/src/api/propagation.ts | 0 {auto-merge/js => pkgs}/api/src/api/trace.ts | 0 .../api/src/baggage/context-helpers.ts | 0 .../api/src/baggage/internal/baggage-impl.ts | 0 .../api/src/baggage/internal/symbol.ts | 0 .../js => pkgs}/api/src/baggage/types.ts | 0 .../js => pkgs}/api/src/baggage/utils.ts | 0 .../js => pkgs}/api/src/common/Attributes.ts | 0 .../js => pkgs}/api/src/common/Exception.ts | 0 .../js => pkgs}/api/src/common/Time.ts | 0 .../js => pkgs}/api/src/context-api.ts | 0 .../api/src/context/NoopContextManager.ts | 0 .../js => pkgs}/api/src/context/context.ts | 0 .../js => pkgs}/api/src/context/types.ts | 0 {auto-merge/js => pkgs}/api/src/diag-api.ts | 0 .../api/src/diag/ComponentLogger.ts | 2 +- .../js => pkgs}/api/src/diag/consoleLogger.ts | 0 .../api/src/diag/internal/logLevelLogger.ts | 0 .../api/src/diag/internal/noopLogger.ts | 0 {auto-merge/js => pkgs}/api/src/diag/types.ts | 0 {auto-merge/js => pkgs}/api/src/index.ts | 0 .../api/src/internal/global-utils.ts | 0 .../js => pkgs}/api/src/internal/semver.ts | 0 .../js => pkgs}/api/src/metrics-api.ts | 0 .../js => pkgs}/api/src/metrics/Meter.ts | 0 .../api/src/metrics/MeterProvider.ts | 0 .../js => pkgs}/api/src/metrics/Metric.ts | 0 .../js => pkgs}/api/src/metrics/NoopMeter.ts | 0 .../api/src/metrics/NoopMeterProvider.ts | 0 .../api/src/metrics/ObservableResult.ts | 0 .../api/src/platform/browser/globalThis.ts | 0 .../api}/src/platform/browser/index.ts | 0 .../api}/src/platform/index.ts | 0 .../api}/src/platform/node/globalThis.ts | 0 .../api}/src/platform/node/index.ts | 0 .../js => pkgs}/api/src/propagation-api.ts | 0 .../src/propagation/NoopTextMapPropagator.ts | 0 .../api/src/propagation/TextMapPropagator.ts | 0 {auto-merge/js => pkgs}/api/src/trace-api.ts | 0 .../api/src/trace/NonRecordingSpan.ts | 0 .../js => pkgs}/api/src/trace/NoopTracer.ts | 0 .../api/src/trace/NoopTracerProvider.ts | 0 .../js => pkgs}/api/src/trace/ProxyTracer.ts | 0 .../api/src/trace/ProxyTracerProvider.ts | 0 .../js => pkgs}/api/src/trace/Sampler.ts | 0 .../api/src/trace/SamplingResult.ts | 0 .../js => pkgs}/api/src/trace/SpanOptions.ts | 0 .../js => pkgs}/api/src/trace/attributes.ts | 0 .../api/src/trace/context-utils.ts | 0 .../api/src/trace/internal/tracestate-impl.ts | 0 .../trace/internal/tracestate-validators.ts | 0 .../api/src/trace/internal/utils.ts | 0 .../api/src/trace/invalid-span-constants.ts | 0 {auto-merge/js => pkgs}/api/src/trace/link.ts | 0 {auto-merge/js => pkgs}/api/src/trace/span.ts | 0 .../js => pkgs}/api/src/trace/span_context.ts | 0 .../js => pkgs}/api/src/trace/span_kind.ts | 0 .../api/src/trace/spancontext-utils.ts | 0 .../js => pkgs}/api/src/trace/status.ts | 0 .../js => pkgs}/api/src/trace/trace_flags.ts | 0 .../js => pkgs}/api/src/trace/trace_state.ts | 0 .../js => pkgs}/api/src/trace/tracer.ts | 0 .../api/src/trace/tracer_options.ts | 0 .../api/src/trace/tracer_provider.ts | 0 .../api/test/common/api/api.test.ts | 0 .../api/test/common/baggage/Baggage.test.ts | 0 .../common/context/NoopContextManager.test.ts | 0 .../test/common/diag/ComponentLogger.test.ts | 0 .../test/common/diag/consoleLogger.test.ts | 0 .../api/test/common/diag/logLevel.test.ts | 0 .../api/test/common/diag/logger.test.ts | 0 .../api/test/common/internal/global.test.ts | 0 .../api/test/common/internal/semver.test.ts | 0 .../api/test/common/internal/version.test.ts | 0 .../api/test/common/metrics/Metric.test.ts | 0 .../noop-implementations/noop-meter.test.ts | 0 .../noop-implementations/noop-span.test.ts | 0 .../noop-tracer-provider.test.ts | 0 .../noop-implementations/noop-tracer.test.ts | 0 .../proxy-tracer.test.ts | 0 .../common/trace/spancontext-utils.test.ts | 0 .../trace/tracestate-validators.test.ts | 0 .../api/test/common/trace/tracestate.test.ts | 0 .../js => pkgs}/api/test/index-webpack.ts | 0 .../api/test/index-webpack.worker.ts | 0 .../test/tree-shaking/tree-shaking.test.ts | 0 pkgs/api/tsconfig.esm.json | 11 ++ .../api}/tsconfig.esnext.json | 10 +- .../api}/tsconfig.json | 10 +- .../context/zone-peer-dep}/.eslintignore | 0 .../context/zone-peer-dep}/.eslintrc.js | 2 +- .../context/zone-peer-dep}/LICENSE | 0 .../context/zone-peer-dep}/README.md | 6 +- .../context/zone-peer-dep}/karma.conf.js | 0 .../context/zone-peer-dep/karma.debug.conf.js | 22 ++++ pkgs/context/zone-peer-dep/package.json | 111 ++++++++++++++++ pkgs/context/zone-peer-dep/rollup.config.js | 21 +++ .../zone-peer-dep}/src/ZoneContextManager.ts | 2 +- .../context/zone-peer-dep}/src/index.ts | 0 .../context/zone-peer-dep}/src/types.ts | 0 .../context/zone-peer-dep}/src/util.ts | 0 .../test/ZoneContextManager.test.ts | 2 +- .../zone-peer-dep}/test/index-webpack.ts | 0 .../context/zone-peer-dep}/test/utils.test.ts | 0 .../context/zone-peer-dep}/tsconfig.esm.json | 10 +- .../zone-peer-dep}/tsconfig.esnext.json | 10 +- .../context/zone-peer-dep}/tsconfig.json | 9 +- .../context/zone}/.eslintignore | 0 .../context/zone}/.eslintrc.js | 2 +- .../context/zone}/LICENSE | 0 .../context/zone}/README.md | 6 +- pkgs/context/zone/package.json | 107 +++++++++++++++ pkgs/context/zone/rollup.config.js | 21 +++ .../context/zone}/src/index.ts | 2 +- .../context/zone}/tsconfig.esm.json | 10 +- .../context/zone}/tsconfig.esnext.json | 10 +- .../context/zone}/tsconfig.json | 9 +- .../api-logs => pkgs/core}/.eslintignore | 0 .../core}/.eslintrc.js | 0 .../core}/.npmignore | 0 .../core}/LICENSE | 0 .../core}/README.md | 12 +- .../core}/karma.conf.js | 0 pkgs/core/karma.debug.conf.js | 22 ++++ pkgs/core/karma.webpack.js | 42 ++++++ .../core}/karma.worker.js | 8 +- .../core}/package.json | 79 ++++++----- pkgs/core/rollup.config.js | 21 +++ .../core}/src/ExportResult.ts | 0 .../core}/src/baggage/constants.ts | 0 .../propagation/W3CBaggagePropagator.ts | 2 +- .../core}/src/baggage/utils.ts | 2 +- .../core}/src/common/anchored-clock.ts | 0 .../core}/src/common/attributes.ts | 2 +- .../core}/src/common/global-error-handler.ts | 2 +- .../core}/src/common/logging-error-handler.ts | 2 +- .../core}/src/common/time.ts | 2 +- .../core}/src/common/types.ts | 2 +- .../core}/src/index.ts | 0 .../core}/src/internal/exporter.ts | 2 +- .../core}/src/internal/validators.ts | 0 .../src/platform/browser/RandomIdGenerator.ts | 0 .../core}/src/platform/browser/environment.ts | 0 .../core}/src/platform/browser/globalThis.ts | 0 .../src/platform/browser/hex-to-base64.ts | 0 .../core}/src/platform/browser/index.ts | 0 .../core}/src/platform/browser/performance.ts | 0 .../core}/src/platform/browser/sdk-info.ts | 2 +- .../core}/src/platform/browser/timer-util.ts | 0 .../core}/src/platform/index.ts | 0 .../src/platform/node/RandomIdGenerator.ts | 0 .../core}/src/platform/node/environment.ts | 0 .../core}/src/platform/node/globalThis.ts | 0 .../core}/src/platform/node/hex-to-base64.ts | 0 .../core}/src/platform/node/index.ts | 0 .../core}/src/platform/node/performance.ts | 0 .../core}/src/platform/node/sdk-info.ts | 2 +- .../core}/src/platform/node/timer-util.ts | 0 .../core}/src/propagation/composite.ts | 2 +- .../core}/src/trace/IdGenerator.ts | 0 .../core}/src/trace/TraceState.ts | 2 +- .../src/trace/W3CTraceContextPropagator.ts | 2 +- .../core}/src/trace/rpc-metadata.ts | 2 +- .../src/trace/sampler/AlwaysOffSampler.ts | 2 +- .../src/trace/sampler/AlwaysOnSampler.ts | 2 +- .../src/trace/sampler/ParentBasedSampler.ts | 2 +- .../trace/sampler/TraceIdRatioBasedSampler.ts | 2 +- .../core}/src/trace/suppress-tracing.ts | 2 +- .../core}/src/utils/callback.ts | 0 .../core}/src/utils/environment.ts | 2 +- .../core}/src/utils/lodash.merge.ts | 0 .../core}/src/utils/merge.ts | 0 .../core}/src/utils/promise.ts | 0 .../core}/src/utils/sampling.ts | 0 .../core}/src/utils/timeout.ts | 0 .../core}/src/utils/url.ts | 0 .../core}/src/utils/wrap.ts | 0 .../test/baggage/W3CBaggagePropagator.test.ts | 4 +- .../core}/test/common/anchored-clock.test.ts | 0 .../core}/test/common/attributes.test.ts | 0 .../test/common/global-error-handler.test.ts | 2 +- .../test/common/logging-error-handler.test.ts | 2 +- .../core}/test/common/time.test.ts | 2 +- .../core}/test/index-webpack.ts | 0 pkgs/core/test/index-webpack.worker.ts | 20 +++ .../core}/test/internal/exporter.test.ts | 0 .../core}/test/internal/validators.test.ts | 0 .../test/platform/RandomIdGenerator.test.ts | 0 .../test/platform/browser/environment.test.ts | 0 .../core}/test/platform/hex-to-base64.test.ts | 0 .../core}/test/propagation/composite.test.ts | 4 +- .../sdk-logs => pkgs/core}/test/test-utils.ts | 0 .../core}/test/trace/AlwaysOffSampler.test.ts | 2 +- .../core}/test/trace/AlwaysOnSampler.test.ts | 2 +- .../test/trace/ParentBasedSampler.test.ts | 4 +- .../trace/TraceIdRatioBasedSampler.test.ts | 2 +- .../trace/W3CTraceContextPropagator.test.ts | 2 +- .../test-package/foo/bar/internal.d.ts | 0 .../fixtures/test-package/foo/bar/internal.js | 0 .../test/trace/fixtures/test-package/index.js | 0 .../trace/fixtures/test-package/package.json | 0 .../core}/test/trace/tracestate.test.ts | 0 .../core}/test/utils/callback.test.ts | 0 .../core}/test/utils/environment.test.ts | 2 +- .../core}/test/utils/merge.test.ts | 0 .../core}/test/utils/promise.test.ts | 0 .../core}/test/utils/url.test.ts | 0 .../core}/test/utils/wrap.test.ts | 0 pkgs/core/tsconfig.esm.json | 11 ++ .../core}/tsconfig.esnext.json | 10 +- .../core}/tsconfig.json | 10 +- .../detectors/browser}/.eslintignore | 0 .../detectors/browser}/.eslintrc.js | 0 .../detectors/browser}/.npmignore | 0 .../detectors/browser}/LICENSE | 0 .../detectors/browser}/README.md | 6 +- .../detectors/browser}/karma.conf.js | 0 pkgs/detectors/browser/karma.debug.conf.js | 22 ++++ pkgs/detectors/browser/package.json | 108 +++++++++++++++ pkgs/detectors/browser/rollup.config.js | 21 +++ .../detectors/browser}/src/BrowserDetector.ts | 6 +- .../detectors/browser}/src/index.ts | 0 .../detectors/browser}/src/types.ts | 0 .../browser}/test/BrowserDetector.test.ts | 2 +- .../detectors/browser}/test/index-webpack.ts | 0 .../detectors/browser}/test/util.ts | 2 +- .../detectors/browser}/tsconfig.esm.json | 4 +- pkgs/detectors/browser/tsconfig.esnext.json | 11 ++ .../detectors/browser}/tsconfig.json | 7 +- .../exporters/otlp/base}/.eslintignore | 0 .../exporters/otlp/base}/.eslintrc.js | 2 +- .../exporters/otlp/base}/.npmignore | 0 .../exporters/otlp/base}/LICENSE | 0 .../exporters/otlp/base}/README.md | 0 .../exporters/otlp/base}/karma.conf.js | 4 +- pkgs/exporters/otlp/base/karma.debug.conf.js | 22 ++++ pkgs/exporters/otlp/base/karma.webpack.js | 42 ++++++ pkgs/exporters/otlp/base/karma.worker.js | 24 ++++ pkgs/exporters/otlp/base/package.json | 116 +++++++++++++++++ pkgs/exporters/otlp/base/rollup.config.js | 21 +++ .../otlp/base}/src/OTLPExporterBase.ts | 4 +- .../exporters/otlp/base}/src/index.ts | 0 .../browser/OTLPExporterBrowserBase.ts | 4 +- .../otlp/base}/src/platform/browser/index.ts | 0 .../otlp/base}/src/platform/browser/util.ts | 2 +- .../otlp/base}/src/platform/index.ts | 0 .../src/platform/node/OTLPExporterNodeBase.ts | 4 +- .../otlp/base}/src/platform/node/index.ts | 0 .../otlp/base}/src/platform/node/types.ts | 0 .../otlp/base}/src/platform/node/util.ts | 4 +- .../exporters/otlp/base}/src/types.ts | 0 .../exporters/otlp/base}/src/util.ts | 4 +- .../otlp/base}/test/browser/index-webpack.ts | 0 .../otlp/base}/test/browser/util.test.ts | 0 .../exporters/otlp/base}/test/certs/ca.crt | 0 .../exporters/otlp/base}/test/certs/ca.key | 0 .../otlp/base}/test/certs/client.crt | 0 .../otlp/base}/test/certs/client.csr | 0 .../otlp/base}/test/certs/client.key | 0 .../otlp/base}/test/certs/regenerate.sh | 0 .../otlp/base}/test/certs/server.crt | 0 .../otlp/base}/test/certs/server.csr | 0 .../otlp/base}/test/certs/server.key | 0 .../test/common/CollectorExporter.test.ts | 2 +- .../otlp/base}/test/common/util.test.ts | 2 +- .../otlp/base/test/index-webpack.worker.ts | 20 +++ .../otlp/base}/test/node/util.test.ts | 2 +- .../exporters/otlp/base}/test/testHelper.ts | 2 +- pkgs/exporters/otlp/base/tsconfig.esm.json | 11 ++ pkgs/exporters/otlp/base/tsconfig.esnext.json | 11 ++ pkgs/exporters/otlp/base/tsconfig.json | 12 ++ .../instrumentation}/.eslintignore | 0 .../instrumentation}/.eslintrc.js | 0 .../instrumentation}/.gitignore | 0 .../instrumentation}/.npmignore | 0 .../instrumentations/instrumentation}/LICENSE | 0 .../instrumentation}/README.md | 22 ++-- .../instrumentation}/hook.mjs | 0 .../instrumentation}/karma.conf.js | 0 .../instrumentation/karma.debug.conf.js | 22 ++++ .../instrumentation/karma.webpack.js | 42 ++++++ .../instrumentation/karma.worker.js | 24 ++++ .../instrumentation}/package.json | 74 +++++++---- .../instrumentation/rollup.config.js | 21 +++ .../instrumentation}/src/autoLoader.ts | 2 +- .../instrumentation}/src/autoLoaderUtils.ts | 2 +- .../instrumentation}/src/index.ts | 0 .../instrumentation}/src/instrumentation.ts | 2 +- .../src/platform/browser/index.ts | 0 .../src/platform/browser/instrumentation.ts | 0 .../instrumentation}/src/platform/index.ts | 0 .../src/platform/node/ModuleNameTrie.ts | 0 .../node/RequireInTheMiddleSingleton.ts | 0 .../src/platform/node/index.ts | 0 .../src/platform/node/instrumentation.ts | 2 +- .../instrumentationNodeModuleDefinition.ts | 0 .../node/instrumentationNodeModuleFile.ts | 0 .../src/platform/node/types.ts | 0 .../instrumentation}/src/types.ts | 2 +- .../instrumentation}/src/types_internal.ts | 2 +- .../instrumentation}/src/utils.ts | 0 .../test/browser/index-webpack.ts | 0 .../test/common/Instrumentation.test.ts | 2 +- .../test/common/autoLoader.test.ts | 2 +- .../test/common/autoLoaderUtils.test.ts | 0 .../test/common/utils.test.ts | 0 .../test/index-webpack.worker.ts | 20 +++ .../test/node/EsmInstrumentation.test.mjs | 0 .../test/node/InstrumentationBase.test.ts | 4 +- .../InstrumentationNodeModuleFile.test.ts | 0 .../test/node/ModuleNameTrie.test.ts | 0 .../node/RequireInTheMiddleSingleton.test.ts | 0 .../node/fixtures/absolutePathTestFixture.js | 0 .../test/node/node_modules/.gitkeep | 0 .../node_modules/test-esm-module/package.json | 0 .../node_modules/test-esm-module/src/index.js | 0 .../instrumentation/tsconfig.esm.json | 11 ++ .../instrumentation/tsconfig.esnext.json | 11 ++ .../instrumentation}/tsconfig.json | 7 +- .../instrumentations/web/auto}/.eslintignore | 0 pkgs/instrumentations/web/auto/.eslintrc.js | 8 ++ .../instrumentations/web/auto}/.npmignore | 0 .../instrumentations/web/auto}/CHANGELOG.md | 0 .../instrumentations/web/auto}/LICENSE | 0 .../instrumentations/web/auto}/README.md | 16 +-- .../instrumentations/web/auto}/karma.conf.js | 4 +- .../web/auto/karma.debug.conf.js | 22 ++++ pkgs/instrumentations/web/auto/package.json | 92 +++++++++++++ .../web/auto/rollup.config.js | 21 +++ .../instrumentations/web/auto}/src/index.ts | 0 .../instrumentations/web/auto}/src/utils.ts | 20 +-- .../web/auto}/test/index-webpack.ts | 0 .../web/auto}/test/utils.test.ts | 22 ++-- .../web/auto/tsconfig.esm.json | 12 ++ .../instrumentations/web/auto}/tsconfig.json | 2 +- .../web/document-load}/.eslintignore | 0 .../web/document-load}/.eslintrc.js | 2 +- .../web/document-load}/CHANGELOG.md | 0 .../web/document-load}/LICENSE | 0 .../web/document-load}/README.md | 14 +- .../web/document-load}/karma.conf.js | 4 +- .../web/document-load/karma.debug.conf.js | 22 ++++ .../web/document-load/package.json | 110 ++++++++++++++++ .../web/document-load/rollup.config.js | 21 +++ .../src/enums/AttributeNames.ts | 0 .../document-load}/src/enums/EventNames.ts | 0 .../web/document-load}/src/index.ts | 0 .../web/document-load}/src/instrumentation.ts | 12 +- .../web/document-load}/src/types.ts | 4 +- .../web/document-load}/src/utils.ts | 6 +- .../document-load}/test/documentLoad.test.ts | 10 +- .../web/document-load}/test/index-webpack.ts | 0 .../web/document-load}/tsconfig.esm.json | 7 +- .../web/document-load}/tsconfig.json | 2 +- .../instrumentations/web/fetch}/.eslintignore | 0 .../instrumentations/web/fetch}/.eslintrc.js | 2 +- .../instrumentations/web/fetch}/.npmignore | 0 .../instrumentations/web/fetch}/LICENSE | 0 .../instrumentations/web/fetch}/README.md | 8 +- .../web/fetch}/images/trace1.png | Bin .../web/fetch}/images/trace2.png | Bin .../web/fetch}/images/trace3.png | Bin .../instrumentations/web/fetch}/karma.conf.js | 4 +- .../web/fetch/karma.debug.conf.js | 22 ++++ .../web/fetch/karma.webpack.js | 42 ++++++ .../web/fetch/karma.worker.js | 24 ++++ pkgs/instrumentations/web/fetch/package.json | 119 +++++++++++++++++ .../web/fetch/rollup.config.js | 21 +++ .../web/fetch}/src/enums/AttributeNames.ts | 0 .../instrumentations/web/fetch}/src/fetch.ts | 14 +- .../instrumentations/web/fetch}/src/index.ts | 0 .../instrumentations/web/fetch}/src/types.ts | 2 +- .../web/fetch}/test/fetch.test.ts | 16 +-- .../web/fetch}/test/index-webpack.ts | 0 .../web/fetch/test/index-webpack.worker.ts | 20 +++ .../web/fetch/tsconfig.esm.json | 11 ++ .../web/fetch/tsconfig.esnext.json | 11 ++ pkgs/instrumentations/web/fetch/tsconfig.json | 12 ++ .../web/long-task}/.eslintignore | 0 .../web/long-task}/.eslintrc.js | 2 +- .../web/long-task}/CHANGELOG.md | 0 .../instrumentations/web/long-task}/README.md | 8 +- .../web/long-task}/karma.conf.js | 4 +- .../web/long-task/karma.debug.conf.js | 22 ++++ .../web/long-task/package.json | 112 ++++++++++++++++ .../web/long-task/rollup.config.js | 21 +++ .../web/long-task}/src/index.ts | 0 .../web/long-task}/src/instrumentation.ts | 8 +- .../web/long-task}/src/types.ts | 4 +- .../web/long-task}/test/compatibility.test.ts | 8 +- .../web/long-task}/test/index-webpack.ts | 0 .../web/long-task}/test/longTask.test.ts | 12 +- .../web/long-task}/test/util.ts | 2 +- .../web/long-task}/tsconfig.esm.json | 2 +- .../web/long-task}/tsconfig.json | 2 +- .../web/user-interaction}/.eslintignore | 0 .../web/user-interaction}/.eslintrc.js | 2 +- .../web/user-interaction}/CHANGELOG.md | 0 .../web/user-interaction}/LICENSE | 0 .../web/user-interaction}/README.md | 12 +- .../user-interaction}/images/click-sync.jpg | Bin .../web/user-interaction}/images/click.jpg | Bin .../user-interaction}/images/main-sync.jpg | Bin .../web/user-interaction}/images/main.jpg | Bin .../web/user-interaction}/karma.conf.js | 4 +- .../web/user-interaction/karma.debug.conf.js | 22 ++++ .../web/user-interaction/package.json | 115 ++++++++++++++++ .../web/user-interaction/rollup.config.js | 21 +++ .../src/enums/AttributeNames.ts | 0 .../web/user-interaction}/src/index.ts | 0 .../user-interaction}/src/instrumentation.ts | 10 +- .../user-interaction}/src/internal-types.ts | 2 +- .../web/user-interaction}/src/types.ts | 4 +- .../web/user-interaction}/test/helper.test.ts | 2 +- .../user-interaction}/test/index-webpack.ts | 0 .../test/userInteraction.nozone.test.ts | 12 +- .../test/userInteraction.test.ts | 12 +- .../web/user-interaction}/tsconfig.esm.json | 2 +- .../web/user-interaction}/tsconfig.json | 2 +- .../instrumentations/web/xhr}/.eslintignore | 0 .../instrumentations/web/xhr}/.eslintrc.js | 2 +- .../instrumentations/web/xhr}/.npmignore | 0 .../instrumentations/web/xhr}/LICENSE | 0 .../instrumentations/web/xhr}/README.md | 8 +- .../instrumentations/web/xhr}/images/cors.jpg | Bin .../instrumentations/web/xhr}/images/main.jpg | Bin .../web/xhr}/images/request.jpg | Bin pkgs/instrumentations/web/xhr/karma.conf.js | 24 ++++ .../web/xhr/karma.debug.conf.js | 22 ++++ pkgs/instrumentations/web/xhr/package.json | 119 +++++++++++++++++ .../instrumentations/web/xhr/rollup.config.js | 21 +++ .../web/xhr}/src/enums/AttributeNames.ts | 0 .../web/xhr}/src/enums/EventNames.ts | 0 .../instrumentations/web/xhr}/src/index.ts | 0 .../instrumentations/web/xhr}/src/types.ts | 2 +- .../instrumentations/web/xhr}/src/xhr.ts | 12 +- .../web/xhr}/test/index-webpack.ts | 0 .../web/xhr}/test/unmocked.test.ts | 10 +- .../web/xhr}/test/xhr.test.ts | 16 +-- .../web/xhr/tsconfig.esm.json | 11 ++ .../web/xhr/tsconfig.esnext.json | 11 ++ pkgs/instrumentations/web/xhr/tsconfig.json | 12 ++ .../propagators/b3}/.eslintignore | 0 .../propagators/b3}/.eslintrc.js | 0 .../propagators/b3}/.npmignore | 0 .../propagators/b3}/LICENSE | 0 .../propagators/b3}/README.md | 14 +- .../propagators/b3/karma.browser.conf.js | 7 +- pkgs/propagators/b3/karma.debug.conf.js | 22 ++++ pkgs/propagators/b3/karma.webpack.js | 42 ++++++ pkgs/propagators/b3/package.json | 106 +++++++++++++++ pkgs/propagators/b3/rollup.config.js | 21 +++ .../propagators/b3}/src/B3MultiPropagator.ts | 4 +- .../propagators/b3}/src/B3Propagator.ts | 4 +- .../propagators/b3}/src/B3SinglePropagator.ts | 4 +- .../propagators/b3}/src/common.ts | 2 +- .../propagators/b3}/src/constants.ts | 0 .../propagators/b3}/src/index.ts | 0 .../propagators/b3}/src/types.ts | 0 .../b3}/test/B3MultiPropagator.test.ts | 6 +- .../propagators/b3}/test/B3Propagator.test.ts | 4 +- .../b3}/test/B3SinglePropagator.test.ts | 4 +- pkgs/propagators/b3/test/index-webpack.ts | 20 +++ pkgs/propagators/b3/tsconfig.esm.json | 11 ++ pkgs/propagators/b3/tsconfig.esnext.json | 11 ++ pkgs/propagators/b3/tsconfig.json | 12 ++ .../resources}/.eslintignore | 0 .../resources}/.eslintrc.js | 0 .../resources}/.npmignore | 0 .../resources}/LICENSE | 0 .../resources}/README.md | 4 +- .../resources}/karma.conf.js | 0 pkgs/resources/karma.debug.conf.js | 22 ++++ .../resources}/karma.worker.js | 0 .../resources}/package.json | 79 +++++++---- pkgs/resources/rollup.config.js | 21 +++ .../resources}/src/IResource.ts | 0 .../resources}/src/Resource.ts | 6 +- .../resources}/src/config.ts | 0 .../resources}/src/detect-resources.ts | 2 +- .../src/detectors/BrowserDetector.ts | 0 .../src/detectors/BrowserDetectorSync.ts | 4 +- .../resources}/src/detectors/EnvDetector.ts | 0 .../src/detectors/EnvDetectorSync.ts | 6 +- .../resources}/src/detectors/NoopDetector.ts | 0 .../src/detectors/NoopDetectorSync.ts | 0 .../resources}/src/detectors/index.ts | 0 .../resources}/src/index.ts | 0 .../src/platform/browser/HostDetector.ts | 0 .../src/platform/browser/HostDetectorSync.ts | 0 .../src/platform/browser/OSDetector.ts | 0 .../src/platform/browser/OSDetectorSync.ts | 0 .../src/platform/browser/ProcessDetector.ts | 0 .../platform/browser/ProcessDetectorSync.ts | 0 .../platform/browser/default-service-name.ts | 0 .../resources}/src/platform/browser/index.ts | 0 .../resources}/src/platform/index.ts | 0 .../src/platform/node/HostDetector.ts | 0 .../src/platform/node/HostDetectorSync.ts | 2 +- .../src/platform/node/OSDetector.ts | 0 .../src/platform/node/OSDetectorSync.ts | 2 +- .../src/platform/node/ProcessDetector.ts | 0 .../src/platform/node/ProcessDetectorSync.ts | 4 +- .../src/platform/node/default-service-name.ts | 0 .../resources}/src/platform/node/index.ts | 0 .../src/platform/node/machine-id/execAsync.ts | 0 .../node/machine-id/getMachineId-bsd.ts | 2 +- .../node/machine-id/getMachineId-darwin.ts | 2 +- .../node/machine-id/getMachineId-linux.ts | 2 +- .../machine-id/getMachineId-unsupported.ts | 2 +- .../node/machine-id/getMachineId-win.ts | 2 +- .../platform/node/machine-id/getMachineId.ts | 0 .../resources}/src/platform/node/utils.ts | 0 .../resources}/src/types.ts | 2 +- .../resources}/src/utils.ts | 0 .../resources}/test/Resource.test.ts | 8 +- .../resources}/test/detect-resources.test.ts | 2 +- .../detectors/browser/BrowserDetector.test.ts | 0 .../detectors/browser/EnvDetector.test.ts | 4 +- .../detectors/browser/HostDetector.test.ts | 0 .../test/detectors/browser/OSDetector.test.ts | 0 .../detectors/browser/ProcessDetector.test.ts | 0 .../detectors/node/BrowserDetector.test.ts | 0 .../test/detectors/node/EnvDetector.test.ts | 0 .../test/detectors/node/HostDetector.test.ts | 2 +- .../test/detectors/node/OSDetector.test.ts | 2 +- .../detectors/node/ProcessDetector.test.ts | 0 .../node/machine-id/getMachineId-bsd.test.ts | 0 .../machine-id/getMachineId-darwin.test.ts | 0 .../machine-id/getMachineId-linux.test.ts | 0 .../node/machine-id/getMachineId-win.test.ts | 0 .../resources}/test/index-webpack.ts | 0 .../resources}/test/index-webpack.worker.ts | 0 .../existing-detectors-1-9-1.test.ts | 0 .../test/resource-assertions.test.ts | 4 +- .../resources}/test/util.ts | 0 .../test/util/resource-assertions.ts | 4 +- .../resources}/test/util/sample-detector.ts | 2 +- pkgs/resources/tsconfig.esm.json | 11 ++ pkgs/resources/tsconfig.esnext.json | 11 ++ pkgs/resources/tsconfig.json | 12 ++ .../sdk/logs}/.eslintignore | 0 .../sdk-logs => pkgs/sdk/logs}/.eslintrc.js | 0 .../sdk/logs}/.npmignore | 0 .../sdk/logs}/LICENSE | 0 .../sdk-logs => pkgs/sdk/logs}/README.md | 4 +- .../sdk-logs => pkgs/sdk/logs}/karma.conf.js | 0 pkgs/sdk/logs/karma.debug.conf.js | 22 ++++ pkgs/sdk/logs/karma.webpack.js | 42 ++++++ pkgs/sdk/logs/karma.worker.js | 24 ++++ pkgs/sdk/logs/package.json | 123 ++++++++++++++++++ pkgs/sdk/logs/rollup.config.js | 21 +++ .../sdk/logs}/src/LogRecord.ts | 10 +- .../sdk/logs}/src/LogRecordProcessor.ts | 2 +- .../sdk-logs => pkgs/sdk/logs}/src/Logger.ts | 8 +- .../sdk/logs}/src/LoggerProvider.ts | 10 +- .../sdk/logs}/src/MultiLogRecordProcessor.ts | 2 +- .../sdk-logs => pkgs/sdk/logs}/src/config.ts | 2 +- .../src/export/BatchLogRecordProcessorBase.ts | 6 +- .../src/export/ConsoleLogRecordExporter.ts | 4 +- .../src/export/InMemoryLogRecordExporter.ts | 4 +- .../sdk/logs}/src/export/LogRecordExporter.ts | 2 +- .../src/export/NoopLogRecordProcessor.ts | 0 .../sdk/logs}/src/export/ReadableLogRecord.ts | 8 +- .../src/export/SimpleLogRecordProcessor.ts | 4 +- .../sdk-logs => pkgs/sdk/logs}/src/index.ts | 0 .../browser/export/BatchLogRecordProcessor.ts | 0 .../sdk/logs}/src/platform/browser/index.ts | 0 .../sdk/logs}/src/platform/index.ts | 0 .../node/export/BatchLogRecordProcessor.ts | 0 .../sdk/logs}/src/platform/node/index.ts | 0 .../sdk-logs => pkgs/sdk/logs}/src/types.ts | 2 +- .../export/BatchLogRecordProcessor.test.ts | 0 .../sdk/logs}/test/common/LogRecord.test.ts | 10 +- .../sdk/logs}/test/common/Logger.test.ts | 4 +- .../logs}/test/common/LoggerProvider.test.ts | 6 +- .../common/MultiLogRecordProcessor.test.ts | 0 .../export/BatchLogRecordProcessor.test.ts | 2 +- .../export/ConsoleLogRecordExporter.test.ts | 2 +- .../export/InMemoryLogRecordExporter.test.ts | 4 +- .../export/SimpleLogRecordProcessor.test.ts | 2 +- .../sdk/logs}/test/common/utils.ts | 0 .../sdk/logs}/test/index-webpack.ts | 0 .../sdk/logs}/test/index-webpack.worker.ts | 0 .../sdk/logs}/test/test-utils.ts | 0 pkgs/sdk/logs/tsconfig.esm.json | 11 ++ pkgs/sdk/logs/tsconfig.esnext.json | 11 ++ pkgs/sdk/logs/tsconfig.json | 11 ++ .../sdk/metrics}/.eslintignore | 0 .../sdk/metrics}/.eslintrc.js | 2 +- .../sdk/metrics}/.npmignore | 0 .../sdk/metrics}/LICENSE | 0 .../sdk/metrics}/README.md | 4 +- .../sdk/metrics}/karma.conf.js | 0 pkgs/sdk/metrics/karma.debug.conf.js | 22 ++++ pkgs/sdk/metrics/karma.webpack.js | 42 ++++++ pkgs/sdk/metrics/karma.worker.js | 24 ++++ pkgs/sdk/metrics/package.json | 111 ++++++++++++++++ pkgs/sdk/metrics/rollup.config.js | 21 +++ .../sdk/metrics}/src/InstrumentDescriptor.ts | 2 +- .../sdk/metrics}/src/Instruments.ts | 4 +- .../sdk/metrics}/src/Meter.ts | 2 +- .../sdk/metrics}/src/MeterProvider.ts | 4 +- .../sdk/metrics}/src/ObservableResult.ts | 2 +- .../sdk/metrics}/src/aggregator/Drop.ts | 2 +- .../src/aggregator/ExponentialHistogram.ts | 2 +- .../sdk/metrics}/src/aggregator/Histogram.ts | 2 +- .../sdk/metrics}/src/aggregator/LastValue.ts | 4 +- .../sdk/metrics}/src/aggregator/Sum.ts | 2 +- .../exponential-histogram/Buckets.ts | 0 .../mapping/ExponentMapping.ts | 0 .../mapping/LogarithmMapping.ts | 0 .../mapping/getMapping.ts | 0 .../exponential-histogram/mapping/ieee754.ts | 0 .../exponential-histogram/mapping/types.ts | 0 .../aggregator/exponential-histogram/util.ts | 0 .../sdk/metrics}/src/aggregator/index.ts | 0 .../sdk/metrics}/src/aggregator/types.ts | 2 +- ...AlignedHistogramBucketExemplarReservoir.ts | 2 +- .../exemplar/AlwaysSampleExemplarFilter.ts | 2 +- .../sdk/metrics}/src/exemplar/Exemplar.ts | 2 +- .../metrics}/src/exemplar/ExemplarFilter.ts | 2 +- .../src/exemplar/ExemplarReservoir.ts | 2 +- .../src/exemplar/NeverSampleExemplarFilter.ts | 2 +- .../SimpleFixedSizeExemplarReservoir.ts | 2 +- .../src/exemplar/WithTraceExemplarFilter.ts | 2 +- .../sdk/metrics}/src/exemplar/index.ts | 0 .../src/export/AggregationSelector.ts | 0 .../src/export/AggregationTemporality.ts | 0 .../src/export/ConsoleMetricExporter.ts | 2 +- .../src/export/InMemoryMetricExporter.ts | 4 +- .../sdk/metrics}/src/export/MetricData.ts | 6 +- .../sdk/metrics}/src/export/MetricExporter.ts | 2 +- .../sdk/metrics}/src/export/MetricProducer.ts | 0 .../sdk/metrics}/src/export/MetricReader.ts | 2 +- .../export/PeriodicExportingMetricReader.ts | 6 +- .../sdk/metrics}/src/index.ts | 0 .../metrics}/src/state/AsyncMetricStorage.ts | 2 +- .../src/state/DeltaMetricProcessor.ts | 2 +- .../sdk/metrics}/src/state/HashMap.ts | 2 +- .../src/state/MeterProviderSharedState.ts | 4 +- .../metrics}/src/state/MeterSharedState.ts | 4 +- .../sdk/metrics}/src/state/MetricCollector.ts | 2 +- .../sdk/metrics}/src/state/MetricStorage.ts | 2 +- .../src/state/MetricStorageRegistry.ts | 2 +- .../src/state/MultiWritableMetricStorage.ts | 2 +- .../metrics}/src/state/ObservableRegistry.ts | 2 +- .../metrics}/src/state/SyncMetricStorage.ts | 2 +- .../src/state/TemporalMetricProcessor.ts | 2 +- .../src/state/WritableMetricStorage.ts | 2 +- .../sdk/metrics}/src/types.ts | 0 .../sdk/metrics}/src/utils.ts | 4 +- .../sdk/metrics}/src/view/Aggregation.ts | 2 +- .../metrics}/src/view/AttributesProcessor.ts | 2 +- .../metrics}/src/view/InstrumentSelector.ts | 0 .../sdk/metrics}/src/view/MeterSelector.ts | 0 .../sdk/metrics}/src/view/Predicate.ts | 0 .../src/view/RegistrationConflicts.ts | 0 .../sdk/metrics}/src/view/View.ts | 0 .../sdk/metrics}/src/view/ViewRegistry.ts | 2 +- .../sdk/metrics}/test/ExemplarFilter.test.ts | 2 +- .../metrics}/test/ExemplarReservoir.test.ts | 4 +- .../test/InstrumentDescriptor.test.ts | 0 .../sdk/metrics}/test/Instruments.test.ts | 6 +- .../sdk/metrics}/test/Meter.test.ts | 2 +- .../sdk/metrics}/test/MeterProvider.test.ts | 0 .../metrics}/test/ObservableResult.test.ts | 2 +- .../sdk/metrics}/test/aggregator/Drop.test.ts | 2 +- .../aggregator/ExponentialHistogram.test.ts | 2 +- .../test/aggregator/Histogram.test.ts | 2 +- .../test/aggregator/LastValue.test.ts | 2 +- .../sdk/metrics}/test/aggregator/Sum.test.ts | 2 +- .../ExponentMapping.test.ts | 0 .../LogarithmMapping.test.ts | 0 .../exponential-histogram/getMapping.test.ts | 0 .../exponential-histogram/helpers.ts | 0 .../exponential-histogram/ieee754.test.ts | 0 .../test/export/ConsoleMetricExporter.test.ts | 4 +- .../export/InMemoryMetricExporter.test.ts | 6 +- .../metrics}/test/export/MetricReader.test.ts | 0 .../PeriodicExportingMetricReader.test.ts | 2 +- .../test/export/TestMetricExporter.ts | 2 +- .../test/export/TestMetricProducer.ts | 0 .../metrics}/test/export/TestMetricReader.ts | 0 .../sdk/metrics}/test/export/utils.ts | 0 .../sdk/metrics}/test/index-webpack.ts | 0 pkgs/sdk/metrics/test/index-webpack.worker.ts | 20 +++ ...wo-metric-readers-async-instrument.test.ts | 0 .../test/state/AsyncMetricStorage.test.ts | 2 +- .../test/state/DeltaMetricProcessor.test.ts | 2 +- .../sdk/metrics}/test/state/HashMap.test.ts | 2 +- .../test/state/MeterSharedState.test.ts | 0 .../test/state/MetricCollector.test.ts | 0 .../test/state/MetricStorageRegistry.test.ts | 4 +- .../state/MultiWritableMetricStorage.test.ts | 6 +- .../test/state/ObservableRegistry.test.ts | 0 .../test/state/SyncMetricStorage.test.ts | 2 +- .../state/TemporalMetricProcessor.test.ts | 2 +- .../sdk/metrics}/test/test-utils.ts | 0 .../sdk/metrics}/test/util.ts | 8 +- .../sdk/metrics}/test/utils.test.ts | 2 +- .../metrics}/test/view/Aggregation.test.ts | 0 .../test/view/AttributesProcessor.test.ts | 2 +- .../sdk/metrics}/test/view/Predicate.test.ts | 0 .../sdk/metrics}/test/view/View.test.ts | 0 .../metrics}/test/view/ViewRegistry.test.ts | 0 pkgs/sdk/metrics/tsconfig.esm.json | 11 ++ pkgs/sdk/metrics/tsconfig.esnext.json | 11 ++ pkgs/sdk/metrics/tsconfig.json | 12 ++ .../sdk/trace/base}/.eslintignore | 0 .../sdk/trace/base}/.eslintrc.js | 2 +- .../sdk/trace/base}/.npmignore | 0 .../sdk/trace/base}/LICENSE | 0 .../sdk/trace/base}/README.md | 12 +- .../api => pkgs/sdk/trace/base}/karma.conf.js | 4 +- pkgs/sdk/trace/base/karma.debug.conf.js | 22 ++++ .../sdk/trace/base}/karma.worker.js | 4 +- .../sdk/trace/base}/package.json | 88 ++++++++----- pkgs/sdk/trace/base/rollup.config.js | 21 +++ .../trace/base}/src/BasicTracerProvider.ts | 6 +- .../sdk/trace/base}/src/IdGenerator.ts | 0 .../sdk/trace/base}/src/MultiSpanProcessor.ts | 4 +- .../sdk/trace/base}/src/Sampler.ts | 2 +- .../sdk/trace/base}/src/Span.ts | 8 +- .../sdk/trace/base}/src/SpanProcessor.ts | 2 +- .../sdk/trace/base}/src/TimedEvent.ts | 2 +- .../sdk/trace/base}/src/Tracer.ts | 6 +- .../sdk/trace/base}/src/config.ts | 4 +- .../sdk/trace/base}/src/enums.ts | 0 .../src/export/BatchSpanProcessorBase.ts | 4 +- .../base}/src/export/ConsoleSpanExporter.ts | 2 +- .../base}/src/export/InMemorySpanExporter.ts | 2 +- .../base}/src/export/NoopSpanProcessor.ts | 2 +- .../trace/base}/src/export/ReadableSpan.ts | 6 +- .../base}/src/export/SimpleSpanProcessor.ts | 6 +- .../trace/base}/src/export/SpanExporter.ts | 2 +- .../sdk/trace/base}/src/index.ts | 0 .../src/platform/browser/RandomIdGenerator.ts | 0 .../browser/export/BatchSpanProcessor.ts | 0 .../trace/base}/src/platform/browser/index.ts | 0 .../sdk/trace/base}/src/platform/index.ts | 0 .../src/platform/node/RandomIdGenerator.ts | 0 .../node/export/BatchSpanProcessor.ts | 0 .../trace/base}/src/platform/node/index.ts | 0 .../base}/src/sampler/AlwaysOffSampler.ts | 0 .../base}/src/sampler/AlwaysOnSampler.ts | 0 .../base}/src/sampler/ParentBasedSampler.ts | 4 +- .../src/sampler/TraceIdRatioBasedSampler.ts | 2 +- .../sdk/trace/base}/src/types.ts | 4 +- .../sdk/trace/base}/src/utility.ts | 2 +- .../browser/export/BatchSpanProcessor.test.ts | 0 .../test/common/BasicTracerProvider.test.ts | 8 +- .../test/common/MultiSpanProcessor.test.ts | 2 +- .../trace/base}/test/common/Sampler.test.ts | 2 +- .../sdk/trace/base}/test/common/Span.test.ts | 6 +- .../trace/base}/test/common/Tracer.test.ts | 4 +- .../trace/base}/test/common/config.test.ts | 0 .../export/BatchSpanProcessorBase.test.ts | 8 +- .../common/export/ConsoleSpanExporter.test.ts | 4 +- .../export/InMemorySpanExporter.test.ts | 4 +- .../common/export/SimpleSpanProcessor.test.ts | 8 +- .../common/export/TestExporterWithDelay.ts | 2 +- .../common/export/TestRecordOnlySampler.ts | 0 .../common/export/TestStackContextManager.ts | 2 +- .../common/export/TestTracingSpanExporter.ts | 2 +- .../common/platform/RandomIdGenerator.test.ts | 0 .../common/sampler/AlwaysOffSampler.test.ts | 2 +- .../common/sampler/AlwaysOnSampler.test.ts | 2 +- .../common/sampler/ParentBasedSampler.test.ts | 4 +- .../sampler/TraceIdRatioBasedSampler.test.ts | 2 +- .../sdk/trace/base}/test/common/util.ts | 0 .../sdk/trace/base}/test/index-webpack.ts | 0 .../trace/base}/test/index-webpack.worker.ts | 0 pkgs/sdk/trace/base/tsconfig.esm.json | 11 ++ pkgs/sdk/trace/base/tsconfig.esnext.json | 11 ++ pkgs/sdk/trace/base/tsconfig.json | 12 ++ .../sdk/trace/web}/.eslintignore | 0 pkgs/sdk/trace/web/.eslintrc.js | 7 + .../sdk/trace/web}/.npmignore | 0 .../sdk/trace/web}/LICENSE | 0 .../sdk/trace/web}/README.md | 8 +- .../sdk/trace/web}/karma.conf.js | 4 +- pkgs/sdk/trace/web/karma.debug.conf.js | 22 ++++ pkgs/sdk/trace/web/karma.worker.js | 24 ++++ pkgs/sdk/trace/web/package.json | 119 +++++++++++++++++ pkgs/sdk/trace/web/rollup.config.js | 21 +++ .../sdk/trace/web}/src/StackContextManager.ts | 2 +- .../sdk/trace/web}/src/WebTracerProvider.ts | 2 +- .../web}/src/enums/PerformanceTimingNames.ts | 0 .../sdk/trace/web}/src/index.ts | 2 +- .../sdk/trace/web}/src/types.ts | 0 .../sdk/trace/web}/src/utils.ts | 6 +- .../web}/test/NodeGlobalsFoolProofing.test.ts | 6 +- .../web}/test/StackContextManager.test.ts | 2 +- .../trace/web}/test/WebTracerProvider.test.ts | 12 +- .../sdk/trace/web}/test/index-webpack.ts | 0 .../trace/web}/test/index-webpack.worker.ts | 0 .../sdk/trace/web}/test/registration.test.ts | 4 +- .../sdk/trace/web}/test/utils.test.ts | 8 +- .../sdk/trace/web}/test/window/utils.test.ts | 0 pkgs/sdk/trace/web/tsconfig.esm.json | 11 ++ pkgs/sdk/trace/web/tsconfig.esnext.json | 11 ++ pkgs/sdk/trace/web/tsconfig.json | 12 ++ .../semantic-conventions}/.eslintignore | 0 .../semantic-conventions}/.eslintrc.js | 0 .../semantic-conventions}/.npmignore | 0 .../semantic-conventions}/LICENSE | 0 .../semantic-conventions}/README.md | 2 +- pkgs/semantic-conventions/package.json | 99 ++++++++++++++ pkgs/semantic-conventions/rollup.config.js | 21 +++ .../semantic-conventions}/src/index.ts | 0 .../resource/SemanticResourceAttributes.ts | 0 .../src/resource/index.ts | 0 .../src/trace/SemanticAttributes.ts | 0 .../semantic-conventions}/src/trace/index.ts | 0 pkgs/semantic-conventions/tsconfig.esm.json | 11 ++ .../semantic-conventions/tsconfig.esnext.json | 11 ++ pkgs/semantic-conventions/tsconfig.json | 12 ++ .../prettier.config.js => prettier.config.js | 0 .../js/scripts => scripts}/generate-protos.js | 0 .../js/scripts => scripts}/peer-api-check.js | 0 .../js/scripts => scripts}/semconv/.gitignore | 0 .../scripts => scripts}/semconv/generate.sh | 0 .../templates/SemanticAttributes.ts.j2 | 0 .../update-ts-configs-constants.js | 0 .../scripts => scripts}/update-ts-configs.js | 0 .../js/scripts => scripts}/version-update.js | 5 +- ...ig.base.es5.json => tsconfig.base.es5.json | 0 ...ig.base.esm.json => tsconfig.base.esm.json | 0 ...e.esnext.json => tsconfig.base.esnext.json | 0 .../tsconfig.base.json => tsconfig.base.json | 0 .../js/tsconfig.esm.json => tsconfig.esm.json | 0 ...config.esnext.json => tsconfig.esnext.json | 0 auto-merge/js/tsconfig.json => tsconfig.json | 0 ...-polyfills.js => webpack.node-polyfills.js | 0 967 files changed, 4602 insertions(+), 3086 deletions(-) rename auto-merge/js/.markdownlint.json => .markdownlint.json (100%) delete mode 100644 auto-merge/contrib/metapackages/auto-instrumentations-web/package.json delete mode 100644 auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/package.json delete mode 100644 auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/package.json delete mode 100644 auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/package.json delete mode 100644 auto-merge/js/api/.eslintrc.js delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-browser-detector/package.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.esm.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.esnext.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/package.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.esm.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.esnext.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.esm.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.esnext.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.esm.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.esnext.json delete mode 100644 auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.json delete mode 100644 auto-merge/js/experimental/packages/otlp-exporter-base/package.json delete mode 100644 auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.esm.json delete mode 100644 auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.esnext.json delete mode 100644 auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.json delete mode 100644 auto-merge/js/experimental/packages/sdk-logs/package.json delete mode 100644 auto-merge/js/experimental/packages/sdk-logs/tsconfig.esm.json delete mode 100644 auto-merge/js/experimental/packages/sdk-logs/tsconfig.esnext.json delete mode 100644 auto-merge/js/experimental/packages/sdk-logs/tsconfig.json delete mode 100644 auto-merge/js/packages/opentelemetry-context-zone-peer-dep/package.json delete mode 100644 auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.esm.json delete mode 100644 auto-merge/js/packages/opentelemetry-context-zone/.eslintrc.js delete mode 100644 auto-merge/js/packages/opentelemetry-context-zone/package.json delete mode 100644 auto-merge/js/packages/opentelemetry-context-zone/tsconfig.esm.json delete mode 100644 auto-merge/js/packages/opentelemetry-context-zone/tsconfig.esnext.json delete mode 100644 auto-merge/js/packages/opentelemetry-core/tsconfig.esm.json delete mode 100644 auto-merge/js/packages/opentelemetry-core/tsconfig.esnext.json delete mode 100644 auto-merge/js/packages/opentelemetry-propagator-b3/package.json delete mode 100644 auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.esm.json delete mode 100644 auto-merge/js/packages/opentelemetry-resources/tsconfig.esm.json delete mode 100644 auto-merge/js/packages/opentelemetry-resources/tsconfig.esnext.json delete mode 100644 auto-merge/js/packages/opentelemetry-resources/tsconfig.json delete mode 100644 auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.esm.json delete mode 100644 auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.esnext.json delete mode 100644 auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.json delete mode 100644 auto-merge/js/packages/opentelemetry-sdk-trace-web/package.json delete mode 100644 auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.esm.json delete mode 100644 auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.esnext.json delete mode 100644 auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.json delete mode 100644 auto-merge/js/packages/opentelemetry-semantic-conventions/package.json delete mode 100644 auto-merge/js/packages/sdk-metrics/package.json delete mode 100644 auto-merge/js/packages/sdk-metrics/tsconfig.esm.json delete mode 100644 auto-merge/js/packages/sdk-metrics/tsconfig.esnext.json delete mode 100644 auto-merge/js/packages/sdk-metrics/tsconfig.json rename auto-merge/js/eslint.config.js => eslint.config.js (100%) rename auto-merge/js/karma.base.js => karma.base.js (100%) create mode 100644 karma.debug.js rename auto-merge/js/karma.webpack.js => karma.webpack.js (100%) rename auto-merge/js/karma.worker.js => karma.worker.js (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/api-events}/.eslintignore (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/.eslintrc.js (73%) rename {auto-merge/js/api => pkgs/api-events}/LICENSE (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/README.md (98%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/api-events}/karma.conf.js (100%) create mode 100644 pkgs/api-events/karma.debug.conf.js rename {auto-merge/js/experimental/packages => pkgs}/api-events/package.json (51%) create mode 100644 pkgs/api-events/rollup.config.js rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/NoopEventEmitter.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/NoopEventEmitterProvider.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/api/events.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/index.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/internal/global-utils.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/platform/browser/globalThis.ts (100%) rename {auto-merge/js/api => pkgs/api-events}/src/platform/browser/index.ts (100%) rename {auto-merge/js/api => pkgs/api-events}/src/platform/index.ts (100%) rename {auto-merge/js/api => pkgs/api-events}/src/platform/node/globalThis.ts (100%) rename {auto-merge/js/api => pkgs/api-events}/src/platform/node/index.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/types/Event.ts (95%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/types/EventEmitter.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/types/EventEmitterOptions.ts (93%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/src/types/EventEmitterProvider.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/test/api/api.test.ts (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/api-events}/test/index-webpack.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/test/internal/global.test.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/test/noop-implementations/noop-event-emitter-provider.test.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-events/test/noop-implementations/noop-event-emitter.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/api-events}/tsconfig.esm.json (89%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/api-events}/tsconfig.esnext.json (89%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/api-events}/tsconfig.json (87%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/api-logs}/.eslintignore (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/.eslintrc.js (73%) rename {auto-merge/js/experimental/packages/api-events => pkgs/api-logs}/LICENSE (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/README.md (98%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/api-logs}/karma.conf.js (100%) create mode 100644 pkgs/api-logs/karma.debug.conf.js rename {auto-merge/js/experimental/packages => pkgs}/api-logs/package.json (51%) create mode 100644 pkgs/api-logs/rollup.config.js rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/NoopLogger.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/NoopLoggerProvider.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/api/logs.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/index.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/internal/global-utils.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/platform/browser/globalThis.ts (100%) rename {auto-merge/js/experimental/packages/api-events => pkgs/api-logs}/src/platform/browser/index.ts (100%) rename {auto-merge/js/experimental/packages/api-events => pkgs/api-logs}/src/platform/index.ts (100%) rename {auto-merge/js/experimental/packages/api-events => pkgs/api-logs}/src/platform/node/globalThis.ts (100%) rename {auto-merge/js/experimental/packages/api-events => pkgs/api-logs}/src/platform/node/index.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/types/LogRecord.ts (96%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/types/Logger.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/types/LoggerOptions.ts (94%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/src/types/LoggerProvider.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/test/api/api.test.ts (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/api-logs}/test/index-webpack.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/test/internal/global.test.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/test/noop-implementations/noop-logger-provider.test.ts (100%) rename {auto-merge/js/experimental/packages => pkgs}/api-logs/test/noop-implementations/noop-logger.test.ts (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/api-logs}/tsconfig.esm.json (88%) rename {auto-merge/js/api => pkgs/api-logs}/tsconfig.esnext.json (71%) rename {auto-merge/js/api => pkgs/api-logs}/tsconfig.json (68%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/api}/.eslintignore (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/api}/.eslintrc.js (78%) rename {auto-merge/js => pkgs}/api/CHANGELOG.md (100%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/api}/LICENSE (100%) rename {auto-merge/js => pkgs}/api/README.md (98%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/api}/karma.conf.js (100%) create mode 100644 pkgs/api/karma.debug.conf.js rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/api}/karma.worker.js (100%) rename {auto-merge/js => pkgs}/api/package.json (54%) create mode 100644 pkgs/api/rollup.config.js rename {auto-merge/js => pkgs}/api/src/api/context.ts (100%) rename {auto-merge/js => pkgs}/api/src/api/diag.ts (100%) rename {auto-merge/js => pkgs}/api/src/api/metrics.ts (100%) rename {auto-merge/js => pkgs}/api/src/api/propagation.ts (100%) rename {auto-merge/js => pkgs}/api/src/api/trace.ts (100%) rename {auto-merge/js => pkgs}/api/src/baggage/context-helpers.ts (100%) rename {auto-merge/js => pkgs}/api/src/baggage/internal/baggage-impl.ts (100%) rename {auto-merge/js => pkgs}/api/src/baggage/internal/symbol.ts (100%) rename {auto-merge/js => pkgs}/api/src/baggage/types.ts (100%) rename {auto-merge/js => pkgs}/api/src/baggage/utils.ts (100%) rename {auto-merge/js => pkgs}/api/src/common/Attributes.ts (100%) rename {auto-merge/js => pkgs}/api/src/common/Exception.ts (100%) rename {auto-merge/js => pkgs}/api/src/common/Time.ts (100%) rename {auto-merge/js => pkgs}/api/src/context-api.ts (100%) rename {auto-merge/js => pkgs}/api/src/context/NoopContextManager.ts (100%) rename {auto-merge/js => pkgs}/api/src/context/context.ts (100%) rename {auto-merge/js => pkgs}/api/src/context/types.ts (100%) rename {auto-merge/js => pkgs}/api/src/diag-api.ts (100%) rename {auto-merge/js => pkgs}/api/src/diag/ComponentLogger.ts (97%) rename {auto-merge/js => pkgs}/api/src/diag/consoleLogger.ts (100%) rename {auto-merge/js => pkgs}/api/src/diag/internal/logLevelLogger.ts (100%) rename {auto-merge/js => pkgs}/api/src/diag/internal/noopLogger.ts (100%) rename {auto-merge/js => pkgs}/api/src/diag/types.ts (100%) rename {auto-merge/js => pkgs}/api/src/index.ts (100%) rename {auto-merge/js => pkgs}/api/src/internal/global-utils.ts (100%) rename {auto-merge/js => pkgs}/api/src/internal/semver.ts (100%) rename {auto-merge/js => pkgs}/api/src/metrics-api.ts (100%) rename {auto-merge/js => pkgs}/api/src/metrics/Meter.ts (100%) rename {auto-merge/js => pkgs}/api/src/metrics/MeterProvider.ts (100%) rename {auto-merge/js => pkgs}/api/src/metrics/Metric.ts (100%) rename {auto-merge/js => pkgs}/api/src/metrics/NoopMeter.ts (100%) rename {auto-merge/js => pkgs}/api/src/metrics/NoopMeterProvider.ts (100%) rename {auto-merge/js => pkgs}/api/src/metrics/ObservableResult.ts (100%) rename {auto-merge/js => pkgs}/api/src/platform/browser/globalThis.ts (100%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/api}/src/platform/browser/index.ts (100%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/api}/src/platform/index.ts (100%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/api}/src/platform/node/globalThis.ts (100%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/api}/src/platform/node/index.ts (100%) rename {auto-merge/js => pkgs}/api/src/propagation-api.ts (100%) rename {auto-merge/js => pkgs}/api/src/propagation/NoopTextMapPropagator.ts (100%) rename {auto-merge/js => pkgs}/api/src/propagation/TextMapPropagator.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace-api.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/NonRecordingSpan.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/NoopTracer.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/NoopTracerProvider.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/ProxyTracer.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/ProxyTracerProvider.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/Sampler.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/SamplingResult.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/SpanOptions.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/attributes.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/context-utils.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/internal/tracestate-impl.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/internal/tracestate-validators.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/internal/utils.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/invalid-span-constants.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/link.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/span.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/span_context.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/span_kind.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/spancontext-utils.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/status.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/trace_flags.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/trace_state.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/tracer.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/tracer_options.ts (100%) rename {auto-merge/js => pkgs}/api/src/trace/tracer_provider.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/api/api.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/baggage/Baggage.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/context/NoopContextManager.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/diag/ComponentLogger.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/diag/consoleLogger.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/diag/logLevel.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/diag/logger.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/internal/global.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/internal/semver.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/internal/version.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/metrics/Metric.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/noop-implementations/noop-meter.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/noop-implementations/noop-span.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/noop-implementations/noop-tracer-provider.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/noop-implementations/noop-tracer.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/proxy-implementations/proxy-tracer.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/trace/spancontext-utils.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/trace/tracestate-validators.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/common/trace/tracestate.test.ts (100%) rename {auto-merge/js => pkgs}/api/test/index-webpack.ts (100%) rename {auto-merge/js => pkgs}/api/test/index-webpack.worker.ts (100%) rename {auto-merge/js => pkgs}/api/test/tree-shaking/tree-shaking.test.ts (100%) create mode 100644 pkgs/api/tsconfig.esm.json rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/api}/tsconfig.esnext.json (67%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/api}/tsconfig.json (61%) rename {auto-merge/js/api => pkgs/context/zone-peer-dep}/.eslintignore (100%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/context/zone-peer-dep}/.eslintrc.js (78%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/context/zone-peer-dep}/LICENSE (100%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/context/zone-peer-dep}/README.md (93%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/context/zone-peer-dep}/karma.conf.js (100%) create mode 100644 pkgs/context/zone-peer-dep/karma.debug.conf.js create mode 100644 pkgs/context/zone-peer-dep/package.json create mode 100644 pkgs/context/zone-peer-dep/rollup.config.js rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/context/zone-peer-dep}/src/ZoneContextManager.ts (99%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/context/zone-peer-dep}/src/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/context/zone-peer-dep}/src/types.ts (100%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/context/zone-peer-dep}/src/util.ts (100%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/context/zone-peer-dep}/test/ZoneContextManager.test.ts (99%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/context/zone-peer-dep}/test/index-webpack.ts (100%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/context/zone-peer-dep}/test/utils.test.ts (100%) rename {auto-merge/js/experimental/packages/api-events => pkgs/context/zone-peer-dep}/tsconfig.esm.json (78%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/context/zone-peer-dep}/tsconfig.esnext.json (79%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/context/zone-peer-dep}/tsconfig.json (64%) rename {auto-merge/js/experimental/packages/api-events => pkgs/context/zone}/.eslintignore (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/context/zone}/.eslintrc.js (81%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/context/zone}/LICENSE (100%) rename {auto-merge/js/packages/opentelemetry-context-zone => pkgs/context/zone}/README.md (93%) create mode 100644 pkgs/context/zone/package.json create mode 100644 pkgs/context/zone/rollup.config.js rename {auto-merge/js/packages/opentelemetry-context-zone => pkgs/context/zone}/src/index.ts (90%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/context/zone}/tsconfig.esm.json (78%) rename {auto-merge/js/experimental/packages/api-events => pkgs/context/zone}/tsconfig.esnext.json (79%) rename {auto-merge/js/packages/opentelemetry-context-zone => pkgs/context/zone}/tsconfig.json (59%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/core}/.eslintignore (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/.eslintrc.js (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/core}/.npmignore (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/core}/LICENSE (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/README.md (86%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/core}/karma.conf.js (100%) create mode 100644 pkgs/core/karma.debug.conf.js create mode 100644 pkgs/core/karma.webpack.js rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/core}/karma.worker.js (89%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/package.json (52%) create mode 100644 pkgs/core/rollup.config.js rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/ExportResult.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/baggage/constants.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/baggage/propagation/W3CBaggagePropagator.ts (98%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/baggage/utils.ts (98%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/common/anchored-clock.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/common/attributes.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/common/global-error-handler.ts (95%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/common/logging-error-handler.ts (96%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/common/time.ts (98%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/common/types.ts (97%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/internal/exporter.ts (95%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/internal/validators.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/browser/RandomIdGenerator.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/browser/environment.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/browser/globalThis.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/browser/hex-to-base64.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/browser/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/browser/performance.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/browser/sdk-info.ts (95%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/browser/timer-util.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/node/RandomIdGenerator.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/node/environment.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/node/globalThis.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/node/hex-to-base64.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/node/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/node/performance.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/node/sdk-info.ts (95%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/platform/node/timer-util.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/propagation/composite.ts (98%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/trace/IdGenerator.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/trace/TraceState.ts (98%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/trace/W3CTraceContextPropagator.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/trace/rpc-metadata.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/trace/sampler/AlwaysOffSampler.ts (97%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/trace/sampler/AlwaysOnSampler.ts (97%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/trace/sampler/ParentBasedSampler.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/trace/sampler/TraceIdRatioBasedSampler.ts (98%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/trace/suppress-tracing.ts (93%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/utils/callback.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/utils/environment.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/utils/lodash.merge.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/utils/merge.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/utils/promise.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/utils/sampling.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/utils/timeout.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/utils/url.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/src/utils/wrap.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/baggage/W3CBaggagePropagator.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/common/anchored-clock.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/common/attributes.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/common/global-error-handler.test.ts (96%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/common/logging-error-handler.test.ts (97%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/common/time.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/index-webpack.ts (100%) create mode 100644 pkgs/core/test/index-webpack.worker.ts rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/internal/exporter.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/internal/validators.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/platform/RandomIdGenerator.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/platform/browser/environment.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/platform/hex-to-base64.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/propagation/composite.test.ts (98%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/core}/test/test-utils.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/AlwaysOffSampler.test.ts (95%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/AlwaysOnSampler.test.ts (95%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/ParentBasedSampler.test.ts (97%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/TraceIdRatioBasedSampler.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/W3CTraceContextPropagator.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/fixtures/test-package/foo/bar/internal.d.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/fixtures/test-package/foo/bar/internal.js (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/fixtures/test-package/index.js (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/fixtures/test-package/package.json (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/trace/tracestate.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/utils/callback.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/utils/environment.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/utils/merge.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/utils/promise.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/utils/url.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/test/utils/wrap.test.ts (100%) create mode 100644 pkgs/core/tsconfig.esm.json rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/core}/tsconfig.esnext.json (64%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/core}/tsconfig.json (58%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/.eslintignore (100%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/.eslintrc.js (100%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/.npmignore (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/detectors/browser}/LICENSE (100%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/README.md (85%) rename {auto-merge/js/experimental/packages/api-events => pkgs/detectors/browser}/karma.conf.js (100%) create mode 100644 pkgs/detectors/browser/karma.debug.conf.js create mode 100644 pkgs/detectors/browser/package.json create mode 100644 pkgs/detectors/browser/rollup.config.js rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/src/BrowserDetector.ts (94%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/src/index.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/src/types.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/test/BrowserDetector.test.ts (97%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/test/index-webpack.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-browser-detector => pkgs/detectors/browser}/test/util.ts (97%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/detectors/browser}/tsconfig.esm.json (99%) create mode 100644 pkgs/detectors/browser/tsconfig.esnext.json rename {auto-merge/js/experimental/packages/api-events => pkgs/detectors/browser}/tsconfig.json (74%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/exporters/otlp/base}/.eslintignore (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/.eslintrc.js (74%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/exporters/otlp/base}/.npmignore (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/LICENSE (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/README.md (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/karma.conf.js (87%) create mode 100644 pkgs/exporters/otlp/base/karma.debug.conf.js create mode 100644 pkgs/exporters/otlp/base/karma.webpack.js create mode 100644 pkgs/exporters/otlp/base/karma.worker.js create mode 100644 pkgs/exporters/otlp/base/package.json create mode 100644 pkgs/exporters/otlp/base/rollup.config.js rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/OTLPExporterBase.ts (97%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/index.ts (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/platform/browser/OTLPExporterBrowserBase.ts (95%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/platform/browser/index.ts (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/platform/browser/util.ts (98%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/platform/index.ts (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/platform/node/OTLPExporterNodeBase.ts (95%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/platform/node/index.ts (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/platform/node/types.ts (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/platform/node/util.ts (98%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/types.ts (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/src/util.ts (97%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/browser/index-webpack.ts (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/browser/util.test.ts (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/certs/ca.crt (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/certs/ca.key (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/certs/client.crt (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/certs/client.csr (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/certs/client.key (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/certs/regenerate.sh (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/certs/server.crt (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/certs/server.csr (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/certs/server.key (100%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/common/CollectorExporter.test.ts (99%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/common/util.test.ts (98%) create mode 100644 pkgs/exporters/otlp/base/test/index-webpack.worker.ts rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/node/util.test.ts (99%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/exporters/otlp/base}/test/testHelper.ts (97%) create mode 100644 pkgs/exporters/otlp/base/tsconfig.esm.json create mode 100644 pkgs/exporters/otlp/base/tsconfig.esnext.json create mode 100644 pkgs/exporters/otlp/base/tsconfig.json rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/.eslintignore (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/instrumentation}/.eslintrc.js (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/.gitignore (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/instrumentation}/.npmignore (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/instrumentations/instrumentation}/LICENSE (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/README.md (91%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/hook.mjs (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/karma.conf.js (100%) create mode 100644 pkgs/instrumentations/instrumentation/karma.debug.conf.js create mode 100644 pkgs/instrumentations/instrumentation/karma.webpack.js create mode 100644 pkgs/instrumentations/instrumentation/karma.worker.js rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/package.json (59%) create mode 100644 pkgs/instrumentations/instrumentation/rollup.config.js rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/autoLoader.ts (95%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/autoLoaderUtils.ts (97%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/index.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/instrumentation.ts (98%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/browser/index.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/browser/instrumentation.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/index.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/node/ModuleNameTrie.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/node/RequireInTheMiddleSingleton.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/node/index.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/node/instrumentation.ts (99%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/node/instrumentationNodeModuleDefinition.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/node/instrumentationNodeModuleFile.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/platform/node/types.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/types.ts (96%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/types_internal.ts (93%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/src/utils.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/browser/index-webpack.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/common/Instrumentation.test.ts (98%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/common/autoLoader.test.ts (99%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/common/autoLoaderUtils.test.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/common/utils.test.ts (100%) create mode 100644 pkgs/instrumentations/instrumentation/test/index-webpack.worker.ts rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/node/EsmInstrumentation.test.mjs (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/node/InstrumentationBase.test.ts (98%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/node/InstrumentationNodeModuleFile.test.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/node/ModuleNameTrie.test.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/node/RequireInTheMiddleSingleton.test.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/node/fixtures/absolutePathTestFixture.js (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/node/node_modules/.gitkeep (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/node/node_modules/test-esm-module/package.json (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/instrumentation}/test/node/node_modules/test-esm-module/src/index.js (100%) create mode 100644 pkgs/instrumentations/instrumentation/tsconfig.esm.json create mode 100644 pkgs/instrumentations/instrumentation/tsconfig.esnext.json rename {auto-merge/js/experimental/packages/api-logs => pkgs/instrumentations/instrumentation}/tsconfig.json (74%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/instrumentations/web/auto}/.eslintignore (100%) create mode 100644 pkgs/instrumentations/web/auto/.eslintrc.js rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/instrumentations/web/auto}/.npmignore (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/instrumentations/web/auto}/CHANGELOG.md (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/instrumentations/web/auto}/LICENSE (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/instrumentations/web/auto}/README.md (76%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/auto}/karma.conf.js (85%) create mode 100644 pkgs/instrumentations/web/auto/karma.debug.conf.js create mode 100644 pkgs/instrumentations/web/auto/package.json create mode 100644 pkgs/instrumentations/web/auto/rollup.config.js rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/instrumentations/web/auto}/src/index.ts (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/instrumentations/web/auto}/src/utils.ts (72%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/auto}/test/index-webpack.ts (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/instrumentations/web/auto}/test/utils.test.ts (80%) create mode 100644 pkgs/instrumentations/web/auto/tsconfig.esm.json rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/instrumentations/web/auto}/tsconfig.json (78%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/document-load}/.eslintignore (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/document-load}/.eslintrc.js (74%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/CHANGELOG.md (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/LICENSE (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/README.md (90%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/document-load}/karma.conf.js (85%) create mode 100644 pkgs/instrumentations/web/document-load/karma.debug.conf.js create mode 100644 pkgs/instrumentations/web/document-load/package.json create mode 100644 pkgs/instrumentations/web/document-load/rollup.config.js rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/src/enums/AttributeNames.ts (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/src/enums/EventNames.ts (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/src/index.ts (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/src/instrumentation.ts (96%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/src/types.ts (89%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/src/utils.ts (93%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/test/documentLoad.test.ts (98%) rename {auto-merge/js/experimental/packages/api-events => pkgs/instrumentations/web/document-load}/test/index-webpack.ts (100%) rename {auto-merge/js/api => pkgs/instrumentations/web/document-load}/tsconfig.esm.json (72%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/document-load}/tsconfig.json (75%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/instrumentations/web/fetch}/.eslintignore (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/instrumentations/web/fetch}/.eslintrc.js (74%) rename {auto-merge/js/experimental/packages/otlp-exporter-base => pkgs/instrumentations/web/fetch}/.npmignore (100%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/instrumentations/web/fetch}/LICENSE (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/fetch}/README.md (92%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/fetch}/images/trace1.png (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/fetch}/images/trace2.png (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/fetch}/images/trace3.png (100%) rename {auto-merge/contrib/metapackages/auto-instrumentations-web => pkgs/instrumentations/web/fetch}/karma.conf.js (85%) create mode 100644 pkgs/instrumentations/web/fetch/karma.debug.conf.js create mode 100644 pkgs/instrumentations/web/fetch/karma.webpack.js create mode 100644 pkgs/instrumentations/web/fetch/karma.worker.js create mode 100644 pkgs/instrumentations/web/fetch/package.json create mode 100644 pkgs/instrumentations/web/fetch/rollup.config.js rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/fetch}/src/enums/AttributeNames.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/fetch}/src/fetch.ts (97%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/fetch}/src/index.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/fetch}/src/types.ts (95%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/fetch}/test/fetch.test.ts (98%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/instrumentations/web/fetch}/test/index-webpack.ts (100%) create mode 100644 pkgs/instrumentations/web/fetch/test/index-webpack.worker.ts create mode 100644 pkgs/instrumentations/web/fetch/tsconfig.esm.json create mode 100644 pkgs/instrumentations/web/fetch/tsconfig.esnext.json create mode 100644 pkgs/instrumentations/web/fetch/tsconfig.json rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/instrumentations/web/long-task}/.eslintignore (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load => pkgs/instrumentations/web/long-task}/.eslintrc.js (74%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/CHANGELOG.md (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/README.md (91%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/long-task}/karma.conf.js (86%) create mode 100644 pkgs/instrumentations/web/long-task/karma.debug.conf.js create mode 100644 pkgs/instrumentations/web/long-task/package.json create mode 100644 pkgs/instrumentations/web/long-task/rollup.config.js rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/src/index.ts (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/src/instrumentation.ts (93%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/src/types.ts (90%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/test/compatibility.test.ts (92%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch => pkgs/instrumentations/web/long-task}/test/index-webpack.ts (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/test/longTask.test.ts (92%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/test/util.ts (92%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/tsconfig.esm.json (82%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/long-task}/tsconfig.json (75%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/instrumentations/web/user-interaction}/.eslintignore (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/.eslintrc.js (80%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/CHANGELOG.md (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/LICENSE (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/README.md (89%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/images/click-sync.jpg (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/images/click.jpg (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/images/main-sync.jpg (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/images/main.jpg (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task => pkgs/instrumentations/web/user-interaction}/karma.conf.js (86%) create mode 100644 pkgs/instrumentations/web/user-interaction/karma.debug.conf.js create mode 100644 pkgs/instrumentations/web/user-interaction/package.json create mode 100644 pkgs/instrumentations/web/user-interaction/rollup.config.js rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/src/enums/AttributeNames.ts (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/src/index.ts (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/src/instrumentation.ts (98%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/src/internal-types.ts (96%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/src/types.ts (90%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/test/helper.test.ts (97%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/user-interaction}/test/index-webpack.ts (100%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/test/userInteraction.nozone.test.ts (98%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/test/userInteraction.test.ts (97%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/tsconfig.esm.json (83%) rename {auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction => pkgs/instrumentations/web/user-interaction}/tsconfig.json (83%) rename {auto-merge/js/packages/opentelemetry-context-zone => pkgs/instrumentations/web/xhr}/.eslintignore (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/instrumentations/web/xhr}/.eslintrc.js (65%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/instrumentations/web/xhr}/.npmignore (100%) rename {auto-merge/js/packages/opentelemetry-context-zone => pkgs/instrumentations/web/xhr}/LICENSE (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/README.md (89%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/images/cors.jpg (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/images/main.jpg (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/images/request.jpg (100%) create mode 100644 pkgs/instrumentations/web/xhr/karma.conf.js create mode 100644 pkgs/instrumentations/web/xhr/karma.debug.conf.js create mode 100644 pkgs/instrumentations/web/xhr/package.json create mode 100644 pkgs/instrumentations/web/xhr/rollup.config.js rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/src/enums/AttributeNames.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/src/enums/EventNames.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/src/index.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/src/types.ts (97%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/src/xhr.ts (97%) rename {auto-merge/js/packages/opentelemetry-context-zone-peer-dep => pkgs/instrumentations/web/xhr}/test/index-webpack.ts (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/test/unmocked.test.ts (85%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request => pkgs/instrumentations/web/xhr}/test/xhr.test.ts (98%) create mode 100644 pkgs/instrumentations/web/xhr/tsconfig.esm.json create mode 100644 pkgs/instrumentations/web/xhr/tsconfig.esnext.json create mode 100644 pkgs/instrumentations/web/xhr/tsconfig.json rename {auto-merge/js/packages/opentelemetry-core => pkgs/propagators/b3}/.eslintignore (100%) rename {auto-merge/js/experimental/packages/opentelemetry-instrumentation => pkgs/propagators/b3}/.eslintrc.js (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/propagators/b3}/.npmignore (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/propagators/b3}/LICENSE (100%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/README.md (91%) rename auto-merge/js/experimental/packages/opentelemetry-browser-detector/karma.conf.js => pkgs/propagators/b3/karma.browser.conf.js (85%) create mode 100644 pkgs/propagators/b3/karma.debug.conf.js create mode 100644 pkgs/propagators/b3/karma.webpack.js create mode 100644 pkgs/propagators/b3/package.json create mode 100644 pkgs/propagators/b3/rollup.config.js rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/src/B3MultiPropagator.ts (97%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/src/B3Propagator.ts (96%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/src/B3SinglePropagator.ts (96%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/src/common.ts (92%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/src/constants.ts (100%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/src/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/src/types.ts (100%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/test/B3MultiPropagator.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/test/B3Propagator.test.ts (98%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/propagators/b3}/test/B3SinglePropagator.test.ts (98%) create mode 100644 pkgs/propagators/b3/test/index-webpack.ts create mode 100644 pkgs/propagators/b3/tsconfig.esm.json create mode 100644 pkgs/propagators/b3/tsconfig.esnext.json create mode 100644 pkgs/propagators/b3/tsconfig.json rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/resources}/.eslintignore (100%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/resources}/.eslintrc.js (100%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/resources}/.npmignore (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/LICENSE (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/README.md (92%) rename {auto-merge/js/packages/sdk-metrics => pkgs/resources}/karma.conf.js (100%) create mode 100644 pkgs/resources/karma.debug.conf.js rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/karma.worker.js (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/package.json (52%) create mode 100644 pkgs/resources/rollup.config.js rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/IResource.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/Resource.ts (96%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/config.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/detect-resources.ts (98%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/detectors/BrowserDetector.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/detectors/BrowserDetectorSync.ts (93%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/detectors/EnvDetector.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/detectors/EnvDetectorSync.ts (96%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/detectors/NoopDetector.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/detectors/NoopDetectorSync.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/detectors/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/browser/HostDetector.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/browser/HostDetectorSync.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/browser/OSDetector.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/browser/OSDetectorSync.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/browser/ProcessDetector.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/browser/ProcessDetectorSync.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/browser/default-service-name.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/browser/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/HostDetector.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/HostDetectorSync.ts (95%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/OSDetector.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/OSDetectorSync.ts (93%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/ProcessDetector.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/ProcessDetectorSync.ts (93%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/default-service-name.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/machine-id/execAsync.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/machine-id/getMachineId-bsd.ts (95%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/machine-id/getMachineId-darwin.ts (95%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/machine-id/getMachineId-linux.ts (95%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/machine-id/getMachineId-unsupported.ts (93%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/machine-id/getMachineId-win.ts (96%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/machine-id/getMachineId.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/platform/node/utils.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/types.ts (95%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/src/utils.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/Resource.test.ts (98%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detect-resources.test.ts (98%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/browser/BrowserDetector.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/browser/EnvDetector.test.ts (94%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/browser/HostDetector.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/browser/OSDetector.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/browser/ProcessDetector.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/node/BrowserDetector.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/node/EnvDetector.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/node/HostDetector.test.ts (96%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/node/OSDetector.test.ts (95%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/node/ProcessDetector.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/node/machine-id/getMachineId-bsd.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/node/machine-id/getMachineId-darwin.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/node/machine-id/getMachineId-linux.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/detectors/node/machine-id/getMachineId-win.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/index-webpack.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/index-webpack.worker.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/regression/existing-detectors-1-9-1.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/resource-assertions.test.ts (97%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/util.ts (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/util/resource-assertions.ts (98%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/resources}/test/util/sample-detector.ts (93%) create mode 100644 pkgs/resources/tsconfig.esm.json create mode 100644 pkgs/resources/tsconfig.esnext.json create mode 100644 pkgs/resources/tsconfig.json rename {auto-merge/js/packages/opentelemetry-resources => pkgs/sdk/logs}/.eslintignore (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/.eslintrc.js (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/sdk/logs}/.npmignore (100%) rename {auto-merge/js/packages/opentelemetry-propagator-b3 => pkgs/sdk/logs}/LICENSE (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/README.md (96%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/karma.conf.js (100%) create mode 100644 pkgs/sdk/logs/karma.debug.conf.js create mode 100644 pkgs/sdk/logs/karma.webpack.js create mode 100644 pkgs/sdk/logs/karma.worker.js create mode 100644 pkgs/sdk/logs/package.json create mode 100644 pkgs/sdk/logs/rollup.config.js rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/LogRecord.ts (95%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/LogRecordProcessor.ts (95%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/Logger.ts (90%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/LoggerProvider.ts (93%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/MultiLogRecordProcessor.ts (96%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/config.ts (98%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/export/BatchLogRecordProcessorBase.ts (97%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/export/ConsoleLogRecordExporter.ts (96%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/export/InMemoryLogRecordExporter.ts (93%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/export/LogRecordExporter.ts (93%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/export/NoopLogRecordProcessor.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/export/ReadableLogRecord.ts (81%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/export/SimpleLogRecordProcessor.ts (94%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/index.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/platform/browser/export/BatchLogRecordProcessor.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/platform/browser/index.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/platform/index.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/platform/node/export/BatchLogRecordProcessor.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/platform/node/index.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/src/types.ts (97%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/browser/export/BatchLogRecordProcessor.test.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/common/LogRecord.test.ts (98%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/common/Logger.test.ts (96%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/common/LoggerProvider.test.ts (98%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/common/MultiLogRecordProcessor.test.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/common/export/BatchLogRecordProcessor.test.ts (99%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/common/export/ConsoleLogRecordExporter.test.ts (97%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/common/export/InMemoryLogRecordExporter.test.ts (95%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/common/export/SimpleLogRecordProcessor.test.ts (98%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/common/utils.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/index-webpack.ts (100%) rename {auto-merge/js/experimental/packages/sdk-logs => pkgs/sdk/logs}/test/index-webpack.worker.ts (100%) rename {auto-merge/js/packages/opentelemetry-core => pkgs/sdk/logs}/test/test-utils.ts (100%) create mode 100644 pkgs/sdk/logs/tsconfig.esm.json create mode 100644 pkgs/sdk/logs/tsconfig.esnext.json create mode 100644 pkgs/sdk/logs/tsconfig.json rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/metrics}/.eslintignore (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/.eslintrc.js (65%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/metrics}/.npmignore (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/metrics}/LICENSE (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/README.md (96%) rename {auto-merge/js/experimental/packages/api-logs => pkgs/sdk/metrics}/karma.conf.js (100%) create mode 100644 pkgs/sdk/metrics/karma.debug.conf.js create mode 100644 pkgs/sdk/metrics/karma.webpack.js create mode 100644 pkgs/sdk/metrics/karma.worker.js create mode 100644 pkgs/sdk/metrics/package.json create mode 100644 pkgs/sdk/metrics/rollup.config.js rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/InstrumentDescriptor.ts (96%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/Instruments.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/Meter.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/MeterProvider.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/ObservableResult.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/Drop.ts (96%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/ExponentialHistogram.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/Histogram.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/LastValue.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/Sum.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/exponential-histogram/Buckets.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/exponential-histogram/mapping/ExponentMapping.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/exponential-histogram/mapping/LogarithmMapping.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/exponential-histogram/mapping/getMapping.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/exponential-histogram/mapping/ieee754.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/exponential-histogram/mapping/types.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/exponential-histogram/util.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/index.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/aggregator/types.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/exemplar/AlignedHistogramBucketExemplarReservoir.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/exemplar/AlwaysSampleExemplarFilter.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/exemplar/Exemplar.ts (95%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/exemplar/ExemplarFilter.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/exemplar/ExemplarReservoir.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/exemplar/NeverSampleExemplarFilter.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/exemplar/SimpleFixedSizeExemplarReservoir.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/exemplar/WithTraceExemplarFilter.ts (96%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/exemplar/index.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/export/AggregationSelector.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/export/AggregationTemporality.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/export/ConsoleMetricExporter.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/export/InMemoryMetricExporter.ts (94%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/export/MetricData.ts (95%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/export/MetricExporter.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/export/MetricProducer.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/export/MetricReader.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/export/PeriodicExportingMetricReader.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/index.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/AsyncMetricStorage.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/DeltaMetricProcessor.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/HashMap.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/MeterProviderSharedState.ts (93%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/MeterSharedState.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/MetricCollector.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/MetricStorage.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/MetricStorageRegistry.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/MultiWritableMetricStorage.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/ObservableRegistry.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/SyncMetricStorage.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/TemporalMetricProcessor.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/state/WritableMetricStorage.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/types.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/utils.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/view/Aggregation.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/view/AttributesProcessor.ts (96%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/view/InstrumentSelector.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/view/MeterSelector.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/view/Predicate.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/view/RegistrationConflicts.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/view/View.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/src/view/ViewRegistry.ts (96%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/ExemplarFilter.test.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/ExemplarReservoir.test.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/InstrumentDescriptor.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/Instruments.test.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/Meter.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/MeterProvider.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/ObservableResult.test.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/Drop.test.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/ExponentialHistogram.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/Histogram.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/LastValue.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/Sum.test.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/exponential-histogram/ExponentMapping.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/exponential-histogram/LogarithmMapping.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/exponential-histogram/getMapping.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/exponential-histogram/helpers.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/aggregator/exponential-histogram/ieee754.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/export/ConsoleMetricExporter.test.ts (98%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/export/InMemoryMetricExporter.test.ts (96%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/export/MetricReader.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/export/PeriodicExportingMetricReader.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/export/TestMetricExporter.ts (94%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/export/TestMetricProducer.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/export/TestMetricReader.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/export/utils.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/index-webpack.ts (100%) create mode 100644 pkgs/sdk/metrics/test/index-webpack.worker.ts rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/regression/two-metric-readers-async-instrument.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/AsyncMetricStorage.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/DeltaMetricProcessor.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/HashMap.test.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/MeterSharedState.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/MetricCollector.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/MetricStorageRegistry.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/MultiWritableMetricStorage.test.ts (94%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/ObservableRegistry.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/SyncMetricStorage.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/state/TemporalMetricProcessor.test.ts (99%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/test-utils.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/util.ts (96%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/utils.test.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/view/Aggregation.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/view/AttributesProcessor.test.ts (97%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/view/Predicate.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/view/View.test.ts (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/metrics}/test/view/ViewRegistry.test.ts (100%) create mode 100644 pkgs/sdk/metrics/tsconfig.esm.json create mode 100644 pkgs/sdk/metrics/tsconfig.esnext.json create mode 100644 pkgs/sdk/metrics/tsconfig.json rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/.eslintignore (100%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/sdk/trace/base}/.eslintrc.js (74%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/base}/.npmignore (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/base}/LICENSE (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/README.md (94%) rename {auto-merge/js/api => pkgs/sdk/trace/base}/karma.conf.js (85%) create mode 100644 pkgs/sdk/trace/base/karma.debug.conf.js rename {auto-merge/js/api => pkgs/sdk/trace/base}/karma.worker.js (85%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/package.json (51%) create mode 100644 pkgs/sdk/trace/base/rollup.config.js rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/BasicTracerProvider.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/IdGenerator.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/MultiSpanProcessor.ts (94%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/Sampler.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/Span.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/SpanProcessor.ts (96%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/TimedEvent.ts (93%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/Tracer.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/config.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/enums.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/export/BatchSpanProcessorBase.ts (99%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/export/ConsoleSpanExporter.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/export/InMemorySpanExporter.ts (96%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/export/NoopSpanProcessor.ts (95%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/export/ReadableSpan.ts (88%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/export/SimpleSpanProcessor.ts (95%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/export/SpanExporter.ts (95%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/platform/browser/RandomIdGenerator.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/platform/browser/export/BatchSpanProcessor.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/platform/browser/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/platform/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/platform/node/RandomIdGenerator.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/platform/node/export/BatchSpanProcessor.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/platform/node/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/sampler/AlwaysOffSampler.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/sampler/AlwaysOnSampler.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/sampler/ParentBasedSampler.ts (97%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/sampler/TraceIdRatioBasedSampler.ts (96%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/types.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/src/utility.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/browser/export/BatchSpanProcessor.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/BasicTracerProvider.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/MultiSpanProcessor.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/Sampler.test.ts (96%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/Span.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/Tracer.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/config.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/export/BatchSpanProcessorBase.test.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/export/ConsoleSpanExporter.test.ts (96%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/export/InMemorySpanExporter.test.ts (96%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/export/SimpleSpanProcessor.test.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/export/TestExporterWithDelay.ts (95%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/export/TestRecordOnlySampler.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/export/TestStackContextManager.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/export/TestTracingSpanExporter.ts (97%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/platform/RandomIdGenerator.test.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/sampler/AlwaysOffSampler.test.ts (95%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/sampler/AlwaysOnSampler.test.ts (95%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/sampler/ParentBasedSampler.test.ts (97%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/sampler/TraceIdRatioBasedSampler.test.ts (99%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/common/util.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/index-webpack.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-base => pkgs/sdk/trace/base}/test/index-webpack.worker.ts (100%) create mode 100644 pkgs/sdk/trace/base/tsconfig.esm.json create mode 100644 pkgs/sdk/trace/base/tsconfig.esnext.json create mode 100644 pkgs/sdk/trace/base/tsconfig.json rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/sdk/trace/web}/.eslintignore (100%) create mode 100644 pkgs/sdk/trace/web/.eslintrc.js rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/sdk/trace/web}/.npmignore (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/sdk/trace/web}/LICENSE (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/README.md (90%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/karma.conf.js (86%) create mode 100644 pkgs/sdk/trace/web/karma.debug.conf.js create mode 100644 pkgs/sdk/trace/web/karma.worker.js create mode 100644 pkgs/sdk/trace/web/package.json create mode 100644 pkgs/sdk/trace/web/rollup.config.js rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/src/StackContextManager.ts (99%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/src/WebTracerProvider.ts (97%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/src/enums/PerformanceTimingNames.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/src/index.ts (93%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/src/types.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/src/utils.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/test/NodeGlobalsFoolProofing.test.ts (93%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/test/StackContextManager.test.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/test/WebTracerProvider.test.ts (90%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/test/index-webpack.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/test/index-webpack.worker.ts (100%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/test/registration.test.ts (96%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/test/utils.test.ts (98%) rename {auto-merge/js/packages/opentelemetry-sdk-trace-web => pkgs/sdk/trace/web}/test/window/utils.test.ts (100%) create mode 100644 pkgs/sdk/trace/web/tsconfig.esm.json create mode 100644 pkgs/sdk/trace/web/tsconfig.esnext.json create mode 100644 pkgs/sdk/trace/web/tsconfig.json rename {auto-merge/js/packages/sdk-metrics => pkgs/semantic-conventions}/.eslintignore (100%) rename {auto-merge/js/packages/opentelemetry-resources => pkgs/semantic-conventions}/.eslintrc.js (100%) rename {auto-merge/js/packages/sdk-metrics => pkgs/semantic-conventions}/.npmignore (100%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/semantic-conventions}/LICENSE (100%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/semantic-conventions}/README.md (94%) create mode 100644 pkgs/semantic-conventions/package.json create mode 100644 pkgs/semantic-conventions/rollup.config.js rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/semantic-conventions}/src/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/semantic-conventions}/src/resource/SemanticResourceAttributes.ts (100%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/semantic-conventions}/src/resource/index.ts (100%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/semantic-conventions}/src/trace/SemanticAttributes.ts (100%) rename {auto-merge/js/packages/opentelemetry-semantic-conventions => pkgs/semantic-conventions}/src/trace/index.ts (100%) create mode 100644 pkgs/semantic-conventions/tsconfig.esm.json create mode 100644 pkgs/semantic-conventions/tsconfig.esnext.json create mode 100644 pkgs/semantic-conventions/tsconfig.json rename auto-merge/js/prettier.config.js => prettier.config.js (100%) rename {auto-merge/js/scripts => scripts}/generate-protos.js (100%) rename {auto-merge/js/scripts => scripts}/peer-api-check.js (100%) rename {auto-merge/js/scripts => scripts}/semconv/.gitignore (100%) rename {auto-merge/js/scripts => scripts}/semconv/generate.sh (100%) rename {auto-merge/js/scripts => scripts}/semconv/templates/SemanticAttributes.ts.j2 (100%) rename {auto-merge/js/scripts => scripts}/update-ts-configs-constants.js (100%) rename {auto-merge/js/scripts => scripts}/update-ts-configs.js (100%) rename {auto-merge/js/scripts => scripts}/version-update.js (90%) rename auto-merge/js/tsconfig.base.es5.json => tsconfig.base.es5.json (100%) rename auto-merge/js/tsconfig.base.esm.json => tsconfig.base.esm.json (100%) rename auto-merge/js/tsconfig.base.esnext.json => tsconfig.base.esnext.json (100%) rename auto-merge/js/tsconfig.base.json => tsconfig.base.json (100%) rename auto-merge/js/tsconfig.esm.json => tsconfig.esm.json (100%) rename auto-merge/js/tsconfig.esnext.json => tsconfig.esnext.json (100%) rename auto-merge/js/tsconfig.json => tsconfig.json (100%) rename auto-merge/js/webpack.node-polyfills.js => webpack.node-polyfills.js (100%) diff --git a/auto-merge/js/.markdownlint.json b/.markdownlint.json similarity index 100% rename from auto-merge/js/.markdownlint.json rename to .markdownlint.json diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/package.json b/auto-merge/contrib/metapackages/auto-instrumentations-web/package.json deleted file mode 100644 index 1a6f3794c..000000000 --- a/auto-merge/contrib/metapackages/auto-instrumentations-web/package.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "name": "@opentelemetry/auto-instrumentations-web", - "version": "0.32.2", - "description": "Metapackage which bundles opentelemetry node core and contrib instrumentations", - "author": "OpenTelemetry Authors", - "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/metapackages/auto-instrumentations-web#readme", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "publishConfig": { - "access": "public" - }, - "main": "build/src/index.js", - "module": "build/esm/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js-contrib", - "scripts": { - "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json", - "compile": "tsc --build tsconfig.json tsconfig.esm.json", - "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix", - "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/auto-instrumentations-web --include-dependencies", - "prewatch": "npm run precompile", - "prepare": "npm run compile", - "test:browser": "nyc karma start --single-run", - "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json" - }, - "bugs": { - "url": "https://github.com/open-telemetry/opentelemetry-js-contrib/issues" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - }, - "devDependencies": { - "@babel/core": "7.15.0", - "@opentelemetry/api": "^1.3.0", - "@types/mocha": "8.2.3", - "@types/node": "18.11.7", - "@types/sinon": "10.0.2", - "@types/webpack-env": "1.16.2", - "babel-loader": "8.2.2", - "@jsdevtools/coverage-istanbul-loader": "3.0.5", - "karma": "6.3.16", - "karma-chrome-launcher": "^3.1.1", - "karma-coverage-istanbul-reporter": "3.0.3", - "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "4.0.2", - "mocha": "7.2.0", - "nyc": "15.1.0", - "rimraf": "5.0.0", - "sinon": "15.0.1", - "ts-loader": "8.3.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0", - "webpack-cli": "4.7.2", - "webpack-merge": "5.8.0" - }, - "dependencies": { - "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/instrumentation-document-load": "^0.32.2", - "@opentelemetry/instrumentation-fetch": "^0.39.1", - "@opentelemetry/instrumentation-user-interaction": "^0.32.3", - "@opentelemetry/instrumentation-xml-http-request": "^0.39.1" - } -} diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/package.json b/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/package.json deleted file mode 100644 index 344c49e72..000000000 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/package.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "name": "@opentelemetry/instrumentation-document-load", - "version": "0.32.2", - "description": "OpenTelemetry document-load automatic instrumentation package.", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js-contrib", - "scripts": { - "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json", - "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix", - "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-document-load --include-dependencies", - "prewatch": "npm run precompile", - "version:update": "node ../../../scripts/version-update.js", - "compile": "npm run version:update && tsc --build tsconfig.json tsconfig.esm.json", - "prepare": "npm run compile", - "tdd": "karma start", - "test:browser": "nyc karma start --single-run", - "watch": "tsc --build -watch tsconfig.json tsconfig.esm.json" - }, - "keywords": [ - "opentelemetry", - "document-load", - "web", - "tracing", - "profiling", - "plugin" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.map", - "build/esm/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - }, - "devDependencies": { - "@babel/core": "7.15.0", - "@opentelemetry/api": "^1.3.0", - "@types/mocha": "8.2.3", - "@types/node": "18.11.7", - "@types/sinon": "10.0.2", - "@types/webpack-env": "1.16.2", - "babel-loader": "8.2.2", - "@jsdevtools/coverage-istanbul-loader": "3.0.5", - "karma": "6.3.16", - "karma-chrome-launcher": "^3.1.1", - "karma-coverage-istanbul-reporter": "3.0.3", - "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "4.0.2", - "mocha": "7.2.0", - "nyc": "15.1.0", - "rimraf": "5.0.0", - "sinon": "15.0.1", - "ts-loader": "8.3.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0", - "webpack-cli": "4.7.2", - "webpack-merge": "5.8.0" - }, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/sdk-trace-base": "^1.0.0", - "@opentelemetry/sdk-trace-web": "^1.8.0", - "@opentelemetry/semantic-conventions": "^1.0.0" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/web/opentelemetry-instrumentation-document-load#readme" -} diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/package.json b/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/package.json deleted file mode 100644 index 721a8e14c..000000000 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/package.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "name": "@opentelemetry/instrumentation-long-task", - "version": "0.32.4", - "description": "OpenTelemetry long task API automatic instrumentation package.", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js-contrib", - "scripts": { - "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix", - "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json", - "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-user-interaction --include-dependencies", - "prewatch": "npm run precompile", - "version:update": "node ../../../scripts/version-update.js", - "compile": "npm run version:update && tsc --build tsconfig.json tsconfig.esm.json", - "prepare": "npm run compile", - "tdd": "karma start", - "test:browser": "nyc karma start --single-run", - "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json" - }, - "keywords": [ - "opentelemetry", - "web", - "tracing", - "profiling", - "metrics", - "stats" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.map", - "build/esm/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/core": "7.15.0", - "@opentelemetry/api": "^1.3.0", - "@opentelemetry/sdk-trace-base": "^1.8.0", - "@types/jquery": "3.5.6", - "@types/mocha": "7.0.2", - "@types/node": "18.11.7", - "@types/sinon": "10.0.2", - "@types/webpack-env": "1.16.2", - "babel-loader": "8.2.2", - "@jsdevtools/coverage-istanbul-loader": "3.0.5", - "karma": "6.3.16", - "karma-chrome-launcher": "^3.1.1", - "karma-coverage-istanbul-reporter": "3.0.3", - "karma-jquery": "0.2.4", - "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "4.0.2", - "mocha": "7.2.0", - "nyc": "15.1.0", - "rimraf": "5.0.0", - "sinon": "15.0.1", - "ts-loader": "8.3.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0", - "webpack-cli": "4.7.2", - "webpack-merge": "5.8.0", - "zone.js": "0.11.4" - }, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/sdk-trace-web": "^1.8.0" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - }, - "sideEffects": false, - "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/web/opentelemetry-instrumentation-long-task#readme" -} diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/package.json b/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/package.json deleted file mode 100644 index 88c2cd852..000000000 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/package.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "name": "@opentelemetry/instrumentation-user-interaction", - "version": "0.32.3", - "description": "OpenTelemetry UserInteraction automatic instrumentation package.", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js-contrib", - "scripts": { - "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix", - "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json", - "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-user-interaction --include-dependencies", - "prewatch": "npm run precompile", - "version:update": "node ../../../scripts/version-update.js", - "compile": "npm run version:update && tsc --build tsconfig.json tsconfig.esm.json", - "prepare": "npm run compile", - "tdd": "karma start", - "test:browser": "nyc karma start --single-run", - "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json" - }, - "keywords": [ - "opentelemetry", - "web", - "tracing", - "profiling", - "metrics", - "stats" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.map", - "build/esm/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/core": "7.15.0", - "@opentelemetry/api": "^1.3.0", - "@opentelemetry/context-zone-peer-dep": "^1.8.0", - "@opentelemetry/instrumentation-xml-http-request": "^0.39.1", - "@opentelemetry/sdk-trace-base": "^1.8.0", - "@types/jquery": "3.5.6", - "@types/mocha": "7.0.2", - "@types/node": "18.11.7", - "@types/sinon": "10.0.2", - "@types/webpack-env": "1.16.2", - "babel-loader": "8.2.2", - "@jsdevtools/coverage-istanbul-loader": "3.0.5", - "karma": "6.3.16", - "karma-chrome-launcher": "^3.1.1", - "karma-coverage-istanbul-reporter": "3.0.3", - "karma-jquery": "0.2.4", - "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "4.0.2", - "mocha": "7.2.0", - "nyc": "15.1.0", - "rimraf": "5.0.0", - "sinon": "15.0.1", - "ts-loader": "8.3.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0", - "webpack-cli": "4.7.2", - "webpack-merge": "5.8.0", - "zone.js": "0.11.4" - }, - "dependencies": { - "@opentelemetry/core": "^1.8.0", - "@opentelemetry/instrumentation": "^0.39.1", - "@opentelemetry/sdk-trace-web": "^1.8.0" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0", - "zone.js": "0.11.4" - }, - "sideEffects": false, - "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/web/opentelemetry-instrumentation-user-interaction#readme" -} diff --git a/auto-merge/js/api/.eslintrc.js b/auto-merge/js/api/.eslintrc.js deleted file mode 100644 index 7d5c10c7f..000000000 --- a/auto-merge/js/api/.eslintrc.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - "env": { - "mocha": true, - "commonjs": true, - "shared-node-browser": true - }, - ...require('../eslint.config.js') -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/package.json b/auto-merge/js/experimental/packages/opentelemetry-browser-detector/package.json deleted file mode 100644 index fa3e4746a..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/package.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "name": "@opentelemetry/opentelemetry-browser-detector", - "version": "0.39.1", - "description": "OpenTelemetry Resource Detector for Browser", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "scripts": { - "prepublishOnly": "npm run compile", - "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", - "lint:fix": "eslint . --ext .ts --fix", - "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", - "test:browser": "nyc karma start --single-run", - "tdd": "npm run test -- --watch-extensions ts --watch", - "tdd:browser": "karma start", - "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", - "prewatch": "npm run precompile", - "peer-api-check": "node ../../../scripts/peer-api-check.js" - }, - "keywords": [ - "opentelemetry", - "browser", - "resource", - "detector" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/core": "7.16.0", - "@opentelemetry/api": "1.4.1", - "@types/mocha": "9.1.1", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "codecov": "3.8.3", - "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", - "ts-loader": "8.4.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.0.0" - }, - "dependencies": { - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/browser-detector" -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.esm.json b/auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.esm.json deleted file mode 100644 index 28f110901..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.esm.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-resources" - }, - { - "path": "../../../packages/opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.esnext.json b/auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.esnext.json deleted file mode 100644 index ae74c831f..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.esnext.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-resources" - }, - { - "path": "../../../packages/opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.json b/auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.json deleted file mode 100644 index 3dbac0564..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/tsconfig.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "extends": "../../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "files": [], - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-resources" - }, - { - "path": "../../../packages/opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/package.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/package.json deleted file mode 100644 index 29479c7c8..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/package.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "name": "@opentelemetry/instrumentation-fetch", - "version": "0.39.1", - "description": "OpenTelemetry fetch automatic instrumentation package.", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "scripts": { - "prepublishOnly": "npm run compile", - "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", - "lint:fix": "eslint . --ext .ts --fix", - "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", - "version": "node ../../../scripts/version-update.js", - "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", - "prewatch": "node ../../../scripts/version-update.js", - "peer-api-check": "node ../../../scripts/peer-api-check.js" - }, - "keywords": [ - "fetch", - "opentelemetry", - "browser", - "tracing", - "profiling", - "metrics", - "stats" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/core": "7.16.0", - "@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", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", - "codecov": "3.8.3", - "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", - "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-webpack": "4.0.2", - "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", - "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" - }, - "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" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-fetch", - "sideEffects": false -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.esm.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.esm.json deleted file mode 100644 index bdaa95d3e..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.esm.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-context-zone" - }, - { - "path": "../../../packages/opentelemetry-core" - }, - { - "path": "../../../packages/opentelemetry-propagator-b3" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-base" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-web" - }, - { - "path": "../../../packages/opentelemetry-semantic-conventions" - }, - { - "path": "../opentelemetry-instrumentation" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.esnext.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.esnext.json deleted file mode 100644 index 825401c45..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.esnext.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-context-zone" - }, - { - "path": "../../../packages/opentelemetry-core" - }, - { - "path": "../../../packages/opentelemetry-propagator-b3" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-base" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-web" - }, - { - "path": "../../../packages/opentelemetry-semantic-conventions" - }, - { - "path": "../opentelemetry-instrumentation" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.json deleted file mode 100644 index d531cbbb4..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/tsconfig.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "extends": "../../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "files": [], - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-context-zone" - }, - { - "path": "../../../packages/opentelemetry-core" - }, - { - "path": "../../../packages/opentelemetry-propagator-b3" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-base" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-web" - }, - { - "path": "../../../packages/opentelemetry-semantic-conventions" - }, - { - "path": "../opentelemetry-instrumentation" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json deleted file mode 100644 index 4bf5707ca..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/package.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "name": "@opentelemetry/instrumentation-xml-http-request", - "version": "0.39.1", - "description": "OpenTelemetry XMLHttpRequest automatic instrumentation package.", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "scripts": { - "prepublishOnly": "npm run compile", - "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", - "lint:fix": "eslint . --ext .ts --fix", - "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", - "version": "node ../../../scripts/version-update.js", - "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", - "prewatch": "node ../../../scripts/version-update.js", - "peer-api-check": "node ../../../scripts/peer-api-check.js" - }, - "keywords": [ - "opentelemetry", - "browser", - "tracing", - "profiling", - "metrics", - "XMLHttpRequest", - "stats" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/core": "7.16.0", - "@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", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", - "codecov": "3.8.3", - "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", - "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-webpack": "4.0.2", - "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", - "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" - }, - "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" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-xml-http-request", - "sideEffects": false -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.esm.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.esm.json deleted file mode 100644 index bdaa95d3e..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.esm.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-context-zone" - }, - { - "path": "../../../packages/opentelemetry-core" - }, - { - "path": "../../../packages/opentelemetry-propagator-b3" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-base" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-web" - }, - { - "path": "../../../packages/opentelemetry-semantic-conventions" - }, - { - "path": "../opentelemetry-instrumentation" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.esnext.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.esnext.json deleted file mode 100644 index 825401c45..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.esnext.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-context-zone" - }, - { - "path": "../../../packages/opentelemetry-core" - }, - { - "path": "../../../packages/opentelemetry-propagator-b3" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-base" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-web" - }, - { - "path": "../../../packages/opentelemetry-semantic-conventions" - }, - { - "path": "../opentelemetry-instrumentation" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.json deleted file mode 100644 index d531cbbb4..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/tsconfig.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "extends": "../../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "files": [], - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-context-zone" - }, - { - "path": "../../../packages/opentelemetry-core" - }, - { - "path": "../../../packages/opentelemetry-propagator-b3" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-base" - }, - { - "path": "../../../packages/opentelemetry-sdk-trace-web" - }, - { - "path": "../../../packages/opentelemetry-semantic-conventions" - }, - { - "path": "../opentelemetry-instrumentation" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.esm.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.esm.json deleted file mode 100644 index a673b4648..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.esm.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/sdk-metrics" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.esnext.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.esnext.json deleted file mode 100644 index f70e767a6..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.esnext.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/sdk-metrics" - } - ] -} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.json b/auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.json deleted file mode 100644 index 668bce742..000000000 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/tsconfig.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "extends": "../../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "files": [], - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/sdk-metrics" - } - ] -} diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/package.json b/auto-merge/js/experimental/packages/otlp-exporter-base/package.json deleted file mode 100644 index 8671fffcb..000000000 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/package.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "name": "@opentelemetry/otlp-exporter-base", - "version": "0.39.1", - "description": "OpenTelemetry OTLP Exporter base (for internal use only)", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "browser": { - "./src/platform/index.ts": "./src/platform/browser/index.ts", - "./build/esm/platform/index.js": "./build/esm/platform/browser/index.js", - "./build/esnext/platform/index.js": "./build/esnext/platform/browser/index.js", - "./build/src/platform/index.js": "./build/src/platform/browser/index.js" - }, - "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", - "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", - "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix", - "tdd": "npm run test -- --watch-extensions ts --watch", - "tdd:browser": "karma start", - "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", - "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", - "prewatch": "npm run precompile" - }, - "keywords": [ - "opentelemetry", - "nodejs", - "tracing", - "profiling", - "metrics", - "stats", - "monitoring" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "dependencies": { - "@opentelemetry/core": "1.13.0" - }, - "devDependencies": { - "@opentelemetry/api": "1.4.1", - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "codecov": "3.8.3", - "istanbul-instrumenter-loader": "3.0.1", - "mocha": "10.0.0", - "nock": "13.0.11", - "nyc": "15.1.0", - "sinon": "15.0.0", - "ts-loader": "8.4.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.0.0" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-exporter-base", - "sideEffects": false -} diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.esm.json b/auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.esm.json deleted file mode 100644 index ae4740333..000000000 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.esm.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-core" - } - ] -} diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.esnext.json b/auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.esnext.json deleted file mode 100644 index 5f6cf572d..000000000 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.esnext.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-core" - } - ] -} diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.json b/auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.json deleted file mode 100644 index 6feabd646..000000000 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/tsconfig.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "extends": "../../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "files": [], - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-core" - } - ] -} diff --git a/auto-merge/js/experimental/packages/sdk-logs/package.json b/auto-merge/js/experimental/packages/sdk-logs/package.json deleted file mode 100644 index be9010f5a..000000000 --- a/auto-merge/js/experimental/packages/sdk-logs/package.json +++ /dev/null @@ -1,97 +0,0 @@ -{ - "name": "@opentelemetry/sdk-logs", - "version": "0.39.1", - "publishConfig": { - "access": "public" - }, - "description": "OpenTelemetry logs SDK", - "author": "OpenTelemetry Authors", - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/sdk-logs", - "license": "Apache-2.0", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "browser": { - "./src/platform/index.ts": "./src/platform/browser/index.ts", - "./build/esm/platform/index.js": "./build/esm/platform/browser/index.js", - "./build/esnext/platform/index.js": "./build/esnext/platform/browser/index.js", - "./build/src/platform/index.js": "./build/src/platform/browser/index.js" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/open-telemetry/opentelemetry-js.git" - }, - "bugs": { - "url": "https://github.com/open-telemetry/opentelemetry-js/issues" - }, - "engines": { - "node": ">=14" - }, - "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", - "test:browser": "nyc karma start --single-run", - "tdd": "npm run test -- --watch-extensions ts --watch", - "tdd:browser": "karma start", - "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", - "lint": "eslint . --ext .ts", - "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", - "prewatch": "node ../../../scripts/version-update.js", - "peer-api-check": "node ../../../scripts/peer-api-check.js" - }, - "keywords": [ - "opentelemetry", - "nodejs", - "logs", - "stats", - "profiling" - ], - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "sideEffects": false, - "peerDependencies": { - "@opentelemetry/api": ">=1.4.0 <1.5.0", - "@opentelemetry/api-logs": ">=0.38.0" - }, - "devDependencies": { - "@opentelemetry/api": ">=1.4.0 <1.5.0", - "@opentelemetry/api-logs": "0.39.1", - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "codecov": "3.8.3", - "karma": "6.3.16", - "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-webpack": "4.0.2", - "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "14.0.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4" - }, - "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/resources": "1.13.0" - } -} diff --git a/auto-merge/js/experimental/packages/sdk-logs/tsconfig.esm.json b/auto-merge/js/experimental/packages/sdk-logs/tsconfig.esm.json deleted file mode 100644 index 54150ddeb..000000000 --- a/auto-merge/js/experimental/packages/sdk-logs/tsconfig.esm.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-core" - }, - { - "path": "../../../packages/opentelemetry-resources" - }, - { - "path": "../api-logs" - } - ] -} diff --git a/auto-merge/js/experimental/packages/sdk-logs/tsconfig.esnext.json b/auto-merge/js/experimental/packages/sdk-logs/tsconfig.esnext.json deleted file mode 100644 index 8cdb32ae0..000000000 --- a/auto-merge/js/experimental/packages/sdk-logs/tsconfig.esnext.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "extends": "../../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-core" - }, - { - "path": "../../../packages/opentelemetry-resources" - }, - { - "path": "../api-logs" - } - ] -} diff --git a/auto-merge/js/experimental/packages/sdk-logs/tsconfig.json b/auto-merge/js/experimental/packages/sdk-logs/tsconfig.json deleted file mode 100644 index 25205b8cf..000000000 --- a/auto-merge/js/experimental/packages/sdk-logs/tsconfig.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "extends": "../../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - }, - { - "path": "../../../packages/opentelemetry-core" - }, - { - "path": "../../../packages/opentelemetry-resources" - }, - { - "path": "../api-logs" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/package.json b/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/package.json deleted file mode 100644 index dfcf81d49..000000000 --- a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/package.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "name": "@opentelemetry/context-zone-peer-dep", - "version": "1.13.0", - "description": "OpenTelemetry Context Zone with peer dependency for zone.js", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "scripts": { - "prepublishOnly": "npm run compile", - "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", - "lint:fix": "eslint . --ext .ts --fix", - "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", - "version": "node ../../scripts/version-update.js", - "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", - "prewatch": "npm run precompile", - "peer-api-check": "node ../../scripts/peer-api-check.js" - }, - "keywords": [ - "opentelemetry", - "web", - "tracing", - "profiling", - "metrics", - "stats" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/core": "7.16.0", - "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "@types/webpack-env": "1.16.3", - "@types/zone.js": "0.5.12", - "babel-loader": "8.2.3", - "codecov": "3.8.3", - "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", - "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-webpack": "4.0.2", - "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", - "ts-loader": "8.4.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0", - "webpack-cli": "4.9.1", - "zone.js": "0.11.4" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0", - "zone.js": "^0.10.2 || ^0.11.0" - }, - "sideEffects": false, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-context-zone-peer-dep" -} diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.esm.json b/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.esm.json deleted file mode 100644 index 971caf60a..000000000 --- a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.esm.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "files": [ - "node_modules/zone.js/dist/zone.js.d.ts" - ], - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-context-zone/.eslintrc.js b/auto-merge/js/packages/opentelemetry-context-zone/.eslintrc.js deleted file mode 100644 index c21aa0e35..000000000 --- a/auto-merge/js/packages/opentelemetry-context-zone/.eslintrc.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = { - "env": { - "browser": true, - "commonjs": true - }, - ...require('../../eslint.config.js') -} diff --git a/auto-merge/js/packages/opentelemetry-context-zone/package.json b/auto-merge/js/packages/opentelemetry-context-zone/package.json deleted file mode 100644 index 57d82fcbb..000000000 --- a/auto-merge/js/packages/opentelemetry-context-zone/package.json +++ /dev/null @@ -1,81 +0,0 @@ -{ - "name": "@opentelemetry/context-zone", - "version": "1.13.0", - "description": "OpenTelemetry Context Zone", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "scripts": { - "prepublishOnly": "npm run compile", - "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", - "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", - "prewatch": "npm run precompile", - "peer-api-check": "node ../../scripts/peer-api-check.js" - }, - "keywords": [ - "opentelemetry", - "web", - "tracing", - "profiling", - "metrics", - "stats" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/core": "7.16.0", - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", - "codecov": "3.8.3", - "karma": "6.3.16", - "karma-chrome-launcher": "3.1.0", - "karma-mocha": "2.0.1", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "4.0.2", - "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", - "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" - }, - "dependencies": { - "@opentelemetry/context-zone-peer-dep": "1.13.0", - "zone.js": "^0.11.0" - }, - "sideEffects": true, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-context-zone" -} diff --git a/auto-merge/js/packages/opentelemetry-context-zone/tsconfig.esm.json b/auto-merge/js/packages/opentelemetry-context-zone/tsconfig.esm.json deleted file mode 100644 index 01f05a6dc..000000000 --- a/auto-merge/js/packages/opentelemetry-context-zone/tsconfig.esm.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "files": [ - "node_modules/zone.js/dist/zone.js.d.ts" - ], - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../opentelemetry-context-zone-peer-dep" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-context-zone/tsconfig.esnext.json b/auto-merge/js/packages/opentelemetry-context-zone/tsconfig.esnext.json deleted file mode 100644 index 0f34342c6..000000000 --- a/auto-merge/js/packages/opentelemetry-context-zone/tsconfig.esnext.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "files": [ - "node_modules/zone.js/dist/zone.js.d.ts" - ], - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../opentelemetry-context-zone-peer-dep" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-core/tsconfig.esm.json b/auto-merge/js/packages/opentelemetry-core/tsconfig.esm.json deleted file mode 100644 index fdabf4b57..000000000 --- a/auto-merge/js/packages/opentelemetry-core/tsconfig.esm.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-core/tsconfig.esnext.json b/auto-merge/js/packages/opentelemetry-core/tsconfig.esnext.json deleted file mode 100644 index 3d3cb45fd..000000000 --- a/auto-merge/js/packages/opentelemetry-core/tsconfig.esnext.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/package.json b/auto-merge/js/packages/opentelemetry-propagator-b3/package.json deleted file mode 100644 index 31fde1399..000000000 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/package.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "name": "@opentelemetry/propagator-b3", - "version": "1.13.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", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts", - "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", - "lint": "eslint . --ext .ts", - "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", - "prewatch": "npm run precompile", - "peer-api-check": "node ../../scripts/peer-api-check.js" - }, - "keywords": [ - "opentelemetry", - "nodejs", - "tracing", - "profiling", - "monitoring", - "b3" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "dependencies": { - "@opentelemetry/core": "1.13.0" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - }, - "devDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", - "codecov": "3.8.3", - "istanbul-instrumenter-loader": "3.0.1", - "mocha": "10.0.0", - "nyc": "15.1.0", - "ts-loader": "8.4.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-propagator-b3", - "sideEffects": false -} diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.esm.json b/auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.esm.json deleted file mode 100644 index 76f5aed50..000000000 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.esm.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "extends": "../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-resources/tsconfig.esm.json b/auto-merge/js/packages/opentelemetry-resources/tsconfig.esm.json deleted file mode 100644 index dc247ea71..000000000 --- a/auto-merge/js/packages/opentelemetry-resources/tsconfig.esm.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "extends": "../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-resources/tsconfig.esnext.json b/auto-merge/js/packages/opentelemetry-resources/tsconfig.esnext.json deleted file mode 100644 index df87d6341..000000000 --- a/auto-merge/js/packages/opentelemetry-resources/tsconfig.esnext.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "extends": "../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-resources/tsconfig.json b/auto-merge/js/packages/opentelemetry-resources/tsconfig.json deleted file mode 100644 index 873053f07..000000000 --- a/auto-merge/js/packages/opentelemetry-resources/tsconfig.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "files": [], - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.esm.json b/auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.esm.json deleted file mode 100644 index 8c54819c4..000000000 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.esm.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "extends": "../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-resources" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.esnext.json b/auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.esnext.json deleted file mode 100644 index 5ec46d315..000000000 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.esnext.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "extends": "../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-resources" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.json b/auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.json deleted file mode 100644 index 2d87ab62f..000000000 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/tsconfig.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "files": [], - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-resources" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/package.json b/auto-merge/js/packages/opentelemetry-sdk-trace-web/package.json deleted file mode 100644 index 21110b939..000000000 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/package.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "name": "@opentelemetry/sdk-trace-web", - "version": "1.13.0", - "description": "OpenTelemetry Web Tracer", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "scripts": { - "prepublishOnly": "npm run compile", - "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", - "lint:fix": "eslint . --ext .ts --fix", - "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", - "codecov:webworker": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", - "version": "node ../../scripts/version-update.js", - "tdd": "karma start", - "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", - "prewatch": "npm run precompile", - "peer-api-check": "node ../../scripts/peer-api-check.js" - }, - "keywords": [ - "opentelemetry", - "web", - "tracing", - "profiling", - "metrics", - "stats" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/core": "7.16.0", - "@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", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "@types/webpack-env": "1.16.3", - "babel-loader": "8.2.3", - "codecov": "3.8.3", - "istanbul-instrumenter-loader": "3.0.1", - "karma": "6.3.16", - "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-webpack": "4.0.2", - "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", - "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" - }, - "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" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-web", - "sideEffects": false -} diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.esm.json b/auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.esm.json deleted file mode 100644 index b4393361b..000000000 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.esm.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "extends": "../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-context-zone" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-propagator-b3" - }, - { - "path": "../opentelemetry-resources" - }, - { - "path": "../opentelemetry-sdk-trace-base" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.esnext.json b/auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.esnext.json deleted file mode 100644 index db7a907a8..000000000 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.esnext.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "extends": "../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-context-zone" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-propagator-b3" - }, - { - "path": "../opentelemetry-resources" - }, - { - "path": "../opentelemetry-sdk-trace-base" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.json b/auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.json deleted file mode 100644 index 121903616..000000000 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/tsconfig.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "files": [], - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-context-zone" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-propagator-b3" - }, - { - "path": "../opentelemetry-resources" - }, - { - "path": "../opentelemetry-sdk-trace-base" - }, - { - "path": "../opentelemetry-semantic-conventions" - } - ] -} diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/package.json b/auto-merge/js/packages/opentelemetry-semantic-conventions/package.json deleted file mode 100644 index 9f094c97c..000000000 --- a/auto-merge/js/packages/opentelemetry-semantic-conventions/package.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "name": "@opentelemetry/semantic-conventions", - "version": "1.13.0", - "description": "OpenTelemetry semantic conventions", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "scripts": { - "prepublishOnly": "npm run compile", - "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", - "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", - "prewatch": "npm run precompile", - "peer-api-check": "node ../../scripts/peer-api-check.js" - }, - "keywords": [ - "opentelemetry", - "nodejs", - "tracing", - "attributes", - "semantic conventions" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "codecov": "3.8.3", - "mocha": "10.0.0", - "nock": "13.0.11", - "nyc": "15.1.0", - "sinon": "15.0.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-semantic-conventions", - "sideEffects": false -} diff --git a/auto-merge/js/packages/sdk-metrics/package.json b/auto-merge/js/packages/sdk-metrics/package.json deleted file mode 100644 index db230fd6b..000000000 --- a/auto-merge/js/packages/sdk-metrics/package.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "name": "@opentelemetry/sdk-metrics", - "version": "1.13.0", - "description": "OpenTelemetry metrics SDK", - "main": "build/src/index.js", - "module": "build/esm/index.js", - "esnext": "build/esnext/index.js", - "types": "build/src/index.d.ts", - "repository": "open-telemetry/opentelemetry-js", - "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", - "test:browser": "nyc karma start --single-run", - "tdd": "npm run test -- --watch-extensions ts --watch", - "tdd:browser": "karma start", - "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", - "lint": "eslint . --ext .ts", - "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", - "prewatch": "node ../../scripts/version-update.js", - "peer-api-check": "node ../../scripts/peer-api-check.js" - }, - "keywords": [ - "opentelemetry", - "nodejs", - "metrics", - "stats", - "profiling" - ], - "author": "OpenTelemetry Authors", - "license": "Apache-2.0", - "engines": { - "node": ">=14" - }, - "files": [ - "build/esm/**/*.js", - "build/esm/**/*.js.map", - "build/esm/**/*.d.ts", - "build/esnext/**/*.js", - "build/esnext/**/*.js.map", - "build/esnext/**/*.d.ts", - "build/src/**/*.js", - "build/src/**/*.js.map", - "build/src/**/*.d.ts", - "doc", - "LICENSE", - "README.md" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@opentelemetry/api": ">=1.3.0 <1.5.0", - "@types/lodash.merge": "4.6.6", - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", - "codecov": "3.8.3", - "karma": "6.3.16", - "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-webpack": "4.0.2", - "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", - "ts-mocha": "10.0.0", - "typescript": "4.4.4" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.3.0 <1.5.0" - }, - "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/resources": "1.13.0", - "lodash.merge": "4.6.2" - }, - "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/sdk-metrics", - "sideEffects": false -} diff --git a/auto-merge/js/packages/sdk-metrics/tsconfig.esm.json b/auto-merge/js/packages/sdk-metrics/tsconfig.esm.json deleted file mode 100644 index 013c8cd68..000000000 --- a/auto-merge/js/packages/sdk-metrics/tsconfig.esm.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "extends": "../../tsconfig.base.esm.json", - "compilerOptions": { - "outDir": "build/esm", - "rootDir": "src", - "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-resources" - } - ] -} diff --git a/auto-merge/js/packages/sdk-metrics/tsconfig.esnext.json b/auto-merge/js/packages/sdk-metrics/tsconfig.esnext.json deleted file mode 100644 index 98ffec480..000000000 --- a/auto-merge/js/packages/sdk-metrics/tsconfig.esnext.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "extends": "../../tsconfig.base.esnext.json", - "compilerOptions": { - "outDir": "build/esnext", - "rootDir": "src", - "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" - }, - "include": [ - "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-resources" - } - ] -} diff --git a/auto-merge/js/packages/sdk-metrics/tsconfig.json b/auto-merge/js/packages/sdk-metrics/tsconfig.json deleted file mode 100644 index aea59db32..000000000 --- a/auto-merge/js/packages/sdk-metrics/tsconfig.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "extends": "../../tsconfig.base.json", - "compilerOptions": { - "outDir": "build", - "rootDir": "." - }, - "files": [], - "include": [ - "src/**/*.ts", - "test/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - }, - { - "path": "../opentelemetry-resources" - } - ] -} diff --git a/auto-merge/js/eslint.config.js b/eslint.config.js similarity index 100% rename from auto-merge/js/eslint.config.js rename to eslint.config.js diff --git a/auto-merge/js/karma.base.js b/karma.base.js similarity index 100% rename from auto-merge/js/karma.base.js rename to karma.base.js diff --git a/karma.debug.js b/karma.debug.js new file mode 100644 index 000000000..7494600e7 --- /dev/null +++ b/karma.debug.js @@ -0,0 +1,57 @@ +/*! + * 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 + * + * 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. +*/ + +const baseConfig = require("./karma.base"); + +// Copied from karma/lib/constants.js (https://github.com/karma-runner/karma/blob/master/lib/constants.js) +const LOG_DEBUG = "DEBUG"; +const LOG_INFO = "INFO"; +const LOG_WARN = "WARN"; +const LOG_ERROR = "ERROR"; +const LOG_DISABLE = "OFF"; + +process.env.CHROME_BIN = require("puppeteer").executablePath(); + +// Default to using edge locally -- choose your own browser as required +// process.env.CHROME_BIN = "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"; + +module.exports = { + ...baseConfig, + browsers: ["Chromium_without_security"], + karmaTypescriptConfig: { + tsconfig: "./tsconfig.test.json", + compilerOptions: { + sourceMap: true + }, + bundlerOptions: { + sourceMap: true + }, + coverageOptions: { + instrumentation: false, + sourceMap: true + } + }, + + reporters: [ "spec" ], + + customLaunchers: { + Chromium_without_security: { + base: "Chrome", + flags: ["--disable-web-security", "--disable-site-isolation-trials"] + } + }, + logLevel: LOG_DEBUG +}; diff --git a/auto-merge/js/karma.webpack.js b/karma.webpack.js similarity index 100% rename from auto-merge/js/karma.webpack.js rename to karma.webpack.js diff --git a/auto-merge/js/karma.worker.js b/karma.worker.js similarity index 100% rename from auto-merge/js/karma.worker.js rename to karma.worker.js diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/.eslintignore b/pkgs/api-events/.eslintignore similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/.eslintignore rename to pkgs/api-events/.eslintignore diff --git a/auto-merge/js/experimental/packages/api-events/.eslintrc.js b/pkgs/api-events/.eslintrc.js similarity index 73% rename from auto-merge/js/experimental/packages/api-events/.eslintrc.js rename to pkgs/api-events/.eslintrc.js index 7654abb6a..6a54663c6 100644 --- a/auto-merge/js/experimental/packages/api-events/.eslintrc.js +++ b/pkgs/api-events/.eslintrc.js @@ -4,5 +4,5 @@ module.exports = { "commonjs": true, "shared-node-browser": true }, - ...require('../../../eslint.config.js') + ...require('../../eslint.config.js') } diff --git a/auto-merge/js/api/LICENSE b/pkgs/api-events/LICENSE similarity index 100% rename from auto-merge/js/api/LICENSE rename to pkgs/api-events/LICENSE diff --git a/auto-merge/js/experimental/packages/api-events/README.md b/pkgs/api-events/README.md similarity index 98% rename from auto-merge/js/experimental/packages/api-events/README.md rename to pkgs/api-events/README.md index 3aff88eff..21dd58869 100644 --- a/auto-merge/js/experimental/packages/api-events/README.md +++ b/pkgs/api-events/README.md @@ -26,7 +26,7 @@ If you are writing an instrumentation library, or prefer to call the API methods - [Events API Documentation][events-api-docs] ```javascript -const api = require("@opentelemetry/api-events"); +const api = require("@opentelemetry/sandbox-api-events"); /* A specific implementation of EventEmitterProvider comes from an SDK */ const eventEmitterProvider = createEventEmitterProvider(); diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/karma.conf.js b/pkgs/api-events/karma.conf.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/karma.conf.js rename to pkgs/api-events/karma.conf.js diff --git a/pkgs/api-events/karma.debug.conf.js b/pkgs/api-events/karma.debug.conf.js new file mode 100644 index 000000000..e2d096d8e --- /dev/null +++ b/pkgs/api-events/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/auto-merge/js/experimental/packages/api-events/package.json b/pkgs/api-events/package.json similarity index 51% rename from auto-merge/js/experimental/packages/api-events/package.json rename to pkgs/api-events/package.json index bc1a24a54..f4a09d7b9 100644 --- a/auto-merge/js/experimental/packages/api-events/package.json +++ b/pkgs/api-events/package.json @@ -1,5 +1,5 @@ { - "name": "@opentelemetry/api-events", + "name": "@opentelemetry/sandbox-api-events", "version": "0.39.1", "description": "Public events API for OpenTelemetry", "main": "build/src/index.js", @@ -14,20 +14,24 @@ }, "repository": "open-telemetry/opentelemetry-js", "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts", - "test:browser": "nyc karma start --single-run", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", - "build": "npm run compile", + "compile": "npm run build", "lint": "eslint . --ext .ts", - "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", - "prewatch": "node ../../../scripts/version-update.js" + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", + "version": "node ../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" }, "keywords": [ "opentelemetry", @@ -61,27 +65,46 @@ "access": "public" }, "dependencies": { - "@opentelemetry/api": "^1.0.0" + "@opentelemetry/sandbox-api": "1.4.1" }, "devDependencies": { - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", "@types/webpack-env": "1.16.3", - "codecov": "3.8.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", "istanbul-instrumenter-loader": "3.0.1", "karma": "6.3.16", "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-webpack": "4.0.2", + "karma-mocha": "^2.0.1", + "karma-mocha-webworker": "1.3.0", + "karma-spec-reporter": "^0.0.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", "mocha": "10.0.0", - "nyc": "15.1.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0" + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/api-events", "sideEffects": false -} +} \ No newline at end of file diff --git a/pkgs/api-events/rollup.config.js b/pkgs/api-events/rollup.config.js new file mode 100644 index 000000000..78e7ddad8 --- /dev/null +++ b/pkgs/api-events/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.api-events", inputName, "otel-sndbx.api-events", version); diff --git a/auto-merge/js/experimental/packages/api-events/src/NoopEventEmitter.ts b/pkgs/api-events/src/NoopEventEmitter.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/NoopEventEmitter.ts rename to pkgs/api-events/src/NoopEventEmitter.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/NoopEventEmitterProvider.ts b/pkgs/api-events/src/NoopEventEmitterProvider.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/NoopEventEmitterProvider.ts rename to pkgs/api-events/src/NoopEventEmitterProvider.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/api/events.ts b/pkgs/api-events/src/api/events.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/api/events.ts rename to pkgs/api-events/src/api/events.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/index.ts b/pkgs/api-events/src/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/index.ts rename to pkgs/api-events/src/index.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/internal/global-utils.ts b/pkgs/api-events/src/internal/global-utils.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/internal/global-utils.ts rename to pkgs/api-events/src/internal/global-utils.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/platform/browser/globalThis.ts b/pkgs/api-events/src/platform/browser/globalThis.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/platform/browser/globalThis.ts rename to pkgs/api-events/src/platform/browser/globalThis.ts diff --git a/auto-merge/js/api/src/platform/browser/index.ts b/pkgs/api-events/src/platform/browser/index.ts similarity index 100% rename from auto-merge/js/api/src/platform/browser/index.ts rename to pkgs/api-events/src/platform/browser/index.ts diff --git a/auto-merge/js/api/src/platform/index.ts b/pkgs/api-events/src/platform/index.ts similarity index 100% rename from auto-merge/js/api/src/platform/index.ts rename to pkgs/api-events/src/platform/index.ts diff --git a/auto-merge/js/api/src/platform/node/globalThis.ts b/pkgs/api-events/src/platform/node/globalThis.ts similarity index 100% rename from auto-merge/js/api/src/platform/node/globalThis.ts rename to pkgs/api-events/src/platform/node/globalThis.ts diff --git a/auto-merge/js/api/src/platform/node/index.ts b/pkgs/api-events/src/platform/node/index.ts similarity index 100% rename from auto-merge/js/api/src/platform/node/index.ts rename to pkgs/api-events/src/platform/node/index.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/types/Event.ts b/pkgs/api-events/src/types/Event.ts similarity index 95% rename from auto-merge/js/experimental/packages/api-events/src/types/Event.ts rename to pkgs/api-events/src/types/Event.ts index 03e4ef89d..6ec1e2915 100644 --- a/auto-merge/js/experimental/packages/api-events/src/types/Event.ts +++ b/pkgs/api-events/src/types/Event.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Attributes } from '@opentelemetry/api'; +import { Attributes } from '@opentelemetry/sandbox-api'; export interface Event { /** diff --git a/auto-merge/js/experimental/packages/api-events/src/types/EventEmitter.ts b/pkgs/api-events/src/types/EventEmitter.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/types/EventEmitter.ts rename to pkgs/api-events/src/types/EventEmitter.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/types/EventEmitterOptions.ts b/pkgs/api-events/src/types/EventEmitterOptions.ts similarity index 93% rename from auto-merge/js/experimental/packages/api-events/src/types/EventEmitterOptions.ts rename to pkgs/api-events/src/types/EventEmitterOptions.ts index f5b983884..9144c9d17 100644 --- a/auto-merge/js/experimental/packages/api-events/src/types/EventEmitterOptions.ts +++ b/pkgs/api-events/src/types/EventEmitterOptions.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Attributes } from '@opentelemetry/api'; +import { Attributes } from '@opentelemetry/sandbox-api'; export interface EventEmitterOptions { /** diff --git a/auto-merge/js/experimental/packages/api-events/src/types/EventEmitterProvider.ts b/pkgs/api-events/src/types/EventEmitterProvider.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/types/EventEmitterProvider.ts rename to pkgs/api-events/src/types/EventEmitterProvider.ts diff --git a/auto-merge/js/experimental/packages/api-events/test/api/api.test.ts b/pkgs/api-events/test/api/api.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/test/api/api.test.ts rename to pkgs/api-events/test/api/api.test.ts diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/test/index-webpack.ts b/pkgs/api-events/test/index-webpack.ts similarity index 100% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/test/index-webpack.ts rename to pkgs/api-events/test/index-webpack.ts diff --git a/auto-merge/js/experimental/packages/api-events/test/internal/global.test.ts b/pkgs/api-events/test/internal/global.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/test/internal/global.test.ts rename to pkgs/api-events/test/internal/global.test.ts diff --git a/auto-merge/js/experimental/packages/api-events/test/noop-implementations/noop-event-emitter-provider.test.ts b/pkgs/api-events/test/noop-implementations/noop-event-emitter-provider.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/test/noop-implementations/noop-event-emitter-provider.test.ts rename to pkgs/api-events/test/noop-implementations/noop-event-emitter-provider.test.ts diff --git a/auto-merge/js/experimental/packages/api-events/test/noop-implementations/noop-event-emitter.test.ts b/pkgs/api-events/test/noop-implementations/noop-event-emitter.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/test/noop-implementations/noop-event-emitter.test.ts rename to pkgs/api-events/test/noop-implementations/noop-event-emitter.test.ts diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/tsconfig.esm.json b/pkgs/api-events/tsconfig.esm.json similarity index 89% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/tsconfig.esm.json rename to pkgs/api-events/tsconfig.esm.json index c43ba03ff..6f96cbec1 100644 --- a/auto-merge/js/packages/opentelemetry-semantic-conventions/tsconfig.esm.json +++ b/pkgs/api-events/tsconfig.esm.json @@ -7,6 +7,5 @@ }, "include": [ "src/**/*.ts" - ], - "references": [] -} + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/tsconfig.esnext.json b/pkgs/api-events/tsconfig.esnext.json similarity index 89% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/tsconfig.esnext.json rename to pkgs/api-events/tsconfig.esnext.json index 6eaaaf7d0..2525ac36a 100644 --- a/auto-merge/js/packages/opentelemetry-semantic-conventions/tsconfig.esnext.json +++ b/pkgs/api-events/tsconfig.esnext.json @@ -7,6 +7,5 @@ }, "include": [ "src/**/*.ts" - ], - "references": [] -} + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/tsconfig.json b/pkgs/api-events/tsconfig.json similarity index 87% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/tsconfig.json rename to pkgs/api-events/tsconfig.json index d6e4e25ca..cb48d4258 100644 --- a/auto-merge/js/packages/opentelemetry-semantic-conventions/tsconfig.json +++ b/pkgs/api-events/tsconfig.json @@ -8,6 +8,5 @@ "include": [ "src/**/*.ts", "test/**/*.ts" - ], - "references": [] -} + ] +} \ No newline at end of file diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/.eslintignore b/pkgs/api-logs/.eslintignore similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/.eslintignore rename to pkgs/api-logs/.eslintignore diff --git a/auto-merge/js/experimental/packages/api-logs/.eslintrc.js b/pkgs/api-logs/.eslintrc.js similarity index 73% rename from auto-merge/js/experimental/packages/api-logs/.eslintrc.js rename to pkgs/api-logs/.eslintrc.js index 7654abb6a..6a54663c6 100644 --- a/auto-merge/js/experimental/packages/api-logs/.eslintrc.js +++ b/pkgs/api-logs/.eslintrc.js @@ -4,5 +4,5 @@ module.exports = { "commonjs": true, "shared-node-browser": true }, - ...require('../../../eslint.config.js') + ...require('../../eslint.config.js') } diff --git a/auto-merge/js/experimental/packages/api-events/LICENSE b/pkgs/api-logs/LICENSE similarity index 100% rename from auto-merge/js/experimental/packages/api-events/LICENSE rename to pkgs/api-logs/LICENSE diff --git a/auto-merge/js/experimental/packages/api-logs/README.md b/pkgs/api-logs/README.md similarity index 98% rename from auto-merge/js/experimental/packages/api-logs/README.md rename to pkgs/api-logs/README.md index b36d5bf06..acf3d8bf7 100644 --- a/auto-merge/js/experimental/packages/api-logs/README.md +++ b/pkgs/api-logs/README.md @@ -26,7 +26,7 @@ If you are writing an instrumentation library, or prefer to call the API methods - [Logs API Documentation][logs-api-docs] ```javascript -const api = require("@opentelemetry/api-logs"); +const api = require("@opentelemetry/sandbox-api-logs"); /* A specific implementation of LoggerProvider comes from an SDK */ const loggerProvider = createLoggerProvider(); diff --git a/auto-merge/js/packages/opentelemetry-resources/karma.conf.js b/pkgs/api-logs/karma.conf.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/karma.conf.js rename to pkgs/api-logs/karma.conf.js diff --git a/pkgs/api-logs/karma.debug.conf.js b/pkgs/api-logs/karma.debug.conf.js new file mode 100644 index 000000000..e2d096d8e --- /dev/null +++ b/pkgs/api-logs/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/auto-merge/js/experimental/packages/api-logs/package.json b/pkgs/api-logs/package.json similarity index 51% rename from auto-merge/js/experimental/packages/api-logs/package.json rename to pkgs/api-logs/package.json index 9143ef36d..d7aa5472b 100644 --- a/auto-merge/js/experimental/packages/api-logs/package.json +++ b/pkgs/api-logs/package.json @@ -1,5 +1,5 @@ { - "name": "@opentelemetry/api-logs", + "name": "@opentelemetry/sandbox-api-logs", "version": "0.39.1", "description": "Public logs API for OpenTelemetry", "main": "build/src/index.js", @@ -14,20 +14,24 @@ }, "repository": "open-telemetry/opentelemetry-js", "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts", - "test:browser": "nyc karma start --single-run", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", - "build": "npm run compile", + "compile": "npm run build", "lint": "eslint . --ext .ts", - "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", - "prewatch": "node ../../../scripts/version-update.js" + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", + "version": "node ../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" }, "keywords": [ "opentelemetry", @@ -61,27 +65,46 @@ "access": "public" }, "dependencies": { - "@opentelemetry/api": "^1.0.0" + "@opentelemetry/sandbox-api": "1.4.1" }, "devDependencies": { - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", "@types/webpack-env": "1.16.3", - "codecov": "3.8.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", "istanbul-instrumenter-loader": "3.0.1", "karma": "6.3.16", "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-webpack": "4.0.2", + "karma-mocha": "^2.0.1", + "karma-mocha-webworker": "1.3.0", + "karma-spec-reporter": "^0.0.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", "mocha": "10.0.0", - "nyc": "15.1.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0" + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/api-logs", "sideEffects": false -} +} \ No newline at end of file diff --git a/pkgs/api-logs/rollup.config.js b/pkgs/api-logs/rollup.config.js new file mode 100644 index 000000000..0f8b372be --- /dev/null +++ b/pkgs/api-logs/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.api-logs", inputName, "otel-sndbx.api-logs", version); diff --git a/auto-merge/js/experimental/packages/api-logs/src/NoopLogger.ts b/pkgs/api-logs/src/NoopLogger.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/NoopLogger.ts rename to pkgs/api-logs/src/NoopLogger.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/NoopLoggerProvider.ts b/pkgs/api-logs/src/NoopLoggerProvider.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/NoopLoggerProvider.ts rename to pkgs/api-logs/src/NoopLoggerProvider.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/api/logs.ts b/pkgs/api-logs/src/api/logs.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/api/logs.ts rename to pkgs/api-logs/src/api/logs.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/index.ts b/pkgs/api-logs/src/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/index.ts rename to pkgs/api-logs/src/index.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/internal/global-utils.ts b/pkgs/api-logs/src/internal/global-utils.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/internal/global-utils.ts rename to pkgs/api-logs/src/internal/global-utils.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/platform/browser/globalThis.ts b/pkgs/api-logs/src/platform/browser/globalThis.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/platform/browser/globalThis.ts rename to pkgs/api-logs/src/platform/browser/globalThis.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/platform/browser/index.ts b/pkgs/api-logs/src/platform/browser/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/platform/browser/index.ts rename to pkgs/api-logs/src/platform/browser/index.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/platform/index.ts b/pkgs/api-logs/src/platform/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/platform/index.ts rename to pkgs/api-logs/src/platform/index.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/platform/node/globalThis.ts b/pkgs/api-logs/src/platform/node/globalThis.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/platform/node/globalThis.ts rename to pkgs/api-logs/src/platform/node/globalThis.ts diff --git a/auto-merge/js/experimental/packages/api-events/src/platform/node/index.ts b/pkgs/api-logs/src/platform/node/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/src/platform/node/index.ts rename to pkgs/api-logs/src/platform/node/index.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/types/LogRecord.ts b/pkgs/api-logs/src/types/LogRecord.ts similarity index 96% rename from auto-merge/js/experimental/packages/api-logs/src/types/LogRecord.ts rename to pkgs/api-logs/src/types/LogRecord.ts index e1c1100c5..1c5d8d646 100644 --- a/auto-merge/js/experimental/packages/api-logs/src/types/LogRecord.ts +++ b/pkgs/api-logs/src/types/LogRecord.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Attributes, Context } from '@opentelemetry/api'; +import { Attributes, Context } from '@opentelemetry/sandbox-api'; export enum SeverityNumber { UNSPECIFIED = 0, diff --git a/auto-merge/js/experimental/packages/api-logs/src/types/Logger.ts b/pkgs/api-logs/src/types/Logger.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/types/Logger.ts rename to pkgs/api-logs/src/types/Logger.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/types/LoggerOptions.ts b/pkgs/api-logs/src/types/LoggerOptions.ts similarity index 94% rename from auto-merge/js/experimental/packages/api-logs/src/types/LoggerOptions.ts rename to pkgs/api-logs/src/types/LoggerOptions.ts index a57d44a73..3226ee858 100644 --- a/auto-merge/js/experimental/packages/api-logs/src/types/LoggerOptions.ts +++ b/pkgs/api-logs/src/types/LoggerOptions.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Attributes } from '@opentelemetry/api'; +import { Attributes } from '@opentelemetry/sandbox-api'; export interface LoggerOptions { /** diff --git a/auto-merge/js/experimental/packages/api-logs/src/types/LoggerProvider.ts b/pkgs/api-logs/src/types/LoggerProvider.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/types/LoggerProvider.ts rename to pkgs/api-logs/src/types/LoggerProvider.ts diff --git a/auto-merge/js/experimental/packages/api-logs/test/api/api.test.ts b/pkgs/api-logs/test/api/api.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/test/api/api.test.ts rename to pkgs/api-logs/test/api/api.test.ts diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/test/index-webpack.ts b/pkgs/api-logs/test/index-webpack.ts similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/test/index-webpack.ts rename to pkgs/api-logs/test/index-webpack.ts diff --git a/auto-merge/js/experimental/packages/api-logs/test/internal/global.test.ts b/pkgs/api-logs/test/internal/global.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/test/internal/global.test.ts rename to pkgs/api-logs/test/internal/global.test.ts diff --git a/auto-merge/js/experimental/packages/api-logs/test/noop-implementations/noop-logger-provider.test.ts b/pkgs/api-logs/test/noop-implementations/noop-logger-provider.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/test/noop-implementations/noop-logger-provider.test.ts rename to pkgs/api-logs/test/noop-implementations/noop-logger-provider.test.ts diff --git a/auto-merge/js/experimental/packages/api-logs/test/noop-implementations/noop-logger.test.ts b/pkgs/api-logs/test/noop-implementations/noop-logger.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/test/noop-implementations/noop-logger.test.ts rename to pkgs/api-logs/test/noop-implementations/noop-logger.test.ts diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/tsconfig.esm.json b/pkgs/api-logs/tsconfig.esm.json similarity index 88% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/tsconfig.esm.json rename to pkgs/api-logs/tsconfig.esm.json index 356b6d030..6f96cbec1 100644 --- a/auto-merge/contrib/metapackages/auto-instrumentations-web/tsconfig.esm.json +++ b/pkgs/api-logs/tsconfig.esm.json @@ -1,12 +1,11 @@ { "extends": "../../tsconfig.base.esm.json", "compilerOptions": { - "rootDir": "src", "outDir": "build/esm", - "skipLibCheck": true, + "rootDir": "src", "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" }, "include": [ "src/**/*.ts" ] -} +} \ No newline at end of file diff --git a/auto-merge/js/api/tsconfig.esnext.json b/pkgs/api-logs/tsconfig.esnext.json similarity index 71% rename from auto-merge/js/api/tsconfig.esnext.json rename to pkgs/api-logs/tsconfig.esnext.json index 54d1d053d..2525ac36a 100644 --- a/auto-merge/js/api/tsconfig.esnext.json +++ b/pkgs/api-logs/tsconfig.esnext.json @@ -1,5 +1,5 @@ { - "extends": "../tsconfig.base.esnext.json", + "extends": "../../tsconfig.base.esnext.json", "compilerOptions": { "outDir": "build/esnext", "rootDir": "src", @@ -7,6 +7,5 @@ }, "include": [ "src/**/*.ts" - ], - "references": [] -} + ] +} \ No newline at end of file diff --git a/auto-merge/js/api/tsconfig.json b/pkgs/api-logs/tsconfig.json similarity index 68% rename from auto-merge/js/api/tsconfig.json rename to pkgs/api-logs/tsconfig.json index 9622af53c..cb48d4258 100644 --- a/auto-merge/js/api/tsconfig.json +++ b/pkgs/api-logs/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../tsconfig.base.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "outDir": "build", "rootDir": "." @@ -8,6 +8,5 @@ "include": [ "src/**/*.ts", "test/**/*.ts" - ], - "references": [] -} + ] +} \ No newline at end of file diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/.eslintignore b/pkgs/api/.eslintignore similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/.eslintignore rename to pkgs/api/.eslintignore diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/.eslintrc.js b/pkgs/api/.eslintrc.js similarity index 78% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/.eslintrc.js rename to pkgs/api/.eslintrc.js index fe91e2104..e20344660 100644 --- a/auto-merge/contrib/metapackages/auto-instrumentations-web/.eslintrc.js +++ b/pkgs/api/.eslintrc.js @@ -1,8 +1,8 @@ module.exports = { "env": { - "commonjs": true, - "node": true, "mocha": true, + "commonjs": true, + "shared-node-browser": true }, ...require('../../eslint.config.js') } diff --git a/auto-merge/js/api/CHANGELOG.md b/pkgs/api/CHANGELOG.md similarity index 100% rename from auto-merge/js/api/CHANGELOG.md rename to pkgs/api/CHANGELOG.md diff --git a/auto-merge/js/experimental/packages/api-logs/LICENSE b/pkgs/api/LICENSE similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/LICENSE rename to pkgs/api/LICENSE diff --git a/auto-merge/js/api/README.md b/pkgs/api/README.md similarity index 98% rename from auto-merge/js/api/README.md rename to pkgs/api/README.md index 56dd23d17..3c74aee7e 100644 --- a/auto-merge/js/api/README.md +++ b/pkgs/api/README.md @@ -41,8 +41,8 @@ In order to get started with tracing, you will need to first register an SDK. Th Once you have registered an SDK, you can start and end spans. A simple example of basic SDK registration and tracing a simple operation is below. The example should export spans to the console once per second. For more information, see the [tracing documentation][docs-tracing]. ```javascript -const { trace } = require("@opentelemetry/api"); -const { BasicTracerProvider, ConsoleSpanExporter, SimpleSpanProcessor } = require("@opentelemetry/sdk-trace-base"); +const { trace } = require("@opentelemetry/sandbox-api"); +const { BasicTracerProvider, ConsoleSpanExporter, SimpleSpanProcessor } = require("@opentelemetry/sandbox-sdk-trace-base"); // Create and register an SDK const provider = new BasicTracerProvider(); diff --git a/auto-merge/js/packages/opentelemetry-core/karma.conf.js b/pkgs/api/karma.conf.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/karma.conf.js rename to pkgs/api/karma.conf.js diff --git a/pkgs/api/karma.debug.conf.js b/pkgs/api/karma.debug.conf.js new file mode 100644 index 000000000..e2d096d8e --- /dev/null +++ b/pkgs/api/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/karma.worker.js b/pkgs/api/karma.worker.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/karma.worker.js rename to pkgs/api/karma.worker.js diff --git a/auto-merge/js/api/package.json b/pkgs/api/package.json similarity index 54% rename from auto-merge/js/api/package.json rename to pkgs/api/package.json index a82fd886b..f066743b2 100644 --- a/auto-merge/js/api/package.json +++ b/pkgs/api/package.json @@ -1,5 +1,5 @@ { - "name": "@opentelemetry/api", + "name": "@opentelemetry/sandbox-api", "version": "1.4.1", "description": "Public API for OpenTelemetry", "main": "build/src/index.js", @@ -12,25 +12,29 @@ }, "repository": "open-telemetry/opentelemetry-js", "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../", "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", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "compile": "npm run build", + "cycle-check": "dpdm --exit-code circular:1 src/index.ts", "docs": "typedoc", "docs:deploy": "gh-pages --dist docs/out", "docs:test": "linkinator docs/out --silent && linkinator docs/*.md *.md --markdown --silent", - "lint:fix": "eslint . --ext .ts --fix", "lint": "eslint . --ext .ts", - "test:browser": "nyc karma start --single-run", - "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../scripts/peer-api-check.js", + "rebuild": "npm run build", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", "test:webworker": "nyc karma start karma.worker.js --single-run", - "cycle-check": "dpdm --exit-code circular:1 src/index.ts", - "version": "node ../scripts/version-update.js", - "prewatch": "npm run precompile", - "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "peer-api-check": "node ../scripts/peer-api-check.js" + "version": "node ../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" }, "keywords": [ "opentelemetry", @@ -60,31 +64,47 @@ "access": "public" }, "devDependencies": { - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", "@types/webpack": "4.41.26", "@types/webpack-env": "1.16.3", - "codecov": "3.8.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", "dpdm": "3.10.0", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", "istanbul-instrumenter-loader": "3.0.1", "karma": "6.3.16", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", - "karma-mocha": "2.0.1", + "karma-mocha": "^2.0.1", "karma-mocha-webworker": "1.3.0", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "4.0.2", + "karma-spec-reporter": "^0.0.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", "memfs": "3.4.9", "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", - "typescript": "4.4.4", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", "unionfs": "4.4.0", - "webpack": "4.46.0" + "webpack": "^4.46.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/api", "sideEffects": false -} +} \ No newline at end of file diff --git a/pkgs/api/rollup.config.js b/pkgs/api/rollup.config.js new file mode 100644 index 000000000..fb492c728 --- /dev/null +++ b/pkgs/api/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.api", inputName, "otel-sndbx.api", version); diff --git a/auto-merge/js/api/src/api/context.ts b/pkgs/api/src/api/context.ts similarity index 100% rename from auto-merge/js/api/src/api/context.ts rename to pkgs/api/src/api/context.ts diff --git a/auto-merge/js/api/src/api/diag.ts b/pkgs/api/src/api/diag.ts similarity index 100% rename from auto-merge/js/api/src/api/diag.ts rename to pkgs/api/src/api/diag.ts diff --git a/auto-merge/js/api/src/api/metrics.ts b/pkgs/api/src/api/metrics.ts similarity index 100% rename from auto-merge/js/api/src/api/metrics.ts rename to pkgs/api/src/api/metrics.ts diff --git a/auto-merge/js/api/src/api/propagation.ts b/pkgs/api/src/api/propagation.ts similarity index 100% rename from auto-merge/js/api/src/api/propagation.ts rename to pkgs/api/src/api/propagation.ts diff --git a/auto-merge/js/api/src/api/trace.ts b/pkgs/api/src/api/trace.ts similarity index 100% rename from auto-merge/js/api/src/api/trace.ts rename to pkgs/api/src/api/trace.ts diff --git a/auto-merge/js/api/src/baggage/context-helpers.ts b/pkgs/api/src/baggage/context-helpers.ts similarity index 100% rename from auto-merge/js/api/src/baggage/context-helpers.ts rename to pkgs/api/src/baggage/context-helpers.ts diff --git a/auto-merge/js/api/src/baggage/internal/baggage-impl.ts b/pkgs/api/src/baggage/internal/baggage-impl.ts similarity index 100% rename from auto-merge/js/api/src/baggage/internal/baggage-impl.ts rename to pkgs/api/src/baggage/internal/baggage-impl.ts diff --git a/auto-merge/js/api/src/baggage/internal/symbol.ts b/pkgs/api/src/baggage/internal/symbol.ts similarity index 100% rename from auto-merge/js/api/src/baggage/internal/symbol.ts rename to pkgs/api/src/baggage/internal/symbol.ts diff --git a/auto-merge/js/api/src/baggage/types.ts b/pkgs/api/src/baggage/types.ts similarity index 100% rename from auto-merge/js/api/src/baggage/types.ts rename to pkgs/api/src/baggage/types.ts diff --git a/auto-merge/js/api/src/baggage/utils.ts b/pkgs/api/src/baggage/utils.ts similarity index 100% rename from auto-merge/js/api/src/baggage/utils.ts rename to pkgs/api/src/baggage/utils.ts diff --git a/auto-merge/js/api/src/common/Attributes.ts b/pkgs/api/src/common/Attributes.ts similarity index 100% rename from auto-merge/js/api/src/common/Attributes.ts rename to pkgs/api/src/common/Attributes.ts diff --git a/auto-merge/js/api/src/common/Exception.ts b/pkgs/api/src/common/Exception.ts similarity index 100% rename from auto-merge/js/api/src/common/Exception.ts rename to pkgs/api/src/common/Exception.ts diff --git a/auto-merge/js/api/src/common/Time.ts b/pkgs/api/src/common/Time.ts similarity index 100% rename from auto-merge/js/api/src/common/Time.ts rename to pkgs/api/src/common/Time.ts diff --git a/auto-merge/js/api/src/context-api.ts b/pkgs/api/src/context-api.ts similarity index 100% rename from auto-merge/js/api/src/context-api.ts rename to pkgs/api/src/context-api.ts diff --git a/auto-merge/js/api/src/context/NoopContextManager.ts b/pkgs/api/src/context/NoopContextManager.ts similarity index 100% rename from auto-merge/js/api/src/context/NoopContextManager.ts rename to pkgs/api/src/context/NoopContextManager.ts diff --git a/auto-merge/js/api/src/context/context.ts b/pkgs/api/src/context/context.ts similarity index 100% rename from auto-merge/js/api/src/context/context.ts rename to pkgs/api/src/context/context.ts diff --git a/auto-merge/js/api/src/context/types.ts b/pkgs/api/src/context/types.ts similarity index 100% rename from auto-merge/js/api/src/context/types.ts rename to pkgs/api/src/context/types.ts diff --git a/auto-merge/js/api/src/diag-api.ts b/pkgs/api/src/diag-api.ts similarity index 100% rename from auto-merge/js/api/src/diag-api.ts rename to pkgs/api/src/diag-api.ts diff --git a/auto-merge/js/api/src/diag/ComponentLogger.ts b/pkgs/api/src/diag/ComponentLogger.ts similarity index 97% rename from auto-merge/js/api/src/diag/ComponentLogger.ts rename to pkgs/api/src/diag/ComponentLogger.ts index 225350186..b636ab584 100644 --- a/auto-merge/js/api/src/diag/ComponentLogger.ts +++ b/pkgs/api/src/diag/ComponentLogger.ts @@ -22,7 +22,7 @@ import { ComponentLoggerOptions, DiagLogger, DiagLogFunction } from './types'; * will add automatically additional namespace in front of the log message. * It will then forward all message to global diag logger * @example - * const cLogger = diag.createComponentLogger({ namespace: '@opentelemetry/instrumentation-http' }); + * const cLogger = diag.createComponentLogger({ namespace: '@opentelemetry/sandbox-instrumentation-http' }); * cLogger.debug('test'); * // @opentelemetry/instrumentation-http test */ diff --git a/auto-merge/js/api/src/diag/consoleLogger.ts b/pkgs/api/src/diag/consoleLogger.ts similarity index 100% rename from auto-merge/js/api/src/diag/consoleLogger.ts rename to pkgs/api/src/diag/consoleLogger.ts diff --git a/auto-merge/js/api/src/diag/internal/logLevelLogger.ts b/pkgs/api/src/diag/internal/logLevelLogger.ts similarity index 100% rename from auto-merge/js/api/src/diag/internal/logLevelLogger.ts rename to pkgs/api/src/diag/internal/logLevelLogger.ts diff --git a/auto-merge/js/api/src/diag/internal/noopLogger.ts b/pkgs/api/src/diag/internal/noopLogger.ts similarity index 100% rename from auto-merge/js/api/src/diag/internal/noopLogger.ts rename to pkgs/api/src/diag/internal/noopLogger.ts diff --git a/auto-merge/js/api/src/diag/types.ts b/pkgs/api/src/diag/types.ts similarity index 100% rename from auto-merge/js/api/src/diag/types.ts rename to pkgs/api/src/diag/types.ts diff --git a/auto-merge/js/api/src/index.ts b/pkgs/api/src/index.ts similarity index 100% rename from auto-merge/js/api/src/index.ts rename to pkgs/api/src/index.ts diff --git a/auto-merge/js/api/src/internal/global-utils.ts b/pkgs/api/src/internal/global-utils.ts similarity index 100% rename from auto-merge/js/api/src/internal/global-utils.ts rename to pkgs/api/src/internal/global-utils.ts diff --git a/auto-merge/js/api/src/internal/semver.ts b/pkgs/api/src/internal/semver.ts similarity index 100% rename from auto-merge/js/api/src/internal/semver.ts rename to pkgs/api/src/internal/semver.ts diff --git a/auto-merge/js/api/src/metrics-api.ts b/pkgs/api/src/metrics-api.ts similarity index 100% rename from auto-merge/js/api/src/metrics-api.ts rename to pkgs/api/src/metrics-api.ts diff --git a/auto-merge/js/api/src/metrics/Meter.ts b/pkgs/api/src/metrics/Meter.ts similarity index 100% rename from auto-merge/js/api/src/metrics/Meter.ts rename to pkgs/api/src/metrics/Meter.ts diff --git a/auto-merge/js/api/src/metrics/MeterProvider.ts b/pkgs/api/src/metrics/MeterProvider.ts similarity index 100% rename from auto-merge/js/api/src/metrics/MeterProvider.ts rename to pkgs/api/src/metrics/MeterProvider.ts diff --git a/auto-merge/js/api/src/metrics/Metric.ts b/pkgs/api/src/metrics/Metric.ts similarity index 100% rename from auto-merge/js/api/src/metrics/Metric.ts rename to pkgs/api/src/metrics/Metric.ts diff --git a/auto-merge/js/api/src/metrics/NoopMeter.ts b/pkgs/api/src/metrics/NoopMeter.ts similarity index 100% rename from auto-merge/js/api/src/metrics/NoopMeter.ts rename to pkgs/api/src/metrics/NoopMeter.ts diff --git a/auto-merge/js/api/src/metrics/NoopMeterProvider.ts b/pkgs/api/src/metrics/NoopMeterProvider.ts similarity index 100% rename from auto-merge/js/api/src/metrics/NoopMeterProvider.ts rename to pkgs/api/src/metrics/NoopMeterProvider.ts diff --git a/auto-merge/js/api/src/metrics/ObservableResult.ts b/pkgs/api/src/metrics/ObservableResult.ts similarity index 100% rename from auto-merge/js/api/src/metrics/ObservableResult.ts rename to pkgs/api/src/metrics/ObservableResult.ts diff --git a/auto-merge/js/api/src/platform/browser/globalThis.ts b/pkgs/api/src/platform/browser/globalThis.ts similarity index 100% rename from auto-merge/js/api/src/platform/browser/globalThis.ts rename to pkgs/api/src/platform/browser/globalThis.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/platform/browser/index.ts b/pkgs/api/src/platform/browser/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/platform/browser/index.ts rename to pkgs/api/src/platform/browser/index.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/platform/index.ts b/pkgs/api/src/platform/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/platform/index.ts rename to pkgs/api/src/platform/index.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/platform/node/globalThis.ts b/pkgs/api/src/platform/node/globalThis.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/platform/node/globalThis.ts rename to pkgs/api/src/platform/node/globalThis.ts diff --git a/auto-merge/js/experimental/packages/api-logs/src/platform/node/index.ts b/pkgs/api/src/platform/node/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/src/platform/node/index.ts rename to pkgs/api/src/platform/node/index.ts diff --git a/auto-merge/js/api/src/propagation-api.ts b/pkgs/api/src/propagation-api.ts similarity index 100% rename from auto-merge/js/api/src/propagation-api.ts rename to pkgs/api/src/propagation-api.ts diff --git a/auto-merge/js/api/src/propagation/NoopTextMapPropagator.ts b/pkgs/api/src/propagation/NoopTextMapPropagator.ts similarity index 100% rename from auto-merge/js/api/src/propagation/NoopTextMapPropagator.ts rename to pkgs/api/src/propagation/NoopTextMapPropagator.ts diff --git a/auto-merge/js/api/src/propagation/TextMapPropagator.ts b/pkgs/api/src/propagation/TextMapPropagator.ts similarity index 100% rename from auto-merge/js/api/src/propagation/TextMapPropagator.ts rename to pkgs/api/src/propagation/TextMapPropagator.ts diff --git a/auto-merge/js/api/src/trace-api.ts b/pkgs/api/src/trace-api.ts similarity index 100% rename from auto-merge/js/api/src/trace-api.ts rename to pkgs/api/src/trace-api.ts diff --git a/auto-merge/js/api/src/trace/NonRecordingSpan.ts b/pkgs/api/src/trace/NonRecordingSpan.ts similarity index 100% rename from auto-merge/js/api/src/trace/NonRecordingSpan.ts rename to pkgs/api/src/trace/NonRecordingSpan.ts diff --git a/auto-merge/js/api/src/trace/NoopTracer.ts b/pkgs/api/src/trace/NoopTracer.ts similarity index 100% rename from auto-merge/js/api/src/trace/NoopTracer.ts rename to pkgs/api/src/trace/NoopTracer.ts diff --git a/auto-merge/js/api/src/trace/NoopTracerProvider.ts b/pkgs/api/src/trace/NoopTracerProvider.ts similarity index 100% rename from auto-merge/js/api/src/trace/NoopTracerProvider.ts rename to pkgs/api/src/trace/NoopTracerProvider.ts diff --git a/auto-merge/js/api/src/trace/ProxyTracer.ts b/pkgs/api/src/trace/ProxyTracer.ts similarity index 100% rename from auto-merge/js/api/src/trace/ProxyTracer.ts rename to pkgs/api/src/trace/ProxyTracer.ts diff --git a/auto-merge/js/api/src/trace/ProxyTracerProvider.ts b/pkgs/api/src/trace/ProxyTracerProvider.ts similarity index 100% rename from auto-merge/js/api/src/trace/ProxyTracerProvider.ts rename to pkgs/api/src/trace/ProxyTracerProvider.ts diff --git a/auto-merge/js/api/src/trace/Sampler.ts b/pkgs/api/src/trace/Sampler.ts similarity index 100% rename from auto-merge/js/api/src/trace/Sampler.ts rename to pkgs/api/src/trace/Sampler.ts diff --git a/auto-merge/js/api/src/trace/SamplingResult.ts b/pkgs/api/src/trace/SamplingResult.ts similarity index 100% rename from auto-merge/js/api/src/trace/SamplingResult.ts rename to pkgs/api/src/trace/SamplingResult.ts diff --git a/auto-merge/js/api/src/trace/SpanOptions.ts b/pkgs/api/src/trace/SpanOptions.ts similarity index 100% rename from auto-merge/js/api/src/trace/SpanOptions.ts rename to pkgs/api/src/trace/SpanOptions.ts diff --git a/auto-merge/js/api/src/trace/attributes.ts b/pkgs/api/src/trace/attributes.ts similarity index 100% rename from auto-merge/js/api/src/trace/attributes.ts rename to pkgs/api/src/trace/attributes.ts diff --git a/auto-merge/js/api/src/trace/context-utils.ts b/pkgs/api/src/trace/context-utils.ts similarity index 100% rename from auto-merge/js/api/src/trace/context-utils.ts rename to pkgs/api/src/trace/context-utils.ts diff --git a/auto-merge/js/api/src/trace/internal/tracestate-impl.ts b/pkgs/api/src/trace/internal/tracestate-impl.ts similarity index 100% rename from auto-merge/js/api/src/trace/internal/tracestate-impl.ts rename to pkgs/api/src/trace/internal/tracestate-impl.ts diff --git a/auto-merge/js/api/src/trace/internal/tracestate-validators.ts b/pkgs/api/src/trace/internal/tracestate-validators.ts similarity index 100% rename from auto-merge/js/api/src/trace/internal/tracestate-validators.ts rename to pkgs/api/src/trace/internal/tracestate-validators.ts diff --git a/auto-merge/js/api/src/trace/internal/utils.ts b/pkgs/api/src/trace/internal/utils.ts similarity index 100% rename from auto-merge/js/api/src/trace/internal/utils.ts rename to pkgs/api/src/trace/internal/utils.ts diff --git a/auto-merge/js/api/src/trace/invalid-span-constants.ts b/pkgs/api/src/trace/invalid-span-constants.ts similarity index 100% rename from auto-merge/js/api/src/trace/invalid-span-constants.ts rename to pkgs/api/src/trace/invalid-span-constants.ts diff --git a/auto-merge/js/api/src/trace/link.ts b/pkgs/api/src/trace/link.ts similarity index 100% rename from auto-merge/js/api/src/trace/link.ts rename to pkgs/api/src/trace/link.ts diff --git a/auto-merge/js/api/src/trace/span.ts b/pkgs/api/src/trace/span.ts similarity index 100% rename from auto-merge/js/api/src/trace/span.ts rename to pkgs/api/src/trace/span.ts diff --git a/auto-merge/js/api/src/trace/span_context.ts b/pkgs/api/src/trace/span_context.ts similarity index 100% rename from auto-merge/js/api/src/trace/span_context.ts rename to pkgs/api/src/trace/span_context.ts diff --git a/auto-merge/js/api/src/trace/span_kind.ts b/pkgs/api/src/trace/span_kind.ts similarity index 100% rename from auto-merge/js/api/src/trace/span_kind.ts rename to pkgs/api/src/trace/span_kind.ts diff --git a/auto-merge/js/api/src/trace/spancontext-utils.ts b/pkgs/api/src/trace/spancontext-utils.ts similarity index 100% rename from auto-merge/js/api/src/trace/spancontext-utils.ts rename to pkgs/api/src/trace/spancontext-utils.ts diff --git a/auto-merge/js/api/src/trace/status.ts b/pkgs/api/src/trace/status.ts similarity index 100% rename from auto-merge/js/api/src/trace/status.ts rename to pkgs/api/src/trace/status.ts diff --git a/auto-merge/js/api/src/trace/trace_flags.ts b/pkgs/api/src/trace/trace_flags.ts similarity index 100% rename from auto-merge/js/api/src/trace/trace_flags.ts rename to pkgs/api/src/trace/trace_flags.ts diff --git a/auto-merge/js/api/src/trace/trace_state.ts b/pkgs/api/src/trace/trace_state.ts similarity index 100% rename from auto-merge/js/api/src/trace/trace_state.ts rename to pkgs/api/src/trace/trace_state.ts diff --git a/auto-merge/js/api/src/trace/tracer.ts b/pkgs/api/src/trace/tracer.ts similarity index 100% rename from auto-merge/js/api/src/trace/tracer.ts rename to pkgs/api/src/trace/tracer.ts diff --git a/auto-merge/js/api/src/trace/tracer_options.ts b/pkgs/api/src/trace/tracer_options.ts similarity index 100% rename from auto-merge/js/api/src/trace/tracer_options.ts rename to pkgs/api/src/trace/tracer_options.ts diff --git a/auto-merge/js/api/src/trace/tracer_provider.ts b/pkgs/api/src/trace/tracer_provider.ts similarity index 100% rename from auto-merge/js/api/src/trace/tracer_provider.ts rename to pkgs/api/src/trace/tracer_provider.ts diff --git a/auto-merge/js/api/test/common/api/api.test.ts b/pkgs/api/test/common/api/api.test.ts similarity index 100% rename from auto-merge/js/api/test/common/api/api.test.ts rename to pkgs/api/test/common/api/api.test.ts diff --git a/auto-merge/js/api/test/common/baggage/Baggage.test.ts b/pkgs/api/test/common/baggage/Baggage.test.ts similarity index 100% rename from auto-merge/js/api/test/common/baggage/Baggage.test.ts rename to pkgs/api/test/common/baggage/Baggage.test.ts diff --git a/auto-merge/js/api/test/common/context/NoopContextManager.test.ts b/pkgs/api/test/common/context/NoopContextManager.test.ts similarity index 100% rename from auto-merge/js/api/test/common/context/NoopContextManager.test.ts rename to pkgs/api/test/common/context/NoopContextManager.test.ts diff --git a/auto-merge/js/api/test/common/diag/ComponentLogger.test.ts b/pkgs/api/test/common/diag/ComponentLogger.test.ts similarity index 100% rename from auto-merge/js/api/test/common/diag/ComponentLogger.test.ts rename to pkgs/api/test/common/diag/ComponentLogger.test.ts diff --git a/auto-merge/js/api/test/common/diag/consoleLogger.test.ts b/pkgs/api/test/common/diag/consoleLogger.test.ts similarity index 100% rename from auto-merge/js/api/test/common/diag/consoleLogger.test.ts rename to pkgs/api/test/common/diag/consoleLogger.test.ts diff --git a/auto-merge/js/api/test/common/diag/logLevel.test.ts b/pkgs/api/test/common/diag/logLevel.test.ts similarity index 100% rename from auto-merge/js/api/test/common/diag/logLevel.test.ts rename to pkgs/api/test/common/diag/logLevel.test.ts diff --git a/auto-merge/js/api/test/common/diag/logger.test.ts b/pkgs/api/test/common/diag/logger.test.ts similarity index 100% rename from auto-merge/js/api/test/common/diag/logger.test.ts rename to pkgs/api/test/common/diag/logger.test.ts diff --git a/auto-merge/js/api/test/common/internal/global.test.ts b/pkgs/api/test/common/internal/global.test.ts similarity index 100% rename from auto-merge/js/api/test/common/internal/global.test.ts rename to pkgs/api/test/common/internal/global.test.ts diff --git a/auto-merge/js/api/test/common/internal/semver.test.ts b/pkgs/api/test/common/internal/semver.test.ts similarity index 100% rename from auto-merge/js/api/test/common/internal/semver.test.ts rename to pkgs/api/test/common/internal/semver.test.ts diff --git a/auto-merge/js/api/test/common/internal/version.test.ts b/pkgs/api/test/common/internal/version.test.ts similarity index 100% rename from auto-merge/js/api/test/common/internal/version.test.ts rename to pkgs/api/test/common/internal/version.test.ts diff --git a/auto-merge/js/api/test/common/metrics/Metric.test.ts b/pkgs/api/test/common/metrics/Metric.test.ts similarity index 100% rename from auto-merge/js/api/test/common/metrics/Metric.test.ts rename to pkgs/api/test/common/metrics/Metric.test.ts diff --git a/auto-merge/js/api/test/common/noop-implementations/noop-meter.test.ts b/pkgs/api/test/common/noop-implementations/noop-meter.test.ts similarity index 100% rename from auto-merge/js/api/test/common/noop-implementations/noop-meter.test.ts rename to pkgs/api/test/common/noop-implementations/noop-meter.test.ts diff --git a/auto-merge/js/api/test/common/noop-implementations/noop-span.test.ts b/pkgs/api/test/common/noop-implementations/noop-span.test.ts similarity index 100% rename from auto-merge/js/api/test/common/noop-implementations/noop-span.test.ts rename to pkgs/api/test/common/noop-implementations/noop-span.test.ts diff --git a/auto-merge/js/api/test/common/noop-implementations/noop-tracer-provider.test.ts b/pkgs/api/test/common/noop-implementations/noop-tracer-provider.test.ts similarity index 100% rename from auto-merge/js/api/test/common/noop-implementations/noop-tracer-provider.test.ts rename to pkgs/api/test/common/noop-implementations/noop-tracer-provider.test.ts diff --git a/auto-merge/js/api/test/common/noop-implementations/noop-tracer.test.ts b/pkgs/api/test/common/noop-implementations/noop-tracer.test.ts similarity index 100% rename from auto-merge/js/api/test/common/noop-implementations/noop-tracer.test.ts rename to pkgs/api/test/common/noop-implementations/noop-tracer.test.ts diff --git a/auto-merge/js/api/test/common/proxy-implementations/proxy-tracer.test.ts b/pkgs/api/test/common/proxy-implementations/proxy-tracer.test.ts similarity index 100% rename from auto-merge/js/api/test/common/proxy-implementations/proxy-tracer.test.ts rename to pkgs/api/test/common/proxy-implementations/proxy-tracer.test.ts diff --git a/auto-merge/js/api/test/common/trace/spancontext-utils.test.ts b/pkgs/api/test/common/trace/spancontext-utils.test.ts similarity index 100% rename from auto-merge/js/api/test/common/trace/spancontext-utils.test.ts rename to pkgs/api/test/common/trace/spancontext-utils.test.ts diff --git a/auto-merge/js/api/test/common/trace/tracestate-validators.test.ts b/pkgs/api/test/common/trace/tracestate-validators.test.ts similarity index 100% rename from auto-merge/js/api/test/common/trace/tracestate-validators.test.ts rename to pkgs/api/test/common/trace/tracestate-validators.test.ts diff --git a/auto-merge/js/api/test/common/trace/tracestate.test.ts b/pkgs/api/test/common/trace/tracestate.test.ts similarity index 100% rename from auto-merge/js/api/test/common/trace/tracestate.test.ts rename to pkgs/api/test/common/trace/tracestate.test.ts diff --git a/auto-merge/js/api/test/index-webpack.ts b/pkgs/api/test/index-webpack.ts similarity index 100% rename from auto-merge/js/api/test/index-webpack.ts rename to pkgs/api/test/index-webpack.ts diff --git a/auto-merge/js/api/test/index-webpack.worker.ts b/pkgs/api/test/index-webpack.worker.ts similarity index 100% rename from auto-merge/js/api/test/index-webpack.worker.ts rename to pkgs/api/test/index-webpack.worker.ts diff --git a/auto-merge/js/api/test/tree-shaking/tree-shaking.test.ts b/pkgs/api/test/tree-shaking/tree-shaking.test.ts similarity index 100% rename from auto-merge/js/api/test/tree-shaking/tree-shaking.test.ts rename to pkgs/api/test/tree-shaking/tree-shaking.test.ts diff --git a/pkgs/api/tsconfig.esm.json b/pkgs/api/tsconfig.esm.json new file mode 100644 index 000000000..6f96cbec1 --- /dev/null +++ b/pkgs/api/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.esnext.json b/pkgs/api/tsconfig.esnext.json similarity index 67% rename from auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.esnext.json rename to pkgs/api/tsconfig.esnext.json index 4b926c1c8..2525ac36a 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.esnext.json +++ b/pkgs/api/tsconfig.esnext.json @@ -7,13 +7,5 @@ }, "include": [ "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.json b/pkgs/api/tsconfig.json similarity index 61% rename from auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.json rename to pkgs/api/tsconfig.json index d01ca872e..cb48d4258 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/tsconfig.json +++ b/pkgs/api/tsconfig.json @@ -8,13 +8,5 @@ "include": [ "src/**/*.ts", "test/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-core" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/api/.eslintignore b/pkgs/context/zone-peer-dep/.eslintignore similarity index 100% rename from auto-merge/js/api/.eslintignore rename to pkgs/context/zone-peer-dep/.eslintignore diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/.eslintrc.js b/pkgs/context/zone-peer-dep/.eslintrc.js similarity index 78% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/.eslintrc.js rename to pkgs/context/zone-peer-dep/.eslintrc.js index f21c67400..3af7f9cb8 100644 --- a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/.eslintrc.js +++ b/pkgs/context/zone-peer-dep/.eslintrc.js @@ -7,5 +7,5 @@ module.exports = { "globals": { "Zone": "readonly" }, - ...require('../../eslint.config.js') + ...require('../../../eslint.config.js') } diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/LICENSE b/pkgs/context/zone-peer-dep/LICENSE similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/LICENSE rename to pkgs/context/zone-peer-dep/LICENSE diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/README.md b/pkgs/context/zone-peer-dep/README.md similarity index 93% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/README.md rename to pkgs/context/zone-peer-dep/README.md index a505b9fbd..8d1d0b967 100644 --- a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/README.md +++ b/pkgs/context/zone-peer-dep/README.md @@ -19,13 +19,13 @@ npm install --save @opentelemetry/context-zone-peer-dep ## Usage ```js -import { context, trace } from '@opentelemetry/api'; +import { context, trace } from '@opentelemetry/sandbox-api'; import { ConsoleSpanExporter, SimpleSpanProcessor, WebTracerProvider, -} from '@opentelemetry/sdk-trace-web'; -import { ZoneContextManager } from '@opentelemetry/context-zone-peer-dep'; +} from '@opentelemetry/sandbox-sdk-trace-web'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone-peer-dep'; const providerWithZone = new WebTracerProvider(); providerWithZone.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter())); diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/karma.conf.js b/pkgs/context/zone-peer-dep/karma.conf.js similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/karma.conf.js rename to pkgs/context/zone-peer-dep/karma.conf.js diff --git a/pkgs/context/zone-peer-dep/karma.debug.conf.js b/pkgs/context/zone-peer-dep/karma.debug.conf.js new file mode 100644 index 000000000..490933fdc --- /dev/null +++ b/pkgs/context/zone-peer-dep/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/context/zone-peer-dep/package.json b/pkgs/context/zone-peer-dep/package.json new file mode 100644 index 000000000..7c48e8cc9 --- /dev/null +++ b/pkgs/context/zone-peer-dep/package.json @@ -0,0 +1,111 @@ +{ + "name": "@opentelemetry/sandbox-context-zone-peer-dep", + "version": "1.13.0", + "description": "OpenTelemetry Context Zone with peer dependency for zone.js", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "", + "test:webworker": "", + "version": "node ../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "web", + "tracing", + "profiling", + "metrics", + "stats" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@babel/core": "7.16.0", + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@types/zone.js": "0.5.12", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "8.2.3", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", + "webpack-cli": "4.9.1", + "zone.js": "^0.11.4" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1", + "zone.js": "^0.11.4" + }, + "sideEffects": false, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-context-zone-peer-dep" +} \ No newline at end of file diff --git a/pkgs/context/zone-peer-dep/rollup.config.js b/pkgs/context/zone-peer-dep/rollup.config.js new file mode 100644 index 000000000..c7cf63c80 --- /dev/null +++ b/pkgs/context/zone-peer-dep/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.context-zone-peer-dep", inputName, "otel-sndbx.context-zone-peer-dep", version); diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/src/ZoneContextManager.ts b/pkgs/context/zone-peer-dep/src/ZoneContextManager.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/src/ZoneContextManager.ts rename to pkgs/context/zone-peer-dep/src/ZoneContextManager.ts index 3f5c8c71c..8895fbf60 100644 --- a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/src/ZoneContextManager.ts +++ b/pkgs/context/zone-peer-dep/src/ZoneContextManager.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, ContextManager, ROOT_CONTEXT } from '@opentelemetry/api'; +import { Context, ContextManager, ROOT_CONTEXT } from '@opentelemetry/sandbox-api'; import { TargetWithEvents } from './types'; import { isListenerObject } from './util'; diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/src/index.ts b/pkgs/context/zone-peer-dep/src/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/src/index.ts rename to pkgs/context/zone-peer-dep/src/index.ts diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/src/types.ts b/pkgs/context/zone-peer-dep/src/types.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/src/types.ts rename to pkgs/context/zone-peer-dep/src/types.ts diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/src/util.ts b/pkgs/context/zone-peer-dep/src/util.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/src/util.ts rename to pkgs/context/zone-peer-dep/src/util.ts diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/test/ZoneContextManager.test.ts b/pkgs/context/zone-peer-dep/test/ZoneContextManager.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/test/ZoneContextManager.test.ts rename to pkgs/context/zone-peer-dep/test/ZoneContextManager.test.ts index aea0dacb2..bb5f91f3b 100644 --- a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/test/ZoneContextManager.test.ts +++ b/pkgs/context/zone-peer-dep/test/ZoneContextManager.test.ts @@ -18,7 +18,7 @@ import 'zone.js'; import * as sinon from 'sinon'; import * as assert from 'assert'; import { ZoneContextManager } from '../src'; -import { ROOT_CONTEXT, createContextKey } from '@opentelemetry/api'; +import { ROOT_CONTEXT, createContextKey } from '@opentelemetry/sandbox-api'; let clock: any; diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/index-webpack.ts b/pkgs/context/zone-peer-dep/test/index-webpack.ts similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/index-webpack.ts rename to pkgs/context/zone-peer-dep/test/index-webpack.ts diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/test/utils.test.ts b/pkgs/context/zone-peer-dep/test/utils.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/test/utils.test.ts rename to pkgs/context/zone-peer-dep/test/utils.test.ts diff --git a/auto-merge/js/experimental/packages/api-events/tsconfig.esm.json b/pkgs/context/zone-peer-dep/tsconfig.esm.json similarity index 78% rename from auto-merge/js/experimental/packages/api-events/tsconfig.esm.json rename to pkgs/context/zone-peer-dep/tsconfig.esm.json index f0383c004..6142ec2ba 100644 --- a/auto-merge/js/experimental/packages/api-events/tsconfig.esm.json +++ b/pkgs/context/zone-peer-dep/tsconfig.esm.json @@ -5,12 +5,10 @@ "rootDir": "src", "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" }, + "files": [ + "node_modules/zone.js/dist/zone.js.d.ts" + ], "include": [ "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/api-logs/tsconfig.esnext.json b/pkgs/context/zone-peer-dep/tsconfig.esnext.json similarity index 79% rename from auto-merge/js/experimental/packages/api-logs/tsconfig.esnext.json rename to pkgs/context/zone-peer-dep/tsconfig.esnext.json index 218899ff2..a96a05e1d 100644 --- a/auto-merge/js/experimental/packages/api-logs/tsconfig.esnext.json +++ b/pkgs/context/zone-peer-dep/tsconfig.esnext.json @@ -5,12 +5,10 @@ "rootDir": "src", "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" }, + "files": [ + "node_modules/zone.js/dist/zone.js.d.ts" + ], "include": [ "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.json b/pkgs/context/zone-peer-dep/tsconfig.json similarity index 64% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.json rename to pkgs/context/zone-peer-dep/tsconfig.json index a4adfa3f7..8abdec5ba 100644 --- a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.json +++ b/pkgs/context/zone-peer-dep/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.base.json", + "extends": "../../../tsconfig.base.json", "compilerOptions": { "outDir": "build", "rootDir": "." @@ -10,10 +10,5 @@ "include": [ "src/**/*.ts", "test/**/*.ts" - ], - "references": [ - { - "path": "../../api" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/api-events/.eslintignore b/pkgs/context/zone/.eslintignore similarity index 100% rename from auto-merge/js/experimental/packages/api-events/.eslintignore rename to pkgs/context/zone/.eslintignore diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/.eslintrc.js b/pkgs/context/zone/.eslintrc.js similarity index 81% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/.eslintrc.js rename to pkgs/context/zone/.eslintrc.js index b50dfd815..218eba710 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/.eslintrc.js +++ b/pkgs/context/zone/.eslintrc.js @@ -1,7 +1,7 @@ module.exports = { "env": { - "mocha": true, "browser": true, + "commonjs": true }, ...require('../../../eslint.config.js') } diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/LICENSE b/pkgs/context/zone/LICENSE similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/LICENSE rename to pkgs/context/zone/LICENSE diff --git a/auto-merge/js/packages/opentelemetry-context-zone/README.md b/pkgs/context/zone/README.md similarity index 93% rename from auto-merge/js/packages/opentelemetry-context-zone/README.md rename to pkgs/context/zone/README.md index 0162f9645..04e67bd58 100644 --- a/auto-merge/js/packages/opentelemetry-context-zone/README.md +++ b/pkgs/context/zone/README.md @@ -16,13 +16,13 @@ npm install --save @opentelemetry/context-zone ## Usage ```js -import { context, trace } from '@opentelemetry/api'; +import { context, trace } from '@opentelemetry/sandbox-api'; import { ConsoleSpanExporter, SimpleSpanProcessor, WebTracerProvider, -} from '@opentelemetry/sdk-trace-web'; -import { ZoneContextManager } from '@opentelemetry/context-zone'; +} from '@opentelemetry/sandbox-sdk-trace-web'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone'; const providerWithZone = new WebTracerProvider(); providerWithZone.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter())); diff --git a/pkgs/context/zone/package.json b/pkgs/context/zone/package.json new file mode 100644 index 000000000..347e55f89 --- /dev/null +++ b/pkgs/context/zone/package.json @@ -0,0 +1,107 @@ +{ + "name": "@opentelemetry/sandbox-context-zone", + "version": "1.13.0", + "description": "OpenTelemetry Context Zone", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "test": "", + "test:browser": "", + "test:debug": "", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", + "version": "node ../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "web", + "tracing", + "profiling", + "metrics", + "stats" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@babel/core": "7.16.0", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "8.2.3", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", + "webpack-cli": "4.9.1", + "webpack-merge": "5.8.0" + }, + "dependencies": { + "@opentelemetry/sandbox-context-zone-peer-dep": "1.13.0", + "zone.js": "^0.11.4" + }, + "sideEffects": true, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-context-zone" +} \ No newline at end of file diff --git a/pkgs/context/zone/rollup.config.js b/pkgs/context/zone/rollup.config.js new file mode 100644 index 000000000..d46e0be0c --- /dev/null +++ b/pkgs/context/zone/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.context-zone", inputName, "otel-sndbx.context-zone", version); diff --git a/auto-merge/js/packages/opentelemetry-context-zone/src/index.ts b/pkgs/context/zone/src/index.ts similarity index 90% rename from auto-merge/js/packages/opentelemetry-context-zone/src/index.ts rename to pkgs/context/zone/src/index.ts index ba99ea33b..d255fcec7 100644 --- a/auto-merge/js/packages/opentelemetry-context-zone/src/index.ts +++ b/pkgs/context/zone/src/index.ts @@ -14,5 +14,5 @@ * limitations under the License. */ -export * from '@opentelemetry/context-zone-peer-dep'; +export * from '@opentelemetry/sandbox-context-zone-peer-dep'; import 'zone.js'; diff --git a/auto-merge/js/experimental/packages/api-logs/tsconfig.esm.json b/pkgs/context/zone/tsconfig.esm.json similarity index 78% rename from auto-merge/js/experimental/packages/api-logs/tsconfig.esm.json rename to pkgs/context/zone/tsconfig.esm.json index f0383c004..6142ec2ba 100644 --- a/auto-merge/js/experimental/packages/api-logs/tsconfig.esm.json +++ b/pkgs/context/zone/tsconfig.esm.json @@ -5,12 +5,10 @@ "rootDir": "src", "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" }, + "files": [ + "node_modules/zone.js/dist/zone.js.d.ts" + ], "include": [ "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/api-events/tsconfig.esnext.json b/pkgs/context/zone/tsconfig.esnext.json similarity index 79% rename from auto-merge/js/experimental/packages/api-events/tsconfig.esnext.json rename to pkgs/context/zone/tsconfig.esnext.json index 218899ff2..a96a05e1d 100644 --- a/auto-merge/js/experimental/packages/api-events/tsconfig.esnext.json +++ b/pkgs/context/zone/tsconfig.esnext.json @@ -5,12 +5,10 @@ "rootDir": "src", "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" }, + "files": [ + "node_modules/zone.js/dist/zone.js.d.ts" + ], "include": [ "src/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-context-zone/tsconfig.json b/pkgs/context/zone/tsconfig.json similarity index 59% rename from auto-merge/js/packages/opentelemetry-context-zone/tsconfig.json rename to pkgs/context/zone/tsconfig.json index 0a1a4e353..8abdec5ba 100644 --- a/auto-merge/js/packages/opentelemetry-context-zone/tsconfig.json +++ b/pkgs/context/zone/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.base.json", + "extends": "../../../tsconfig.base.json", "compilerOptions": { "outDir": "build", "rootDir": "." @@ -10,10 +10,5 @@ "include": [ "src/**/*.ts", "test/**/*.ts" - ], - "references": [ - { - "path": "../opentelemetry-context-zone-peer-dep" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/api-logs/.eslintignore b/pkgs/core/.eslintignore similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/.eslintignore rename to pkgs/core/.eslintignore diff --git a/auto-merge/js/packages/opentelemetry-core/.eslintrc.js b/pkgs/core/.eslintrc.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/.eslintrc.js rename to pkgs/core/.eslintrc.js diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/.npmignore b/pkgs/core/.npmignore similarity index 100% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/.npmignore rename to pkgs/core/.npmignore diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/LICENSE b/pkgs/core/LICENSE similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/LICENSE rename to pkgs/core/LICENSE diff --git a/auto-merge/js/packages/opentelemetry-core/README.md b/pkgs/core/README.md similarity index 86% rename from auto-merge/js/packages/opentelemetry-core/README.md rename to pkgs/core/README.md index 1d543dca2..8cd13e7c7 100644 --- a/auto-merge/js/packages/opentelemetry-core/README.md +++ b/pkgs/core/README.md @@ -23,8 +23,8 @@ This package provides default implementations of the OpenTelemetry API for trace OpenTelemetry provides a text-based approach to propagate context to remote services using the [W3C Trace Context](https://www.w3.org/TR/trace-context/) HTTP headers. ```js -const api = require("@opentelemetry/api"); -const { W3CTraceContextPropagator } = require("@opentelemetry/core"); +const api = require("@opentelemetry/sandbox-api"); +const { W3CTraceContextPropagator } = require("@opentelemetry/sandbox-core"); /* Set Global Propagator */ api.propagation.setGlobalPropagator(new W3CTraceContextPropagator()); @@ -37,8 +37,8 @@ Combines multiple propagators into a single propagator. > This is used as a default Propagator ```js -const api = require("@opentelemetry/api"); -const { CompositePropagator } = require("@opentelemetry/core"); +const api = require("@opentelemetry/sandbox-api"); +const { CompositePropagator } = require("@opentelemetry/sandbox-core"); /* Set Global Propagator */ api.propagation.setGlobalPropagator(new CompositePropagator()); @@ -49,8 +49,8 @@ api.propagation.setGlobalPropagator(new CompositePropagator()); Provides a text-based approach to propagate [baggage](https://w3c.github.io/baggage/) to remote services using the [OpenTelemetry Baggage Propagation](https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/baggage/api.md#baggage-propagation) HTTP headers. ```js -const api = require("@opentelemetry/api"); -const { W3CBaggagePropagator } = require("@opentelemetry/core"); +const api = require("@opentelemetry/sandbox-api"); +const { W3CBaggagePropagator } = require("@opentelemetry/sandbox-core"); /* Set Global Propagator */ api.propagation.setGlobalPropagator(new W3CBaggagePropagator()); diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/karma.conf.js b/pkgs/core/karma.conf.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/karma.conf.js rename to pkgs/core/karma.conf.js diff --git a/pkgs/core/karma.debug.conf.js b/pkgs/core/karma.debug.conf.js new file mode 100644 index 000000000..e2d096d8e --- /dev/null +++ b/pkgs/core/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/core/karma.webpack.js b/pkgs/core/karma.webpack.js new file mode 100644 index 000000000..eda8fd79a --- /dev/null +++ b/pkgs/core/karma.webpack.js @@ -0,0 +1,42 @@ +/*! + * 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 + * + * 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. +*/ + +const webpackNodePolyfills = require("../../webpack.node-polyfills.js"); + +module.exports = { + mode: "development", + target: "web", + output: { filename: "bundle.js" }, + resolve: { extensions: [".ts", ".js"] }, + devtool: "inline-source-map", + module: { + rules: [ + { test: /.ts$/, use: "ts-loader" }, + { + enforce: "post", + exclude: /(node_modules|.test.[tj]sx?$)/, + test: /.ts$/, + use: { + loader: "istanbul-instrumenter-loader", + options: { esModules: true } + } + }, + // This setting configures Node polyfills for the browser that will be + // added to the webpack bundle for Karma tests. + { parser: { node: webpackNodePolyfills } } + ] + } +}; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/karma.worker.js b/pkgs/core/karma.worker.js similarity index 89% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/karma.worker.js rename to pkgs/core/karma.worker.js index d392e58ba..02428c5c3 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/karma.worker.js +++ b/pkgs/core/karma.worker.js @@ -12,13 +12,13 @@ * 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. - */ +*/ const karmaWebpackConfig = require('../../karma.webpack'); const karmaBaseConfig = require('../../karma.worker'); module.exports = (config) => { - config.set(Object.assign({}, karmaBaseConfig, { - webpack: karmaWebpackConfig - })) + config.set(Object.assign({}, karmaBaseConfig, { + webpack: karmaWebpackConfig, + })) }; diff --git a/auto-merge/js/packages/opentelemetry-core/package.json b/pkgs/core/package.json similarity index 52% rename from auto-merge/js/packages/opentelemetry-core/package.json rename to pkgs/core/package.json index 5900c8d20..b267c0bea 100644 --- a/auto-merge/js/packages/opentelemetry-core/package.json +++ b/pkgs/core/package.json @@ -1,5 +1,5 @@ { - "name": "@opentelemetry/core", + "name": "@opentelemetry/sandbox-core", "version": "1.13.0", "description": "OpenTelemetry Core provides constants and utilities shared by all OpenTelemetry SDK packages.", "main": "build/src/index.js", @@ -14,23 +14,28 @@ "types": "build/src/index.d.ts", "repository": "open-telemetry/opentelemetry-js", "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts --exclude 'test/platform/browser/**/*.ts'", - "test:browser": "nyc karma start --single-run", - "tdd": "npm run tdd:node", - "tdd:node": "npm run test -- --watch-extensions ts --watch", - "tdd:browser": "karma start", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", + "compile": "npm run build", "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "npm run tdd:node", + "tdd:browser": "karma start", + "tdd:node": "npm run test -- --watch-extensions ts --watch", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", "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", - "prewatch": "npm run precompile", - "peer-api-check": "node ../../scripts/peer-api-check.js" + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" }, "keywords": [ "opentelemetry", @@ -64,34 +69,50 @@ "access": "public" }, "devDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0", - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", - "@types/sinon": "10.0.13", + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", "@types/webpack-env": "1.16.3", - "codecov": "3.8.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", "istanbul-instrumenter-loader": "3.0.1", "karma": "6.3.16", "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-webpack": "4.0.2", - "lerna": "6.0.3", + "karma-mocha": "^2.0.1", + "karma-mocha-webworker": "1.3.0", + "karma-spec-reporter": "^0.0.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0" + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" }, "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/sandbox-api": "1.4.1" }, "dependencies": { - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/sandbox-semantic-conventions": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core", "sideEffects": false -} +} \ No newline at end of file diff --git a/pkgs/core/rollup.config.js b/pkgs/core/rollup.config.js new file mode 100644 index 000000000..cd05469be --- /dev/null +++ b/pkgs/core/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.core", inputName, "otel-sndbx.core", version); diff --git a/auto-merge/js/packages/opentelemetry-core/src/ExportResult.ts b/pkgs/core/src/ExportResult.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/ExportResult.ts rename to pkgs/core/src/ExportResult.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/baggage/constants.ts b/pkgs/core/src/baggage/constants.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/baggage/constants.ts rename to pkgs/core/src/baggage/constants.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/baggage/propagation/W3CBaggagePropagator.ts b/pkgs/core/src/baggage/propagation/W3CBaggagePropagator.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-core/src/baggage/propagation/W3CBaggagePropagator.ts rename to pkgs/core/src/baggage/propagation/W3CBaggagePropagator.ts index 8a20dedca..82a847425 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/baggage/propagation/W3CBaggagePropagator.ts +++ b/pkgs/core/src/baggage/propagation/W3CBaggagePropagator.ts @@ -21,7 +21,7 @@ import { TextMapGetter, TextMapPropagator, TextMapSetter, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { isTracingSuppressed } from '../../trace/suppress-tracing'; import { diff --git a/auto-merge/js/packages/opentelemetry-core/src/baggage/utils.ts b/pkgs/core/src/baggage/utils.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-core/src/baggage/utils.ts rename to pkgs/core/src/baggage/utils.ts index 991b8a89a..94147b98a 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/baggage/utils.ts +++ b/pkgs/core/src/baggage/utils.ts @@ -17,7 +17,7 @@ import { Baggage, BaggageEntryMetadata, baggageEntryMetadataFromString, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { BAGGAGE_ITEMS_SEPARATOR, BAGGAGE_PROPERTIES_SEPARATOR, diff --git a/auto-merge/js/packages/opentelemetry-core/src/common/anchored-clock.ts b/pkgs/core/src/common/anchored-clock.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/common/anchored-clock.ts rename to pkgs/core/src/common/anchored-clock.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/common/attributes.ts b/pkgs/core/src/common/attributes.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/src/common/attributes.ts rename to pkgs/core/src/common/attributes.ts index 0726acd58..c6142e1ca 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/common/attributes.ts +++ b/pkgs/core/src/common/attributes.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { diag, SpanAttributeValue, SpanAttributes } from '@opentelemetry/api'; +import { diag, SpanAttributeValue, SpanAttributes } from '@opentelemetry/sandbox-api'; export function sanitizeAttributes(attributes: unknown): SpanAttributes { const out: SpanAttributes = {}; diff --git a/auto-merge/js/packages/opentelemetry-core/src/common/global-error-handler.ts b/pkgs/core/src/common/global-error-handler.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-core/src/common/global-error-handler.ts rename to pkgs/core/src/common/global-error-handler.ts index 9ef103e40..d9398060d 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/common/global-error-handler.ts +++ b/pkgs/core/src/common/global-error-handler.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Exception } from '@opentelemetry/api'; +import { Exception } from '@opentelemetry/sandbox-api'; import { loggingErrorHandler } from './logging-error-handler'; import { ErrorHandler } from './types'; diff --git a/auto-merge/js/packages/opentelemetry-core/src/common/logging-error-handler.ts b/pkgs/core/src/common/logging-error-handler.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-core/src/common/logging-error-handler.ts rename to pkgs/core/src/common/logging-error-handler.ts index bb3b187d9..3b3dd1834 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/common/logging-error-handler.ts +++ b/pkgs/core/src/common/logging-error-handler.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { diag, Exception } from '@opentelemetry/api'; +import { diag, Exception } from '@opentelemetry/sandbox-api'; import { ErrorHandler } from './types'; /** diff --git a/auto-merge/js/packages/opentelemetry-core/src/common/time.ts b/pkgs/core/src/common/time.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-core/src/common/time.ts rename to pkgs/core/src/common/time.ts index 8dd650a99..57c5a8316 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/common/time.ts +++ b/pkgs/core/src/common/time.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { otperformance as performance } from '../platform'; import { TimeOriginLegacy } from './types'; diff --git a/auto-merge/js/packages/opentelemetry-core/src/common/types.ts b/pkgs/core/src/common/types.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-core/src/common/types.ts rename to pkgs/core/src/common/types.ts index 2c6d9b7d5..5022b7fd8 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/common/types.ts +++ b/pkgs/core/src/common/types.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Exception } from '@opentelemetry/api'; +import { Exception } from '@opentelemetry/sandbox-api'; /** * This interface defines a fallback to read a timeOrigin when it is not available on performance.timeOrigin, diff --git a/auto-merge/js/packages/opentelemetry-core/src/index.ts b/pkgs/core/src/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/index.ts rename to pkgs/core/src/index.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/internal/exporter.ts b/pkgs/core/src/internal/exporter.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-core/src/internal/exporter.ts rename to pkgs/core/src/internal/exporter.ts index 28061f5ee..14874e4a2 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/internal/exporter.ts +++ b/pkgs/core/src/internal/exporter.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { context } from '@opentelemetry/api'; +import { context } from '@opentelemetry/sandbox-api'; import { ExportResult } from '../ExportResult'; import { suppressTracing } from '../trace/suppress-tracing'; diff --git a/auto-merge/js/packages/opentelemetry-core/src/internal/validators.ts b/pkgs/core/src/internal/validators.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/internal/validators.ts rename to pkgs/core/src/internal/validators.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/browser/RandomIdGenerator.ts b/pkgs/core/src/platform/browser/RandomIdGenerator.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/browser/RandomIdGenerator.ts rename to pkgs/core/src/platform/browser/RandomIdGenerator.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/browser/environment.ts b/pkgs/core/src/platform/browser/environment.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/browser/environment.ts rename to pkgs/core/src/platform/browser/environment.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/browser/globalThis.ts b/pkgs/core/src/platform/browser/globalThis.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/browser/globalThis.ts rename to pkgs/core/src/platform/browser/globalThis.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/browser/hex-to-base64.ts b/pkgs/core/src/platform/browser/hex-to-base64.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/browser/hex-to-base64.ts rename to pkgs/core/src/platform/browser/hex-to-base64.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/browser/index.ts b/pkgs/core/src/platform/browser/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/browser/index.ts rename to pkgs/core/src/platform/browser/index.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/browser/performance.ts b/pkgs/core/src/platform/browser/performance.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/browser/performance.ts rename to pkgs/core/src/platform/browser/performance.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/browser/sdk-info.ts b/pkgs/core/src/platform/browser/sdk-info.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-core/src/platform/browser/sdk-info.ts rename to pkgs/core/src/platform/browser/sdk-info.ts index b804cd3c8..c043b1417 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/platform/browser/sdk-info.ts +++ b/pkgs/core/src/platform/browser/sdk-info.ts @@ -18,7 +18,7 @@ import { VERSION } from '../../version'; import { TelemetrySdkLanguageValues, SemanticResourceAttributes, -} from '@opentelemetry/semantic-conventions'; +} from '@opentelemetry/sandbox-semantic-conventions'; /** Constants describing the SDK in use */ export const SDK_INFO = { diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/browser/timer-util.ts b/pkgs/core/src/platform/browser/timer-util.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/browser/timer-util.ts rename to pkgs/core/src/platform/browser/timer-util.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/index.ts b/pkgs/core/src/platform/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/index.ts rename to pkgs/core/src/platform/index.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/node/RandomIdGenerator.ts b/pkgs/core/src/platform/node/RandomIdGenerator.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/node/RandomIdGenerator.ts rename to pkgs/core/src/platform/node/RandomIdGenerator.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/node/environment.ts b/pkgs/core/src/platform/node/environment.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/node/environment.ts rename to pkgs/core/src/platform/node/environment.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/node/globalThis.ts b/pkgs/core/src/platform/node/globalThis.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/node/globalThis.ts rename to pkgs/core/src/platform/node/globalThis.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/node/hex-to-base64.ts b/pkgs/core/src/platform/node/hex-to-base64.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/node/hex-to-base64.ts rename to pkgs/core/src/platform/node/hex-to-base64.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/node/index.ts b/pkgs/core/src/platform/node/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/node/index.ts rename to pkgs/core/src/platform/node/index.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/node/performance.ts b/pkgs/core/src/platform/node/performance.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/node/performance.ts rename to pkgs/core/src/platform/node/performance.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/node/sdk-info.ts b/pkgs/core/src/platform/node/sdk-info.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-core/src/platform/node/sdk-info.ts rename to pkgs/core/src/platform/node/sdk-info.ts index 6c7c4c5f0..214f8174e 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/platform/node/sdk-info.ts +++ b/pkgs/core/src/platform/node/sdk-info.ts @@ -18,7 +18,7 @@ import { VERSION } from '../../version'; import { TelemetrySdkLanguageValues, SemanticResourceAttributes, -} from '@opentelemetry/semantic-conventions'; +} from '@opentelemetry/sandbox-semantic-conventions'; /** Constants describing the SDK in use */ export const SDK_INFO = { diff --git a/auto-merge/js/packages/opentelemetry-core/src/platform/node/timer-util.ts b/pkgs/core/src/platform/node/timer-util.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/platform/node/timer-util.ts rename to pkgs/core/src/platform/node/timer-util.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/propagation/composite.ts b/pkgs/core/src/propagation/composite.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-core/src/propagation/composite.ts rename to pkgs/core/src/propagation/composite.ts index 245507a11..da9c9a2dd 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/propagation/composite.ts +++ b/pkgs/core/src/propagation/composite.ts @@ -20,7 +20,7 @@ import { TextMapPropagator, diag, TextMapSetter, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; /** Configuration object for composite propagator */ export interface CompositePropagatorConfig { diff --git a/auto-merge/js/packages/opentelemetry-core/src/trace/IdGenerator.ts b/pkgs/core/src/trace/IdGenerator.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/trace/IdGenerator.ts rename to pkgs/core/src/trace/IdGenerator.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/trace/TraceState.ts b/pkgs/core/src/trace/TraceState.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-core/src/trace/TraceState.ts rename to pkgs/core/src/trace/TraceState.ts index 0d881b15c..ee32d6769 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/trace/TraceState.ts +++ b/pkgs/core/src/trace/TraceState.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { validateKey, validateValue } from '../internal/validators'; const MAX_TRACE_STATE_ITEMS = 32; diff --git a/auto-merge/js/packages/opentelemetry-core/src/trace/W3CTraceContextPropagator.ts b/pkgs/core/src/trace/W3CTraceContextPropagator.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/src/trace/W3CTraceContextPropagator.ts rename to pkgs/core/src/trace/W3CTraceContextPropagator.ts index 7925e7481..52a297b32 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/trace/W3CTraceContextPropagator.ts +++ b/pkgs/core/src/trace/W3CTraceContextPropagator.ts @@ -23,7 +23,7 @@ import { TextMapSetter, trace, TraceFlags, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { isTracingSuppressed } from './suppress-tracing'; import { TraceState } from './TraceState'; diff --git a/auto-merge/js/packages/opentelemetry-core/src/trace/rpc-metadata.ts b/pkgs/core/src/trace/rpc-metadata.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/src/trace/rpc-metadata.ts rename to pkgs/core/src/trace/rpc-metadata.ts index 8e3cbf7be..00a390e23 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/trace/rpc-metadata.ts +++ b/pkgs/core/src/trace/rpc-metadata.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, createContextKey, Span } from '@opentelemetry/api'; +import { Context, createContextKey, Span } from '@opentelemetry/sandbox-api'; const RPC_METADATA_KEY = createContextKey( 'OpenTelemetry SDK Context Key RPC_METADATA' diff --git a/auto-merge/js/packages/opentelemetry-core/src/trace/sampler/AlwaysOffSampler.ts b/pkgs/core/src/trace/sampler/AlwaysOffSampler.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-core/src/trace/sampler/AlwaysOffSampler.ts rename to pkgs/core/src/trace/sampler/AlwaysOffSampler.ts index ebe824d90..3cbe34d73 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/trace/sampler/AlwaysOffSampler.ts +++ b/pkgs/core/src/trace/sampler/AlwaysOffSampler.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Sampler, SamplingDecision, SamplingResult } from '@opentelemetry/api'; +import { Sampler, SamplingDecision, SamplingResult } from '@opentelemetry/sandbox-api'; /** * @deprecated Use the one defined in @opentelemetry/sdk-trace-base instead. diff --git a/auto-merge/js/packages/opentelemetry-core/src/trace/sampler/AlwaysOnSampler.ts b/pkgs/core/src/trace/sampler/AlwaysOnSampler.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-core/src/trace/sampler/AlwaysOnSampler.ts rename to pkgs/core/src/trace/sampler/AlwaysOnSampler.ts index 8967d4964..8a5421682 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/trace/sampler/AlwaysOnSampler.ts +++ b/pkgs/core/src/trace/sampler/AlwaysOnSampler.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Sampler, SamplingDecision, SamplingResult } from '@opentelemetry/api'; +import { Sampler, SamplingDecision, SamplingResult } from '@opentelemetry/sandbox-api'; /** * @deprecated Use the one defined in @opentelemetry/sdk-trace-base instead. diff --git a/auto-merge/js/packages/opentelemetry-core/src/trace/sampler/ParentBasedSampler.ts b/pkgs/core/src/trace/sampler/ParentBasedSampler.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/src/trace/sampler/ParentBasedSampler.ts rename to pkgs/core/src/trace/sampler/ParentBasedSampler.ts index a3abf53bf..99c1b7cf7 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/trace/sampler/ParentBasedSampler.ts +++ b/pkgs/core/src/trace/sampler/ParentBasedSampler.ts @@ -24,7 +24,7 @@ import { SpanKind, TraceFlags, trace, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { globalErrorHandler } from '../../common/global-error-handler'; import { AlwaysOffSampler } from './AlwaysOffSampler'; import { AlwaysOnSampler } from './AlwaysOnSampler'; diff --git a/auto-merge/js/packages/opentelemetry-core/src/trace/sampler/TraceIdRatioBasedSampler.ts b/pkgs/core/src/trace/sampler/TraceIdRatioBasedSampler.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-core/src/trace/sampler/TraceIdRatioBasedSampler.ts rename to pkgs/core/src/trace/sampler/TraceIdRatioBasedSampler.ts index c4928d1cf..2afeefc24 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/trace/sampler/TraceIdRatioBasedSampler.ts +++ b/pkgs/core/src/trace/sampler/TraceIdRatioBasedSampler.ts @@ -19,7 +19,7 @@ import { SamplingDecision, SamplingResult, isValidTraceId, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; /** * @deprecated Use the one defined in @opentelemetry/sdk-trace-base instead. diff --git a/auto-merge/js/packages/opentelemetry-core/src/trace/suppress-tracing.ts b/pkgs/core/src/trace/suppress-tracing.ts similarity index 93% rename from auto-merge/js/packages/opentelemetry-core/src/trace/suppress-tracing.ts rename to pkgs/core/src/trace/suppress-tracing.ts index a48c01dcd..9794fcd1a 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/trace/suppress-tracing.ts +++ b/pkgs/core/src/trace/suppress-tracing.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, createContextKey } from '@opentelemetry/api'; +import { Context, createContextKey } from '@opentelemetry/sandbox-api'; const SUPPRESS_TRACING_KEY = createContextKey( 'OpenTelemetry SDK Context Key SUPPRESS_TRACING' diff --git a/auto-merge/js/packages/opentelemetry-core/src/utils/callback.ts b/pkgs/core/src/utils/callback.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/utils/callback.ts rename to pkgs/core/src/utils/callback.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/utils/environment.ts b/pkgs/core/src/utils/environment.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/src/utils/environment.ts rename to pkgs/core/src/utils/environment.ts index 1ab79176d..6dda8e766 100644 --- a/auto-merge/js/packages/opentelemetry-core/src/utils/environment.ts +++ b/pkgs/core/src/utils/environment.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { DiagLogLevel } from '@opentelemetry/api'; +import { DiagLogLevel } from '@opentelemetry/sandbox-api'; import { TracesSamplerValues } from './sampling'; import { _globalThis } from '../platform/browser/globalThis'; diff --git a/auto-merge/js/packages/opentelemetry-core/src/utils/lodash.merge.ts b/pkgs/core/src/utils/lodash.merge.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/utils/lodash.merge.ts rename to pkgs/core/src/utils/lodash.merge.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/utils/merge.ts b/pkgs/core/src/utils/merge.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/utils/merge.ts rename to pkgs/core/src/utils/merge.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/utils/promise.ts b/pkgs/core/src/utils/promise.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/utils/promise.ts rename to pkgs/core/src/utils/promise.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/utils/sampling.ts b/pkgs/core/src/utils/sampling.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/utils/sampling.ts rename to pkgs/core/src/utils/sampling.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/utils/timeout.ts b/pkgs/core/src/utils/timeout.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/utils/timeout.ts rename to pkgs/core/src/utils/timeout.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/utils/url.ts b/pkgs/core/src/utils/url.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/utils/url.ts rename to pkgs/core/src/utils/url.ts diff --git a/auto-merge/js/packages/opentelemetry-core/src/utils/wrap.ts b/pkgs/core/src/utils/wrap.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/src/utils/wrap.ts rename to pkgs/core/src/utils/wrap.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/baggage/W3CBaggagePropagator.test.ts b/pkgs/core/test/baggage/W3CBaggagePropagator.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/test/baggage/W3CBaggagePropagator.test.ts rename to pkgs/core/test/baggage/W3CBaggagePropagator.test.ts index c30bfb301..35f757d9d 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/baggage/W3CBaggagePropagator.test.ts +++ b/pkgs/core/test/baggage/W3CBaggagePropagator.test.ts @@ -21,8 +21,8 @@ import { defaultTextMapSetter, propagation, baggageEntryMetadataFromString, -} from '@opentelemetry/api'; -import { ROOT_CONTEXT } from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; +import { ROOT_CONTEXT } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { W3CBaggagePropagator } from '../../src/baggage/propagation/W3CBaggagePropagator'; import { BAGGAGE_HEADER } from '../../src/baggage/constants'; diff --git a/auto-merge/js/packages/opentelemetry-core/test/common/anchored-clock.test.ts b/pkgs/core/test/common/anchored-clock.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/common/anchored-clock.test.ts rename to pkgs/core/test/common/anchored-clock.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/common/attributes.test.ts b/pkgs/core/test/common/attributes.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/common/attributes.test.ts rename to pkgs/core/test/common/attributes.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/common/global-error-handler.test.ts b/pkgs/core/test/common/global-error-handler.test.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-core/test/common/global-error-handler.test.ts rename to pkgs/core/test/common/global-error-handler.test.ts index 9dcdb3036..ffbb19819 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/common/global-error-handler.test.ts +++ b/pkgs/core/test/common/global-error-handler.test.ts @@ -17,7 +17,7 @@ import * as assert from 'assert'; import * as sinon from 'sinon'; import { globalErrorHandler, setGlobalErrorHandler } from '../../src'; -import { Exception } from '@opentelemetry/api'; +import { Exception } from '@opentelemetry/sandbox-api'; describe('globalErrorHandler', () => { let defaultHandler: sinon.SinonSpy; diff --git a/auto-merge/js/packages/opentelemetry-core/test/common/logging-error-handler.test.ts b/pkgs/core/test/common/logging-error-handler.test.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-core/test/common/logging-error-handler.test.ts rename to pkgs/core/test/common/logging-error-handler.test.ts index e89a69d03..d3b4882b6 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/common/logging-error-handler.test.ts +++ b/pkgs/core/test/common/logging-error-handler.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { ErrorHandler, loggingErrorHandler } from '../../src'; diff --git a/auto-merge/js/packages/opentelemetry-core/test/common/time.test.ts b/pkgs/core/test/common/time.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/test/common/time.test.ts rename to pkgs/core/test/common/time.test.ts index bf691c707..fe9acc423 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/common/time.test.ts +++ b/pkgs/core/test/common/time.test.ts @@ -17,7 +17,7 @@ import * as assert from 'assert'; import { otperformance as performance } from '../../src/platform'; import * as sinon from 'sinon'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { hrTime, timeInputToHrTime, diff --git a/auto-merge/js/packages/opentelemetry-core/test/index-webpack.ts b/pkgs/core/test/index-webpack.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/index-webpack.ts rename to pkgs/core/test/index-webpack.ts diff --git a/pkgs/core/test/index-webpack.worker.ts b/pkgs/core/test/index-webpack.worker.ts new file mode 100644 index 000000000..a00999ebd --- /dev/null +++ b/pkgs/core/test/index-webpack.worker.ts @@ -0,0 +1,20 @@ +/*! + * 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 + * + * 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. +*/ + +{ + const testsContext = require.context('./common', false, /test$/); + testsContext.keys().forEach(testsContext); +} diff --git a/auto-merge/js/packages/opentelemetry-core/test/internal/exporter.test.ts b/pkgs/core/test/internal/exporter.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/internal/exporter.test.ts rename to pkgs/core/test/internal/exporter.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/internal/validators.test.ts b/pkgs/core/test/internal/validators.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/internal/validators.test.ts rename to pkgs/core/test/internal/validators.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/platform/RandomIdGenerator.test.ts b/pkgs/core/test/platform/RandomIdGenerator.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/platform/RandomIdGenerator.test.ts rename to pkgs/core/test/platform/RandomIdGenerator.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/platform/browser/environment.test.ts b/pkgs/core/test/platform/browser/environment.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/platform/browser/environment.test.ts rename to pkgs/core/test/platform/browser/environment.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/platform/hex-to-base64.test.ts b/pkgs/core/test/platform/hex-to-base64.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/platform/hex-to-base64.test.ts rename to pkgs/core/test/platform/hex-to-base64.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/propagation/composite.test.ts b/pkgs/core/test/propagation/composite.test.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-core/test/propagation/composite.test.ts rename to pkgs/core/test/propagation/composite.test.ts index a2bad6f5d..58a6ff054 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/propagation/composite.test.ts +++ b/pkgs/core/test/propagation/composite.test.ts @@ -22,8 +22,8 @@ import { TextMapGetter, TextMapSetter, trace, -} from '@opentelemetry/api'; -import { Context, ROOT_CONTEXT } from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; +import { Context, ROOT_CONTEXT } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { CompositePropagator, diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/test-utils.ts b/pkgs/core/test/test-utils.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/test/test-utils.ts rename to pkgs/core/test/test-utils.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/AlwaysOffSampler.test.ts b/pkgs/core/test/trace/AlwaysOffSampler.test.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-core/test/trace/AlwaysOffSampler.test.ts rename to pkgs/core/test/trace/AlwaysOffSampler.test.ts index bda93eddd..7ec7782ca 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/trace/AlwaysOffSampler.test.ts +++ b/pkgs/core/test/trace/AlwaysOffSampler.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ import * as assert from 'assert'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { AlwaysOffSampler } from '../../src/trace/sampler/AlwaysOffSampler'; describe('AlwaysOffSampler', () => { diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/AlwaysOnSampler.test.ts b/pkgs/core/test/trace/AlwaysOnSampler.test.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-core/test/trace/AlwaysOnSampler.test.ts rename to pkgs/core/test/trace/AlwaysOnSampler.test.ts index fce88b19b..acbdb0de8 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/trace/AlwaysOnSampler.test.ts +++ b/pkgs/core/test/trace/AlwaysOnSampler.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ import * as assert from 'assert'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { AlwaysOnSampler } from '../../src/trace/sampler/AlwaysOnSampler'; describe('AlwaysOnSampler', () => { diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/ParentBasedSampler.test.ts b/pkgs/core/test/trace/ParentBasedSampler.test.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-core/test/trace/ParentBasedSampler.test.ts rename to pkgs/core/test/trace/ParentBasedSampler.test.ts index 828a32fa3..4931797c6 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/trace/ParentBasedSampler.test.ts +++ b/pkgs/core/test/trace/ParentBasedSampler.test.ts @@ -14,10 +14,10 @@ * limitations under the License. */ import * as assert from 'assert'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { AlwaysOnSampler } from '../../src/trace/sampler/AlwaysOnSampler'; import { ParentBasedSampler } from '../../src/trace/sampler/ParentBasedSampler'; -import { TraceFlags, SpanKind, trace } from '@opentelemetry/api'; +import { TraceFlags, SpanKind, trace } from '@opentelemetry/sandbox-api'; import { AlwaysOffSampler } from '../../src/trace/sampler/AlwaysOffSampler'; import { TraceIdRatioBasedSampler } from '../../src'; diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/TraceIdRatioBasedSampler.test.ts b/pkgs/core/test/trace/TraceIdRatioBasedSampler.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/test/trace/TraceIdRatioBasedSampler.test.ts rename to pkgs/core/test/trace/TraceIdRatioBasedSampler.test.ts index c94534c77..66c63015d 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/trace/TraceIdRatioBasedSampler.test.ts +++ b/pkgs/core/test/trace/TraceIdRatioBasedSampler.test.ts @@ -15,7 +15,7 @@ */ import * as assert from 'assert'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { TraceIdRatioBasedSampler } from '../../src/trace/sampler/TraceIdRatioBasedSampler'; const spanContext = (traceId = '1') => ({ diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/W3CTraceContextPropagator.test.ts b/pkgs/core/test/trace/W3CTraceContextPropagator.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/test/trace/W3CTraceContextPropagator.test.ts rename to pkgs/core/test/trace/W3CTraceContextPropagator.test.ts index 2df3395f5..ef1c8ee7b 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/trace/W3CTraceContextPropagator.test.ts +++ b/pkgs/core/test/trace/W3CTraceContextPropagator.test.ts @@ -23,7 +23,7 @@ import { SpanContext, trace, TraceFlags, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { W3CTraceContextPropagator, diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/fixtures/test-package/foo/bar/internal.d.ts b/pkgs/core/test/trace/fixtures/test-package/foo/bar/internal.d.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/trace/fixtures/test-package/foo/bar/internal.d.ts rename to pkgs/core/test/trace/fixtures/test-package/foo/bar/internal.d.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/fixtures/test-package/foo/bar/internal.js b/pkgs/core/test/trace/fixtures/test-package/foo/bar/internal.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/trace/fixtures/test-package/foo/bar/internal.js rename to pkgs/core/test/trace/fixtures/test-package/foo/bar/internal.js diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/fixtures/test-package/index.js b/pkgs/core/test/trace/fixtures/test-package/index.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/trace/fixtures/test-package/index.js rename to pkgs/core/test/trace/fixtures/test-package/index.js diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/fixtures/test-package/package.json b/pkgs/core/test/trace/fixtures/test-package/package.json similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/trace/fixtures/test-package/package.json rename to pkgs/core/test/trace/fixtures/test-package/package.json diff --git a/auto-merge/js/packages/opentelemetry-core/test/trace/tracestate.test.ts b/pkgs/core/test/trace/tracestate.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/trace/tracestate.test.ts rename to pkgs/core/test/trace/tracestate.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/utils/callback.test.ts b/pkgs/core/test/utils/callback.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/utils/callback.test.ts rename to pkgs/core/test/utils/callback.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/utils/environment.test.ts b/pkgs/core/test/utils/environment.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-core/test/utils/environment.test.ts rename to pkgs/core/test/utils/environment.test.ts index 8fa8b08f1..40be44f00 100644 --- a/auto-merge/js/packages/opentelemetry-core/test/utils/environment.test.ts +++ b/pkgs/core/test/utils/environment.test.ts @@ -22,7 +22,7 @@ import { } from '../../src/utils/environment'; import * as assert from 'assert'; import * as sinon from 'sinon'; -import { DiagLogLevel } from '@opentelemetry/api'; +import { DiagLogLevel } from '@opentelemetry/sandbox-api'; import { TracesSamplerValues } from '../../src'; let lastMock: RAW_ENVIRONMENT = {}; diff --git a/auto-merge/js/packages/opentelemetry-core/test/utils/merge.test.ts b/pkgs/core/test/utils/merge.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/utils/merge.test.ts rename to pkgs/core/test/utils/merge.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/utils/promise.test.ts b/pkgs/core/test/utils/promise.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/utils/promise.test.ts rename to pkgs/core/test/utils/promise.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/utils/url.test.ts b/pkgs/core/test/utils/url.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/utils/url.test.ts rename to pkgs/core/test/utils/url.test.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/utils/wrap.test.ts b/pkgs/core/test/utils/wrap.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/utils/wrap.test.ts rename to pkgs/core/test/utils/wrap.test.ts diff --git a/pkgs/core/tsconfig.esm.json b/pkgs/core/tsconfig.esm.json new file mode 100644 index 000000000..6f96cbec1 --- /dev/null +++ b/pkgs/core/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.esnext.json b/pkgs/core/tsconfig.esnext.json similarity index 64% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.esnext.json rename to pkgs/core/tsconfig.esnext.json index ff768ce18..2525ac36a 100644 --- a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/tsconfig.esnext.json +++ b/pkgs/core/tsconfig.esnext.json @@ -5,15 +5,7 @@ "rootDir": "src", "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" }, - "files": [ - "node_modules/zone.js/dist/zone.js.d.ts" - ], "include": [ "src/**/*.ts" - ], - "references": [ - { - "path": "../../api" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-core/tsconfig.json b/pkgs/core/tsconfig.json similarity index 58% rename from auto-merge/js/packages/opentelemetry-core/tsconfig.json rename to pkgs/core/tsconfig.json index 9c47daec7..cb48d4258 100644 --- a/auto-merge/js/packages/opentelemetry-core/tsconfig.json +++ b/pkgs/core/tsconfig.json @@ -8,13 +8,5 @@ "include": [ "src/**/*.ts", "test/**/*.ts" - ], - "references": [ - { - "path": "../../api" - }, - { - "path": "../opentelemetry-semantic-conventions" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/.eslintignore b/pkgs/detectors/browser/.eslintignore similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/.eslintignore rename to pkgs/detectors/browser/.eslintignore diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/.eslintrc.js b/pkgs/detectors/browser/.eslintrc.js similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/.eslintrc.js rename to pkgs/detectors/browser/.eslintrc.js diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/.npmignore b/pkgs/detectors/browser/.npmignore similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/.npmignore rename to pkgs/detectors/browser/.npmignore diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/LICENSE b/pkgs/detectors/browser/LICENSE similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/LICENSE rename to pkgs/detectors/browser/LICENSE diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/README.md b/pkgs/detectors/browser/README.md similarity index 85% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/README.md rename to pkgs/detectors/browser/README.md index a1e9002ea..125558d92 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/README.md +++ b/pkgs/detectors/browser/README.md @@ -13,9 +13,9 @@ npm install --save @opentelemetry/opentelemetry-browser-detector ## Usage ```js -import { Resource, detectResources } from '@opentelemetry/resources'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; -import { browserDetector } from '@opentelemetry/opentelemetry-browser-detector'; +import { Resource, detectResources } from '@opentelemetry/sandbox-resources'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; +import { browserDetector } from '@opentelemetry/sandbox-opentelemetry-browser-detector'; async function start(){ let resource= new Resource({ diff --git a/auto-merge/js/experimental/packages/api-events/karma.conf.js b/pkgs/detectors/browser/karma.conf.js similarity index 100% rename from auto-merge/js/experimental/packages/api-events/karma.conf.js rename to pkgs/detectors/browser/karma.conf.js diff --git a/pkgs/detectors/browser/karma.debug.conf.js b/pkgs/detectors/browser/karma.debug.conf.js new file mode 100644 index 000000000..490933fdc --- /dev/null +++ b/pkgs/detectors/browser/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/detectors/browser/package.json b/pkgs/detectors/browser/package.json new file mode 100644 index 000000000..25177f425 --- /dev/null +++ b/pkgs/detectors/browser/package.json @@ -0,0 +1,108 @@ +{ + "name": "@opentelemetry/sandbox-opentelemetry-browser-detector", + "version": "0.39.1", + "description": "OpenTelemetry Resource Detector for Browser", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "npm run test -- --watch-extensions ts --watch", + "tdd:browser": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", + "version": "node ../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "browser", + "resource", + "detector" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@babel/core": "7.16.0", + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "dependencies": { + "@opentelemetry/sandbox-resources": "1.13.0", + "@opentelemetry/sandbox-semantic-conventions": "1.13.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/browser-detector" +} \ No newline at end of file diff --git a/pkgs/detectors/browser/rollup.config.js b/pkgs/detectors/browser/rollup.config.js new file mode 100644 index 000000000..214421b1e --- /dev/null +++ b/pkgs/detectors/browser/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.detector.browser", inputName, "otel-sndbx.detect-browser", version); diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/src/BrowserDetector.ts b/pkgs/detectors/browser/src/BrowserDetector.ts similarity index 94% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/src/BrowserDetector.ts rename to pkgs/detectors/browser/src/BrowserDetector.ts index 85fdd1cc5..c53900fc2 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/src/BrowserDetector.ts +++ b/pkgs/detectors/browser/src/BrowserDetector.ts @@ -14,14 +14,14 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import { Detector, IResource, Resource, ResourceDetectionConfig, -} from '@opentelemetry/resources'; -import { ResourceAttributes } from '@opentelemetry/resources'; +} from '@opentelemetry/sandbox-resources'; +import { ResourceAttributes } from '@opentelemetry/sandbox-resources'; import { BROWSER_ATTRIBUTES, UserAgentData } from './types'; /** diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/src/index.ts b/pkgs/detectors/browser/src/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/src/index.ts rename to pkgs/detectors/browser/src/index.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/src/types.ts b/pkgs/detectors/browser/src/types.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/src/types.ts rename to pkgs/detectors/browser/src/types.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/test/BrowserDetector.test.ts b/pkgs/detectors/browser/test/BrowserDetector.test.ts similarity index 97% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/test/BrowserDetector.test.ts rename to pkgs/detectors/browser/test/BrowserDetector.test.ts index 727007aa5..385841e82 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/test/BrowserDetector.test.ts +++ b/pkgs/detectors/browser/test/BrowserDetector.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ import * as sinon from 'sinon'; -import { IResource } from '@opentelemetry/resources'; +import { IResource } from '@opentelemetry/sandbox-resources'; import { browserDetector } from '../src/BrowserDetector'; import { describeBrowser, assertResource, assertEmptyResource } from './util'; diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/test/index-webpack.ts b/pkgs/detectors/browser/test/index-webpack.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/test/index-webpack.ts rename to pkgs/detectors/browser/test/index-webpack.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/test/util.ts b/pkgs/detectors/browser/test/util.ts similarity index 97% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/test/util.ts rename to pkgs/detectors/browser/test/util.ts index 3318f4891..6d837e43a 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/test/util.ts +++ b/pkgs/detectors/browser/test/util.ts @@ -16,7 +16,7 @@ import { Suite } from 'mocha'; import * as assert from 'assert'; import { BROWSER_ATTRIBUTES } from '../src/types'; -import { IResource } from '@opentelemetry/resources'; +import { IResource } from '@opentelemetry/sandbox-resources'; export function describeBrowser(title: string, fn: (this: Suite) => void) { title = `Browser: ${title}`; diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/tsconfig.esm.json b/pkgs/detectors/browser/tsconfig.esm.json similarity index 99% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/tsconfig.esm.json rename to pkgs/detectors/browser/tsconfig.esm.json index 379f547a4..d0d0ce24d 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/tsconfig.esm.json +++ b/pkgs/detectors/browser/tsconfig.esm.json @@ -1,11 +1,11 @@ { "extends": "../../../tsconfig.base.esm.json", "compilerOptions": { - "rootDir": "src", "outDir": "build/esm", + "rootDir": "src", "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" }, "include": [ "src/**/*.ts" ] -} +} \ No newline at end of file diff --git a/pkgs/detectors/browser/tsconfig.esnext.json b/pkgs/detectors/browser/tsconfig.esnext.json new file mode 100644 index 000000000..8e1d797d3 --- /dev/null +++ b/pkgs/detectors/browser/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/api-events/tsconfig.json b/pkgs/detectors/browser/tsconfig.json similarity index 74% rename from auto-merge/js/experimental/packages/api-events/tsconfig.json rename to pkgs/detectors/browser/tsconfig.json index 5849e79c0..e4729001d 100644 --- a/auto-merge/js/experimental/packages/api-events/tsconfig.json +++ b/pkgs/detectors/browser/tsconfig.json @@ -8,10 +8,5 @@ "include": [ "src/**/*.ts", "test/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/.eslintignore b/pkgs/exporters/otlp/base/.eslintignore similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/.eslintignore rename to pkgs/exporters/otlp/base/.eslintignore diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/.eslintrc.js b/pkgs/exporters/otlp/base/.eslintrc.js similarity index 74% rename from auto-merge/js/experimental/packages/otlp-exporter-base/.eslintrc.js rename to pkgs/exporters/otlp/base/.eslintrc.js index e41d9a929..a56ddd7a7 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/.eslintrc.js +++ b/pkgs/exporters/otlp/base/.eslintrc.js @@ -5,5 +5,5 @@ module.exports = { "node": true, "browser": true }, - ...require('../../../eslint.config.js') + ...require('../../../../eslint.config.js') } diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/.npmignore b/pkgs/exporters/otlp/base/.npmignore similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/.npmignore rename to pkgs/exporters/otlp/base/.npmignore diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/LICENSE b/pkgs/exporters/otlp/base/LICENSE similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/LICENSE rename to pkgs/exporters/otlp/base/LICENSE diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/README.md b/pkgs/exporters/otlp/base/README.md similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/README.md rename to pkgs/exporters/otlp/base/README.md diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/karma.conf.js b/pkgs/exporters/otlp/base/karma.conf.js similarity index 87% rename from auto-merge/js/experimental/packages/otlp-exporter-base/karma.conf.js rename to pkgs/exporters/otlp/base/karma.conf.js index 4c60b54ed..46080de5d 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/karma.conf.js +++ b/pkgs/exporters/otlp/base/karma.conf.js @@ -14,8 +14,8 @@ * limitations under the License. */ -const karmaWebpackConfig = require('../../../karma.webpack'); -const karmaBaseConfig = require('../../../karma.base'); +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.base'); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { diff --git a/pkgs/exporters/otlp/base/karma.debug.conf.js b/pkgs/exporters/otlp/base/karma.debug.conf.js new file mode 100644 index 000000000..02f69db6b --- /dev/null +++ b/pkgs/exporters/otlp/base/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/exporters/otlp/base/karma.webpack.js b/pkgs/exporters/otlp/base/karma.webpack.js new file mode 100644 index 000000000..347cb8e58 --- /dev/null +++ b/pkgs/exporters/otlp/base/karma.webpack.js @@ -0,0 +1,42 @@ +/*! + * 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 + * + * 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. +*/ + +const webpackNodePolyfills = require("../../../../webpack.node-polyfills.js"); + +module.exports = { + mode: "development", + target: "web", + output: { filename: "bundle.js" }, + resolve: { extensions: [".ts", ".js"] }, + devtool: "inline-source-map", + module: { + rules: [ + { test: /.ts$/, use: "ts-loader" }, + { + enforce: "post", + exclude: /(node_modules|.test.[tj]sx?$)/, + test: /.ts$/, + use: { + loader: "istanbul-instrumenter-loader", + options: { esModules: true } + } + }, + // This setting configures Node polyfills for the browser that will be + // added to the webpack bundle for Karma tests. + { parser: { node: webpackNodePolyfills } } + ] + } +}; diff --git a/pkgs/exporters/otlp/base/karma.worker.js b/pkgs/exporters/otlp/base/karma.worker.js new file mode 100644 index 000000000..adf99bbef --- /dev/null +++ b/pkgs/exporters/otlp/base/karma.worker.js @@ -0,0 +1,24 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.worker'); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + webpack: karmaWebpackConfig, + })) +}; diff --git a/pkgs/exporters/otlp/base/package.json b/pkgs/exporters/otlp/base/package.json new file mode 100644 index 000000000..372536490 --- /dev/null +++ b/pkgs/exporters/otlp/base/package.json @@ -0,0 +1,116 @@ +{ + "name": "@opentelemetry/sandbox-otlp-exporter-base", + "version": "0.39.1", + "description": "OpenTelemetry OTLP Exporter base (for internal use only)", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "browser": { + "./src/platform/index.ts": "./src/platform/browser/index.ts", + "./build/esm/platform/index.js": "./build/esm/platform/browser/index.js", + "./build/esnext/platform/index.js": "./build/esnext/platform/browser/index.js", + "./build/src/platform/index.js": "./build/src/platform/browser/index.js" + }, + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", + "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "npm run test -- --watch-extensions ts --watch", + "tdd:browser": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", + "version": "node ../../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "nodejs", + "tracing", + "profiling", + "metrics", + "stats", + "monitoring" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0" + }, + "devDependencies": { + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nock": "13.0.11", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/otlp-exporter-base", + "sideEffects": false +} \ No newline at end of file diff --git a/pkgs/exporters/otlp/base/rollup.config.js b/pkgs/exporters/otlp/base/rollup.config.js new file mode 100644 index 000000000..92f92bfab --- /dev/null +++ b/pkgs/exporters/otlp/base/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.exporter.otlp-base", inputName, "otel-exprtr.otlp-base", version); diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/OTLPExporterBase.ts b/pkgs/exporters/otlp/base/src/OTLPExporterBase.ts similarity index 97% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/OTLPExporterBase.ts rename to pkgs/exporters/otlp/base/src/OTLPExporterBase.ts index c96030578..2cfb56d17 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/src/OTLPExporterBase.ts +++ b/pkgs/exporters/otlp/base/src/OTLPExporterBase.ts @@ -14,12 +14,12 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import { ExportResult, ExportResultCode, BindOnceFuture, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import { OTLPExporterError, OTLPExporterConfigBase, diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/index.ts b/pkgs/exporters/otlp/base/src/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/index.ts rename to pkgs/exporters/otlp/base/src/index.ts diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/browser/OTLPExporterBrowserBase.ts b/pkgs/exporters/otlp/base/src/platform/browser/OTLPExporterBrowserBase.ts similarity index 95% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/browser/OTLPExporterBrowserBase.ts rename to pkgs/exporters/otlp/base/src/platform/browser/OTLPExporterBrowserBase.ts index 57556d81a..77f67c637 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/browser/OTLPExporterBrowserBase.ts +++ b/pkgs/exporters/otlp/base/src/platform/browser/OTLPExporterBrowserBase.ts @@ -19,8 +19,8 @@ import { OTLPExporterConfigBase } from '../../types'; import * as otlpTypes from '../../types'; import { parseHeaders } from '../../util'; import { sendWithBeacon, sendWithXhr } from './util'; -import { diag } from '@opentelemetry/api'; -import { getEnv, baggageUtils } from '@opentelemetry/core'; +import { diag } from '@opentelemetry/sandbox-api'; +import { getEnv, baggageUtils } from '@opentelemetry/sandbox-core'; /** * Collector Metric Exporter abstract base class diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/browser/index.ts b/pkgs/exporters/otlp/base/src/platform/browser/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/browser/index.ts rename to pkgs/exporters/otlp/base/src/platform/browser/index.ts diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/browser/util.ts b/pkgs/exporters/otlp/base/src/platform/browser/util.ts similarity index 98% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/browser/util.ts rename to pkgs/exporters/otlp/base/src/platform/browser/util.ts index fade4afa8..2a1d30ad1 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/browser/util.ts +++ b/pkgs/exporters/otlp/base/src/platform/browser/util.ts @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import { OTLPExporterError } from '../../types'; import { DEFAULT_EXPORT_MAX_ATTEMPTS, diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/index.ts b/pkgs/exporters/otlp/base/src/platform/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/index.ts rename to pkgs/exporters/otlp/base/src/platform/index.ts diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/OTLPExporterNodeBase.ts b/pkgs/exporters/otlp/base/src/platform/node/OTLPExporterNodeBase.ts similarity index 95% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/OTLPExporterNodeBase.ts rename to pkgs/exporters/otlp/base/src/platform/node/OTLPExporterNodeBase.ts index 088a0fd0a..b9341e9d1 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/OTLPExporterNodeBase.ts +++ b/pkgs/exporters/otlp/base/src/platform/node/OTLPExporterNodeBase.ts @@ -22,8 +22,8 @@ import { OTLPExporterNodeConfigBase, CompressionAlgorithm } from './types'; import * as otlpTypes from '../../types'; import { parseHeaders } from '../../util'; import { createHttpAgent, sendWithHttp, configureCompression } from './util'; -import { diag } from '@opentelemetry/api'; -import { getEnv, baggageUtils } from '@opentelemetry/core'; +import { diag } from '@opentelemetry/sandbox-api'; +import { getEnv, baggageUtils } from '@opentelemetry/sandbox-core'; /** * Collector Metric Exporter abstract base class diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/index.ts b/pkgs/exporters/otlp/base/src/platform/node/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/index.ts rename to pkgs/exporters/otlp/base/src/platform/node/index.ts diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/types.ts b/pkgs/exporters/otlp/base/src/platform/node/types.ts similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/types.ts rename to pkgs/exporters/otlp/base/src/platform/node/types.ts diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/util.ts b/pkgs/exporters/otlp/base/src/platform/node/util.ts similarity index 98% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/util.ts rename to pkgs/exporters/otlp/base/src/platform/node/util.ts index fd40981e8..b7558c32b 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/src/platform/node/util.ts +++ b/pkgs/exporters/otlp/base/src/platform/node/util.ts @@ -20,9 +20,9 @@ import * as zlib from 'zlib'; import { Readable } from 'stream'; import { OTLPExporterNodeBase } from './OTLPExporterNodeBase'; import { OTLPExporterNodeConfigBase } from '.'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import { CompressionAlgorithm } from './types'; -import { getEnv } from '@opentelemetry/core'; +import { getEnv } from '@opentelemetry/sandbox-core'; import { OTLPExporterError } from '../../types'; import { DEFAULT_EXPORT_MAX_ATTEMPTS, diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/types.ts b/pkgs/exporters/otlp/base/src/types.ts similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/types.ts rename to pkgs/exporters/otlp/base/src/types.ts diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/src/util.ts b/pkgs/exporters/otlp/base/src/util.ts similarity index 97% rename from auto-merge/js/experimental/packages/otlp-exporter-base/src/util.ts rename to pkgs/exporters/otlp/base/src/util.ts index f5dc70c9e..0a8b9268d 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/src/util.ts +++ b/pkgs/exporters/otlp/base/src/util.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; -import { getEnv } from '@opentelemetry/core'; +import { diag } from '@opentelemetry/sandbox-api'; +import { getEnv } from '@opentelemetry/sandbox-core'; const DEFAULT_TRACE_TIMEOUT = 10000; export const DEFAULT_EXPORT_MAX_ATTEMPTS = 5; diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/browser/index-webpack.ts b/pkgs/exporters/otlp/base/test/browser/index-webpack.ts similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/browser/index-webpack.ts rename to pkgs/exporters/otlp/base/test/browser/index-webpack.ts diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/browser/util.test.ts b/pkgs/exporters/otlp/base/test/browser/util.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/browser/util.test.ts rename to pkgs/exporters/otlp/base/test/browser/util.test.ts diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/ca.crt b/pkgs/exporters/otlp/base/test/certs/ca.crt similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/ca.crt rename to pkgs/exporters/otlp/base/test/certs/ca.crt diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/ca.key b/pkgs/exporters/otlp/base/test/certs/ca.key similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/ca.key rename to pkgs/exporters/otlp/base/test/certs/ca.key diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/client.crt b/pkgs/exporters/otlp/base/test/certs/client.crt similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/client.crt rename to pkgs/exporters/otlp/base/test/certs/client.crt diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/client.csr b/pkgs/exporters/otlp/base/test/certs/client.csr similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/client.csr rename to pkgs/exporters/otlp/base/test/certs/client.csr diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/client.key b/pkgs/exporters/otlp/base/test/certs/client.key similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/client.key rename to pkgs/exporters/otlp/base/test/certs/client.key diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/regenerate.sh b/pkgs/exporters/otlp/base/test/certs/regenerate.sh similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/regenerate.sh rename to pkgs/exporters/otlp/base/test/certs/regenerate.sh diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/server.crt b/pkgs/exporters/otlp/base/test/certs/server.crt similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/server.crt rename to pkgs/exporters/otlp/base/test/certs/server.crt diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/server.csr b/pkgs/exporters/otlp/base/test/certs/server.csr similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/server.csr rename to pkgs/exporters/otlp/base/test/certs/server.csr diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/server.key b/pkgs/exporters/otlp/base/test/certs/server.key similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/certs/server.key rename to pkgs/exporters/otlp/base/test/certs/server.key diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/common/CollectorExporter.test.ts b/pkgs/exporters/otlp/base/test/common/CollectorExporter.test.ts similarity index 99% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/common/CollectorExporter.test.ts rename to pkgs/exporters/otlp/base/test/common/CollectorExporter.test.ts index e3b36e704..8744d33a7 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/test/common/CollectorExporter.test.ts +++ b/pkgs/exporters/otlp/base/test/common/CollectorExporter.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ExportResultCode } from '@opentelemetry/core'; +import { ExportResultCode } from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { OTLPExporterBase } from '../../src/OTLPExporterBase'; diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/common/util.test.ts b/pkgs/exporters/otlp/base/test/common/util.test.ts similarity index 98% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/common/util.test.ts rename to pkgs/exporters/otlp/base/test/common/util.test.ts index b00d1f36a..30bfc0cd0 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/test/common/util.test.ts +++ b/pkgs/exporters/otlp/base/test/common/util.test.ts @@ -16,7 +16,7 @@ import * as assert from 'assert'; import * as sinon from 'sinon'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import { parseHeaders, appendResourcePathToUrl, diff --git a/pkgs/exporters/otlp/base/test/index-webpack.worker.ts b/pkgs/exporters/otlp/base/test/index-webpack.worker.ts new file mode 100644 index 000000000..a00999ebd --- /dev/null +++ b/pkgs/exporters/otlp/base/test/index-webpack.worker.ts @@ -0,0 +1,20 @@ +/*! + * 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 + * + * 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. +*/ + +{ + const testsContext = require.context('./common', false, /test$/); + testsContext.keys().forEach(testsContext); +} diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/node/util.test.ts b/pkgs/exporters/otlp/base/test/node/util.test.ts similarity index 99% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/node/util.test.ts rename to pkgs/exporters/otlp/base/test/node/util.test.ts index b279e57b9..1d3f1e0d2 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/test/node/util.test.ts +++ b/pkgs/exporters/otlp/base/test/node/util.test.ts @@ -19,7 +19,7 @@ import { configureExporterTimeout, invalidTimeout } from '../../src/util'; import { sendWithHttp } from '../../src/platform/node/util'; import { CompressionAlgorithm } from '../../src/platform/node/types'; import { configureCompression } from '../../src/platform/node/util'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import * as sinon from 'sinon'; import { OTLPExporterNodeBase } from '../../src/platform/node/OTLPExporterNodeBase'; diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/test/testHelper.ts b/pkgs/exporters/otlp/base/test/testHelper.ts similarity index 97% rename from auto-merge/js/experimental/packages/otlp-exporter-base/test/testHelper.ts rename to pkgs/exporters/otlp/base/test/testHelper.ts index 41b0c9588..cd972f280 100644 --- a/auto-merge/js/experimental/packages/otlp-exporter-base/test/testHelper.ts +++ b/pkgs/exporters/otlp/base/test/testHelper.ts @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; export interface SimpleTestObject { diff --git a/pkgs/exporters/otlp/base/tsconfig.esm.json b/pkgs/exporters/otlp/base/tsconfig.esm.json new file mode 100644 index 000000000..ed5341aa3 --- /dev/null +++ b/pkgs/exporters/otlp/base/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/exporters/otlp/base/tsconfig.esnext.json b/pkgs/exporters/otlp/base/tsconfig.esnext.json new file mode 100644 index 000000000..2f8a78e6b --- /dev/null +++ b/pkgs/exporters/otlp/base/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/exporters/otlp/base/tsconfig.json b/pkgs/exporters/otlp/base/tsconfig.json new file mode 100644 index 000000000..33f0e4587 --- /dev/null +++ b/pkgs/exporters/otlp/base/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "files": [], + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/.eslintignore b/pkgs/instrumentations/instrumentation/.eslintignore similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/.eslintignore rename to pkgs/instrumentations/instrumentation/.eslintignore diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/.eslintrc.js b/pkgs/instrumentations/instrumentation/.eslintrc.js similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/.eslintrc.js rename to pkgs/instrumentations/instrumentation/.eslintrc.js diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/.gitignore b/pkgs/instrumentations/instrumentation/.gitignore similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/.gitignore rename to pkgs/instrumentations/instrumentation/.gitignore diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/.npmignore b/pkgs/instrumentations/instrumentation/.npmignore similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/.npmignore rename to pkgs/instrumentations/instrumentation/.npmignore diff --git a/auto-merge/js/experimental/packages/sdk-logs/LICENSE b/pkgs/instrumentations/instrumentation/LICENSE similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/LICENSE rename to pkgs/instrumentations/instrumentation/LICENSE diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/README.md b/pkgs/instrumentations/instrumentation/README.md similarity index 91% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/README.md rename to pkgs/instrumentations/instrumentation/README.md index 6c27e3d36..a9f975d5a 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/README.md +++ b/pkgs/instrumentations/instrumentation/README.md @@ -19,7 +19,7 @@ import { InstrumentationConfig, InstrumentationNodeModuleDefinition, InstrumentationNodeModuleFile, -} from '@opentelemetry/instrumentation'; +} from '@opentelemetry/sandbox-instrumentation'; import type * as module_name_to_be_patched from 'module_name_to_be_patched'; @@ -121,9 +121,9 @@ myInstrumentation.enable(); import { InstrumentationBase, InstrumentationConfig, -} from '@opentelemetry/instrumentation'; +} from '@opentelemetry/sandbox-instrumentation'; -import { Instrumentation } from '@opentelemetry/instrumentation'; +import { Instrumentation } from '@opentelemetry/sandbox-instrumentation'; export class MyInstrumentation extends InstrumentationBase { constructor(config: InstrumentationConfig = {}) { @@ -162,10 +162,10 @@ myInstrumentation.enable(); ### NODE - Auto Loader ```javascript -const { B3Propagator } = require('@opentelemetry/propagator-b3'); -const { registerInstrumentations } = require('@opentelemetry/instrumentation'); -const { HttpInstrumentation } = require('@opentelemetry/instrumentation-http'); -const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node'); +const { B3Propagator } = require('@opentelemetry/sandbox-propagator-b3'); +const { registerInstrumentations } = require('@opentelemetry/sandbox-instrumentation'); +const { HttpInstrumentation } = require('@opentelemetry/sandbox-instrumentation-http'); +const { NodeTracerProvider } = require('@opentelemetry/sandbox-sdk-trace-node'); const tracerProvider = new NodeTracerProvider(); @@ -186,10 +186,10 @@ registerInstrumentations({ ### WEB - Auto Loader ```javascript -const { B3Propagator } = require('@opentelemetry/propagator-b3'); -const { registerInstrumentations } = require('@opentelemetry/instrumentation'); -const { XMLHttpRequestInstrumentation } = require('@opentelemetry/instrumentation-xml-http-request'); -const { WebTracerProvider } = require('@opentelemetry/sdk-trace-web'); +const { B3Propagator } = require('@opentelemetry/sandbox-propagator-b3'); +const { registerInstrumentations } = require('@opentelemetry/sandbox-instrumentation'); +const { XMLHttpRequestInstrumentation } = require('@opentelemetry/sandbox-instrumentation-xml-http-request'); +const { WebTracerProvider } = require('@opentelemetry/sandbox-sdk-trace-web'); const tracerProvider = new WebTracerProvider(); diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/hook.mjs b/pkgs/instrumentations/instrumentation/hook.mjs similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/hook.mjs rename to pkgs/instrumentations/instrumentation/hook.mjs diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/karma.conf.js b/pkgs/instrumentations/instrumentation/karma.conf.js similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/karma.conf.js rename to pkgs/instrumentations/instrumentation/karma.conf.js diff --git a/pkgs/instrumentations/instrumentation/karma.debug.conf.js b/pkgs/instrumentations/instrumentation/karma.debug.conf.js new file mode 100644 index 000000000..490933fdc --- /dev/null +++ b/pkgs/instrumentations/instrumentation/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/instrumentations/instrumentation/karma.webpack.js b/pkgs/instrumentations/instrumentation/karma.webpack.js new file mode 100644 index 000000000..bc821e073 --- /dev/null +++ b/pkgs/instrumentations/instrumentation/karma.webpack.js @@ -0,0 +1,42 @@ +/*! + * 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 + * + * 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. +*/ + +const webpackNodePolyfills = require("../../../webpack.node-polyfills.js"); + +module.exports = { + mode: "development", + target: "web", + output: { filename: "bundle.js" }, + resolve: { extensions: [".ts", ".js"] }, + devtool: "inline-source-map", + module: { + rules: [ + { test: /.ts$/, use: "ts-loader" }, + { + enforce: "post", + exclude: /(node_modules|.test.[tj]sx?$)/, + test: /.ts$/, + use: { + loader: "istanbul-instrumenter-loader", + options: { esModules: true } + } + }, + // This setting configures Node polyfills for the browser that will be + // added to the webpack bundle for Karma tests. + { parser: { node: webpackNodePolyfills } } + ] + } +}; diff --git a/pkgs/instrumentations/instrumentation/karma.worker.js b/pkgs/instrumentations/instrumentation/karma.worker.js new file mode 100644 index 000000000..eb6ee53e9 --- /dev/null +++ b/pkgs/instrumentations/instrumentation/karma.worker.js @@ -0,0 +1,24 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaWebpackConfig = require('../../../karma.webpack'); +const karmaBaseConfig = require('../../../karma.worker'); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + webpack: karmaWebpackConfig, + })) +}; diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/package.json b/pkgs/instrumentations/instrumentation/package.json similarity index 59% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/package.json rename to pkgs/instrumentations/instrumentation/package.json index 416495282..60002c8c7 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/package.json +++ b/pkgs/instrumentations/instrumentation/package.json @@ -1,5 +1,5 @@ { - "name": "@opentelemetry/instrumentation", + "name": "@opentelemetry/sandbox-instrumentation", "version": "0.39.1", "description": "Base class for node which OpenTelemetry instrumentation modules extend", "author": "OpenTelemetry Authors", @@ -38,25 +38,30 @@ "README.md" ], "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", + "compile": "npm run build", "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", "tdd": "npm run tdd:node", - "tdd:node": "npm run test -- --watch-extensions ts --watch", "tdd:browser": "karma start", + "tdd:node": "npm run test -- --watch-extensions ts --watch", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", "test:cjs": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", "test:esm": "nyc node --experimental-loader=./hook.mjs ../../../node_modules/mocha/bin/mocha 'test/node/*.test.mjs' test/node/*.test.mjs", - "test": "npm run test:cjs && npm run test:esm", - "test:browser": "nyc karma start --single-run", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", "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", - "prewatch": "node ../../../scripts/version-update.js", - "peer-api-check": "node ../../../scripts/peer-api-check.js" + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" }, "keywords": [ "opentelemetry", @@ -78,34 +83,51 @@ "shimmer": "^1.2.1" }, "peerDependencies": { - "@opentelemetry/api": "^1.3.0" + "@opentelemetry/sandbox-api": "1.4.1" }, "devDependencies": { "@babel/core": "7.16.0", - "@opentelemetry/api": "1.4.1", - "@opentelemetry/sdk-metrics": "1.13.0", - "@types/mocha": "10.0.0", - "@types/node": "18.6.5", + "@opentelemetry/sandbox-api": "1.4.1", + "@opentelemetry/sandbox-sdk-metrics": "1.13.0", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", "@types/semver": "7.3.9", - "@types/sinon": "10.0.13", + "@types/sinon": "^10.0.13", "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", "babel-loader": "8.2.3", - "codecov": "3.8.3", + "chromium": "^3.0.3", + "codecov": "^3.8.3", "cpx": "1.5.0", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", "istanbul-instrumenter-loader": "3.0.1", "karma": "6.3.16", "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-webpack": "4.0.2", + "karma-mocha": "^2.0.1", + "karma-mocha-webworker": "1.3.0", + "karma-spec-reporter": "^0.0.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", "webpack-cli": "4.9.1", "webpack-merge": "5.8.0" }, @@ -113,4 +135,4 @@ "node": ">=14" }, "sideEffects": false -} +} \ No newline at end of file diff --git a/pkgs/instrumentations/instrumentation/rollup.config.js b/pkgs/instrumentations/instrumentation/rollup.config.js new file mode 100644 index 000000000..d156c6be8 --- /dev/null +++ b/pkgs/instrumentations/instrumentation/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.instrumentation", inputName, "otel-sndbx.instrumentation", version); diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/autoLoader.ts b/pkgs/instrumentations/instrumentation/src/autoLoader.ts similarity index 95% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/autoLoader.ts rename to pkgs/instrumentations/instrumentation/src/autoLoader.ts index c6a052c6c..857133930 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/autoLoader.ts +++ b/pkgs/instrumentations/instrumentation/src/autoLoader.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { trace, metrics } from '@opentelemetry/api'; +import { trace, metrics } from '@opentelemetry/sandbox-api'; import { disableInstrumentations, enableInstrumentations, diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/autoLoaderUtils.ts b/pkgs/instrumentations/instrumentation/src/autoLoaderUtils.ts similarity index 97% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/autoLoaderUtils.ts rename to pkgs/instrumentations/instrumentation/src/autoLoaderUtils.ts index 3dc192721..25641582e 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/autoLoaderUtils.ts +++ b/pkgs/instrumentations/instrumentation/src/autoLoaderUtils.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { TracerProvider, MeterProvider } from '@opentelemetry/api'; +import { TracerProvider, MeterProvider } from '@opentelemetry/sandbox-api'; import { Instrumentation } from './types'; import { AutoLoaderResult, InstrumentationOption } from './types_internal'; diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/index.ts b/pkgs/instrumentations/instrumentation/src/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/index.ts rename to pkgs/instrumentations/instrumentation/src/index.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/instrumentation.ts b/pkgs/instrumentations/instrumentation/src/instrumentation.ts similarity index 98% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/instrumentation.ts rename to pkgs/instrumentations/instrumentation/src/instrumentation.ts index 4b729fd43..1ba11e819 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/instrumentation.ts +++ b/pkgs/instrumentations/instrumentation/src/instrumentation.ts @@ -23,7 +23,7 @@ import { trace, Tracer, TracerProvider, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import * as shimmer from 'shimmer'; import { InstrumentationModuleDefinition } from './platform/node'; import * as types from './types'; diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/browser/index.ts b/pkgs/instrumentations/instrumentation/src/platform/browser/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/browser/index.ts rename to pkgs/instrumentations/instrumentation/src/platform/browser/index.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/browser/instrumentation.ts b/pkgs/instrumentations/instrumentation/src/platform/browser/instrumentation.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/browser/instrumentation.ts rename to pkgs/instrumentations/instrumentation/src/platform/browser/instrumentation.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/index.ts b/pkgs/instrumentations/instrumentation/src/platform/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/index.ts rename to pkgs/instrumentations/instrumentation/src/platform/index.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/ModuleNameTrie.ts b/pkgs/instrumentations/instrumentation/src/platform/node/ModuleNameTrie.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/ModuleNameTrie.ts rename to pkgs/instrumentations/instrumentation/src/platform/node/ModuleNameTrie.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/RequireInTheMiddleSingleton.ts b/pkgs/instrumentations/instrumentation/src/platform/node/RequireInTheMiddleSingleton.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/RequireInTheMiddleSingleton.ts rename to pkgs/instrumentations/instrumentation/src/platform/node/RequireInTheMiddleSingleton.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/index.ts b/pkgs/instrumentations/instrumentation/src/platform/node/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/index.ts rename to pkgs/instrumentations/instrumentation/src/platform/node/index.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts b/pkgs/instrumentations/instrumentation/src/platform/node/instrumentation.ts similarity index 99% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts rename to pkgs/instrumentations/instrumentation/src/platform/node/instrumentation.ts index 03d8f6ba3..038f709dd 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentation.ts +++ b/pkgs/instrumentations/instrumentation/src/platform/node/instrumentation.ts @@ -27,7 +27,7 @@ import { import type { HookFn } from 'import-in-the-middle'; import * as ImportInTheMiddle from 'import-in-the-middle'; import { InstrumentationModuleDefinition } from './types'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import type { OnRequireFn } from 'require-in-the-middle'; import { Hook } from 'require-in-the-middle'; diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentationNodeModuleDefinition.ts b/pkgs/instrumentations/instrumentation/src/platform/node/instrumentationNodeModuleDefinition.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentationNodeModuleDefinition.ts rename to pkgs/instrumentations/instrumentation/src/platform/node/instrumentationNodeModuleDefinition.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentationNodeModuleFile.ts b/pkgs/instrumentations/instrumentation/src/platform/node/instrumentationNodeModuleFile.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/instrumentationNodeModuleFile.ts rename to pkgs/instrumentations/instrumentation/src/platform/node/instrumentationNodeModuleFile.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/types.ts b/pkgs/instrumentations/instrumentation/src/platform/node/types.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/platform/node/types.ts rename to pkgs/instrumentations/instrumentation/src/platform/node/types.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/types.ts b/pkgs/instrumentations/instrumentation/src/types.ts similarity index 96% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/types.ts rename to pkgs/instrumentations/instrumentation/src/types.ts index 837f09679..99042ae5c 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/types.ts +++ b/pkgs/instrumentations/instrumentation/src/types.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { TracerProvider, MeterProvider } from '@opentelemetry/api'; +import { TracerProvider, MeterProvider } from '@opentelemetry/sandbox-api'; /** Interface Instrumentation to apply patch. */ export interface Instrumentation { diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/types_internal.ts b/pkgs/instrumentations/instrumentation/src/types_internal.ts similarity index 93% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/types_internal.ts rename to pkgs/instrumentations/instrumentation/src/types_internal.ts index 016be0ad3..3bb73a4f3 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/types_internal.ts +++ b/pkgs/instrumentations/instrumentation/src/types_internal.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { TracerProvider, MeterProvider } from '@opentelemetry/api'; +import { TracerProvider, MeterProvider } from '@opentelemetry/sandbox-api'; import { InstrumentationBase } from './platform'; import { Instrumentation } from './types'; diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/utils.ts b/pkgs/instrumentations/instrumentation/src/utils.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/src/utils.ts rename to pkgs/instrumentations/instrumentation/src/utils.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/browser/index-webpack.ts b/pkgs/instrumentations/instrumentation/test/browser/index-webpack.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/browser/index-webpack.ts rename to pkgs/instrumentations/instrumentation/test/browser/index-webpack.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/Instrumentation.test.ts b/pkgs/instrumentations/instrumentation/test/common/Instrumentation.test.ts similarity index 98% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/Instrumentation.test.ts rename to pkgs/instrumentations/instrumentation/test/common/Instrumentation.test.ts index be53d1ca5..7badf7dfe 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/Instrumentation.test.ts +++ b/pkgs/instrumentations/instrumentation/test/common/Instrumentation.test.ts @@ -21,7 +21,7 @@ import { InstrumentationConfig, } from '../../src'; -import { MeterProvider } from '@opentelemetry/sdk-metrics'; +import { MeterProvider } from '@opentelemetry/sandbox-sdk-metrics'; interface TestInstrumentationConfig extends InstrumentationConfig { isActive?: boolean; diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/autoLoader.test.ts b/pkgs/instrumentations/instrumentation/test/common/autoLoader.test.ts similarity index 99% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/autoLoader.test.ts rename to pkgs/instrumentations/instrumentation/test/common/autoLoader.test.ts index aa8c5582a..78ea9f067 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/autoLoader.test.ts +++ b/pkgs/instrumentations/instrumentation/test/common/autoLoader.test.ts @@ -20,7 +20,7 @@ import { Meter, MeterOptions, MeterProvider, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { InstrumentationBase, registerInstrumentations } from '../../src'; diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/autoLoaderUtils.test.ts b/pkgs/instrumentations/instrumentation/test/common/autoLoaderUtils.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/autoLoaderUtils.test.ts rename to pkgs/instrumentations/instrumentation/test/common/autoLoaderUtils.test.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/utils.test.ts b/pkgs/instrumentations/instrumentation/test/common/utils.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/common/utils.test.ts rename to pkgs/instrumentations/instrumentation/test/common/utils.test.ts diff --git a/pkgs/instrumentations/instrumentation/test/index-webpack.worker.ts b/pkgs/instrumentations/instrumentation/test/index-webpack.worker.ts new file mode 100644 index 000000000..a00999ebd --- /dev/null +++ b/pkgs/instrumentations/instrumentation/test/index-webpack.worker.ts @@ -0,0 +1,20 @@ +/*! + * 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 + * + * 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. +*/ + +{ + const testsContext = require.context('./common', false, /test$/); + testsContext.keys().forEach(testsContext); +} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs b/pkgs/instrumentations/instrumentation/test/node/EsmInstrumentation.test.mjs similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/EsmInstrumentation.test.mjs rename to pkgs/instrumentations/instrumentation/test/node/EsmInstrumentation.test.mjs diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/InstrumentationBase.test.ts b/pkgs/instrumentations/instrumentation/test/node/InstrumentationBase.test.ts similarity index 98% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/InstrumentationBase.test.ts rename to pkgs/instrumentations/instrumentation/test/node/InstrumentationBase.test.ts index b9597c65d..8bc82f893 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/InstrumentationBase.test.ts +++ b/pkgs/instrumentations/instrumentation/test/node/InstrumentationBase.test.ts @@ -295,7 +295,7 @@ describe('InstrumentationBase', () => { const moduleName = 'net'; class TestInstrumentation extends InstrumentationBase { constructor() { - super('@opentelemetry/instrumentation-net-test', '0.0.0', { + super('@opentelemetry/sandbox-instrumentation-net-test', '0.0.0', { enabled: false, }); } @@ -337,7 +337,7 @@ describe('InstrumentationBase', () => { const fileName = path.join(__dirname, 'fixtures', `${moduleName}.js`); class TestInstrumentation extends InstrumentationBase { constructor() { - super('@opentelemetry/instrumentation-absolute-path-test', '0.0.0', { + super('@opentelemetry/sandbox-instrumentation-absolute-path-test', '0.0.0', { enabled: false, }); } diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/InstrumentationNodeModuleFile.test.ts b/pkgs/instrumentations/instrumentation/test/node/InstrumentationNodeModuleFile.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/InstrumentationNodeModuleFile.test.ts rename to pkgs/instrumentations/instrumentation/test/node/InstrumentationNodeModuleFile.test.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/ModuleNameTrie.test.ts b/pkgs/instrumentations/instrumentation/test/node/ModuleNameTrie.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/ModuleNameTrie.test.ts rename to pkgs/instrumentations/instrumentation/test/node/ModuleNameTrie.test.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/RequireInTheMiddleSingleton.test.ts b/pkgs/instrumentations/instrumentation/test/node/RequireInTheMiddleSingleton.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/RequireInTheMiddleSingleton.test.ts rename to pkgs/instrumentations/instrumentation/test/node/RequireInTheMiddleSingleton.test.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/fixtures/absolutePathTestFixture.js b/pkgs/instrumentations/instrumentation/test/node/fixtures/absolutePathTestFixture.js similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/fixtures/absolutePathTestFixture.js rename to pkgs/instrumentations/instrumentation/test/node/fixtures/absolutePathTestFixture.js diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/.gitkeep b/pkgs/instrumentations/instrumentation/test/node/node_modules/.gitkeep similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/.gitkeep rename to pkgs/instrumentations/instrumentation/test/node/node_modules/.gitkeep diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/package.json b/pkgs/instrumentations/instrumentation/test/node/node_modules/test-esm-module/package.json similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/package.json rename to pkgs/instrumentations/instrumentation/test/node/node_modules/test-esm-module/package.json diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/src/index.js b/pkgs/instrumentations/instrumentation/test/node/node_modules/test-esm-module/src/index.js similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/test/node/node_modules/test-esm-module/src/index.js rename to pkgs/instrumentations/instrumentation/test/node/node_modules/test-esm-module/src/index.js diff --git a/pkgs/instrumentations/instrumentation/tsconfig.esm.json b/pkgs/instrumentations/instrumentation/tsconfig.esm.json new file mode 100644 index 000000000..d0d0ce24d --- /dev/null +++ b/pkgs/instrumentations/instrumentation/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/instrumentations/instrumentation/tsconfig.esnext.json b/pkgs/instrumentations/instrumentation/tsconfig.esnext.json new file mode 100644 index 000000000..8e1d797d3 --- /dev/null +++ b/pkgs/instrumentations/instrumentation/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/api-logs/tsconfig.json b/pkgs/instrumentations/instrumentation/tsconfig.json similarity index 74% rename from auto-merge/js/experimental/packages/api-logs/tsconfig.json rename to pkgs/instrumentations/instrumentation/tsconfig.json index 5849e79c0..e4729001d 100644 --- a/auto-merge/js/experimental/packages/api-logs/tsconfig.json +++ b/pkgs/instrumentations/instrumentation/tsconfig.json @@ -8,10 +8,5 @@ "include": [ "src/**/*.ts", "test/**/*.ts" - ], - "references": [ - { - "path": "../../../api" - } ] -} +} \ No newline at end of file diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/.eslintignore b/pkgs/instrumentations/web/auto/.eslintignore similarity index 100% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/.eslintignore rename to pkgs/instrumentations/web/auto/.eslintignore diff --git a/pkgs/instrumentations/web/auto/.eslintrc.js b/pkgs/instrumentations/web/auto/.eslintrc.js new file mode 100644 index 000000000..189f3645f --- /dev/null +++ b/pkgs/instrumentations/web/auto/.eslintrc.js @@ -0,0 +1,8 @@ +module.exports = { + "env": { + "commonjs": true, + "node": true, + "mocha": true, + }, + ...require('../../../../eslint.config.js') +} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/.npmignore b/pkgs/instrumentations/web/auto/.npmignore similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/.npmignore rename to pkgs/instrumentations/web/auto/.npmignore diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/CHANGELOG.md b/pkgs/instrumentations/web/auto/CHANGELOG.md similarity index 100% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/CHANGELOG.md rename to pkgs/instrumentations/web/auto/CHANGELOG.md diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/LICENSE b/pkgs/instrumentations/web/auto/LICENSE similarity index 100% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/LICENSE rename to pkgs/instrumentations/web/auto/LICENSE diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/README.md b/pkgs/instrumentations/web/auto/README.md similarity index 76% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/README.md rename to pkgs/instrumentations/web/auto/README.md index 864e03170..9a87e66d3 100644 --- a/auto-merge/contrib/metapackages/auto-instrumentations-web/README.md +++ b/pkgs/instrumentations/web/auto/README.md @@ -14,13 +14,13 @@ npm install --save @opentelemetry/auto-instrumentations-web ## Usage ```javascript -const { WebTracerProvider } = require('@opentelemetry/sdk-trace-web'); -const { getWebAutoInstrumentations } = require('@opentelemetry/auto-instrumentations-web'); -const { CollectorTraceExporter } = require('@opentelemetry/exporter-collector'); -const { SimpleSpanProcessor } = require('@opentelemetry/sdk-trace-base'); -const { registerInstrumentations } = require('@opentelemetry/instrumentation'); -const { ZoneContextManager } = require('@opentelemetry/context-zone'); -const { B3Propagator } = require('@opentelemetry/propagator-b3'); +const { WebTracerProvider } = require('@opentelemetry/sandbox-sdk-trace-web'); +const { getWebAutoInstrumentations } = require('@opentelemetry/sandbox-auto-instrumentations-web'); +const { CollectorTraceExporter } = require('@opentelemetry/sandbox-exporter-collector'); +const { SimpleSpanProcessor } = require('@opentelemetry/sandbox-sdk-trace-base'); +const { registerInstrumentations } = require('@opentelemetry/sandbox-instrumentation'); +const { ZoneContextManager } = require('@opentelemetry/sandbox-context-zone'); +const { B3Propagator } = require('@opentelemetry/sandbox-propagator-b3'); const exporter = new CollectorTraceExporter({ serviceName: 'auto-instrumentations-web', @@ -37,7 +37,7 @@ registerInstrumentations({ instrumentations: [ getWebAutoInstrumentations({ // load custom configuration for xml-http-request instrumentation - '@opentelemetry/instrumentation-xml-http-request': { + '@opentelemetry/sandbox-instrumentation-xml-http-request': { clearTimingResources: true, }, }), diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/karma.conf.js b/pkgs/instrumentations/web/auto/karma.conf.js similarity index 85% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/karma.conf.js rename to pkgs/instrumentations/web/auto/karma.conf.js index 5e6d4aae4..e95dc6c1b 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/karma.conf.js +++ b/pkgs/instrumentations/web/auto/karma.conf.js @@ -14,8 +14,8 @@ * limitations under the License. */ -const karmaWebpackConfig = require('../../../karma.webpack'); -const karmaBaseConfig = require('../../../karma.base'); +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.base'); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { diff --git a/pkgs/instrumentations/web/auto/karma.debug.conf.js b/pkgs/instrumentations/web/auto/karma.debug.conf.js new file mode 100644 index 000000000..02f69db6b --- /dev/null +++ b/pkgs/instrumentations/web/auto/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/instrumentations/web/auto/package.json b/pkgs/instrumentations/web/auto/package.json new file mode 100644 index 000000000..16ed7a597 --- /dev/null +++ b/pkgs/instrumentations/web/auto/package.json @@ -0,0 +1,92 @@ +{ + "name": "@opentelemetry/sandbox-auto-instrumentations-web", + "version": "0.32.2", + "description": "Metapackage which bundles opentelemetry node core and contrib instrumentations", + "author": "OpenTelemetry Authors", + "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/metapackages/auto-instrumentations-web#readme", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "publishConfig": { + "access": "public" + }, + "main": "build/src/index.js", + "module": "build/esm/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js-contrib", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "prepare": "npm run compile", + "rebuild": "npm run build", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "", + "test:webworker": "", + "version": "node ../../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json" + }, + "bugs": { + "url": "https://github.com/open-telemetry/opentelemetry-js-contrib/issues" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "devDependencies": { + "@babel/core": "7.15.0", + "@jsdevtools/coverage-istanbul-loader": "3.0.5", + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "8.2.2", + "chromium": "^3.0.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", + "webpack-cli": "4.7.2", + "webpack-merge": "5.8.0" + }, + "dependencies": { + "@opentelemetry/sandbox-instrumentation": "0.39.1", + "@opentelemetry/sandbox-instrumentation-document-load": "0.32.2", + "@opentelemetry/sandbox-instrumentation-fetch": "0.39.1", + "@opentelemetry/sandbox-instrumentation-user-interaction": "0.32.3", + "@opentelemetry/sandbox-instrumentation-xml-http-request": "0.39.1" + } +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/auto/rollup.config.js b/pkgs/instrumentations/web/auto/rollup.config.js new file mode 100644 index 000000000..dfbb176ff --- /dev/null +++ b/pkgs/instrumentations/web/auto/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.instr.web.auto", inputName, "otel-sndbx.instr-auto", version); diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/src/index.ts b/pkgs/instrumentations/web/auto/src/index.ts similarity index 100% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/src/index.ts rename to pkgs/instrumentations/web/auto/src/index.ts diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/src/utils.ts b/pkgs/instrumentations/web/auto/src/utils.ts similarity index 72% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/src/utils.ts rename to pkgs/instrumentations/web/auto/src/utils.ts index 1127c0f1f..59ed652c4 100644 --- a/auto-merge/contrib/metapackages/auto-instrumentations-web/src/utils.ts +++ b/pkgs/instrumentations/web/auto/src/utils.ts @@ -14,22 +14,22 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import { Instrumentation, InstrumentationConfig, -} from '@opentelemetry/instrumentation'; -import { DocumentLoadInstrumentation } from '@opentelemetry/instrumentation-document-load'; -import { FetchInstrumentation } from '@opentelemetry/instrumentation-fetch'; -import { UserInteractionInstrumentation } from '@opentelemetry/instrumentation-user-interaction'; -import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request'; +} from '@opentelemetry/sandbox-instrumentation'; +import { DocumentLoadInstrumentation } from '@opentelemetry/sandbox-instrumentation-document-load'; +import { FetchInstrumentation } from '@opentelemetry/sandbox-instrumentation-fetch'; +import { UserInteractionInstrumentation } from '@opentelemetry/sandbox-instrumentation-user-interaction'; +import { XMLHttpRequestInstrumentation } from '@opentelemetry/sandbox-instrumentation-xml-http-request'; const InstrumentationMap = { - '@opentelemetry/instrumentation-document-load': DocumentLoadInstrumentation, - '@opentelemetry/instrumentation-fetch': FetchInstrumentation, - '@opentelemetry/instrumentation-user-interaction': + '@opentelemetry/sandbox-instrumentation-document-load': DocumentLoadInstrumentation, + '@opentelemetry/sandbox-instrumentation-fetch': FetchInstrumentation, + '@opentelemetry/sandbox-instrumentation-user-interaction': UserInteractionInstrumentation, - '@opentelemetry/instrumentation-xml-http-request': + '@opentelemetry/sandbox-instrumentation-xml-http-request': XMLHttpRequestInstrumentation, }; diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/index-webpack.ts b/pkgs/instrumentations/web/auto/test/index-webpack.ts similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/index-webpack.ts rename to pkgs/instrumentations/web/auto/test/index-webpack.ts diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/test/utils.test.ts b/pkgs/instrumentations/web/auto/test/utils.test.ts similarity index 80% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/test/utils.test.ts rename to pkgs/instrumentations/web/auto/test/utils.test.ts index 442ed166b..b14ab5dc5 100644 --- a/auto-merge/contrib/metapackages/auto-instrumentations-web/test/utils.test.ts +++ b/pkgs/instrumentations/web/auto/test/utils.test.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; -import { XMLHttpRequestInstrumentationConfig } from '@opentelemetry/instrumentation-xml-http-request'; +import { diag } from '@opentelemetry/sandbox-api'; +import { XMLHttpRequestInstrumentationConfig } from '@opentelemetry/sandbox-instrumentation-xml-http-request'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { getWebAutoInstrumentations } from '../src'; @@ -25,10 +25,10 @@ describe('utils', () => { it('should load default instrumentations', () => { const instrumentations = getWebAutoInstrumentations(); const expectedInstrumentations = [ - '@opentelemetry/instrumentation-document-load', - '@opentelemetry/instrumentation-fetch', - '@opentelemetry/instrumentation-user-interaction', - '@opentelemetry/instrumentation-xml-http-request', + '@opentelemetry/sandbox-instrumentation-document-load', + '@opentelemetry/sandbox-instrumentation-fetch', + '@opentelemetry/sandbox-instrumentation-user-interaction', + '@opentelemetry/sandbox-instrumentation-xml-http-request', ]; assert.strictEqual(instrumentations.length, 4); for (let i = 0, j = instrumentations.length; i < j; i++) { @@ -44,14 +44,14 @@ describe('utils', () => { const clearTimingResources = true; const instrumentations = getWebAutoInstrumentations({ - '@opentelemetry/instrumentation-xml-http-request': { + '@opentelemetry/sandbox-instrumentation-xml-http-request': { clearTimingResources, }, }); const instrumentation = instrumentations.find( instr => instr.instrumentationName === - '@opentelemetry/instrumentation-xml-http-request' + '@opentelemetry/sandbox-instrumentation-xml-http-request' ) as any; const config = instrumentation._config as XMLHttpRequestInstrumentationConfig; @@ -61,21 +61,21 @@ describe('utils', () => { it('should not return disabled instrumentation', () => { const instrumentations = getWebAutoInstrumentations({ - '@opentelemetry/instrumentation-xml-http-request': { + '@opentelemetry/sandbox-instrumentation-xml-http-request': { enabled: false, }, }); const instrumentation = instrumentations.find( instr => instr.instrumentationName === - '@opentelemetry/instrumentation-xml-http-request' + '@opentelemetry/sandbox-instrumentation-xml-http-request' ); assert.strictEqual(instrumentation, undefined); }); it('should show error for none existing instrumentation', () => { const spy = sinon.stub(diag, 'error'); - const name = '@opentelemetry/instrumentation-http2'; + const name = '@opentelemetry/sandbox-instrumentation-http2'; const instrumentations = getWebAutoInstrumentations({ // @ts-expect-error verify that wrong name works [name]: { diff --git a/pkgs/instrumentations/web/auto/tsconfig.esm.json b/pkgs/instrumentations/web/auto/tsconfig.esm.json new file mode 100644 index 000000000..730d211e4 --- /dev/null +++ b/pkgs/instrumentations/web/auto/tsconfig.esm.json @@ -0,0 +1,12 @@ +{ + "extends": "../../../../tsconfig.base.esm.json", + "compilerOptions": { + "rootDir": "src", + "outDir": "build/esm", + "skipLibCheck": true, + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/tsconfig.json b/pkgs/instrumentations/web/auto/tsconfig.json similarity index 78% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/tsconfig.json rename to pkgs/instrumentations/web/auto/tsconfig.json index e1baf4c16..f9639dbdd 100644 --- a/auto-merge/contrib/metapackages/auto-instrumentations-web/tsconfig.json +++ b/pkgs/instrumentations/web/auto/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.base", + "extends": "../../../../tsconfig.base", "compilerOptions": { "rootDir": ".", "outDir": "build", diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/.eslintignore b/pkgs/instrumentations/web/document-load/.eslintignore similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/.eslintignore rename to pkgs/instrumentations/web/document-load/.eslintignore diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/.eslintrc.js b/pkgs/instrumentations/web/document-load/.eslintrc.js similarity index 74% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/.eslintrc.js rename to pkgs/instrumentations/web/document-load/.eslintrc.js index 6ad6c9f21..2d08666a8 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/.eslintrc.js +++ b/pkgs/instrumentations/web/document-load/.eslintrc.js @@ -5,5 +5,5 @@ module.exports = { "browser": true, "jquery": true }, - ...require('../../../eslint.config.js') + ...require('../../../../eslint.config.js') } diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md b/pkgs/instrumentations/web/document-load/CHANGELOG.md similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md rename to pkgs/instrumentations/web/document-load/CHANGELOG.md diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/LICENSE b/pkgs/instrumentations/web/document-load/LICENSE similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/LICENSE rename to pkgs/instrumentations/web/document-load/LICENSE diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/README.md b/pkgs/instrumentations/web/document-load/README.md similarity index 90% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/README.md rename to pkgs/instrumentations/web/document-load/README.md index ec6595c57..c2f518f55 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/README.md +++ b/pkgs/instrumentations/web/document-load/README.md @@ -18,13 +18,13 @@ npm install --save @opentelemetry/instrumentation-document-load ## Usage ```js -import { ConsoleSpanExporter, SimpleSpanProcessor } from '@opentelemetry/sdk-trace-base'; -import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; -import { DocumentLoadInstrumentation } from '@opentelemetry/instrumentation-document-load'; -import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; -import { B3Propagator } from '@opentelemetry/propagator-b3'; -import { CompositePropagator, W3CTraceContextPropagator } from '@opentelemetry/core'; +import { ConsoleSpanExporter, SimpleSpanProcessor } from '@opentelemetry/sandbox-sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sandbox-sdk-trace-web'; +import { DocumentLoadInstrumentation } from '@opentelemetry/sandbox-instrumentation-document-load'; +import { XMLHttpRequestInstrumentation } from '@opentelemetry/sandbox-instrumentation-xml-http-request'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; +import { B3Propagator } from '@opentelemetry/sandbox-propagator-b3'; +import { CompositePropagator, W3CTraceContextPropagator } from '@opentelemetry/sandbox-core'; const provider = new WebTracerProvider(); diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/karma.conf.js b/pkgs/instrumentations/web/document-load/karma.conf.js similarity index 85% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/karma.conf.js rename to pkgs/instrumentations/web/document-load/karma.conf.js index 6174839d6..85d2051a4 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/karma.conf.js +++ b/pkgs/instrumentations/web/document-load/karma.conf.js @@ -14,8 +14,8 @@ * limitations under the License. */ -const karmaWebpackConfig = require('../../../karma.webpack'); -const karmaBaseConfig = require('../../../karma.base'); +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.base'); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { diff --git a/pkgs/instrumentations/web/document-load/karma.debug.conf.js b/pkgs/instrumentations/web/document-load/karma.debug.conf.js new file mode 100644 index 000000000..02f69db6b --- /dev/null +++ b/pkgs/instrumentations/web/document-load/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/instrumentations/web/document-load/package.json b/pkgs/instrumentations/web/document-load/package.json new file mode 100644 index 000000000..d6b98f655 --- /dev/null +++ b/pkgs/instrumentations/web/document-load/package.json @@ -0,0 +1,110 @@ +{ + "name": "@opentelemetry/sandbox-instrumentation-document-load", + "version": "0.32.2", + "description": "OpenTelemetry document-load automatic instrumentation package.", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js-contrib", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "prepare": "npm run compile", + "rebuild": "npm run build", + "tdd": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "", + "test:webworker": "", + "version": "node ../../../../scripts/version-update.js", + "version:update": "node ../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json" + }, + "keywords": [ + "opentelemetry", + "document-load", + "web", + "tracing", + "profiling", + "plugin" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.map", + "build/esm/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "devDependencies": { + "@babel/core": "7.15.0", + "@jsdevtools/coverage-istanbul-loader": "3.0.5", + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "8.2.2", + "chromium": "^3.0.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", + "webpack-cli": "4.7.2", + "webpack-merge": "5.8.0" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-instrumentation": "0.39.1", + "@opentelemetry/sandbox-sdk-trace-base": "1.13.0", + "@opentelemetry/sandbox-sdk-trace-web": "1.13.0", + "@opentelemetry/sandbox-semantic-conventions": "1.13.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/web/opentelemetry-instrumentation-document-load#readme" +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/document-load/rollup.config.js b/pkgs/instrumentations/web/document-load/rollup.config.js new file mode 100644 index 000000000..1819b5b35 --- /dev/null +++ b/pkgs/instrumentations/web/document-load/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.instr.web.instrumentation-document-load", inputName, "otel-sndbx.instr-doc-load", version); diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/enums/AttributeNames.ts b/pkgs/instrumentations/web/document-load/src/enums/AttributeNames.ts similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/enums/AttributeNames.ts rename to pkgs/instrumentations/web/document-load/src/enums/AttributeNames.ts diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/enums/EventNames.ts b/pkgs/instrumentations/web/document-load/src/enums/EventNames.ts similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/enums/EventNames.ts rename to pkgs/instrumentations/web/document-load/src/enums/EventNames.ts diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/index.ts b/pkgs/instrumentations/web/document-load/src/index.ts similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/index.ts rename to pkgs/instrumentations/web/document-load/src/index.ts diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/instrumentation.ts b/pkgs/instrumentations/web/document-load/src/instrumentation.ts similarity index 96% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/instrumentation.ts rename to pkgs/instrumentations/web/document-load/src/instrumentation.ts index a13f3845b..c1a5b6349 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/instrumentation.ts +++ b/pkgs/instrumentations/web/document-load/src/instrumentation.ts @@ -20,26 +20,26 @@ import { trace, Span, ROOT_CONTEXT, -} from '@opentelemetry/api'; -import { otperformance, TRACE_PARENT_HEADER } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { otperformance, TRACE_PARENT_HEADER } from '@opentelemetry/sandbox-core'; import { addSpanNetworkEvent, addSpanNetworkEvents, hasKey, PerformanceEntries, PerformanceTimingNames as PTN, -} from '@opentelemetry/sdk-trace-web'; +} from '@opentelemetry/sandbox-sdk-trace-web'; import { InstrumentationBase, safeExecuteInTheMiddle, -} from '@opentelemetry/instrumentation'; +} from '@opentelemetry/sandbox-instrumentation'; import { DocumentLoadCustomAttributeFunction, DocumentLoadInstrumentationConfig, } from './types'; import { AttributeNames } from './enums/AttributeNames'; import { VERSION } from './version'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { addSpanPerformancePaintEvents, getPerformanceNavigationEntries, @@ -58,7 +58,7 @@ export class DocumentLoadInstrumentation extends InstrumentationBase { * @param config */ constructor(config: DocumentLoadInstrumentationConfig = {}) { - super('@opentelemetry/instrumentation-document-load', VERSION, config); + super('@opentelemetry/sandbox-instrumentation-document-load', VERSION, config); } init() {} diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/types.ts b/pkgs/instrumentations/web/document-load/src/types.ts similarity index 89% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/types.ts rename to pkgs/instrumentations/web/document-load/src/types.ts index 0d96d5339..bad1525fd 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/types.ts +++ b/pkgs/instrumentations/web/document-load/src/types.ts @@ -13,8 +13,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { Span } from '@opentelemetry/api'; -import { InstrumentationConfig } from '@opentelemetry/instrumentation'; +import { Span } from '@opentelemetry/sandbox-api'; +import { InstrumentationConfig } from '@opentelemetry/sandbox-instrumentation'; export interface DocumentLoadCustomAttributeFunction { (span: Span): void; diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/utils.ts b/pkgs/instrumentations/web/document-load/src/utils.ts similarity index 93% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/utils.ts rename to pkgs/instrumentations/web/document-load/src/utils.ts index 17de90209..a919618dd 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/src/utils.ts +++ b/pkgs/instrumentations/web/document-load/src/utils.ts @@ -14,14 +14,14 @@ * limitations under the License. */ -import { Span } from '@opentelemetry/api'; -import { otperformance } from '@opentelemetry/core'; +import { Span } from '@opentelemetry/sandbox-api'; +import { otperformance } from '@opentelemetry/sandbox-core'; import { hasKey, PerformanceEntries, PerformanceLegacy, PerformanceTimingNames as PTN, -} from '@opentelemetry/sdk-trace-web'; +} from '@opentelemetry/sandbox-sdk-trace-web'; import { EventNames } from './enums/EventNames'; export const getPerformanceNavigationEntries = (): PerformanceEntries => { diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/test/documentLoad.test.ts b/pkgs/instrumentations/web/document-load/test/documentLoad.test.ts similarity index 98% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/test/documentLoad.test.ts rename to pkgs/instrumentations/web/document-load/test/documentLoad.test.ts index 2545ce3b0..fac60a789 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/test/documentLoad.test.ts +++ b/pkgs/instrumentations/web/document-load/test/documentLoad.test.ts @@ -19,26 +19,26 @@ import { HrTime, propagation, SpanAttributes, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { W3CTraceContextPropagator, TRACE_PARENT_HEADER, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import { BasicTracerProvider, InMemorySpanExporter, ReadableSpan, SimpleSpanProcessor, -} from '@opentelemetry/sdk-trace-base'; +} from '@opentelemetry/sandbox-sdk-trace-base'; import { PerformanceTimingNames as PTN, StackContextManager, -} from '@opentelemetry/sdk-trace-web'; +} from '@opentelemetry/sandbox-sdk-trace-web'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { DocumentLoadInstrumentation } from '../src'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { EventNames } from '../src/enums/EventNames'; const exporter = new InMemorySpanExporter(); diff --git a/auto-merge/js/experimental/packages/api-events/test/index-webpack.ts b/pkgs/instrumentations/web/document-load/test/index-webpack.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-events/test/index-webpack.ts rename to pkgs/instrumentations/web/document-load/test/index-webpack.ts diff --git a/auto-merge/js/api/tsconfig.esm.json b/pkgs/instrumentations/web/document-load/tsconfig.esm.json similarity index 72% rename from auto-merge/js/api/tsconfig.esm.json rename to pkgs/instrumentations/web/document-load/tsconfig.esm.json index 0817b3dec..b7c835730 100644 --- a/auto-merge/js/api/tsconfig.esm.json +++ b/pkgs/instrumentations/web/document-load/tsconfig.esm.json @@ -1,12 +1,11 @@ { - "extends": "../tsconfig.base.esm.json", + "extends": "../../../../tsconfig.base.esm.json", "compilerOptions": { - "outDir": "build/esm", "rootDir": "src", + "outDir": "build/esm", "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" }, "include": [ "src/**/*.ts" - ], - "references": [] + ] } diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/tsconfig.json b/pkgs/instrumentations/web/document-load/tsconfig.json similarity index 75% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/tsconfig.json rename to pkgs/instrumentations/web/document-load/tsconfig.json index 28be80d26..e8a10f9fd 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/tsconfig.json +++ b/pkgs/instrumentations/web/document-load/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../../tsconfig.base", + "extends": "../../../../tsconfig.base", "compilerOptions": { "rootDir": ".", "outDir": "build" diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/.eslintignore b/pkgs/instrumentations/web/fetch/.eslintignore similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/.eslintignore rename to pkgs/instrumentations/web/fetch/.eslintignore diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/.eslintrc.js b/pkgs/instrumentations/web/fetch/.eslintrc.js similarity index 74% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/.eslintrc.js rename to pkgs/instrumentations/web/fetch/.eslintrc.js index 9dfe62f9b..a56ddd7a7 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/.eslintrc.js +++ b/pkgs/instrumentations/web/fetch/.eslintrc.js @@ -5,5 +5,5 @@ module.exports = { "node": true, "browser": true }, - ...require('../../eslint.config.js') + ...require('../../../../eslint.config.js') } diff --git a/auto-merge/js/experimental/packages/otlp-exporter-base/.npmignore b/pkgs/instrumentations/web/fetch/.npmignore similarity index 100% rename from auto-merge/js/experimental/packages/otlp-exporter-base/.npmignore rename to pkgs/instrumentations/web/fetch/.npmignore diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/LICENSE b/pkgs/instrumentations/web/fetch/LICENSE similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/LICENSE rename to pkgs/instrumentations/web/fetch/LICENSE diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/README.md b/pkgs/instrumentations/web/fetch/README.md similarity index 92% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/README.md rename to pkgs/instrumentations/web/fetch/README.md index 2b5336be0..3e321fd4c 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/README.md +++ b/pkgs/instrumentations/web/fetch/README.md @@ -20,10 +20,10 @@ import { ConsoleSpanExporter, SimpleSpanProcessor, WebTracerProvider, -} from '@opentelemetry/sdk-trace-web'; -import { FetchInstrumentation } from '@opentelemetry/instrumentation-fetch'; -import { ZoneContextManager } from '@opentelemetry/context-zone'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; +} from '@opentelemetry/sandbox-sdk-trace-web'; +import { FetchInstrumentation } from '@opentelemetry/sandbox-instrumentation-fetch'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; const provider = new WebTracerProvider(); diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/images/trace1.png b/pkgs/instrumentations/web/fetch/images/trace1.png similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/images/trace1.png rename to pkgs/instrumentations/web/fetch/images/trace1.png diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/images/trace2.png b/pkgs/instrumentations/web/fetch/images/trace2.png similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/images/trace2.png rename to pkgs/instrumentations/web/fetch/images/trace2.png diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/images/trace3.png b/pkgs/instrumentations/web/fetch/images/trace3.png similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/images/trace3.png rename to pkgs/instrumentations/web/fetch/images/trace3.png diff --git a/auto-merge/contrib/metapackages/auto-instrumentations-web/karma.conf.js b/pkgs/instrumentations/web/fetch/karma.conf.js similarity index 85% rename from auto-merge/contrib/metapackages/auto-instrumentations-web/karma.conf.js rename to pkgs/instrumentations/web/fetch/karma.conf.js index edcd9f055..e95dc6c1b 100644 --- a/auto-merge/contrib/metapackages/auto-instrumentations-web/karma.conf.js +++ b/pkgs/instrumentations/web/fetch/karma.conf.js @@ -14,8 +14,8 @@ * limitations under the License. */ -const karmaWebpackConfig = require('../../karma.webpack'); -const karmaBaseConfig = require('../../karma.base'); +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.base'); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { diff --git a/pkgs/instrumentations/web/fetch/karma.debug.conf.js b/pkgs/instrumentations/web/fetch/karma.debug.conf.js new file mode 100644 index 000000000..02f69db6b --- /dev/null +++ b/pkgs/instrumentations/web/fetch/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/instrumentations/web/fetch/karma.webpack.js b/pkgs/instrumentations/web/fetch/karma.webpack.js new file mode 100644 index 000000000..347cb8e58 --- /dev/null +++ b/pkgs/instrumentations/web/fetch/karma.webpack.js @@ -0,0 +1,42 @@ +/*! + * 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 + * + * 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. +*/ + +const webpackNodePolyfills = require("../../../../webpack.node-polyfills.js"); + +module.exports = { + mode: "development", + target: "web", + output: { filename: "bundle.js" }, + resolve: { extensions: [".ts", ".js"] }, + devtool: "inline-source-map", + module: { + rules: [ + { test: /.ts$/, use: "ts-loader" }, + { + enforce: "post", + exclude: /(node_modules|.test.[tj]sx?$)/, + test: /.ts$/, + use: { + loader: "istanbul-instrumenter-loader", + options: { esModules: true } + } + }, + // This setting configures Node polyfills for the browser that will be + // added to the webpack bundle for Karma tests. + { parser: { node: webpackNodePolyfills } } + ] + } +}; diff --git a/pkgs/instrumentations/web/fetch/karma.worker.js b/pkgs/instrumentations/web/fetch/karma.worker.js new file mode 100644 index 000000000..adf99bbef --- /dev/null +++ b/pkgs/instrumentations/web/fetch/karma.worker.js @@ -0,0 +1,24 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.worker'); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + webpack: karmaWebpackConfig, + })) +}; diff --git a/pkgs/instrumentations/web/fetch/package.json b/pkgs/instrumentations/web/fetch/package.json new file mode 100644 index 000000000..542769d0a --- /dev/null +++ b/pkgs/instrumentations/web/fetch/package.json @@ -0,0 +1,119 @@ +{ + "name": "@opentelemetry/sandbox-instrumentation-fetch", + "version": "0.39.1", + "description": "OpenTelemetry fetch automatic instrumentation package.", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "", + "test:webworker": "", + "version": "node ../../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "fetch", + "opentelemetry", + "browser", + "tracing", + "profiling", + "metrics", + "stats" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@babel/core": "7.16.0", + "@opentelemetry/sandbox-api": "1.4.1", + "@opentelemetry/sandbox-context-zone": "1.13.0", + "@opentelemetry/sandbox-propagator-b3": "1.13.0", + "@opentelemetry/sandbox-sdk-trace-base": "1.13.0", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "8.2.3", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", + "webpack-cli": "4.9.1", + "webpack-merge": "5.8.0" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-instrumentation": "0.39.1", + "@opentelemetry/sandbox-sdk-trace-web": "1.13.0", + "@opentelemetry/sandbox-semantic-conventions": "1.13.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-fetch", + "sideEffects": false +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/fetch/rollup.config.js b/pkgs/instrumentations/web/fetch/rollup.config.js new file mode 100644 index 000000000..e7eebc632 --- /dev/null +++ b/pkgs/instrumentations/web/fetch/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.instr.web.fetch", inputName, "otel-sndbx.instr.fetch", version); diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/enums/AttributeNames.ts b/pkgs/instrumentations/web/fetch/src/enums/AttributeNames.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/enums/AttributeNames.ts rename to pkgs/instrumentations/web/fetch/src/enums/AttributeNames.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/fetch.ts b/pkgs/instrumentations/web/fetch/src/fetch.ts similarity index 97% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/fetch.ts rename to pkgs/instrumentations/web/fetch/src/fetch.ts index d02269c44..22b19b665 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/fetch.ts +++ b/pkgs/instrumentations/web/fetch/src/fetch.ts @@ -14,20 +14,20 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { isWrapped, InstrumentationBase, InstrumentationConfig, safeExecuteInTheMiddle, -} from '@opentelemetry/instrumentation'; -import * as core from '@opentelemetry/core'; -import * as web from '@opentelemetry/sdk-trace-web'; +} from '@opentelemetry/sandbox-instrumentation'; +import * as core from '@opentelemetry/sandbox-core'; +import * as web from '@opentelemetry/sandbox-sdk-trace-web'; import { AttributeNames } from './enums/AttributeNames'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { FetchError, FetchResponse, SpanData } from './types'; import { VERSION } from './version'; -import { _globalThis } from '@opentelemetry/core'; +import { _globalThis } from '@opentelemetry/sandbox-core'; // how long to wait for observer to collect information about resources // this is needed as event "load" is called before observer @@ -80,7 +80,7 @@ export class FetchInstrumentation extends InstrumentationBase< private _tasksCount = 0; constructor(config?: FetchInstrumentationConfig) { - super('@opentelemetry/instrumentation-fetch', VERSION, config); + super('@opentelemetry/sandbox-instrumentation-fetch', VERSION, config); } init(): void {} diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/index.ts b/pkgs/instrumentations/web/fetch/src/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/index.ts rename to pkgs/instrumentations/web/fetch/src/index.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/types.ts b/pkgs/instrumentations/web/fetch/src/types.ts similarity index 95% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/types.ts rename to pkgs/instrumentations/web/fetch/src/types.ts index 7f2e5c6d7..63a38373b 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/src/types.ts +++ b/pkgs/instrumentations/web/fetch/src/types.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; /** * Interface used to provide information to finish span on fetch response diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts b/pkgs/instrumentations/web/fetch/test/fetch.test.ts similarity index 98% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts rename to pkgs/instrumentations/web/fetch/test/fetch.test.ts index 318e0f98c..8bcf5daef 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/test/fetch.test.ts +++ b/pkgs/instrumentations/web/fetch/test/fetch.test.ts @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import * as api from '@opentelemetry/api'; -import * as core from '@opentelemetry/core'; +import * as api from '@opentelemetry/sandbox-api'; +import * as core from '@opentelemetry/sandbox-core'; import { isWrapped, registerInstrumentations, -} from '@opentelemetry/instrumentation'; +} from '@opentelemetry/sandbox-instrumentation'; import { B3Propagator, @@ -26,13 +26,13 @@ import { X_B3_TRACE_ID, X_B3_SPAN_ID, X_B3_SAMPLED, -} from '@opentelemetry/propagator-b3'; -import { ZoneContextManager } from '@opentelemetry/context-zone'; -import * as tracing from '@opentelemetry/sdk-trace-base'; +} from '@opentelemetry/sandbox-propagator-b3'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone'; +import * as tracing from '@opentelemetry/sandbox-sdk-trace-base'; import { PerformanceTimingNames as PTN, WebTracerProvider, -} from '@opentelemetry/sdk-trace-web'; +} from '@opentelemetry/sandbox-sdk-trace-web'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { @@ -41,7 +41,7 @@ import { FetchCustomAttributeFunction, } from '../src'; import { AttributeNames } from '../src/enums/AttributeNames'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; class DummySpanExporter implements tracing.SpanExporter { export(spans: any) {} diff --git a/auto-merge/js/experimental/packages/api-logs/test/index-webpack.ts b/pkgs/instrumentations/web/fetch/test/index-webpack.ts similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/test/index-webpack.ts rename to pkgs/instrumentations/web/fetch/test/index-webpack.ts diff --git a/pkgs/instrumentations/web/fetch/test/index-webpack.worker.ts b/pkgs/instrumentations/web/fetch/test/index-webpack.worker.ts new file mode 100644 index 000000000..99a230aa7 --- /dev/null +++ b/pkgs/instrumentations/web/fetch/test/index-webpack.worker.ts @@ -0,0 +1,20 @@ +/*! + * 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 + * + * 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. +*/ + +{ + const testsContext = require.context('./', false, /test$/); + testsContext.keys().forEach(testsContext); +} diff --git a/pkgs/instrumentations/web/fetch/tsconfig.esm.json b/pkgs/instrumentations/web/fetch/tsconfig.esm.json new file mode 100644 index 000000000..ed5341aa3 --- /dev/null +++ b/pkgs/instrumentations/web/fetch/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/fetch/tsconfig.esnext.json b/pkgs/instrumentations/web/fetch/tsconfig.esnext.json new file mode 100644 index 000000000..2f8a78e6b --- /dev/null +++ b/pkgs/instrumentations/web/fetch/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/fetch/tsconfig.json b/pkgs/instrumentations/web/fetch/tsconfig.json new file mode 100644 index 000000000..33f0e4587 --- /dev/null +++ b/pkgs/instrumentations/web/fetch/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "files": [], + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/experimental/packages/sdk-logs/.eslintignore b/pkgs/instrumentations/web/long-task/.eslintignore similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/.eslintignore rename to pkgs/instrumentations/web/long-task/.eslintignore diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/.eslintrc.js b/pkgs/instrumentations/web/long-task/.eslintrc.js similarity index 74% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/.eslintrc.js rename to pkgs/instrumentations/web/long-task/.eslintrc.js index 6ad6c9f21..2d08666a8 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-document-load/.eslintrc.js +++ b/pkgs/instrumentations/web/long-task/.eslintrc.js @@ -5,5 +5,5 @@ module.exports = { "browser": true, "jquery": true }, - ...require('../../../eslint.config.js') + ...require('../../../../eslint.config.js') } diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md b/pkgs/instrumentations/web/long-task/CHANGELOG.md similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md rename to pkgs/instrumentations/web/long-task/CHANGELOG.md diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/README.md b/pkgs/instrumentations/web/long-task/README.md similarity index 91% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/README.md rename to pkgs/instrumentations/web/long-task/README.md index 495485b04..f320aa204 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/README.md +++ b/pkgs/instrumentations/web/long-task/README.md @@ -18,10 +18,10 @@ npm install --save @opentelemetry/instrumentation-long-task ## Usage ```js -import { ConsoleSpanExporter, SimpleSpanProcessor } from '@opentelemetry/sdk-trace-base'; -import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; -import { LongTaskInstrumentation } from '@opentelemetry/instrumentation-long-task'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; +import { ConsoleSpanExporter, SimpleSpanProcessor } from '@opentelemetry/sandbox-sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sandbox-sdk-trace-web'; +import { LongTaskInstrumentation } from '@opentelemetry/sandbox-instrumentation-long-task'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; const provider = new WebTracerProvider(); diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/karma.conf.js b/pkgs/instrumentations/web/long-task/karma.conf.js similarity index 86% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/karma.conf.js rename to pkgs/instrumentations/web/long-task/karma.conf.js index 4a4bd4979..410ae0c9a 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/karma.conf.js +++ b/pkgs/instrumentations/web/long-task/karma.conf.js @@ -14,8 +14,8 @@ * limitations under the License. */ -const karmaWebpackConfig = require('../../../karma.webpack'); -const karmaBaseConfig = require('../../../karma.base'); +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.base'); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { diff --git a/pkgs/instrumentations/web/long-task/karma.debug.conf.js b/pkgs/instrumentations/web/long-task/karma.debug.conf.js new file mode 100644 index 000000000..02f69db6b --- /dev/null +++ b/pkgs/instrumentations/web/long-task/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/instrumentations/web/long-task/package.json b/pkgs/instrumentations/web/long-task/package.json new file mode 100644 index 000000000..db1485f25 --- /dev/null +++ b/pkgs/instrumentations/web/long-task/package.json @@ -0,0 +1,112 @@ +{ + "name": "@opentelemetry/sandbox-instrumentation-long-task", + "version": "0.32.4", + "description": "OpenTelemetry long task API automatic instrumentation package.", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js-contrib", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "prepare": "npm run compile", + "rebuild": "npm run build", + "tdd": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "", + "test:webworker": "", + "version": "node ../../../../scripts/version-update.js", + "version:update": "node ../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json" + }, + "keywords": [ + "opentelemetry", + "web", + "tracing", + "profiling", + "metrics", + "stats" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.map", + "build/esm/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@babel/core": "7.15.0", + "@jsdevtools/coverage-istanbul-loader": "3.0.5", + "@opentelemetry/sandbox-api": "1.4.1", + "@opentelemetry/sandbox-sdk-trace-base": "1.13.0", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "8.2.2", + "chromium": "^3.0.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", + "webpack-cli": "4.7.2", + "webpack-merge": "5.8.0", + "zone.js": "^0.11.4" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-instrumentation": "0.39.1", + "@opentelemetry/sandbox-sdk-trace-web": "1.13.0" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "sideEffects": false, + "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/web/opentelemetry-instrumentation-long-task#readme" +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/long-task/rollup.config.js b/pkgs/instrumentations/web/long-task/rollup.config.js new file mode 100644 index 000000000..4f9738743 --- /dev/null +++ b/pkgs/instrumentations/web/long-task/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.instr.web.instrumentation-long-task", inputName, "otel-sndbx.instr-long-task", version); diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/src/index.ts b/pkgs/instrumentations/web/long-task/src/index.ts similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/src/index.ts rename to pkgs/instrumentations/web/long-task/src/index.ts diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/src/instrumentation.ts b/pkgs/instrumentations/web/long-task/src/instrumentation.ts similarity index 93% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/src/instrumentation.ts rename to pkgs/instrumentations/web/long-task/src/instrumentation.ts index 7b17907a8..404795ecf 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/src/instrumentation.ts +++ b/pkgs/instrumentations/web/long-task/src/instrumentation.ts @@ -13,9 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { hrTime } from '@opentelemetry/core'; -import { diag } from '@opentelemetry/api'; -import { InstrumentationBase } from '@opentelemetry/instrumentation'; +import { hrTime } from '@opentelemetry/sandbox-core'; +import { diag } from '@opentelemetry/sandbox-api'; +import { InstrumentationBase } from '@opentelemetry/sandbox-instrumentation'; import { VERSION } from './version'; import type { PerformanceLongTaskTiming, @@ -35,7 +35,7 @@ export class LongTaskInstrumentation extends InstrumentationBase { * @param config */ constructor(config: LongtaskInstrumentationConfig = {}) { - super('@opentelemetry/instrumentation-long-task', VERSION, config); + super('@opentelemetry/sandbox-instrumentation-long-task', VERSION, config); } init() {} diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/src/types.ts b/pkgs/instrumentations/web/long-task/src/types.ts similarity index 90% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/src/types.ts rename to pkgs/instrumentations/web/long-task/src/types.ts index 141135873..8469930b4 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/src/types.ts +++ b/pkgs/instrumentations/web/long-task/src/types.ts @@ -13,8 +13,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import type { Span } from '@opentelemetry/api'; -import type { InstrumentationConfig } from '@opentelemetry/instrumentation'; +import type { Span } from '@opentelemetry/sandbox-api'; +import type { InstrumentationConfig } from '@opentelemetry/sandbox-instrumentation'; // Currently missing in typescript DOM definitions export interface PerformanceLongTaskTiming extends PerformanceEntry { diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/compatibility.test.ts b/pkgs/instrumentations/web/long-task/test/compatibility.test.ts similarity index 92% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/compatibility.test.ts rename to pkgs/instrumentations/web/long-task/test/compatibility.test.ts index d3404d19a..e05d22010 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/compatibility.test.ts +++ b/pkgs/instrumentations/web/long-task/test/compatibility.test.ts @@ -13,10 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { trace } from '@opentelemetry/api'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; -import * as tracing from '@opentelemetry/sdk-trace-base'; -import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; +import { trace } from '@opentelemetry/sandbox-api'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; +import * as tracing from '@opentelemetry/sandbox-sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sandbox-sdk-trace-web'; import { LongTaskInstrumentation } from '../src'; import { DummySpanExporter } from './util'; diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/test/index-webpack.ts b/pkgs/instrumentations/web/long-task/test/index-webpack.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-fetch/test/index-webpack.ts rename to pkgs/instrumentations/web/long-task/test/index-webpack.ts diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/longTask.test.ts b/pkgs/instrumentations/web/long-task/test/longTask.test.ts similarity index 92% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/longTask.test.ts rename to pkgs/instrumentations/web/long-task/test/longTask.test.ts index c65ed71e6..3405650a8 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/longTask.test.ts +++ b/pkgs/instrumentations/web/long-task/test/longTask.test.ts @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { trace } from '@opentelemetry/api'; -import { hrTimeToMilliseconds, hrTimeToNanoseconds } from '@opentelemetry/core'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; -import * as tracing from '@opentelemetry/sdk-trace-base'; -import { ReadableSpan } from '@opentelemetry/sdk-trace-base'; -import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; +import { trace } from '@opentelemetry/sandbox-api'; +import { hrTimeToMilliseconds, hrTimeToNanoseconds } from '@opentelemetry/sandbox-core'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; +import * as tracing from '@opentelemetry/sandbox-sdk-trace-base'; +import { ReadableSpan } from '@opentelemetry/sandbox-sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sandbox-sdk-trace-web'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { LongTaskInstrumentation } from '../src'; diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/util.ts b/pkgs/instrumentations/web/long-task/test/util.ts similarity index 92% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/util.ts rename to pkgs/instrumentations/web/long-task/test/util.ts index ce8179e5a..927df8cc6 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/test/util.ts +++ b/pkgs/instrumentations/web/long-task/test/util.ts @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import * as tracing from '@opentelemetry/sdk-trace-base'; +import * as tracing from '@opentelemetry/sandbox-sdk-trace-base'; export class DummySpanExporter implements tracing.SpanExporter { export(spans: tracing.ReadableSpan[]) {} diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/tsconfig.esm.json b/pkgs/instrumentations/web/long-task/tsconfig.esm.json similarity index 82% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/tsconfig.esm.json rename to pkgs/instrumentations/web/long-task/tsconfig.esm.json index d903fa308..64552b47a 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/tsconfig.esm.json +++ b/pkgs/instrumentations/web/long-task/tsconfig.esm.json @@ -1,5 +1,5 @@ { - "extends": "../../../tsconfig.base.esm.json", + "extends": "../../../../tsconfig.base.esm.json", "compilerOptions": { "rootDir": "src", "outDir": "build/esm", diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/tsconfig.json b/pkgs/instrumentations/web/long-task/tsconfig.json similarity index 75% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/tsconfig.json rename to pkgs/instrumentations/web/long-task/tsconfig.json index 28be80d26..e8a10f9fd 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/tsconfig.json +++ b/pkgs/instrumentations/web/long-task/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../../tsconfig.base", + "extends": "../../../../tsconfig.base", "compilerOptions": { "rootDir": ".", "outDir": "build" diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/.eslintignore b/pkgs/instrumentations/web/user-interaction/.eslintignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/.eslintignore rename to pkgs/instrumentations/web/user-interaction/.eslintignore diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/.eslintrc.js b/pkgs/instrumentations/web/user-interaction/.eslintrc.js similarity index 80% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/.eslintrc.js rename to pkgs/instrumentations/web/user-interaction/.eslintrc.js index ea4d42f5e..599d0b54f 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/.eslintrc.js +++ b/pkgs/instrumentations/web/user-interaction/.eslintrc.js @@ -8,5 +8,5 @@ module.exports = { "globals": { "Zone": "readonly" }, - ...require('../../../eslint.config.js') + ...require('../../../../eslint.config.js') } diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md b/pkgs/instrumentations/web/user-interaction/CHANGELOG.md similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md rename to pkgs/instrumentations/web/user-interaction/CHANGELOG.md diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/LICENSE b/pkgs/instrumentations/web/user-interaction/LICENSE similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/LICENSE rename to pkgs/instrumentations/web/user-interaction/LICENSE diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/README.md b/pkgs/instrumentations/web/user-interaction/README.md similarity index 89% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/README.md rename to pkgs/instrumentations/web/user-interaction/README.md index 224ea724e..1be3d1c4a 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/README.md +++ b/pkgs/instrumentations/web/user-interaction/README.md @@ -21,13 +21,13 @@ npm install --save @opentelemetry/instrumentation-user-interaction ## Usage ```js -import { ConsoleSpanExporter, SimpleSpanProcessor } from '@opentelemetry/sdk-trace-base'; -import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; -import { UserInteractionInstrumentation } from '@opentelemetry/instrumentation-user-interaction'; -import { ZoneContextManager } from '@opentelemetry/context-zone'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; +import { ConsoleSpanExporter, SimpleSpanProcessor } from '@opentelemetry/sandbox-sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sandbox-sdk-trace-web'; +import { UserInteractionInstrumentation } from '@opentelemetry/sandbox-instrumentation-user-interaction'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; // or if you already have zone.js -// import { ZoneContextManager } from '@opentelemetry/context-zone-peer-dep'; +// import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone-peer-dep'; const provider = new WebTracerProvider({ contextManager: new ZoneContextManager() diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/images/click-sync.jpg b/pkgs/instrumentations/web/user-interaction/images/click-sync.jpg similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/images/click-sync.jpg rename to pkgs/instrumentations/web/user-interaction/images/click-sync.jpg diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/images/click.jpg b/pkgs/instrumentations/web/user-interaction/images/click.jpg similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/images/click.jpg rename to pkgs/instrumentations/web/user-interaction/images/click.jpg diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/images/main-sync.jpg b/pkgs/instrumentations/web/user-interaction/images/main-sync.jpg similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/images/main-sync.jpg rename to pkgs/instrumentations/web/user-interaction/images/main-sync.jpg diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/images/main.jpg b/pkgs/instrumentations/web/user-interaction/images/main.jpg similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/images/main.jpg rename to pkgs/instrumentations/web/user-interaction/images/main.jpg diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/karma.conf.js b/pkgs/instrumentations/web/user-interaction/karma.conf.js similarity index 86% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/karma.conf.js rename to pkgs/instrumentations/web/user-interaction/karma.conf.js index 4a4bd4979..410ae0c9a 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-long-task/karma.conf.js +++ b/pkgs/instrumentations/web/user-interaction/karma.conf.js @@ -14,8 +14,8 @@ * limitations under the License. */ -const karmaWebpackConfig = require('../../../karma.webpack'); -const karmaBaseConfig = require('../../../karma.base'); +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.base'); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { diff --git a/pkgs/instrumentations/web/user-interaction/karma.debug.conf.js b/pkgs/instrumentations/web/user-interaction/karma.debug.conf.js new file mode 100644 index 000000000..02f69db6b --- /dev/null +++ b/pkgs/instrumentations/web/user-interaction/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/instrumentations/web/user-interaction/package.json b/pkgs/instrumentations/web/user-interaction/package.json new file mode 100644 index 000000000..28851db55 --- /dev/null +++ b/pkgs/instrumentations/web/user-interaction/package.json @@ -0,0 +1,115 @@ +{ + "name": "@opentelemetry/sandbox-instrumentation-user-interaction", + "version": "0.32.3", + "description": "OpenTelemetry UserInteraction automatic instrumentation package.", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js-contrib", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "prepare": "npm run compile", + "rebuild": "npm run build", + "tdd": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "", + "test:webworker": "", + "version": "node ../../../../scripts/version-update.js", + "version:update": "node ../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json" + }, + "keywords": [ + "opentelemetry", + "web", + "tracing", + "profiling", + "metrics", + "stats" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.map", + "build/esm/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@babel/core": "7.15.0", + "@jsdevtools/coverage-istanbul-loader": "3.0.5", + "@opentelemetry/sandbox-api": "1.4.1", + "@opentelemetry/sandbox-context-zone-peer-dep": "1.13.0", + "@opentelemetry/sandbox-instrumentation-xml-http-request": "0.39.1", + "@opentelemetry/sandbox-sdk-trace-base": "1.13.0", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "8.2.2", + "chromium": "^3.0.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", + "webpack-cli": "4.7.2", + "webpack-merge": "5.8.0", + "zone.js": "^0.11.4" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-instrumentation": "0.39.1", + "@opentelemetry/sandbox-sdk-trace-web": "1.13.0" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1", + "zone.js": "^0.11.4" + }, + "sideEffects": false, + "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/web/opentelemetry-instrumentation-user-interaction#readme" +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/user-interaction/rollup.config.js b/pkgs/instrumentations/web/user-interaction/rollup.config.js new file mode 100644 index 000000000..a56d6a080 --- /dev/null +++ b/pkgs/instrumentations/web/user-interaction/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.instr.web.instrumentation-user-interaction", inputName, "otel-sndbx.instr-user-interaction", version); diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/enums/AttributeNames.ts b/pkgs/instrumentations/web/user-interaction/src/enums/AttributeNames.ts similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/enums/AttributeNames.ts rename to pkgs/instrumentations/web/user-interaction/src/enums/AttributeNames.ts diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/index.ts b/pkgs/instrumentations/web/user-interaction/src/index.ts similarity index 100% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/index.ts rename to pkgs/instrumentations/web/user-interaction/src/index.ts diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts b/pkgs/instrumentations/web/user-interaction/src/instrumentation.ts similarity index 98% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts rename to pkgs/instrumentations/web/user-interaction/src/instrumentation.ts index 1a12953fc..3ccf66bac 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts +++ b/pkgs/instrumentations/web/user-interaction/src/instrumentation.ts @@ -14,11 +14,11 @@ * limitations under the License. */ -import { isWrapped, InstrumentationBase } from '@opentelemetry/instrumentation'; +import { isWrapped, InstrumentationBase } from '@opentelemetry/sandbox-instrumentation'; -import * as api from '@opentelemetry/api'; -import { hrTime } from '@opentelemetry/core'; -import { getElementXPath } from '@opentelemetry/sdk-trace-web'; +import * as api from '@opentelemetry/sandbox-api'; +import { hrTime } from '@opentelemetry/sandbox-core'; +import { getElementXPath } from '@opentelemetry/sandbox-sdk-trace-web'; import { AttributeNames } from './enums/AttributeNames'; import { EventName, @@ -66,7 +66,7 @@ export class UserInteractionInstrumentation extends InstrumentationBase private _shouldPreventSpanCreation: ShouldPreventSpanCreation; constructor(config?: UserInteractionInstrumentationConfig) { - super('@opentelemetry/instrumentation-user-interaction', VERSION, config); + super('@opentelemetry/sandbox-instrumentation-user-interaction', VERSION, config); this._eventNames = new Set(config?.eventNames ?? DEFAULT_EVENT_NAMES); this._shouldPreventSpanCreation = typeof config?.shouldPreventSpanCreation === 'function' diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/internal-types.ts b/pkgs/instrumentations/web/user-interaction/src/internal-types.ts similarity index 96% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/internal-types.ts rename to pkgs/instrumentations/web/user-interaction/src/internal-types.ts index a84590663..696b782ea 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/internal-types.ts +++ b/pkgs/instrumentations/web/user-interaction/src/internal-types.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import { EventName } from './types'; /** diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/types.ts b/pkgs/instrumentations/web/user-interaction/src/types.ts similarity index 90% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/types.ts rename to pkgs/instrumentations/web/user-interaction/src/types.ts index 8c04b3c98..401ec1bce 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/src/types.ts +++ b/pkgs/instrumentations/web/user-interaction/src/types.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { Span } from '@opentelemetry/api'; -import { InstrumentationConfig } from '@opentelemetry/instrumentation'; +import { Span } from '@opentelemetry/sandbox-api'; +import { InstrumentationConfig } from '@opentelemetry/sandbox-instrumentation'; export type EventName = keyof HTMLElementEventMap; diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/helper.test.ts b/pkgs/instrumentations/web/user-interaction/test/helper.test.ts similarity index 97% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/helper.test.ts rename to pkgs/instrumentations/web/user-interaction/test/helper.test.ts index 4e55e171f..c8d8e2d01 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/helper.test.ts +++ b/pkgs/instrumentations/web/user-interaction/test/helper.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as tracing from '@opentelemetry/sdk-trace-base'; +import * as tracing from '@opentelemetry/sandbox-sdk-trace-base'; import * as assert from 'assert'; export class DummySpanExporter implements tracing.SpanExporter { diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/index-webpack.ts b/pkgs/instrumentations/web/user-interaction/test/index-webpack.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/index-webpack.ts rename to pkgs/instrumentations/web/user-interaction/test/index-webpack.ts diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/userInteraction.nozone.test.ts b/pkgs/instrumentations/web/user-interaction/test/userInteraction.nozone.test.ts similarity index 98% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/userInteraction.nozone.test.ts rename to pkgs/instrumentations/web/user-interaction/test/userInteraction.nozone.test.ts index c62ef63ae..2e1d44969 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/userInteraction.nozone.test.ts +++ b/pkgs/instrumentations/web/user-interaction/test/userInteraction.nozone.test.ts @@ -15,12 +15,12 @@ */ const originalSetTimeout = window.setTimeout; -import { trace } from '@opentelemetry/api'; -import { isWrapped } from '@opentelemetry/core'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; -import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request'; -import * as tracing from '@opentelemetry/sdk-trace-base'; -import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; +import { trace } from '@opentelemetry/sandbox-api'; +import { isWrapped } from '@opentelemetry/sandbox-core'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; +import { XMLHttpRequestInstrumentation } from '@opentelemetry/sandbox-instrumentation-xml-http-request'; +import * as tracing from '@opentelemetry/sandbox-sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sandbox-sdk-trace-web'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { UserInteractionInstrumentation } from '../src'; diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/userInteraction.test.ts b/pkgs/instrumentations/web/user-interaction/test/userInteraction.test.ts similarity index 97% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/userInteraction.test.ts rename to pkgs/instrumentations/web/user-interaction/test/userInteraction.test.ts index 792387e8c..bf04cbfdb 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/test/userInteraction.test.ts +++ b/pkgs/instrumentations/web/user-interaction/test/userInteraction.test.ts @@ -14,15 +14,15 @@ * limitations under the License. */ const originalSetTimeout = window.setTimeout; -import { context, ROOT_CONTEXT, trace } from '@opentelemetry/api'; -import { ZoneContextManager } from '@opentelemetry/context-zone-peer-dep'; +import { context, ROOT_CONTEXT, trace } from '@opentelemetry/sandbox-api'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone-peer-dep'; import { isWrapped, registerInstrumentations, -} from '@opentelemetry/instrumentation'; -import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request'; -import * as tracing from '@opentelemetry/sdk-trace-base'; -import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; +} from '@opentelemetry/sandbox-instrumentation'; +import { XMLHttpRequestInstrumentation } from '@opentelemetry/sandbox-instrumentation-xml-http-request'; +import * as tracing from '@opentelemetry/sandbox-sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sandbox-sdk-trace-web'; import * as assert from 'assert'; import * as sinon from 'sinon'; import 'zone.js'; diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/tsconfig.esm.json b/pkgs/instrumentations/web/user-interaction/tsconfig.esm.json similarity index 83% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/tsconfig.esm.json rename to pkgs/instrumentations/web/user-interaction/tsconfig.esm.json index 0bbc54d32..61b69be52 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/tsconfig.esm.json +++ b/pkgs/instrumentations/web/user-interaction/tsconfig.esm.json @@ -1,5 +1,5 @@ { - "extends": "../../../tsconfig.base.esm.json", + "extends": "../../../../tsconfig.base.esm.json", "compilerOptions": { "rootDir": "src", "outDir": "build/esm", diff --git a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/tsconfig.json b/pkgs/instrumentations/web/user-interaction/tsconfig.json similarity index 83% rename from auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/tsconfig.json rename to pkgs/instrumentations/web/user-interaction/tsconfig.json index ea1dd61b2..3a22f9152 100644 --- a/auto-merge/contrib/plugins/web/opentelemetry-instrumentation-user-interaction/tsconfig.json +++ b/pkgs/instrumentations/web/user-interaction/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../../tsconfig.base", + "extends": "../../../../tsconfig.base", "compilerOptions": { "rootDir": ".", "outDir": "build", diff --git a/auto-merge/js/packages/opentelemetry-context-zone/.eslintignore b/pkgs/instrumentations/web/xhr/.eslintignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone/.eslintignore rename to pkgs/instrumentations/web/xhr/.eslintignore diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/.eslintrc.js b/pkgs/instrumentations/web/xhr/.eslintrc.js similarity index 65% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/.eslintrc.js rename to pkgs/instrumentations/web/xhr/.eslintrc.js index 86d794e2f..d8a963f4e 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/.eslintrc.js +++ b/pkgs/instrumentations/web/xhr/.eslintrc.js @@ -3,5 +3,5 @@ module.exports = { "mocha": true, "browser": true, }, - ...require('../../eslint.config.js') + ...require('../../../../eslint.config.js') } diff --git a/auto-merge/js/experimental/packages/sdk-logs/.npmignore b/pkgs/instrumentations/web/xhr/.npmignore similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/.npmignore rename to pkgs/instrumentations/web/xhr/.npmignore diff --git a/auto-merge/js/packages/opentelemetry-context-zone/LICENSE b/pkgs/instrumentations/web/xhr/LICENSE similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone/LICENSE rename to pkgs/instrumentations/web/xhr/LICENSE diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/README.md b/pkgs/instrumentations/web/xhr/README.md similarity index 89% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/README.md rename to pkgs/instrumentations/web/xhr/README.md index 8c9686946..dabeafd6a 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/README.md +++ b/pkgs/instrumentations/web/xhr/README.md @@ -20,10 +20,10 @@ import { ConsoleSpanExporter, SimpleSpanProcessor, WebTracerProvider, -} from '@opentelemetry/sdk-trace-web'; -import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request'; -import { ZoneContextManager } from '@opentelemetry/context-zone'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; +} from '@opentelemetry/sandbox-sdk-trace-web'; +import { XMLHttpRequestInstrumentation } from '@opentelemetry/sandbox-instrumentation-xml-http-request'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; const providerWithZone = new WebTracerProvider(); providerWithZone.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter())); diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/images/cors.jpg b/pkgs/instrumentations/web/xhr/images/cors.jpg similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/images/cors.jpg rename to pkgs/instrumentations/web/xhr/images/cors.jpg diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/images/main.jpg b/pkgs/instrumentations/web/xhr/images/main.jpg similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/images/main.jpg rename to pkgs/instrumentations/web/xhr/images/main.jpg diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/images/request.jpg b/pkgs/instrumentations/web/xhr/images/request.jpg similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/images/request.jpg rename to pkgs/instrumentations/web/xhr/images/request.jpg diff --git a/pkgs/instrumentations/web/xhr/karma.conf.js b/pkgs/instrumentations/web/xhr/karma.conf.js new file mode 100644 index 000000000..85d2051a4 --- /dev/null +++ b/pkgs/instrumentations/web/xhr/karma.conf.js @@ -0,0 +1,24 @@ +/*! + * 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 + * + * 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. + */ + +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.base'); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + webpack: karmaWebpackConfig + })) +}; diff --git a/pkgs/instrumentations/web/xhr/karma.debug.conf.js b/pkgs/instrumentations/web/xhr/karma.debug.conf.js new file mode 100644 index 000000000..02f69db6b --- /dev/null +++ b/pkgs/instrumentations/web/xhr/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/instrumentations/web/xhr/package.json b/pkgs/instrumentations/web/xhr/package.json new file mode 100644 index 000000000..58cf6749f --- /dev/null +++ b/pkgs/instrumentations/web/xhr/package.json @@ -0,0 +1,119 @@ +{ + "name": "@opentelemetry/sandbox-instrumentation-xml-http-request", + "version": "0.39.1", + "description": "OpenTelemetry XMLHttpRequest automatic instrumentation package.", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "", + "test:webworker": "", + "version": "node ../../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "browser", + "tracing", + "profiling", + "metrics", + "XMLHttpRequest", + "stats" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@babel/core": "7.16.0", + "@opentelemetry/sandbox-api": "1.4.1", + "@opentelemetry/sandbox-context-zone": "1.13.0", + "@opentelemetry/sandbox-propagator-b3": "1.13.0", + "@opentelemetry/sandbox-sdk-trace-base": "1.13.0", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "8.2.3", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", + "webpack-cli": "4.9.1", + "webpack-merge": "5.8.0" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-instrumentation": "0.39.1", + "@opentelemetry/sandbox-sdk-trace-web": "1.13.0", + "@opentelemetry/sandbox-semantic-conventions": "1.13.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-xml-http-request", + "sideEffects": false +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/xhr/rollup.config.js b/pkgs/instrumentations/web/xhr/rollup.config.js new file mode 100644 index 000000000..86090e160 --- /dev/null +++ b/pkgs/instrumentations/web/xhr/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.instr.web.xhr", inputName, "otel-sndbx.instr.xhr", version); diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/enums/AttributeNames.ts b/pkgs/instrumentations/web/xhr/src/enums/AttributeNames.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/enums/AttributeNames.ts rename to pkgs/instrumentations/web/xhr/src/enums/AttributeNames.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/enums/EventNames.ts b/pkgs/instrumentations/web/xhr/src/enums/EventNames.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/enums/EventNames.ts rename to pkgs/instrumentations/web/xhr/src/enums/EventNames.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/index.ts b/pkgs/instrumentations/web/xhr/src/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/index.ts rename to pkgs/instrumentations/web/xhr/src/index.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/types.ts b/pkgs/instrumentations/web/xhr/src/types.ts similarity index 97% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/types.ts rename to pkgs/instrumentations/web/xhr/src/types.ts index 430e9e217..f9c517cbb 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/types.ts +++ b/pkgs/instrumentations/web/xhr/src/types.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; /** * method "open" from XMLHttpRequest diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/xhr.ts b/pkgs/instrumentations/web/xhr/src/xhr.ts similarity index 97% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/xhr.ts rename to pkgs/instrumentations/web/xhr/src/xhr.ts index 42eb9abb0..3b05e71c6 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/src/xhr.ts +++ b/pkgs/instrumentations/web/xhr/src/xhr.ts @@ -14,22 +14,22 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { isWrapped, InstrumentationBase, InstrumentationConfig, safeExecuteInTheMiddle, -} from '@opentelemetry/instrumentation'; -import { hrTime, isUrlIgnored, otperformance } from '@opentelemetry/core'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +} from '@opentelemetry/sandbox-instrumentation'; +import { hrTime, isUrlIgnored, otperformance } from '@opentelemetry/sandbox-core'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { addSpanNetworkEvents, getResource, PerformanceTimingNames as PTN, shouldPropagateTraceHeaders, parseUrl, -} from '@opentelemetry/sdk-trace-web'; +} from '@opentelemetry/sandbox-sdk-trace-web'; import { EventNames } from './enums/EventNames'; import { OpenFunction, @@ -89,7 +89,7 @@ export class XMLHttpRequestInstrumentation extends InstrumentationBase(); constructor(config?: XMLHttpRequestInstrumentationConfig) { - super('@opentelemetry/instrumentation-xml-http-request', VERSION, config); + super('@opentelemetry/sandbox-instrumentation-xml-http-request', VERSION, config); } init() {} diff --git a/auto-merge/js/packages/opentelemetry-context-zone-peer-dep/test/index-webpack.ts b/pkgs/instrumentations/web/xhr/test/index-webpack.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-context-zone-peer-dep/test/index-webpack.ts rename to pkgs/instrumentations/web/xhr/test/index-webpack.ts diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/unmocked.test.ts b/pkgs/instrumentations/web/xhr/test/unmocked.test.ts similarity index 85% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/unmocked.test.ts rename to pkgs/instrumentations/web/xhr/test/unmocked.test.ts index 108ca75bb..ed6ac844b 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/unmocked.test.ts +++ b/pkgs/instrumentations/web/xhr/test/unmocked.test.ts @@ -13,11 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { Span } from '@opentelemetry/api'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; -import { ReadableSpan, SpanProcessor } from '@opentelemetry/sdk-trace-base'; -import { WebTracerProvider } from '@opentelemetry/sdk-trace-web'; +import { Span } from '@opentelemetry/sandbox-api'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; +import { ReadableSpan, SpanProcessor } from '@opentelemetry/sandbox-sdk-trace-base'; +import { WebTracerProvider } from '@opentelemetry/sandbox-sdk-trace-web'; import { XMLHttpRequestInstrumentation } from '../src'; import assert = require('assert'); diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/xhr.test.ts b/pkgs/instrumentations/web/xhr/test/xhr.test.ts similarity index 98% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/xhr.test.ts rename to pkgs/instrumentations/web/xhr/test/xhr.test.ts index b304bb9c0..dac493af0 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-instrumentation-xml-http-request/test/xhr.test.ts +++ b/pkgs/instrumentations/web/xhr/test/xhr.test.ts @@ -13,24 +13,24 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import * as api from '@opentelemetry/api'; -import { otperformance as performance, isWrapped } from '@opentelemetry/core'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; +import * as api from '@opentelemetry/sandbox-api'; +import { otperformance as performance, isWrapped } from '@opentelemetry/sandbox-core'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; import { B3Propagator, B3InjectEncoding, X_B3_SAMPLED, X_B3_SPAN_ID, X_B3_TRACE_ID, -} from '@opentelemetry/propagator-b3'; -import { ZoneContextManager } from '@opentelemetry/context-zone'; -import * as tracing from '@opentelemetry/sdk-trace-base'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +} from '@opentelemetry/sandbox-propagator-b3'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone'; +import * as tracing from '@opentelemetry/sandbox-sdk-trace-base'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { PerformanceTimingNames as PTN, WebTracerProvider, parseUrl, -} from '@opentelemetry/sdk-trace-web'; +} from '@opentelemetry/sandbox-sdk-trace-web'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { EventNames } from '../src/enums/EventNames'; diff --git a/pkgs/instrumentations/web/xhr/tsconfig.esm.json b/pkgs/instrumentations/web/xhr/tsconfig.esm.json new file mode 100644 index 000000000..ed5341aa3 --- /dev/null +++ b/pkgs/instrumentations/web/xhr/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/xhr/tsconfig.esnext.json b/pkgs/instrumentations/web/xhr/tsconfig.esnext.json new file mode 100644 index 000000000..2f8a78e6b --- /dev/null +++ b/pkgs/instrumentations/web/xhr/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/instrumentations/web/xhr/tsconfig.json b/pkgs/instrumentations/web/xhr/tsconfig.json new file mode 100644 index 000000000..33f0e4587 --- /dev/null +++ b/pkgs/instrumentations/web/xhr/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "files": [], + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-core/.eslintignore b/pkgs/propagators/b3/.eslintignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/.eslintignore rename to pkgs/propagators/b3/.eslintignore diff --git a/auto-merge/js/experimental/packages/opentelemetry-instrumentation/.eslintrc.js b/pkgs/propagators/b3/.eslintrc.js similarity index 100% rename from auto-merge/js/experimental/packages/opentelemetry-instrumentation/.eslintrc.js rename to pkgs/propagators/b3/.eslintrc.js diff --git a/auto-merge/js/packages/opentelemetry-core/.npmignore b/pkgs/propagators/b3/.npmignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/.npmignore rename to pkgs/propagators/b3/.npmignore diff --git a/auto-merge/js/packages/opentelemetry-core/LICENSE b/pkgs/propagators/b3/LICENSE similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/LICENSE rename to pkgs/propagators/b3/LICENSE diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/README.md b/pkgs/propagators/b3/README.md similarity index 91% rename from auto-merge/js/packages/opentelemetry-propagator-b3/README.md rename to pkgs/propagators/b3/README.md index 404d59613..540752fbd 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/README.md +++ b/pkgs/propagators/b3/README.md @@ -74,8 +74,8 @@ multi-header via configuration. See the examples below. ### B3 Single-Header Configuration ```javascript -const api = require('@opentelemetry/api'); -const { B3Propagator } = require('@opentelemetry/propagator-b3'); +const api = require('@opentelemetry/sandbox-api'); +const { B3Propagator } = require('@opentelemetry/sandbox-propagator-b3'); api.propagation.setGlobalPropagator(new B3Propagator()); ``` @@ -83,8 +83,8 @@ api.propagation.setGlobalPropagator(new B3Propagator()); ### B3 Multi-Header Configuration ```javascript -const api = require('@opentelemetry/api'); -const { B3Propagator, B3InjectEncoding } = require('@opentelemetry/propagator-b3'); +const api = require('@opentelemetry/sandbox-api'); +const { B3Propagator, B3InjectEncoding } = require('@opentelemetry/sandbox-propagator-b3'); api.propagation.setGlobalPropagator( new B3Propagator({ injectEncoding: B3InjectEncoding.MULTI_HEADER }) @@ -98,9 +98,9 @@ If you need to inject both encodings this can accomplished using a composite propagator. ```javascript -const api = require('@opentelemetry/api'); -const { CompositePropagator } = require('@opentelemetry/core'); -const { B3Propagator, B3InjectEncoding } = require('@opentelemetry/propagator-b3'); +const api = require('@opentelemetry/sandbox-api'); +const { CompositePropagator } = require('@opentelemetry/sandbox-core'); +const { B3Propagator, B3InjectEncoding } = require('@opentelemetry/sandbox-propagator-b3'); api.propagation.setGlobalPropagator( new CompositePropagator({ propagators: [ diff --git a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/karma.conf.js b/pkgs/propagators/b3/karma.browser.conf.js similarity index 85% rename from auto-merge/js/experimental/packages/opentelemetry-browser-detector/karma.conf.js rename to pkgs/propagators/b3/karma.browser.conf.js index 6174839d6..8d2c1822d 100644 --- a/auto-merge/js/experimental/packages/opentelemetry-browser-detector/karma.conf.js +++ b/pkgs/propagators/b3/karma.browser.conf.js @@ -12,13 +12,14 @@ * 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. - */ +*/ -const karmaWebpackConfig = require('../../../karma.webpack'); -const karmaBaseConfig = require('../../../karma.base'); +const karmaWebpackConfig = require("./karma.webpack"); +const karmaBaseConfig = require("../../../karma.base"); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { webpack: karmaWebpackConfig })) }; + diff --git a/pkgs/propagators/b3/karma.debug.conf.js b/pkgs/propagators/b3/karma.debug.conf.js new file mode 100644 index 000000000..490933fdc --- /dev/null +++ b/pkgs/propagators/b3/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/propagators/b3/karma.webpack.js b/pkgs/propagators/b3/karma.webpack.js new file mode 100644 index 000000000..bc821e073 --- /dev/null +++ b/pkgs/propagators/b3/karma.webpack.js @@ -0,0 +1,42 @@ +/*! + * 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 + * + * 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. +*/ + +const webpackNodePolyfills = require("../../../webpack.node-polyfills.js"); + +module.exports = { + mode: "development", + target: "web", + output: { filename: "bundle.js" }, + resolve: { extensions: [".ts", ".js"] }, + devtool: "inline-source-map", + module: { + rules: [ + { test: /.ts$/, use: "ts-loader" }, + { + enforce: "post", + exclude: /(node_modules|.test.[tj]sx?$)/, + test: /.ts$/, + use: { + loader: "istanbul-instrumenter-loader", + options: { esModules: true } + } + }, + // This setting configures Node polyfills for the browser that will be + // added to the webpack bundle for Karma tests. + { parser: { node: webpackNodePolyfills } } + ] + } +}; diff --git a/pkgs/propagators/b3/package.json b/pkgs/propagators/b3/package.json new file mode 100644 index 000000000..94e374e18 --- /dev/null +++ b/pkgs/propagators/b3/package.json @@ -0,0 +1,106 @@ +{ + "name": "@opentelemetry/sandbox-propagator-b3", + "version": "1.13.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", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.browser.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", + "version": "node ../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "nodejs", + "tracing", + "profiling", + "monitoring", + "b3" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "devDependencies": { + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-propagator-b3", + "sideEffects": false +} \ No newline at end of file diff --git a/pkgs/propagators/b3/rollup.config.js b/pkgs/propagators/b3/rollup.config.js new file mode 100644 index 000000000..4276ef1ed --- /dev/null +++ b/pkgs/propagators/b3/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.propagator-b3", inputName, "otel-sndbx.propagator-b3", version); diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/src/B3MultiPropagator.ts b/pkgs/propagators/b3/src/B3MultiPropagator.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-propagator-b3/src/B3MultiPropagator.ts rename to pkgs/propagators/b3/src/B3MultiPropagator.ts index 63189e157..ed96e9782 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/src/B3MultiPropagator.ts +++ b/pkgs/propagators/b3/src/B3MultiPropagator.ts @@ -24,8 +24,8 @@ import { TextMapPropagator, TextMapSetter, TraceFlags, -} from '@opentelemetry/api'; -import { isTracingSuppressed } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { isTracingSuppressed } from '@opentelemetry/sandbox-core'; import { B3_DEBUG_FLAG_KEY } from './common'; import { X_B3_FLAGS, diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/src/B3Propagator.ts b/pkgs/propagators/b3/src/B3Propagator.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-propagator-b3/src/B3Propagator.ts rename to pkgs/propagators/b3/src/B3Propagator.ts index 0997fcdb1..88acfcc09 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/src/B3Propagator.ts +++ b/pkgs/propagators/b3/src/B3Propagator.ts @@ -19,8 +19,8 @@ import { TextMapGetter, TextMapPropagator, TextMapSetter, -} from '@opentelemetry/api'; -import { isTracingSuppressed } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { isTracingSuppressed } from '@opentelemetry/sandbox-core'; import { B3MultiPropagator } from './B3MultiPropagator'; import { B3SinglePropagator } from './B3SinglePropagator'; import { B3_CONTEXT_HEADER } from './constants'; diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/src/B3SinglePropagator.ts b/pkgs/propagators/b3/src/B3SinglePropagator.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-propagator-b3/src/B3SinglePropagator.ts rename to pkgs/propagators/b3/src/B3SinglePropagator.ts index 83d21ec6d..c7391ed9a 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/src/B3SinglePropagator.ts +++ b/pkgs/propagators/b3/src/B3SinglePropagator.ts @@ -24,8 +24,8 @@ import { TextMapSetter, trace, TraceFlags, -} from '@opentelemetry/api'; -import { isTracingSuppressed } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { isTracingSuppressed } from '@opentelemetry/sandbox-core'; import { B3_DEBUG_FLAG_KEY } from './common'; import { B3_CONTEXT_HEADER } from './constants'; diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/src/common.ts b/pkgs/propagators/b3/src/common.ts similarity index 92% rename from auto-merge/js/packages/opentelemetry-propagator-b3/src/common.ts rename to pkgs/propagators/b3/src/common.ts index dd0d49a36..9cd12eed3 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/src/common.ts +++ b/pkgs/propagators/b3/src/common.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { createContextKey } from '@opentelemetry/api'; +import { createContextKey } from '@opentelemetry/sandbox-api'; /** shared context for storing an extracted b3 debug flag */ export const B3_DEBUG_FLAG_KEY = createContextKey( diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/src/constants.ts b/pkgs/propagators/b3/src/constants.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-propagator-b3/src/constants.ts rename to pkgs/propagators/b3/src/constants.ts diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/src/index.ts b/pkgs/propagators/b3/src/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-propagator-b3/src/index.ts rename to pkgs/propagators/b3/src/index.ts diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/src/types.ts b/pkgs/propagators/b3/src/types.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-propagator-b3/src/types.ts rename to pkgs/propagators/b3/src/types.ts diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/test/B3MultiPropagator.test.ts b/pkgs/propagators/b3/test/B3MultiPropagator.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-propagator-b3/test/B3MultiPropagator.test.ts rename to pkgs/propagators/b3/test/B3MultiPropagator.test.ts index a314385b5..9c992a484 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/test/B3MultiPropagator.test.ts +++ b/pkgs/propagators/b3/test/B3MultiPropagator.test.ts @@ -20,9 +20,9 @@ import { SpanContext, trace, TraceFlags, -} from '@opentelemetry/api'; -import { ROOT_CONTEXT } from '@opentelemetry/api'; -import { suppressTracing } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { ROOT_CONTEXT } from '@opentelemetry/sandbox-api'; +import { suppressTracing } from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import { B3MultiPropagator } from '../src/B3MultiPropagator'; import { diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/test/B3Propagator.test.ts b/pkgs/propagators/b3/test/B3Propagator.test.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-propagator-b3/test/B3Propagator.test.ts rename to pkgs/propagators/b3/test/B3Propagator.test.ts index 20ebcf3cd..db6f20cc9 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/test/B3Propagator.test.ts +++ b/pkgs/propagators/b3/test/B3Propagator.test.ts @@ -21,8 +21,8 @@ import { TraceFlags, ROOT_CONTEXT, trace, -} from '@opentelemetry/api'; -import { suppressTracing } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { suppressTracing } from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import { B3Propagator } from '../src/B3Propagator'; import { diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/test/B3SinglePropagator.test.ts b/pkgs/propagators/b3/test/B3SinglePropagator.test.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-propagator-b3/test/B3SinglePropagator.test.ts rename to pkgs/propagators/b3/test/B3SinglePropagator.test.ts index 231a111ff..4b86806ed 100644 --- a/auto-merge/js/packages/opentelemetry-propagator-b3/test/B3SinglePropagator.test.ts +++ b/pkgs/propagators/b3/test/B3SinglePropagator.test.ts @@ -23,8 +23,8 @@ import { SpanContext, TraceFlags, trace, -} from '@opentelemetry/api'; -import { suppressTracing } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { suppressTracing } from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import { B3SinglePropagator } from '../src/B3SinglePropagator'; import { B3_DEBUG_FLAG_KEY } from '../src/common'; diff --git a/pkgs/propagators/b3/test/index-webpack.ts b/pkgs/propagators/b3/test/index-webpack.ts new file mode 100644 index 000000000..99a230aa7 --- /dev/null +++ b/pkgs/propagators/b3/test/index-webpack.ts @@ -0,0 +1,20 @@ +/*! + * 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 + * + * 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. +*/ + +{ + const testsContext = require.context('./', false, /test$/); + testsContext.keys().forEach(testsContext); +} diff --git a/pkgs/propagators/b3/tsconfig.esm.json b/pkgs/propagators/b3/tsconfig.esm.json new file mode 100644 index 000000000..d0d0ce24d --- /dev/null +++ b/pkgs/propagators/b3/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/propagators/b3/tsconfig.esnext.json b/pkgs/propagators/b3/tsconfig.esnext.json new file mode 100644 index 000000000..8e1d797d3 --- /dev/null +++ b/pkgs/propagators/b3/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/propagators/b3/tsconfig.json b/pkgs/propagators/b3/tsconfig.json new file mode 100644 index 000000000..e4729001d --- /dev/null +++ b/pkgs/propagators/b3/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "files": [], + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/.eslintignore b/pkgs/resources/.eslintignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-propagator-b3/.eslintignore rename to pkgs/resources/.eslintignore diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/.eslintrc.js b/pkgs/resources/.eslintrc.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-propagator-b3/.eslintrc.js rename to pkgs/resources/.eslintrc.js diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/.npmignore b/pkgs/resources/.npmignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-propagator-b3/.npmignore rename to pkgs/resources/.npmignore diff --git a/auto-merge/js/packages/opentelemetry-resources/LICENSE b/pkgs/resources/LICENSE similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/LICENSE rename to pkgs/resources/LICENSE diff --git a/auto-merge/js/packages/opentelemetry-resources/README.md b/pkgs/resources/README.md similarity index 92% rename from auto-merge/js/packages/opentelemetry-resources/README.md rename to pkgs/resources/README.md index 8b379ec18..0a42a064a 100644 --- a/auto-merge/js/packages/opentelemetry-resources/README.md +++ b/pkgs/resources/README.md @@ -16,8 +16,8 @@ npm install --save @opentelemetry/resources ## Usage ```typescript -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; -import { Resource } from '@opentelemetry/resources'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; +import { Resource } from '@opentelemetry/sandbox-resources'; const resource = new Resource({ [SemanticResourceAttributes.SERVICE_NAME]: 'api-service', diff --git a/auto-merge/js/packages/sdk-metrics/karma.conf.js b/pkgs/resources/karma.conf.js similarity index 100% rename from auto-merge/js/packages/sdk-metrics/karma.conf.js rename to pkgs/resources/karma.conf.js diff --git a/pkgs/resources/karma.debug.conf.js b/pkgs/resources/karma.debug.conf.js new file mode 100644 index 000000000..e2d096d8e --- /dev/null +++ b/pkgs/resources/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/auto-merge/js/packages/opentelemetry-resources/karma.worker.js b/pkgs/resources/karma.worker.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/karma.worker.js rename to pkgs/resources/karma.worker.js diff --git a/auto-merge/js/packages/opentelemetry-resources/package.json b/pkgs/resources/package.json similarity index 52% rename from auto-merge/js/packages/opentelemetry-resources/package.json rename to pkgs/resources/package.json index a6bb86ecc..fa526d5be 100644 --- a/auto-merge/js/packages/opentelemetry-resources/package.json +++ b/pkgs/resources/package.json @@ -1,5 +1,5 @@ { - "name": "@opentelemetry/resources", + "name": "@opentelemetry/sandbox-resources", "version": "1.13.0", "description": "OpenTelemetry SDK resources", "main": "build/src/index.js", @@ -14,22 +14,27 @@ "types": "build/src/index.d.ts", "repository": "open-telemetry/opentelemetry-js", "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", "codecov:webworker": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", + "compile": "npm run build", "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix", - "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'", - "test:browser": "nyc karma start --single-run", - "test:webworker": "nyc karma start karma.worker.js --single-run", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", "tdd": "npm run test -- --watch-extensions ts --watch", - "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "nyc karma start karma.worker.js --single-run", "version": "node ../../scripts/version-update.js", - "precompile": "lerna run version --scope $(npm pkg get name) --include-dependencies", - "prewatch": "npm run precompile", - "peer-api-check": "node ../../scripts/peer-api-check.js" + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" }, "keywords": [ "opentelemetry", @@ -61,37 +66,55 @@ "access": "public" }, "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/node": "18.6.5", - "@types/sinon": "10.0.13", + "@opentelemetry/resources": "npm:@opentelemetry/resources@1.9.0", + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", "@types/webpack-env": "1.16.3", - "codecov": "3.8.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", "karma": "6.3.16", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", - "karma-mocha": "2.0.1", + "karma-mocha": "^2.0.1", "karma-mocha-webworker": "1.3.0", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "4.0.2", + "karma-spec-reporter": "^0.0.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", "mocha": "10.0.0", "nock": "13.0.11", - "nyc": "15.1.0", - "sinon": "15.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", "webpack-cli": "4.9.1", "webpack-merge": "5.8.0" }, "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/sandbox-api": "1.4.1" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-semantic-conventions": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-resources", "sideEffects": false -} +} \ No newline at end of file diff --git a/pkgs/resources/rollup.config.js b/pkgs/resources/rollup.config.js new file mode 100644 index 000000000..45c421e62 --- /dev/null +++ b/pkgs/resources/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.resources", inputName, "otel-sndbx.resources", version); diff --git a/auto-merge/js/packages/opentelemetry-resources/src/IResource.ts b/pkgs/resources/src/IResource.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/IResource.ts rename to pkgs/resources/src/IResource.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/Resource.ts b/pkgs/resources/src/Resource.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-resources/src/Resource.ts rename to pkgs/resources/src/Resource.ts index dfddda8ae..8cf590521 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/Resource.ts +++ b/pkgs/resources/src/Resource.ts @@ -14,9 +14,9 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; -import { SDK_INFO } from '@opentelemetry/core'; +import { diag } from '@opentelemetry/sandbox-api'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; +import { SDK_INFO } from '@opentelemetry/sandbox-core'; import { ResourceAttributes } from './types'; import { defaultServiceName } from './platform'; import { IResource } from './IResource'; diff --git a/auto-merge/js/packages/opentelemetry-resources/src/config.ts b/pkgs/resources/src/config.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/config.ts rename to pkgs/resources/src/config.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/detect-resources.ts b/pkgs/resources/src/detect-resources.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-resources/src/detect-resources.ts rename to pkgs/resources/src/detect-resources.ts index be6943f81..d66450d67 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/detect-resources.ts +++ b/pkgs/resources/src/detect-resources.ts @@ -16,7 +16,7 @@ import { Resource } from './Resource'; import { ResourceDetectionConfig } from './config'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import { isPromiseLike } from './utils'; import { Detector, DetectorSync } from './types'; import { IResource } from './IResource'; diff --git a/auto-merge/js/packages/opentelemetry-resources/src/detectors/BrowserDetector.ts b/pkgs/resources/src/detectors/BrowserDetector.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/detectors/BrowserDetector.ts rename to pkgs/resources/src/detectors/BrowserDetector.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/detectors/BrowserDetectorSync.ts b/pkgs/resources/src/detectors/BrowserDetectorSync.ts similarity index 93% rename from auto-merge/js/packages/opentelemetry-resources/src/detectors/BrowserDetectorSync.ts rename to pkgs/resources/src/detectors/BrowserDetectorSync.ts index b58fea94c..ab03ef92e 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/detectors/BrowserDetectorSync.ts +++ b/pkgs/resources/src/detectors/BrowserDetectorSync.ts @@ -14,10 +14,10 @@ * limitations under the License. */ -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { DetectorSync, IResource, Resource, ResourceDetectionConfig } from '..'; import { ResourceAttributes } from '../types'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; /** * BrowserDetectorSync will be used to detect the resources related to browser. diff --git a/auto-merge/js/packages/opentelemetry-resources/src/detectors/EnvDetector.ts b/pkgs/resources/src/detectors/EnvDetector.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/detectors/EnvDetector.ts rename to pkgs/resources/src/detectors/EnvDetector.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/detectors/EnvDetectorSync.ts b/pkgs/resources/src/detectors/EnvDetectorSync.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-resources/src/detectors/EnvDetectorSync.ts rename to pkgs/resources/src/detectors/EnvDetectorSync.ts index 1230657e1..86502a639 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/detectors/EnvDetectorSync.ts +++ b/pkgs/resources/src/detectors/EnvDetectorSync.ts @@ -14,9 +14,9 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; -import { getEnv } from '@opentelemetry/core'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { diag } from '@opentelemetry/sandbox-api'; +import { getEnv } from '@opentelemetry/sandbox-core'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { Resource } from '../Resource'; import { DetectorSync, ResourceAttributes } from '../types'; import { ResourceDetectionConfig } from '../config'; diff --git a/auto-merge/js/packages/opentelemetry-resources/src/detectors/NoopDetector.ts b/pkgs/resources/src/detectors/NoopDetector.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/detectors/NoopDetector.ts rename to pkgs/resources/src/detectors/NoopDetector.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/detectors/NoopDetectorSync.ts b/pkgs/resources/src/detectors/NoopDetectorSync.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/detectors/NoopDetectorSync.ts rename to pkgs/resources/src/detectors/NoopDetectorSync.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/detectors/index.ts b/pkgs/resources/src/detectors/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/detectors/index.ts rename to pkgs/resources/src/detectors/index.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/index.ts b/pkgs/resources/src/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/index.ts rename to pkgs/resources/src/index.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/browser/HostDetector.ts b/pkgs/resources/src/platform/browser/HostDetector.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/browser/HostDetector.ts rename to pkgs/resources/src/platform/browser/HostDetector.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/browser/HostDetectorSync.ts b/pkgs/resources/src/platform/browser/HostDetectorSync.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/browser/HostDetectorSync.ts rename to pkgs/resources/src/platform/browser/HostDetectorSync.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/browser/OSDetector.ts b/pkgs/resources/src/platform/browser/OSDetector.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/browser/OSDetector.ts rename to pkgs/resources/src/platform/browser/OSDetector.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/browser/OSDetectorSync.ts b/pkgs/resources/src/platform/browser/OSDetectorSync.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/browser/OSDetectorSync.ts rename to pkgs/resources/src/platform/browser/OSDetectorSync.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/browser/ProcessDetector.ts b/pkgs/resources/src/platform/browser/ProcessDetector.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/browser/ProcessDetector.ts rename to pkgs/resources/src/platform/browser/ProcessDetector.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/browser/ProcessDetectorSync.ts b/pkgs/resources/src/platform/browser/ProcessDetectorSync.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/browser/ProcessDetectorSync.ts rename to pkgs/resources/src/platform/browser/ProcessDetectorSync.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/browser/default-service-name.ts b/pkgs/resources/src/platform/browser/default-service-name.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/browser/default-service-name.ts rename to pkgs/resources/src/platform/browser/default-service-name.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/browser/index.ts b/pkgs/resources/src/platform/browser/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/browser/index.ts rename to pkgs/resources/src/platform/browser/index.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/index.ts b/pkgs/resources/src/platform/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/index.ts rename to pkgs/resources/src/platform/index.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/HostDetector.ts b/pkgs/resources/src/platform/node/HostDetector.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/HostDetector.ts rename to pkgs/resources/src/platform/node/HostDetector.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/HostDetectorSync.ts b/pkgs/resources/src/platform/node/HostDetectorSync.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/HostDetectorSync.ts rename to pkgs/resources/src/platform/node/HostDetectorSync.ts index 9bd5e6cb5..84ec92bda 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/HostDetectorSync.ts +++ b/pkgs/resources/src/platform/node/HostDetectorSync.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { Resource } from '../../Resource'; import { DetectorSync, ResourceAttributes } from '../../types'; import { ResourceDetectionConfig } from '../../config'; diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/OSDetector.ts b/pkgs/resources/src/platform/node/OSDetector.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/OSDetector.ts rename to pkgs/resources/src/platform/node/OSDetector.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/OSDetectorSync.ts b/pkgs/resources/src/platform/node/OSDetectorSync.ts similarity index 93% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/OSDetectorSync.ts rename to pkgs/resources/src/platform/node/OSDetectorSync.ts index 9cb6a0385..aa8fa53c9 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/OSDetectorSync.ts +++ b/pkgs/resources/src/platform/node/OSDetectorSync.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { Resource } from '../../Resource'; import { DetectorSync, ResourceAttributes } from '../../types'; import { ResourceDetectionConfig } from '../../config'; diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/ProcessDetector.ts b/pkgs/resources/src/platform/node/ProcessDetector.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/ProcessDetector.ts rename to pkgs/resources/src/platform/node/ProcessDetector.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/ProcessDetectorSync.ts b/pkgs/resources/src/platform/node/ProcessDetectorSync.ts similarity index 93% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/ProcessDetectorSync.ts rename to pkgs/resources/src/platform/node/ProcessDetectorSync.ts index 4cad06a45..06c93478d 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/ProcessDetectorSync.ts +++ b/pkgs/resources/src/platform/node/ProcessDetectorSync.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { diag } from '@opentelemetry/sandbox-api'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { Resource } from '../../Resource'; import { DetectorSync, ResourceAttributes } from '../../types'; import { ResourceDetectionConfig } from '../../config'; diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/default-service-name.ts b/pkgs/resources/src/platform/node/default-service-name.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/default-service-name.ts rename to pkgs/resources/src/platform/node/default-service-name.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/index.ts b/pkgs/resources/src/platform/node/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/index.ts rename to pkgs/resources/src/platform/node/index.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/execAsync.ts b/pkgs/resources/src/platform/node/machine-id/execAsync.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/execAsync.ts rename to pkgs/resources/src/platform/node/machine-id/execAsync.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-bsd.ts b/pkgs/resources/src/platform/node/machine-id/getMachineId-bsd.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-bsd.ts rename to pkgs/resources/src/platform/node/machine-id/getMachineId-bsd.ts index eb6dd1be4..23b6555aa 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-bsd.ts +++ b/pkgs/resources/src/platform/node/machine-id/getMachineId-bsd.ts @@ -16,7 +16,7 @@ import { promises as fs } from 'fs'; import { execAsync } from './execAsync'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; export async function getMachineId(): Promise { try { diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-darwin.ts b/pkgs/resources/src/platform/node/machine-id/getMachineId-darwin.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-darwin.ts rename to pkgs/resources/src/platform/node/machine-id/getMachineId-darwin.ts index 7f6975ef5..70eab492d 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-darwin.ts +++ b/pkgs/resources/src/platform/node/machine-id/getMachineId-darwin.ts @@ -15,7 +15,7 @@ */ import { execAsync } from './execAsync'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; export async function getMachineId(): Promise { try { diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-linux.ts b/pkgs/resources/src/platform/node/machine-id/getMachineId-linux.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-linux.ts rename to pkgs/resources/src/platform/node/machine-id/getMachineId-linux.ts index 9ebfe58e8..1fc7da385 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-linux.ts +++ b/pkgs/resources/src/platform/node/machine-id/getMachineId-linux.ts @@ -14,7 +14,7 @@ * limitations under the License. */ import { promises as fs } from 'fs'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; export async function getMachineId(): Promise { const paths = ['/etc/machine-id', '/var/lib/dbus/machine-id']; diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-unsupported.ts b/pkgs/resources/src/platform/node/machine-id/getMachineId-unsupported.ts similarity index 93% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-unsupported.ts rename to pkgs/resources/src/platform/node/machine-id/getMachineId-unsupported.ts index cc05ca1c2..9023941cd 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-unsupported.ts +++ b/pkgs/resources/src/platform/node/machine-id/getMachineId-unsupported.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; export async function getMachineId(): Promise { diag.debug('could not read machine-id: unsupported platform'); diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-win.ts b/pkgs/resources/src/platform/node/machine-id/getMachineId-win.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-win.ts rename to pkgs/resources/src/platform/node/machine-id/getMachineId-win.ts index 05e9d3b7c..5f3397c2d 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId-win.ts +++ b/pkgs/resources/src/platform/node/machine-id/getMachineId-win.ts @@ -16,7 +16,7 @@ import * as process from 'process'; import { execAsync } from './execAsync'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; export async function getMachineId(): Promise { const args = diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId.ts b/pkgs/resources/src/platform/node/machine-id/getMachineId.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/machine-id/getMachineId.ts rename to pkgs/resources/src/platform/node/machine-id/getMachineId.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/platform/node/utils.ts b/pkgs/resources/src/platform/node/utils.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/platform/node/utils.ts rename to pkgs/resources/src/platform/node/utils.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/src/types.ts b/pkgs/resources/src/types.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-resources/src/types.ts rename to pkgs/resources/src/types.ts index d20c09faa..5fd24e504 100644 --- a/auto-merge/js/packages/opentelemetry-resources/src/types.ts +++ b/pkgs/resources/src/types.ts @@ -15,7 +15,7 @@ */ import { ResourceDetectionConfig } from './config'; -import { SpanAttributes } from '@opentelemetry/api'; +import { SpanAttributes } from '@opentelemetry/sandbox-api'; import { IResource } from './IResource'; /** diff --git a/auto-merge/js/packages/opentelemetry-resources/src/utils.ts b/pkgs/resources/src/utils.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/src/utils.ts rename to pkgs/resources/src/utils.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/Resource.test.ts b/pkgs/resources/test/Resource.test.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-resources/test/Resource.test.ts rename to pkgs/resources/test/Resource.test.ts index b35554228..039e82627 100644 --- a/auto-merge/js/packages/opentelemetry-resources/test/Resource.test.ts +++ b/pkgs/resources/test/Resource.test.ts @@ -16,12 +16,12 @@ import * as sinon from 'sinon'; import * as assert from 'assert'; -import { SDK_INFO } from '@opentelemetry/core'; +import { SDK_INFO } from '@opentelemetry/sandbox-core'; import { Resource, ResourceAttributes } from '../src'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { describeBrowser, describeNode } from './util'; -import { diag } from '@opentelemetry/api'; -import { Resource as Resource190 } from '@opentelemetry/resources_1.9.0'; +import { diag } from '@opentelemetry/sandbox-api'; +import { Resource as Resource190 } from '@opentelemetry/resources'; describe('Resource', () => { const resource1 = new Resource({ diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detect-resources.test.ts b/pkgs/resources/test/detect-resources.test.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-resources/test/detect-resources.test.ts rename to pkgs/resources/test/detect-resources.test.ts index 0db97057d..c0155361b 100644 --- a/auto-merge/js/packages/opentelemetry-resources/test/detect-resources.test.ts +++ b/pkgs/resources/test/detect-resources.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { Resource, Detector, detectResourcesSync, DetectorSync } from '../src'; diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/BrowserDetector.test.ts b/pkgs/resources/test/detectors/browser/BrowserDetector.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/BrowserDetector.test.ts rename to pkgs/resources/test/detectors/browser/BrowserDetector.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/EnvDetector.test.ts b/pkgs/resources/test/detectors/browser/EnvDetector.test.ts similarity index 94% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/EnvDetector.test.ts rename to pkgs/resources/test/detectors/browser/EnvDetector.test.ts index 890159577..e2f418a2d 100644 --- a/auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/EnvDetector.test.ts +++ b/pkgs/resources/test/detectors/browser/EnvDetector.test.ts @@ -15,8 +15,8 @@ */ import * as assert from 'assert'; -import { RAW_ENVIRONMENT } from '@opentelemetry/core'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { RAW_ENVIRONMENT } from '@opentelemetry/sandbox-core'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { envDetector, IResource } from '../../../src'; import { assertEmptyResource, diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/HostDetector.test.ts b/pkgs/resources/test/detectors/browser/HostDetector.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/HostDetector.test.ts rename to pkgs/resources/test/detectors/browser/HostDetector.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/OSDetector.test.ts b/pkgs/resources/test/detectors/browser/OSDetector.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/OSDetector.test.ts rename to pkgs/resources/test/detectors/browser/OSDetector.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/ProcessDetector.test.ts b/pkgs/resources/test/detectors/browser/ProcessDetector.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/browser/ProcessDetector.test.ts rename to pkgs/resources/test/detectors/browser/ProcessDetector.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/BrowserDetector.test.ts b/pkgs/resources/test/detectors/node/BrowserDetector.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/node/BrowserDetector.test.ts rename to pkgs/resources/test/detectors/node/BrowserDetector.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/EnvDetector.test.ts b/pkgs/resources/test/detectors/node/EnvDetector.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/node/EnvDetector.test.ts rename to pkgs/resources/test/detectors/node/EnvDetector.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/HostDetector.test.ts b/pkgs/resources/test/detectors/node/HostDetector.test.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/node/HostDetector.test.ts rename to pkgs/resources/test/detectors/node/HostDetector.test.ts index 2e69de7e1..db99854dc 100644 --- a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/HostDetector.test.ts +++ b/pkgs/resources/test/detectors/node/HostDetector.test.ts @@ -16,7 +16,7 @@ import * as sinon from 'sinon'; import * as assert from 'assert'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { describeNode } from '../../util'; import { hostDetector, IResource } from '../../../src'; diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/OSDetector.test.ts b/pkgs/resources/test/detectors/node/OSDetector.test.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/node/OSDetector.test.ts rename to pkgs/resources/test/detectors/node/OSDetector.test.ts index 58b1989ec..75533b240 100644 --- a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/OSDetector.test.ts +++ b/pkgs/resources/test/detectors/node/OSDetector.test.ts @@ -16,7 +16,7 @@ import * as sinon from 'sinon'; import * as assert from 'assert'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { describeNode } from '../../util'; import { osDetector, IResource } from '../../../src'; diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/ProcessDetector.test.ts b/pkgs/resources/test/detectors/node/ProcessDetector.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/node/ProcessDetector.test.ts rename to pkgs/resources/test/detectors/node/ProcessDetector.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/machine-id/getMachineId-bsd.test.ts b/pkgs/resources/test/detectors/node/machine-id/getMachineId-bsd.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/node/machine-id/getMachineId-bsd.test.ts rename to pkgs/resources/test/detectors/node/machine-id/getMachineId-bsd.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/machine-id/getMachineId-darwin.test.ts b/pkgs/resources/test/detectors/node/machine-id/getMachineId-darwin.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/node/machine-id/getMachineId-darwin.test.ts rename to pkgs/resources/test/detectors/node/machine-id/getMachineId-darwin.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/machine-id/getMachineId-linux.test.ts b/pkgs/resources/test/detectors/node/machine-id/getMachineId-linux.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/node/machine-id/getMachineId-linux.test.ts rename to pkgs/resources/test/detectors/node/machine-id/getMachineId-linux.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/detectors/node/machine-id/getMachineId-win.test.ts b/pkgs/resources/test/detectors/node/machine-id/getMachineId-win.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/detectors/node/machine-id/getMachineId-win.test.ts rename to pkgs/resources/test/detectors/node/machine-id/getMachineId-win.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/index-webpack.ts b/pkgs/resources/test/index-webpack.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/index-webpack.ts rename to pkgs/resources/test/index-webpack.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/index-webpack.worker.ts b/pkgs/resources/test/index-webpack.worker.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/index-webpack.worker.ts rename to pkgs/resources/test/index-webpack.worker.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/regression/existing-detectors-1-9-1.test.ts b/pkgs/resources/test/regression/existing-detectors-1-9-1.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/regression/existing-detectors-1-9-1.test.ts rename to pkgs/resources/test/regression/existing-detectors-1-9-1.test.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/resource-assertions.test.ts b/pkgs/resources/test/resource-assertions.test.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-resources/test/resource-assertions.test.ts rename to pkgs/resources/test/resource-assertions.test.ts index cde2b8a9f..b2b77f96f 100644 --- a/auto-merge/js/packages/opentelemetry-resources/test/resource-assertions.test.ts +++ b/pkgs/resources/test/resource-assertions.test.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { SDK_INFO } from '@opentelemetry/core'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { SDK_INFO } from '@opentelemetry/sandbox-core'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { Resource } from '../src/Resource'; import { assertCloudResource, diff --git a/auto-merge/js/packages/opentelemetry-resources/test/util.ts b/pkgs/resources/test/util.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/test/util.ts rename to pkgs/resources/test/util.ts diff --git a/auto-merge/js/packages/opentelemetry-resources/test/util/resource-assertions.ts b/pkgs/resources/test/util/resource-assertions.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-resources/test/util/resource-assertions.ts rename to pkgs/resources/test/util/resource-assertions.ts index 02f1a70dd..159ecac14 100644 --- a/auto-merge/js/packages/opentelemetry-resources/test/util/resource-assertions.ts +++ b/pkgs/resources/test/util/resource-assertions.ts @@ -14,10 +14,10 @@ * limitations under the License. */ -import { SDK_INFO } from '@opentelemetry/core'; +import { SDK_INFO } from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import { IResource } from '../../src/IResource'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; /** * Test utility method to validate a cloud resource diff --git a/auto-merge/js/packages/opentelemetry-resources/test/util/sample-detector.ts b/pkgs/resources/test/util/sample-detector.ts similarity index 93% rename from auto-merge/js/packages/opentelemetry-resources/test/util/sample-detector.ts rename to pkgs/resources/test/util/sample-detector.ts index 841a76095..650a56f63 100644 --- a/auto-merge/js/packages/opentelemetry-resources/test/util/sample-detector.ts +++ b/pkgs/resources/test/util/sample-detector.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { Detector, Resource } from '../../src'; class SampleDetector implements Detector { diff --git a/pkgs/resources/tsconfig.esm.json b/pkgs/resources/tsconfig.esm.json new file mode 100644 index 000000000..6f96cbec1 --- /dev/null +++ b/pkgs/resources/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/resources/tsconfig.esnext.json b/pkgs/resources/tsconfig.esnext.json new file mode 100644 index 000000000..2525ac36a --- /dev/null +++ b/pkgs/resources/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/resources/tsconfig.json b/pkgs/resources/tsconfig.json new file mode 100644 index 000000000..cb48d4258 --- /dev/null +++ b/pkgs/resources/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "files": [], + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-resources/.eslintignore b/pkgs/sdk/logs/.eslintignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/.eslintignore rename to pkgs/sdk/logs/.eslintignore diff --git a/auto-merge/js/experimental/packages/sdk-logs/.eslintrc.js b/pkgs/sdk/logs/.eslintrc.js similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/.eslintrc.js rename to pkgs/sdk/logs/.eslintrc.js diff --git a/auto-merge/js/packages/opentelemetry-resources/.npmignore b/pkgs/sdk/logs/.npmignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/.npmignore rename to pkgs/sdk/logs/.npmignore diff --git a/auto-merge/js/packages/opentelemetry-propagator-b3/LICENSE b/pkgs/sdk/logs/LICENSE similarity index 100% rename from auto-merge/js/packages/opentelemetry-propagator-b3/LICENSE rename to pkgs/sdk/logs/LICENSE diff --git a/auto-merge/js/experimental/packages/sdk-logs/README.md b/pkgs/sdk/logs/README.md similarity index 96% rename from auto-merge/js/experimental/packages/sdk-logs/README.md rename to pkgs/sdk/logs/README.md index e68654f99..5c4673693 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/README.md +++ b/pkgs/sdk/logs/README.md @@ -23,12 +23,12 @@ npm install --save @opentelemetry/sdk-logs The basic setup of the SDK can be seen as followings: ```js -const logsAPI = require('@opentelemetry/api-logs'); +const logsAPI = require('@opentelemetry/sandbox-api-logs'); const { LoggerProvider, SimpleLogRecordProcessor, ConsoleLogRecordExporter, -} = require('@opentelemetry/sdk-logs'); +} = require('@opentelemetry/sandbox-sdk-logs'); // To start a logger, you first need to initialize the Logger provider. const loggerProvider = new LoggerProvider(); diff --git a/auto-merge/js/experimental/packages/sdk-logs/karma.conf.js b/pkgs/sdk/logs/karma.conf.js similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/karma.conf.js rename to pkgs/sdk/logs/karma.conf.js diff --git a/pkgs/sdk/logs/karma.debug.conf.js b/pkgs/sdk/logs/karma.debug.conf.js new file mode 100644 index 000000000..490933fdc --- /dev/null +++ b/pkgs/sdk/logs/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/sdk/logs/karma.webpack.js b/pkgs/sdk/logs/karma.webpack.js new file mode 100644 index 000000000..bc821e073 --- /dev/null +++ b/pkgs/sdk/logs/karma.webpack.js @@ -0,0 +1,42 @@ +/*! + * 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 + * + * 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. +*/ + +const webpackNodePolyfills = require("../../../webpack.node-polyfills.js"); + +module.exports = { + mode: "development", + target: "web", + output: { filename: "bundle.js" }, + resolve: { extensions: [".ts", ".js"] }, + devtool: "inline-source-map", + module: { + rules: [ + { test: /.ts$/, use: "ts-loader" }, + { + enforce: "post", + exclude: /(node_modules|.test.[tj]sx?$)/, + test: /.ts$/, + use: { + loader: "istanbul-instrumenter-loader", + options: { esModules: true } + } + }, + // This setting configures Node polyfills for the browser that will be + // added to the webpack bundle for Karma tests. + { parser: { node: webpackNodePolyfills } } + ] + } +}; diff --git a/pkgs/sdk/logs/karma.worker.js b/pkgs/sdk/logs/karma.worker.js new file mode 100644 index 000000000..eb6ee53e9 --- /dev/null +++ b/pkgs/sdk/logs/karma.worker.js @@ -0,0 +1,24 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaWebpackConfig = require('../../../karma.webpack'); +const karmaBaseConfig = require('../../../karma.worker'); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + webpack: karmaWebpackConfig, + })) +}; diff --git a/pkgs/sdk/logs/package.json b/pkgs/sdk/logs/package.json new file mode 100644 index 000000000..300a1a673 --- /dev/null +++ b/pkgs/sdk/logs/package.json @@ -0,0 +1,123 @@ +{ + "name": "@opentelemetry/sandbox-sdk-logs", + "version": "0.39.1", + "publishConfig": { + "access": "public" + }, + "description": "OpenTelemetry logs SDK", + "author": "OpenTelemetry Authors", + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/sdk-logs", + "license": "Apache-2.0", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "browser": { + "./src/platform/index.ts": "./src/platform/browser/index.ts", + "./build/esm/platform/index.js": "./build/esm/platform/browser/index.js", + "./build/esnext/platform/index.js": "./build/esnext/platform/browser/index.js", + "./build/src/platform/index.js": "./build/src/platform/browser/index.js" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/open-telemetry/opentelemetry-js.git" + }, + "bugs": { + "url": "https://github.com/open-telemetry/opentelemetry-js/issues" + }, + "engines": { + "node": ">=14" + }, + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "npm run test -- --watch-extensions ts --watch", + "tdd:browser": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", + "version": "node ../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "nodejs", + "logs", + "stats", + "profiling" + ], + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "sideEffects": false, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1", + "@opentelemetry/sandbox-api-logs": "0.39.1" + }, + "devDependencies": { + "@opentelemetry/sandbox-api": "1.4.1", + "@opentelemetry/sandbox-api-logs": "0.39.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-resources": "1.13.0" + } +} \ No newline at end of file diff --git a/pkgs/sdk/logs/rollup.config.js b/pkgs/sdk/logs/rollup.config.js new file mode 100644 index 000000000..c9b5c9c18 --- /dev/null +++ b/pkgs/sdk/logs/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.sdk-logs", inputName, "otel-sndbx.sdk-logs", version); diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/LogRecord.ts b/pkgs/sdk/logs/src/LogRecord.ts similarity index 95% rename from auto-merge/js/experimental/packages/sdk-logs/src/LogRecord.ts rename to pkgs/sdk/logs/src/LogRecord.ts index 9d3e909fe..b34a2e9fb 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/LogRecord.ts +++ b/pkgs/sdk/logs/src/LogRecord.ts @@ -14,15 +14,15 @@ * limitations under the License. */ -import { Attributes, AttributeValue, diag } from '@opentelemetry/api'; -import type * as logsAPI from '@opentelemetry/api-logs'; -import * as api from '@opentelemetry/api'; +import { Attributes, AttributeValue, diag } from '@opentelemetry/sandbox-api'; +import type * as logsAPI from '@opentelemetry/sandbox-api-logs'; +import * as api from '@opentelemetry/sandbox-api'; import { timeInputToHrTime, isAttributeValue, InstrumentationScope, -} from '@opentelemetry/core'; -import type { IResource } from '@opentelemetry/resources'; +} from '@opentelemetry/sandbox-core'; +import type { IResource } from '@opentelemetry/sandbox-resources'; import type { ReadableLogRecord } from './export/ReadableLogRecord'; import type { LogRecordLimits } from './types'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/LogRecordProcessor.ts b/pkgs/sdk/logs/src/LogRecordProcessor.ts similarity index 95% rename from auto-merge/js/experimental/packages/sdk-logs/src/LogRecordProcessor.ts rename to pkgs/sdk/logs/src/LogRecordProcessor.ts index c68a26c90..26734ee55 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/LogRecordProcessor.ts +++ b/pkgs/sdk/logs/src/LogRecordProcessor.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context } from '@opentelemetry/api'; +import { Context } from '@opentelemetry/sandbox-api'; import { LogRecord } from './LogRecord'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/Logger.ts b/pkgs/sdk/logs/src/Logger.ts similarity index 90% rename from auto-merge/js/experimental/packages/sdk-logs/src/Logger.ts rename to pkgs/sdk/logs/src/Logger.ts index 5ea4e8f28..c612cde2c 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/Logger.ts +++ b/pkgs/sdk/logs/src/Logger.ts @@ -14,10 +14,10 @@ * limitations under the License. */ -import type * as logsAPI from '@opentelemetry/api-logs'; -import type { IResource } from '@opentelemetry/resources'; -import type { InstrumentationScope } from '@opentelemetry/core'; -import { context } from '@opentelemetry/api'; +import type * as logsAPI from '@opentelemetry/sandbox-api-logs'; +import type { IResource } from '@opentelemetry/sandbox-resources'; +import type { InstrumentationScope } from '@opentelemetry/sandbox-core'; +import { context } from '@opentelemetry/sandbox-api'; import type { LoggerConfig, LogRecordLimits } from './types'; import { LogRecord } from './LogRecord'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/LoggerProvider.ts b/pkgs/sdk/logs/src/LoggerProvider.ts similarity index 93% rename from auto-merge/js/experimental/packages/sdk-logs/src/LoggerProvider.ts rename to pkgs/sdk/logs/src/LoggerProvider.ts index 81515dab8..da83039c4 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/LoggerProvider.ts +++ b/pkgs/sdk/logs/src/LoggerProvider.ts @@ -13,11 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { diag } from '@opentelemetry/api'; -import type * as logsAPI from '@opentelemetry/api-logs'; -import { NOOP_LOGGER } from '@opentelemetry/api-logs'; -import { IResource, Resource } from '@opentelemetry/resources'; -import { BindOnceFuture, merge } from '@opentelemetry/core'; +import { diag } from '@opentelemetry/sandbox-api'; +import type * as logsAPI from '@opentelemetry/sandbox-api-logs'; +import { NOOP_LOGGER } from '@opentelemetry/sandbox-api-logs'; +import { IResource, Resource } from '@opentelemetry/sandbox-resources'; +import { BindOnceFuture, merge } from '@opentelemetry/sandbox-core'; import type { LoggerProviderConfig } from './types'; import type { LogRecordProcessor } from './LogRecordProcessor'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/MultiLogRecordProcessor.ts b/pkgs/sdk/logs/src/MultiLogRecordProcessor.ts similarity index 96% rename from auto-merge/js/experimental/packages/sdk-logs/src/MultiLogRecordProcessor.ts rename to pkgs/sdk/logs/src/MultiLogRecordProcessor.ts index c4e503126..d0a664365 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/MultiLogRecordProcessor.ts +++ b/pkgs/sdk/logs/src/MultiLogRecordProcessor.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { callWithTimeout } from '@opentelemetry/core'; +import { callWithTimeout } from '@opentelemetry/sandbox-core'; import type { LogRecordProcessor } from './LogRecordProcessor'; import type { LogRecord } from './LogRecord'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/config.ts b/pkgs/sdk/logs/src/config.ts similarity index 98% rename from auto-merge/js/experimental/packages/sdk-logs/src/config.ts rename to pkgs/sdk/logs/src/config.ts index af908f165..00c734c6a 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/config.ts +++ b/pkgs/sdk/logs/src/config.ts @@ -19,7 +19,7 @@ import { DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT, getEnv, getEnvWithoutDefaults, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import { LoggerConfig } from './types'; export function loadDefaultConfig() { diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/export/BatchLogRecordProcessorBase.ts b/pkgs/sdk/logs/src/export/BatchLogRecordProcessorBase.ts similarity index 97% rename from auto-merge/js/experimental/packages/sdk-logs/src/export/BatchLogRecordProcessorBase.ts rename to pkgs/sdk/logs/src/export/BatchLogRecordProcessorBase.ts index 92d42fe44..7508fc78e 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/export/BatchLogRecordProcessorBase.ts +++ b/pkgs/sdk/logs/src/export/BatchLogRecordProcessorBase.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import type { ExportResult } from '@opentelemetry/core'; -import { diag } from '@opentelemetry/api'; +import type { ExportResult } from '@opentelemetry/sandbox-core'; +import { diag } from '@opentelemetry/sandbox-api'; import { ExportResultCode, getEnv, @@ -23,7 +23,7 @@ import { unrefTimer, callWithTimeout, BindOnceFuture, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import type { BufferConfig } from '../types'; import type { LogRecord } from '../LogRecord'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/export/ConsoleLogRecordExporter.ts b/pkgs/sdk/logs/src/export/ConsoleLogRecordExporter.ts similarity index 96% rename from auto-merge/js/experimental/packages/sdk-logs/src/export/ConsoleLogRecordExporter.ts rename to pkgs/sdk/logs/src/export/ConsoleLogRecordExporter.ts index edf7c0bf8..3433db5c4 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/export/ConsoleLogRecordExporter.ts +++ b/pkgs/sdk/logs/src/export/ConsoleLogRecordExporter.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { ExportResult, hrTimeToMicroseconds } from '@opentelemetry/core'; -import { ExportResultCode } from '@opentelemetry/core'; +import { ExportResult, hrTimeToMicroseconds } from '@opentelemetry/sandbox-core'; +import { ExportResultCode } from '@opentelemetry/sandbox-core'; import type { ReadableLogRecord } from './ReadableLogRecord'; import type { LogRecordExporter } from './LogRecordExporter'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/export/InMemoryLogRecordExporter.ts b/pkgs/sdk/logs/src/export/InMemoryLogRecordExporter.ts similarity index 93% rename from auto-merge/js/experimental/packages/sdk-logs/src/export/InMemoryLogRecordExporter.ts rename to pkgs/sdk/logs/src/export/InMemoryLogRecordExporter.ts index 526fd8ddd..8f4bb2fbf 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/export/InMemoryLogRecordExporter.ts +++ b/pkgs/sdk/logs/src/export/InMemoryLogRecordExporter.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import type { ExportResult } from '@opentelemetry/core'; -import { ExportResultCode } from '@opentelemetry/core'; +import type { ExportResult } from '@opentelemetry/sandbox-core'; +import { ExportResultCode } from '@opentelemetry/sandbox-core'; import type { ReadableLogRecord } from './ReadableLogRecord'; import type { LogRecordExporter } from './LogRecordExporter'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/export/LogRecordExporter.ts b/pkgs/sdk/logs/src/export/LogRecordExporter.ts similarity index 93% rename from auto-merge/js/experimental/packages/sdk-logs/src/export/LogRecordExporter.ts rename to pkgs/sdk/logs/src/export/LogRecordExporter.ts index 4fecb2a8c..c56973cb6 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/export/LogRecordExporter.ts +++ b/pkgs/sdk/logs/src/export/LogRecordExporter.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import type { ExportResult } from '@opentelemetry/core'; +import type { ExportResult } from '@opentelemetry/sandbox-core'; import type { ReadableLogRecord } from './ReadableLogRecord'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/export/NoopLogRecordProcessor.ts b/pkgs/sdk/logs/src/export/NoopLogRecordProcessor.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/src/export/NoopLogRecordProcessor.ts rename to pkgs/sdk/logs/src/export/NoopLogRecordProcessor.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/export/ReadableLogRecord.ts b/pkgs/sdk/logs/src/export/ReadableLogRecord.ts similarity index 81% rename from auto-merge/js/experimental/packages/sdk-logs/src/export/ReadableLogRecord.ts rename to pkgs/sdk/logs/src/export/ReadableLogRecord.ts index 72fe7d1d3..2bfab7fb0 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/export/ReadableLogRecord.ts +++ b/pkgs/sdk/logs/src/export/ReadableLogRecord.ts @@ -14,10 +14,10 @@ * limitations under the License. */ -import type { IResource } from '@opentelemetry/resources'; -import type { Attributes, HrTime, SpanContext } from '@opentelemetry/api'; -import type { InstrumentationScope } from '@opentelemetry/core'; -import type { SeverityNumber } from '@opentelemetry/api-logs'; +import type { IResource } from '@opentelemetry/sandbox-resources'; +import type { Attributes, HrTime, SpanContext } from '@opentelemetry/sandbox-api'; +import type { InstrumentationScope } from '@opentelemetry/sandbox-core'; +import type { SeverityNumber } from '@opentelemetry/sandbox-api-logs'; export interface ReadableLogRecord { readonly hrTime: HrTime; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/export/SimpleLogRecordProcessor.ts b/pkgs/sdk/logs/src/export/SimpleLogRecordProcessor.ts similarity index 94% rename from auto-merge/js/experimental/packages/sdk-logs/src/export/SimpleLogRecordProcessor.ts rename to pkgs/sdk/logs/src/export/SimpleLogRecordProcessor.ts index b516d55fc..801448d49 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/export/SimpleLogRecordProcessor.ts +++ b/pkgs/sdk/logs/src/export/SimpleLogRecordProcessor.ts @@ -14,12 +14,12 @@ * limitations under the License. */ -import type { ExportResult } from '@opentelemetry/core'; +import type { ExportResult } from '@opentelemetry/sandbox-core'; import { BindOnceFuture, ExportResultCode, globalErrorHandler, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import type { LogRecordExporter } from './LogRecordExporter'; import type { LogRecordProcessor } from '../LogRecordProcessor'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/index.ts b/pkgs/sdk/logs/src/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/src/index.ts rename to pkgs/sdk/logs/src/index.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/platform/browser/export/BatchLogRecordProcessor.ts b/pkgs/sdk/logs/src/platform/browser/export/BatchLogRecordProcessor.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/src/platform/browser/export/BatchLogRecordProcessor.ts rename to pkgs/sdk/logs/src/platform/browser/export/BatchLogRecordProcessor.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/platform/browser/index.ts b/pkgs/sdk/logs/src/platform/browser/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/src/platform/browser/index.ts rename to pkgs/sdk/logs/src/platform/browser/index.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/platform/index.ts b/pkgs/sdk/logs/src/platform/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/src/platform/index.ts rename to pkgs/sdk/logs/src/platform/index.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/platform/node/export/BatchLogRecordProcessor.ts b/pkgs/sdk/logs/src/platform/node/export/BatchLogRecordProcessor.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/src/platform/node/export/BatchLogRecordProcessor.ts rename to pkgs/sdk/logs/src/platform/node/export/BatchLogRecordProcessor.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/platform/node/index.ts b/pkgs/sdk/logs/src/platform/node/index.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/src/platform/node/index.ts rename to pkgs/sdk/logs/src/platform/node/index.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/src/types.ts b/pkgs/sdk/logs/src/types.ts similarity index 97% rename from auto-merge/js/experimental/packages/sdk-logs/src/types.ts rename to pkgs/sdk/logs/src/types.ts index 026843dc1..81a41a104 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/src/types.ts +++ b/pkgs/sdk/logs/src/types.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import type { IResource } from '@opentelemetry/resources'; +import type { IResource } from '@opentelemetry/sandbox-resources'; export interface LoggerProviderConfig { /** Resource associated with trace telemetry */ diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/browser/export/BatchLogRecordProcessor.test.ts b/pkgs/sdk/logs/test/browser/export/BatchLogRecordProcessor.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/test/browser/export/BatchLogRecordProcessor.test.ts rename to pkgs/sdk/logs/test/browser/export/BatchLogRecordProcessor.test.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/common/LogRecord.test.ts b/pkgs/sdk/logs/test/common/LogRecord.test.ts similarity index 98% rename from auto-merge/js/experimental/packages/sdk-logs/test/common/LogRecord.test.ts rename to pkgs/sdk/logs/test/common/LogRecord.test.ts index cc7ce8baf..b45c3c33d 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/test/common/LogRecord.test.ts +++ b/pkgs/sdk/logs/test/common/LogRecord.test.ts @@ -23,11 +23,11 @@ import { ROOT_CONTEXT, trace, TraceFlags, -} from '@opentelemetry/api'; -import * as logsAPI from '@opentelemetry/api-logs'; -import type { HrTime } from '@opentelemetry/api'; -import { hrTimeToMilliseconds, timeInputToHrTime } from '@opentelemetry/core'; -import { Resource } from '@opentelemetry/resources'; +} from '@opentelemetry/sandbox-api'; +import * as logsAPI from '@opentelemetry/sandbox-api-logs'; +import type { HrTime } from '@opentelemetry/sandbox-api'; +import { hrTimeToMilliseconds, timeInputToHrTime } from '@opentelemetry/sandbox-core'; +import { Resource } from '@opentelemetry/sandbox-resources'; import { LogRecordLimits, diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/common/Logger.test.ts b/pkgs/sdk/logs/test/common/Logger.test.ts similarity index 96% rename from auto-merge/js/experimental/packages/sdk-logs/test/common/Logger.test.ts rename to pkgs/sdk/logs/test/common/Logger.test.ts index a5f690a4b..286fa7c43 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/test/common/Logger.test.ts +++ b/pkgs/sdk/logs/test/common/Logger.test.ts @@ -18,8 +18,8 @@ import * as assert from 'assert'; import * as sinon from 'sinon'; import { LogRecord, Logger, LoggerConfig, LoggerProvider } from '../../src'; -import { ROOT_CONTEXT, TraceFlags, context, trace } from '@opentelemetry/api'; -import { LogRecord as ApiLogRecord } from '@opentelemetry/api-logs'; +import { ROOT_CONTEXT, TraceFlags, context, trace } from '@opentelemetry/sandbox-api'; +import { LogRecord as ApiLogRecord } from '@opentelemetry/sandbox-api-logs'; const setup = (loggerConfig: LoggerConfig = {}) => { const logger = new Logger( diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/common/LoggerProvider.test.ts b/pkgs/sdk/logs/test/common/LoggerProvider.test.ts similarity index 98% rename from auto-merge/js/experimental/packages/sdk-logs/test/common/LoggerProvider.test.ts rename to pkgs/sdk/logs/test/common/LoggerProvider.test.ts index d6032515a..c266c846e 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/test/common/LoggerProvider.test.ts +++ b/pkgs/sdk/logs/test/common/LoggerProvider.test.ts @@ -13,9 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { logs, NoopLogger } from '@opentelemetry/api-logs'; -import { diag } from '@opentelemetry/api'; -import { Resource } from '@opentelemetry/resources'; +import { logs, NoopLogger } from '@opentelemetry/sandbox-api-logs'; +import { diag } from '@opentelemetry/sandbox-api'; +import { Resource } from '@opentelemetry/sandbox-resources'; import * as assert from 'assert'; import * as sinon from 'sinon'; diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/common/MultiLogRecordProcessor.test.ts b/pkgs/sdk/logs/test/common/MultiLogRecordProcessor.test.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/test/common/MultiLogRecordProcessor.test.ts rename to pkgs/sdk/logs/test/common/MultiLogRecordProcessor.test.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/common/export/BatchLogRecordProcessor.test.ts b/pkgs/sdk/logs/test/common/export/BatchLogRecordProcessor.test.ts similarity index 99% rename from auto-merge/js/experimental/packages/sdk-logs/test/common/export/BatchLogRecordProcessor.test.ts rename to pkgs/sdk/logs/test/common/export/BatchLogRecordProcessor.test.ts index 2d0fab7a2..c54dc3770 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/test/common/export/BatchLogRecordProcessor.test.ts +++ b/pkgs/sdk/logs/test/common/export/BatchLogRecordProcessor.test.ts @@ -21,7 +21,7 @@ import { getEnv, loggingErrorHandler, setGlobalErrorHandler, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import { BufferConfig, diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/common/export/ConsoleLogRecordExporter.test.ts b/pkgs/sdk/logs/test/common/export/ConsoleLogRecordExporter.test.ts similarity index 97% rename from auto-merge/js/experimental/packages/sdk-logs/test/common/export/ConsoleLogRecordExporter.test.ts rename to pkgs/sdk/logs/test/common/export/ConsoleLogRecordExporter.test.ts index bd28e8e12..9bd1991e7 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/test/common/export/ConsoleLogRecordExporter.test.ts +++ b/pkgs/sdk/logs/test/common/export/ConsoleLogRecordExporter.test.ts @@ -16,7 +16,7 @@ import * as assert from 'assert'; import * as sinon from 'sinon'; -import { SeverityNumber } from '@opentelemetry/api-logs'; +import { SeverityNumber } from '@opentelemetry/sandbox-api-logs'; import { LoggerProvider, diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/common/export/InMemoryLogRecordExporter.test.ts b/pkgs/sdk/logs/test/common/export/InMemoryLogRecordExporter.test.ts similarity index 95% rename from auto-merge/js/experimental/packages/sdk-logs/test/common/export/InMemoryLogRecordExporter.test.ts rename to pkgs/sdk/logs/test/common/export/InMemoryLogRecordExporter.test.ts index 410ec5a23..102ed3e4c 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/test/common/export/InMemoryLogRecordExporter.test.ts +++ b/pkgs/sdk/logs/test/common/export/InMemoryLogRecordExporter.test.ts @@ -15,8 +15,8 @@ */ import * as assert from 'assert'; -import { SeverityNumber } from '@opentelemetry/api-logs'; -import { ExportResult, ExportResultCode } from '@opentelemetry/core'; +import { SeverityNumber } from '@opentelemetry/sandbox-api-logs'; +import { ExportResult, ExportResultCode } from '@opentelemetry/sandbox-core'; import { LoggerProvider, diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/common/export/SimpleLogRecordProcessor.test.ts b/pkgs/sdk/logs/test/common/export/SimpleLogRecordProcessor.test.ts similarity index 98% rename from auto-merge/js/experimental/packages/sdk-logs/test/common/export/SimpleLogRecordProcessor.test.ts rename to pkgs/sdk/logs/test/common/export/SimpleLogRecordProcessor.test.ts index 202554dde..8e9d12899 100644 --- a/auto-merge/js/experimental/packages/sdk-logs/test/common/export/SimpleLogRecordProcessor.test.ts +++ b/pkgs/sdk/logs/test/common/export/SimpleLogRecordProcessor.test.ts @@ -20,7 +20,7 @@ import { ExportResultCode, loggingErrorHandler, setGlobalErrorHandler, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import { InMemoryLogRecordExporter, diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/common/utils.ts b/pkgs/sdk/logs/test/common/utils.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/test/common/utils.ts rename to pkgs/sdk/logs/test/common/utils.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/index-webpack.ts b/pkgs/sdk/logs/test/index-webpack.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/test/index-webpack.ts rename to pkgs/sdk/logs/test/index-webpack.ts diff --git a/auto-merge/js/experimental/packages/sdk-logs/test/index-webpack.worker.ts b/pkgs/sdk/logs/test/index-webpack.worker.ts similarity index 100% rename from auto-merge/js/experimental/packages/sdk-logs/test/index-webpack.worker.ts rename to pkgs/sdk/logs/test/index-webpack.worker.ts diff --git a/auto-merge/js/packages/opentelemetry-core/test/test-utils.ts b/pkgs/sdk/logs/test/test-utils.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-core/test/test-utils.ts rename to pkgs/sdk/logs/test/test-utils.ts diff --git a/pkgs/sdk/logs/tsconfig.esm.json b/pkgs/sdk/logs/tsconfig.esm.json new file mode 100644 index 000000000..d0d0ce24d --- /dev/null +++ b/pkgs/sdk/logs/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/sdk/logs/tsconfig.esnext.json b/pkgs/sdk/logs/tsconfig.esnext.json new file mode 100644 index 000000000..8e1d797d3 --- /dev/null +++ b/pkgs/sdk/logs/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/sdk/logs/tsconfig.json b/pkgs/sdk/logs/tsconfig.json new file mode 100644 index 000000000..23e961510 --- /dev/null +++ b/pkgs/sdk/logs/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/.eslintignore b/pkgs/sdk/metrics/.eslintignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/.eslintignore rename to pkgs/sdk/metrics/.eslintignore diff --git a/auto-merge/js/packages/sdk-metrics/.eslintrc.js b/pkgs/sdk/metrics/.eslintrc.js similarity index 65% rename from auto-merge/js/packages/sdk-metrics/.eslintrc.js rename to pkgs/sdk/metrics/.eslintrc.js index f726f3bec..f756f4488 100644 --- a/auto-merge/js/packages/sdk-metrics/.eslintrc.js +++ b/pkgs/sdk/metrics/.eslintrc.js @@ -3,5 +3,5 @@ module.exports = { "mocha": true, "node": true }, - ...require('../../eslint.config.js') + ...require('../../../eslint.config.js') } diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/.npmignore b/pkgs/sdk/metrics/.npmignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/.npmignore rename to pkgs/sdk/metrics/.npmignore diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/LICENSE b/pkgs/sdk/metrics/LICENSE similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/LICENSE rename to pkgs/sdk/metrics/LICENSE diff --git a/auto-merge/js/packages/sdk-metrics/README.md b/pkgs/sdk/metrics/README.md similarity index 96% rename from auto-merge/js/packages/sdk-metrics/README.md rename to pkgs/sdk/metrics/README.md index e41993856..9a6dc1564 100644 --- a/auto-merge/js/packages/sdk-metrics/README.md +++ b/pkgs/sdk/metrics/README.md @@ -21,8 +21,8 @@ npm install --save @opentelemetry/sdk-metrics The basic setup of the SDK can be seen as followings: ```js -const opentelemetry = require('@opentelemetry/api'); -const { MeterProvider } = require('@opentelemetry/sdk-metrics'); +const opentelemetry = require('@opentelemetry/sandbox-api'); +const { MeterProvider } = require('@opentelemetry/sandbox-sdk-metrics'); // To create an instrument, you first need to initialize the Meter provider. // NOTE: The default OpenTelemetry meter provider does not record any metric instruments. diff --git a/auto-merge/js/experimental/packages/api-logs/karma.conf.js b/pkgs/sdk/metrics/karma.conf.js similarity index 100% rename from auto-merge/js/experimental/packages/api-logs/karma.conf.js rename to pkgs/sdk/metrics/karma.conf.js diff --git a/pkgs/sdk/metrics/karma.debug.conf.js b/pkgs/sdk/metrics/karma.debug.conf.js new file mode 100644 index 000000000..490933fdc --- /dev/null +++ b/pkgs/sdk/metrics/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/sdk/metrics/karma.webpack.js b/pkgs/sdk/metrics/karma.webpack.js new file mode 100644 index 000000000..bc821e073 --- /dev/null +++ b/pkgs/sdk/metrics/karma.webpack.js @@ -0,0 +1,42 @@ +/*! + * 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 + * + * 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. +*/ + +const webpackNodePolyfills = require("../../../webpack.node-polyfills.js"); + +module.exports = { + mode: "development", + target: "web", + output: { filename: "bundle.js" }, + resolve: { extensions: [".ts", ".js"] }, + devtool: "inline-source-map", + module: { + rules: [ + { test: /.ts$/, use: "ts-loader" }, + { + enforce: "post", + exclude: /(node_modules|.test.[tj]sx?$)/, + test: /.ts$/, + use: { + loader: "istanbul-instrumenter-loader", + options: { esModules: true } + } + }, + // This setting configures Node polyfills for the browser that will be + // added to the webpack bundle for Karma tests. + { parser: { node: webpackNodePolyfills } } + ] + } +}; diff --git a/pkgs/sdk/metrics/karma.worker.js b/pkgs/sdk/metrics/karma.worker.js new file mode 100644 index 000000000..eb6ee53e9 --- /dev/null +++ b/pkgs/sdk/metrics/karma.worker.js @@ -0,0 +1,24 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaWebpackConfig = require('../../../karma.webpack'); +const karmaBaseConfig = require('../../../karma.worker'); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + webpack: karmaWebpackConfig, + })) +}; diff --git a/pkgs/sdk/metrics/package.json b/pkgs/sdk/metrics/package.json new file mode 100644 index 000000000..196bbfa73 --- /dev/null +++ b/pkgs/sdk/metrics/package.json @@ -0,0 +1,111 @@ +{ + "name": "@opentelemetry/sandbox-sdk-metrics", + "version": "1.13.0", + "description": "OpenTelemetry metrics SDK", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "npm run test -- --watch-extensions ts --watch", + "tdd:browser": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", + "version": "node ../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "nodejs", + "metrics", + "stats", + "profiling" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/lodash.merge": "4.6.6", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-resources": "1.13.0", + "lodash.merge": "4.6.2" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/sdk-metrics", + "sideEffects": false +} \ No newline at end of file diff --git a/pkgs/sdk/metrics/rollup.config.js b/pkgs/sdk/metrics/rollup.config.js new file mode 100644 index 000000000..531daf152 --- /dev/null +++ b/pkgs/sdk/metrics/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.sdk-metrics", inputName, "otel-sndbx.sdk-metrics", version); diff --git a/auto-merge/js/packages/sdk-metrics/src/InstrumentDescriptor.ts b/pkgs/sdk/metrics/src/InstrumentDescriptor.ts similarity index 96% rename from auto-merge/js/packages/sdk-metrics/src/InstrumentDescriptor.ts rename to pkgs/sdk/metrics/src/InstrumentDescriptor.ts index 01eabe261..3e577b932 100644 --- a/auto-merge/js/packages/sdk-metrics/src/InstrumentDescriptor.ts +++ b/pkgs/sdk/metrics/src/InstrumentDescriptor.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { MetricOptions, ValueType } from '@opentelemetry/api'; +import { MetricOptions, ValueType } from '@opentelemetry/sandbox-api'; import { View } from './view/View'; /** diff --git a/auto-merge/js/packages/sdk-metrics/src/Instruments.ts b/pkgs/sdk/metrics/src/Instruments.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/Instruments.ts rename to pkgs/sdk/metrics/src/Instruments.ts index d99c621c0..1b6dfe930 100644 --- a/auto-merge/js/packages/sdk-metrics/src/Instruments.ts +++ b/pkgs/sdk/metrics/src/Instruments.ts @@ -28,8 +28,8 @@ import { ObservableCounter, ObservableGauge, ObservableUpDownCounter, -} from '@opentelemetry/api'; -import { millisToHrTime } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { millisToHrTime } from '@opentelemetry/sandbox-core'; import { InstrumentDescriptor } from './InstrumentDescriptor'; import { ObservableRegistry } from './state/ObservableRegistry'; import { diff --git a/auto-merge/js/packages/sdk-metrics/src/Meter.ts b/pkgs/sdk/metrics/src/Meter.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/Meter.ts rename to pkgs/sdk/metrics/src/Meter.ts index b3d69d0df..0904c3bf3 100644 --- a/auto-merge/js/packages/sdk-metrics/src/Meter.ts +++ b/pkgs/sdk/metrics/src/Meter.ts @@ -25,7 +25,7 @@ import { ObservableUpDownCounter, BatchObservableCallback, Observable, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { createInstrumentDescriptor, InstrumentType, diff --git a/auto-merge/js/packages/sdk-metrics/src/MeterProvider.ts b/pkgs/sdk/metrics/src/MeterProvider.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/MeterProvider.ts rename to pkgs/sdk/metrics/src/MeterProvider.ts index f10cf42b9..5ccb20772 100644 --- a/auto-merge/js/packages/sdk-metrics/src/MeterProvider.ts +++ b/pkgs/sdk/metrics/src/MeterProvider.ts @@ -20,8 +20,8 @@ import { Meter as IMeter, MeterOptions, createNoopMeter, -} from '@opentelemetry/api'; -import { IResource, Resource } from '@opentelemetry/resources'; +} from '@opentelemetry/sandbox-api'; +import { IResource, Resource } from '@opentelemetry/sandbox-resources'; import { MetricReader } from './export/MetricReader'; import { MeterProviderSharedState } from './state/MeterProviderSharedState'; import { MetricCollector } from './state/MetricCollector'; diff --git a/auto-merge/js/packages/sdk-metrics/src/ObservableResult.ts b/pkgs/sdk/metrics/src/ObservableResult.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/ObservableResult.ts rename to pkgs/sdk/metrics/src/ObservableResult.ts index 31e194290..58e31d3d2 100644 --- a/auto-merge/js/packages/sdk-metrics/src/ObservableResult.ts +++ b/pkgs/sdk/metrics/src/ObservableResult.ts @@ -21,7 +21,7 @@ import { ValueType, BatchObservableResult, Observable, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { AttributeHashMap } from './state/HashMap'; import { isObservableInstrument, ObservableInstrument } from './Instruments'; import { InstrumentDescriptor } from '.'; diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/Drop.ts b/pkgs/sdk/metrics/src/aggregator/Drop.ts similarity index 96% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/Drop.ts rename to pkgs/sdk/metrics/src/aggregator/Drop.ts index 343c90357..e20572cd5 100644 --- a/auto-merge/js/packages/sdk-metrics/src/aggregator/Drop.ts +++ b/pkgs/sdk/metrics/src/aggregator/Drop.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import { AggregationTemporality } from '../export/AggregationTemporality'; import { MetricData } from '../export/MetricData'; import { InstrumentDescriptor } from '../InstrumentDescriptor'; diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/ExponentialHistogram.ts b/pkgs/sdk/metrics/src/aggregator/ExponentialHistogram.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/ExponentialHistogram.ts rename to pkgs/sdk/metrics/src/aggregator/ExponentialHistogram.ts index 5a70a478a..11104d9e5 100644 --- a/auto-merge/js/packages/sdk-metrics/src/aggregator/ExponentialHistogram.ts +++ b/pkgs/sdk/metrics/src/aggregator/ExponentialHistogram.ts @@ -25,7 +25,7 @@ import { DataPointType, ExponentialHistogramMetricData, } from '../export/MetricData'; -import { diag, HrTime } from '@opentelemetry/api'; +import { diag, HrTime } from '@opentelemetry/sandbox-api'; import { InstrumentDescriptor, InstrumentType } from '../InstrumentDescriptor'; import { Maybe } from '../utils'; import { AggregationTemporality } from '../export/AggregationTemporality'; diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/Histogram.ts b/pkgs/sdk/metrics/src/aggregator/Histogram.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/Histogram.ts rename to pkgs/sdk/metrics/src/aggregator/Histogram.ts index f20784b05..1a07547c6 100644 --- a/auto-merge/js/packages/sdk-metrics/src/aggregator/Histogram.ts +++ b/pkgs/sdk/metrics/src/aggregator/Histogram.ts @@ -21,7 +21,7 @@ import { AggregatorKind, } from './types'; import { DataPointType, HistogramMetricData } from '../export/MetricData'; -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import { InstrumentDescriptor, InstrumentType } from '../InstrumentDescriptor'; import { binarySearchLB, Maybe } from '../utils'; import { AggregationTemporality } from '../export/AggregationTemporality'; diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/LastValue.ts b/pkgs/sdk/metrics/src/aggregator/LastValue.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/LastValue.ts rename to pkgs/sdk/metrics/src/aggregator/LastValue.ts index 9c627130f..94b21692f 100644 --- a/auto-merge/js/packages/sdk-metrics/src/aggregator/LastValue.ts +++ b/pkgs/sdk/metrics/src/aggregator/LastValue.ts @@ -21,8 +21,8 @@ import { AggregatorKind, LastValue, } from './types'; -import { HrTime } from '@opentelemetry/api'; -import { millisToHrTime, hrTimeToMicroseconds } from '@opentelemetry/core'; +import { HrTime } from '@opentelemetry/sandbox-api'; +import { millisToHrTime, hrTimeToMicroseconds } from '@opentelemetry/sandbox-core'; import { DataPointType, GaugeMetricData } from '../export/MetricData'; import { InstrumentDescriptor } from '../InstrumentDescriptor'; import { Maybe } from '../utils'; diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/Sum.ts b/pkgs/sdk/metrics/src/aggregator/Sum.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/Sum.ts rename to pkgs/sdk/metrics/src/aggregator/Sum.ts index ba53c389e..daf4f6637 100644 --- a/auto-merge/js/packages/sdk-metrics/src/aggregator/Sum.ts +++ b/pkgs/sdk/metrics/src/aggregator/Sum.ts @@ -21,7 +21,7 @@ import { Accumulation, AccumulationRecord, } from './types'; -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import { DataPointType, SumMetricData } from '../export/MetricData'; import { InstrumentDescriptor } from '../InstrumentDescriptor'; import { Maybe } from '../utils'; diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/Buckets.ts b/pkgs/sdk/metrics/src/aggregator/exponential-histogram/Buckets.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/Buckets.ts rename to pkgs/sdk/metrics/src/aggregator/exponential-histogram/Buckets.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/ExponentMapping.ts b/pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/ExponentMapping.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/ExponentMapping.ts rename to pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/ExponentMapping.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/LogarithmMapping.ts b/pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/LogarithmMapping.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/LogarithmMapping.ts rename to pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/LogarithmMapping.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/getMapping.ts b/pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/getMapping.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/getMapping.ts rename to pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/getMapping.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/ieee754.ts b/pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/ieee754.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/ieee754.ts rename to pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/ieee754.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/types.ts b/pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/types.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/mapping/types.ts rename to pkgs/sdk/metrics/src/aggregator/exponential-histogram/mapping/types.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/util.ts b/pkgs/sdk/metrics/src/aggregator/exponential-histogram/util.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/exponential-histogram/util.ts rename to pkgs/sdk/metrics/src/aggregator/exponential-histogram/util.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/index.ts b/pkgs/sdk/metrics/src/aggregator/index.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/index.ts rename to pkgs/sdk/metrics/src/aggregator/index.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/aggregator/types.ts b/pkgs/sdk/metrics/src/aggregator/types.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/aggregator/types.ts rename to pkgs/sdk/metrics/src/aggregator/types.ts index 16888256b..bbef16248 100644 --- a/auto-merge/js/packages/sdk-metrics/src/aggregator/types.ts +++ b/pkgs/sdk/metrics/src/aggregator/types.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime, MetricAttributes } from '@opentelemetry/api'; +import { HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; import { AggregationTemporality } from '../export/AggregationTemporality'; import { MetricData } from '../export/MetricData'; import { InstrumentDescriptor } from '../InstrumentDescriptor'; diff --git a/auto-merge/js/packages/sdk-metrics/src/exemplar/AlignedHistogramBucketExemplarReservoir.ts b/pkgs/sdk/metrics/src/exemplar/AlignedHistogramBucketExemplarReservoir.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/exemplar/AlignedHistogramBucketExemplarReservoir.ts rename to pkgs/sdk/metrics/src/exemplar/AlignedHistogramBucketExemplarReservoir.ts index 11aab6da2..fdb0d09e5 100644 --- a/auto-merge/js/packages/sdk-metrics/src/exemplar/AlignedHistogramBucketExemplarReservoir.ts +++ b/pkgs/sdk/metrics/src/exemplar/AlignedHistogramBucketExemplarReservoir.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, HrTime, MetricAttributes } from '@opentelemetry/api'; +import { Context, HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; import { FixedSizeExemplarReservoirBase } from './ExemplarReservoir'; /** diff --git a/auto-merge/js/packages/sdk-metrics/src/exemplar/AlwaysSampleExemplarFilter.ts b/pkgs/sdk/metrics/src/exemplar/AlwaysSampleExemplarFilter.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/exemplar/AlwaysSampleExemplarFilter.ts rename to pkgs/sdk/metrics/src/exemplar/AlwaysSampleExemplarFilter.ts index 9a4511e66..c788bcd6e 100644 --- a/auto-merge/js/packages/sdk-metrics/src/exemplar/AlwaysSampleExemplarFilter.ts +++ b/pkgs/sdk/metrics/src/exemplar/AlwaysSampleExemplarFilter.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, HrTime, MetricAttributes } from '@opentelemetry/api'; +import { Context, HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; import { ExemplarFilter } from './ExemplarFilter'; export class AlwaysSampleExemplarFilter implements ExemplarFilter { diff --git a/auto-merge/js/packages/sdk-metrics/src/exemplar/Exemplar.ts b/pkgs/sdk/metrics/src/exemplar/Exemplar.ts similarity index 95% rename from auto-merge/js/packages/sdk-metrics/src/exemplar/Exemplar.ts rename to pkgs/sdk/metrics/src/exemplar/Exemplar.ts index d98246dc4..9fdce177e 100644 --- a/auto-merge/js/packages/sdk-metrics/src/exemplar/Exemplar.ts +++ b/pkgs/sdk/metrics/src/exemplar/Exemplar.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime, MetricAttributes } from '@opentelemetry/api'; +import { HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; /** * A representation of an exemplar, which is a sample input measurement. diff --git a/auto-merge/js/packages/sdk-metrics/src/exemplar/ExemplarFilter.ts b/pkgs/sdk/metrics/src/exemplar/ExemplarFilter.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/exemplar/ExemplarFilter.ts rename to pkgs/sdk/metrics/src/exemplar/ExemplarFilter.ts index 78b8ca0f3..4fade738e 100644 --- a/auto-merge/js/packages/sdk-metrics/src/exemplar/ExemplarFilter.ts +++ b/pkgs/sdk/metrics/src/exemplar/ExemplarFilter.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, HrTime, MetricAttributes } from '@opentelemetry/api'; +import { Context, HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; /** * This interface represents a ExemplarFilter. Exemplar filters are diff --git a/auto-merge/js/packages/sdk-metrics/src/exemplar/ExemplarReservoir.ts b/pkgs/sdk/metrics/src/exemplar/ExemplarReservoir.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/exemplar/ExemplarReservoir.ts rename to pkgs/sdk/metrics/src/exemplar/ExemplarReservoir.ts index 1fcad6733..02e7b0646 100644 --- a/auto-merge/js/packages/sdk-metrics/src/exemplar/ExemplarReservoir.ts +++ b/pkgs/sdk/metrics/src/exemplar/ExemplarReservoir.ts @@ -20,7 +20,7 @@ import { isSpanContextValid, trace, MetricAttributes, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { Exemplar } from './Exemplar'; /** diff --git a/auto-merge/js/packages/sdk-metrics/src/exemplar/NeverSampleExemplarFilter.ts b/pkgs/sdk/metrics/src/exemplar/NeverSampleExemplarFilter.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/exemplar/NeverSampleExemplarFilter.ts rename to pkgs/sdk/metrics/src/exemplar/NeverSampleExemplarFilter.ts index 19697ba3a..8038b9834 100644 --- a/auto-merge/js/packages/sdk-metrics/src/exemplar/NeverSampleExemplarFilter.ts +++ b/pkgs/sdk/metrics/src/exemplar/NeverSampleExemplarFilter.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, HrTime, MetricAttributes } from '@opentelemetry/api'; +import { Context, HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; import { ExemplarFilter } from './ExemplarFilter'; export class NeverSampleExemplarFilter implements ExemplarFilter { diff --git a/auto-merge/js/packages/sdk-metrics/src/exemplar/SimpleFixedSizeExemplarReservoir.ts b/pkgs/sdk/metrics/src/exemplar/SimpleFixedSizeExemplarReservoir.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/exemplar/SimpleFixedSizeExemplarReservoir.ts rename to pkgs/sdk/metrics/src/exemplar/SimpleFixedSizeExemplarReservoir.ts index f51a97937..94f26e637 100644 --- a/auto-merge/js/packages/sdk-metrics/src/exemplar/SimpleFixedSizeExemplarReservoir.ts +++ b/pkgs/sdk/metrics/src/exemplar/SimpleFixedSizeExemplarReservoir.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, HrTime, MetricAttributes } from '@opentelemetry/api'; +import { Context, HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; import { FixedSizeExemplarReservoirBase } from './ExemplarReservoir'; /** diff --git a/auto-merge/js/packages/sdk-metrics/src/exemplar/WithTraceExemplarFilter.ts b/pkgs/sdk/metrics/src/exemplar/WithTraceExemplarFilter.ts similarity index 96% rename from auto-merge/js/packages/sdk-metrics/src/exemplar/WithTraceExemplarFilter.ts rename to pkgs/sdk/metrics/src/exemplar/WithTraceExemplarFilter.ts index 0977281d8..7f4153c53 100644 --- a/auto-merge/js/packages/sdk-metrics/src/exemplar/WithTraceExemplarFilter.ts +++ b/pkgs/sdk/metrics/src/exemplar/WithTraceExemplarFilter.ts @@ -21,7 +21,7 @@ import { trace, TraceFlags, MetricAttributes, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { ExemplarFilter } from './ExemplarFilter'; export class WithTraceExemplarFilter implements ExemplarFilter { diff --git a/auto-merge/js/packages/sdk-metrics/src/exemplar/index.ts b/pkgs/sdk/metrics/src/exemplar/index.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/exemplar/index.ts rename to pkgs/sdk/metrics/src/exemplar/index.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/export/AggregationSelector.ts b/pkgs/sdk/metrics/src/export/AggregationSelector.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/export/AggregationSelector.ts rename to pkgs/sdk/metrics/src/export/AggregationSelector.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/export/AggregationTemporality.ts b/pkgs/sdk/metrics/src/export/AggregationTemporality.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/export/AggregationTemporality.ts rename to pkgs/sdk/metrics/src/export/AggregationTemporality.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/export/ConsoleMetricExporter.ts b/pkgs/sdk/metrics/src/export/ConsoleMetricExporter.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/export/ConsoleMetricExporter.ts rename to pkgs/sdk/metrics/src/export/ConsoleMetricExporter.ts index 36c8b4880..0a0efc02c 100644 --- a/auto-merge/js/packages/sdk-metrics/src/export/ConsoleMetricExporter.ts +++ b/pkgs/sdk/metrics/src/export/ConsoleMetricExporter.ts @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { ExportResult, ExportResultCode } from '@opentelemetry/core'; +import { ExportResult, ExportResultCode } from '@opentelemetry/sandbox-core'; import { InstrumentType } from '../InstrumentDescriptor'; import { AggregationTemporality } from './AggregationTemporality'; import { ResourceMetrics } from './MetricData'; diff --git a/auto-merge/js/packages/sdk-metrics/src/export/InMemoryMetricExporter.ts b/pkgs/sdk/metrics/src/export/InMemoryMetricExporter.ts similarity index 94% rename from auto-merge/js/packages/sdk-metrics/src/export/InMemoryMetricExporter.ts rename to pkgs/sdk/metrics/src/export/InMemoryMetricExporter.ts index 2a80973bb..7eac3ee31 100644 --- a/auto-merge/js/packages/sdk-metrics/src/export/InMemoryMetricExporter.ts +++ b/pkgs/sdk/metrics/src/export/InMemoryMetricExporter.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { ExportResultCode } from '@opentelemetry/core'; -import { ExportResult } from '@opentelemetry/core'; +import { ExportResultCode } from '@opentelemetry/sandbox-core'; +import { ExportResult } from '@opentelemetry/sandbox-core'; import { InstrumentType } from '../InstrumentDescriptor'; import { AggregationTemporality } from './AggregationTemporality'; import { ResourceMetrics } from './MetricData'; diff --git a/auto-merge/js/packages/sdk-metrics/src/export/MetricData.ts b/pkgs/sdk/metrics/src/export/MetricData.ts similarity index 95% rename from auto-merge/js/packages/sdk-metrics/src/export/MetricData.ts rename to pkgs/sdk/metrics/src/export/MetricData.ts index 19868dbc6..9a1f85966 100644 --- a/auto-merge/js/packages/sdk-metrics/src/export/MetricData.ts +++ b/pkgs/sdk/metrics/src/export/MetricData.ts @@ -14,9 +14,9 @@ * limitations under the License. */ -import { HrTime, MetricAttributes } from '@opentelemetry/api'; -import { InstrumentationScope } from '@opentelemetry/core'; -import { IResource } from '@opentelemetry/resources'; +import { HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; +import { InstrumentationScope } from '@opentelemetry/sandbox-core'; +import { IResource } from '@opentelemetry/sandbox-resources'; import { InstrumentDescriptor } from '../InstrumentDescriptor'; import { AggregationTemporality } from './AggregationTemporality'; import { Histogram, ExponentialHistogram } from '../aggregator/types'; diff --git a/auto-merge/js/packages/sdk-metrics/src/export/MetricExporter.ts b/pkgs/sdk/metrics/src/export/MetricExporter.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/export/MetricExporter.ts rename to pkgs/sdk/metrics/src/export/MetricExporter.ts index bf9362bcd..548fe9b83 100644 --- a/auto-merge/js/packages/sdk-metrics/src/export/MetricExporter.ts +++ b/pkgs/sdk/metrics/src/export/MetricExporter.ts @@ -16,7 +16,7 @@ import { AggregationTemporality } from './AggregationTemporality'; import { ResourceMetrics } from './MetricData'; -import { ExportResult } from '@opentelemetry/core'; +import { ExportResult } from '@opentelemetry/sandbox-core'; import { InstrumentType } from '../InstrumentDescriptor'; import { Aggregation } from '../view/Aggregation'; diff --git a/auto-merge/js/packages/sdk-metrics/src/export/MetricProducer.ts b/pkgs/sdk/metrics/src/export/MetricProducer.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/export/MetricProducer.ts rename to pkgs/sdk/metrics/src/export/MetricProducer.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/export/MetricReader.ts b/pkgs/sdk/metrics/src/export/MetricReader.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/export/MetricReader.ts rename to pkgs/sdk/metrics/src/export/MetricReader.ts index 3bc4c63a0..a7b2ea97a 100644 --- a/auto-merge/js/packages/sdk-metrics/src/export/MetricReader.ts +++ b/pkgs/sdk/metrics/src/export/MetricReader.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { AggregationTemporality } from './AggregationTemporality'; import { MetricProducer } from './MetricProducer'; import { CollectionResult } from './MetricData'; diff --git a/auto-merge/js/packages/sdk-metrics/src/export/PeriodicExportingMetricReader.ts b/pkgs/sdk/metrics/src/export/PeriodicExportingMetricReader.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/export/PeriodicExportingMetricReader.ts rename to pkgs/sdk/metrics/src/export/PeriodicExportingMetricReader.ts index 2371ecb67..cff9b50c7 100644 --- a/auto-merge/js/packages/sdk-metrics/src/export/PeriodicExportingMetricReader.ts +++ b/pkgs/sdk/metrics/src/export/PeriodicExportingMetricReader.ts @@ -14,17 +14,17 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { internal, ExportResultCode, globalErrorHandler, unrefTimer, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import { MetricReader } from './MetricReader'; import { PushMetricExporter } from './MetricExporter'; import { callWithTimeout, TimeoutError } from '../utils'; -import { diag } from '@opentelemetry/api'; +import { diag } from '@opentelemetry/sandbox-api'; export type PeriodicExportingMetricReaderOptions = { /** diff --git a/auto-merge/js/packages/sdk-metrics/src/index.ts b/pkgs/sdk/metrics/src/index.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/index.ts rename to pkgs/sdk/metrics/src/index.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/state/AsyncMetricStorage.ts b/pkgs/sdk/metrics/src/state/AsyncMetricStorage.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/state/AsyncMetricStorage.ts rename to pkgs/sdk/metrics/src/state/AsyncMetricStorage.ts index 286874987..81e7af95d 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/AsyncMetricStorage.ts +++ b/pkgs/sdk/metrics/src/state/AsyncMetricStorage.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import { Accumulation, Aggregator } from '../aggregator/types'; import { InstrumentDescriptor } from '../InstrumentDescriptor'; import { AttributesProcessor } from '../view/AttributesProcessor'; diff --git a/auto-merge/js/packages/sdk-metrics/src/state/DeltaMetricProcessor.ts b/pkgs/sdk/metrics/src/state/DeltaMetricProcessor.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/state/DeltaMetricProcessor.ts rename to pkgs/sdk/metrics/src/state/DeltaMetricProcessor.ts index e9b16f0e0..bb83cc7bf 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/DeltaMetricProcessor.ts +++ b/pkgs/sdk/metrics/src/state/DeltaMetricProcessor.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, HrTime, MetricAttributes } from '@opentelemetry/api'; +import { Context, HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; import { Maybe } from '../utils'; import { Accumulation, Aggregator } from '../aggregator/types'; import { AttributeHashMap } from './HashMap'; diff --git a/auto-merge/js/packages/sdk-metrics/src/state/HashMap.ts b/pkgs/sdk/metrics/src/state/HashMap.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/state/HashMap.ts rename to pkgs/sdk/metrics/src/state/HashMap.ts index 36011d667..5c59b31c1 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/HashMap.ts +++ b/pkgs/sdk/metrics/src/state/HashMap.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { MetricAttributes } from '@opentelemetry/api'; +import { MetricAttributes } from '@opentelemetry/sandbox-api'; import { hashAttributes } from '../utils'; export interface Hash { diff --git a/auto-merge/js/packages/sdk-metrics/src/state/MeterProviderSharedState.ts b/pkgs/sdk/metrics/src/state/MeterProviderSharedState.ts similarity index 93% rename from auto-merge/js/packages/sdk-metrics/src/state/MeterProviderSharedState.ts rename to pkgs/sdk/metrics/src/state/MeterProviderSharedState.ts index fa7903b20..e4219f367 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/MeterProviderSharedState.ts +++ b/pkgs/sdk/metrics/src/state/MeterProviderSharedState.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { InstrumentationScope } from '@opentelemetry/core'; -import { IResource } from '@opentelemetry/resources'; +import { InstrumentationScope } from '@opentelemetry/sandbox-core'; +import { IResource } from '@opentelemetry/sandbox-resources'; import { Aggregation, InstrumentType } from '..'; import { instrumentationScopeId } from '../utils'; import { ViewRegistry } from '../view/ViewRegistry'; diff --git a/auto-merge/js/packages/sdk-metrics/src/state/MeterSharedState.ts b/pkgs/sdk/metrics/src/state/MeterSharedState.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/state/MeterSharedState.ts rename to pkgs/sdk/metrics/src/state/MeterSharedState.ts index 330d293ee..4d9a84be0 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/MeterSharedState.ts +++ b/pkgs/sdk/metrics/src/state/MeterSharedState.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; -import { InstrumentationScope } from '@opentelemetry/core'; +import { HrTime } from '@opentelemetry/sandbox-api'; +import { InstrumentationScope } from '@opentelemetry/sandbox-core'; import { MetricCollectOptions } from '../export/MetricProducer'; import { ScopeMetrics } from '../export/MetricData'; import { diff --git a/auto-merge/js/packages/sdk-metrics/src/state/MetricCollector.ts b/pkgs/sdk/metrics/src/state/MetricCollector.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/state/MetricCollector.ts rename to pkgs/sdk/metrics/src/state/MetricCollector.ts index 3f17a0d5b..123b43af0 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/MetricCollector.ts +++ b/pkgs/sdk/metrics/src/state/MetricCollector.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { millisToHrTime } from '@opentelemetry/core'; +import { millisToHrTime } from '@opentelemetry/sandbox-core'; import { AggregationTemporalitySelector } from '../export/AggregationSelector'; import { CollectionResult } from '../export/MetricData'; import { MetricProducer, MetricCollectOptions } from '../export/MetricProducer'; diff --git a/auto-merge/js/packages/sdk-metrics/src/state/MetricStorage.ts b/pkgs/sdk/metrics/src/state/MetricStorage.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/state/MetricStorage.ts rename to pkgs/sdk/metrics/src/state/MetricStorage.ts index 5d02437f5..49fd56c69 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/MetricStorage.ts +++ b/pkgs/sdk/metrics/src/state/MetricStorage.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import { MetricData } from '../export/MetricData'; import { Maybe } from '../utils'; import { MetricCollectorHandle } from './MetricCollector'; diff --git a/auto-merge/js/packages/sdk-metrics/src/state/MetricStorageRegistry.ts b/pkgs/sdk/metrics/src/state/MetricStorageRegistry.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/state/MetricStorageRegistry.ts rename to pkgs/sdk/metrics/src/state/MetricStorageRegistry.ts index c44ad8b5f..f314cc11f 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/MetricStorageRegistry.ts +++ b/pkgs/sdk/metrics/src/state/MetricStorageRegistry.ts @@ -19,7 +19,7 @@ import { InstrumentDescriptor, isDescriptorCompatibleWith, } from '../InstrumentDescriptor'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { getConflictResolutionRecipe, getIncompatibilityDetails, diff --git a/auto-merge/js/packages/sdk-metrics/src/state/MultiWritableMetricStorage.ts b/pkgs/sdk/metrics/src/state/MultiWritableMetricStorage.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/state/MultiWritableMetricStorage.ts rename to pkgs/sdk/metrics/src/state/MultiWritableMetricStorage.ts index 1cf51f672..13d9f3d24 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/MultiWritableMetricStorage.ts +++ b/pkgs/sdk/metrics/src/state/MultiWritableMetricStorage.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, HrTime, MetricAttributes } from '@opentelemetry/api'; +import { Context, HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; import { WritableMetricStorage } from './WritableMetricStorage'; /** diff --git a/auto-merge/js/packages/sdk-metrics/src/state/ObservableRegistry.ts b/pkgs/sdk/metrics/src/state/ObservableRegistry.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/state/ObservableRegistry.ts rename to pkgs/sdk/metrics/src/state/ObservableRegistry.ts index 444395bca..61dd2d4f1 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/ObservableRegistry.ts +++ b/pkgs/sdk/metrics/src/state/ObservableRegistry.ts @@ -20,7 +20,7 @@ import { BatchObservableCallback, Observable, ObservableCallback, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { isObservableInstrument, ObservableInstrument } from '../Instruments'; import { BatchObservableResultImpl, diff --git a/auto-merge/js/packages/sdk-metrics/src/state/SyncMetricStorage.ts b/pkgs/sdk/metrics/src/state/SyncMetricStorage.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/state/SyncMetricStorage.ts rename to pkgs/sdk/metrics/src/state/SyncMetricStorage.ts index 0648b1272..dd7dd6631 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/SyncMetricStorage.ts +++ b/pkgs/sdk/metrics/src/state/SyncMetricStorage.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, HrTime, MetricAttributes } from '@opentelemetry/api'; +import { Context, HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; import { WritableMetricStorage } from './WritableMetricStorage'; import { Accumulation, Aggregator } from '../aggregator/types'; import { InstrumentDescriptor } from '../InstrumentDescriptor'; diff --git a/auto-merge/js/packages/sdk-metrics/src/state/TemporalMetricProcessor.ts b/pkgs/sdk/metrics/src/state/TemporalMetricProcessor.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/state/TemporalMetricProcessor.ts rename to pkgs/sdk/metrics/src/state/TemporalMetricProcessor.ts index 2b9c5dbba..57b935218 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/TemporalMetricProcessor.ts +++ b/pkgs/sdk/metrics/src/state/TemporalMetricProcessor.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import { Accumulation, AccumulationRecord, diff --git a/auto-merge/js/packages/sdk-metrics/src/state/WritableMetricStorage.ts b/pkgs/sdk/metrics/src/state/WritableMetricStorage.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/src/state/WritableMetricStorage.ts rename to pkgs/sdk/metrics/src/state/WritableMetricStorage.ts index 223f34d9e..391f8322a 100644 --- a/auto-merge/js/packages/sdk-metrics/src/state/WritableMetricStorage.ts +++ b/pkgs/sdk/metrics/src/state/WritableMetricStorage.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, HrTime, MetricAttributes } from '@opentelemetry/api'; +import { Context, HrTime, MetricAttributes } from '@opentelemetry/sandbox-api'; import { AttributeHashMap } from './HashMap'; /** diff --git a/auto-merge/js/packages/sdk-metrics/src/types.ts b/pkgs/sdk/metrics/src/types.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/types.ts rename to pkgs/sdk/metrics/src/types.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/utils.ts b/pkgs/sdk/metrics/src/utils.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/src/utils.ts rename to pkgs/sdk/metrics/src/utils.ts index 835de92fe..5adce1b08 100644 --- a/auto-merge/js/packages/sdk-metrics/src/utils.ts +++ b/pkgs/sdk/metrics/src/utils.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { MetricAttributes } from '@opentelemetry/api'; -import { InstrumentationScope } from '@opentelemetry/core'; +import { MetricAttributes } from '@opentelemetry/sandbox-api'; +import { InstrumentationScope } from '@opentelemetry/sandbox-core'; export type Maybe = T | undefined; diff --git a/auto-merge/js/packages/sdk-metrics/src/view/Aggregation.ts b/pkgs/sdk/metrics/src/view/Aggregation.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/src/view/Aggregation.ts rename to pkgs/sdk/metrics/src/view/Aggregation.ts index 755cd1753..6b8ae95ca 100644 --- a/auto-merge/js/packages/sdk-metrics/src/view/Aggregation.ts +++ b/pkgs/sdk/metrics/src/view/Aggregation.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { Aggregator, SumAggregator, diff --git a/auto-merge/js/packages/sdk-metrics/src/view/AttributesProcessor.ts b/pkgs/sdk/metrics/src/view/AttributesProcessor.ts similarity index 96% rename from auto-merge/js/packages/sdk-metrics/src/view/AttributesProcessor.ts rename to pkgs/sdk/metrics/src/view/AttributesProcessor.ts index 53f2cddaf..73af4896d 100644 --- a/auto-merge/js/packages/sdk-metrics/src/view/AttributesProcessor.ts +++ b/pkgs/sdk/metrics/src/view/AttributesProcessor.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, MetricAttributes } from '@opentelemetry/api'; +import { Context, MetricAttributes } from '@opentelemetry/sandbox-api'; /** * The {@link AttributesProcessor} is responsible for customizing which diff --git a/auto-merge/js/packages/sdk-metrics/src/view/InstrumentSelector.ts b/pkgs/sdk/metrics/src/view/InstrumentSelector.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/view/InstrumentSelector.ts rename to pkgs/sdk/metrics/src/view/InstrumentSelector.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/view/MeterSelector.ts b/pkgs/sdk/metrics/src/view/MeterSelector.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/view/MeterSelector.ts rename to pkgs/sdk/metrics/src/view/MeterSelector.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/view/Predicate.ts b/pkgs/sdk/metrics/src/view/Predicate.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/view/Predicate.ts rename to pkgs/sdk/metrics/src/view/Predicate.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/view/RegistrationConflicts.ts b/pkgs/sdk/metrics/src/view/RegistrationConflicts.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/view/RegistrationConflicts.ts rename to pkgs/sdk/metrics/src/view/RegistrationConflicts.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/view/View.ts b/pkgs/sdk/metrics/src/view/View.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/src/view/View.ts rename to pkgs/sdk/metrics/src/view/View.ts diff --git a/auto-merge/js/packages/sdk-metrics/src/view/ViewRegistry.ts b/pkgs/sdk/metrics/src/view/ViewRegistry.ts similarity index 96% rename from auto-merge/js/packages/sdk-metrics/src/view/ViewRegistry.ts rename to pkgs/sdk/metrics/src/view/ViewRegistry.ts index 5f4f367e9..26cc3f3bf 100644 --- a/auto-merge/js/packages/sdk-metrics/src/view/ViewRegistry.ts +++ b/pkgs/sdk/metrics/src/view/ViewRegistry.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { InstrumentationScope } from '@opentelemetry/core'; +import { InstrumentationScope } from '@opentelemetry/sandbox-core'; import { InstrumentDescriptor } from '../InstrumentDescriptor'; import { InstrumentSelector } from './InstrumentSelector'; import { MeterSelector } from './MeterSelector'; diff --git a/auto-merge/js/packages/sdk-metrics/test/ExemplarFilter.test.ts b/pkgs/sdk/metrics/test/ExemplarFilter.test.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/test/ExemplarFilter.test.ts rename to pkgs/sdk/metrics/test/ExemplarFilter.test.ts index df472fe94..b010be6be 100644 --- a/auto-merge/js/packages/sdk-metrics/test/ExemplarFilter.test.ts +++ b/pkgs/sdk/metrics/test/ExemplarFilter.test.ts @@ -20,7 +20,7 @@ import { SpanContext, TraceFlags, trace, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { AlwaysSampleExemplarFilter, diff --git a/auto-merge/js/packages/sdk-metrics/test/ExemplarReservoir.test.ts b/pkgs/sdk/metrics/test/ExemplarReservoir.test.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/test/ExemplarReservoir.test.ts rename to pkgs/sdk/metrics/test/ExemplarReservoir.test.ts index 8da5006e3..9eb016fd9 100644 --- a/auto-merge/js/packages/sdk-metrics/test/ExemplarReservoir.test.ts +++ b/pkgs/sdk/metrics/test/ExemplarReservoir.test.ts @@ -19,8 +19,8 @@ import { SpanContext, TraceFlags, trace, -} from '@opentelemetry/api'; -import { hrTime } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { hrTime } from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import { diff --git a/auto-merge/js/packages/sdk-metrics/test/InstrumentDescriptor.test.ts b/pkgs/sdk/metrics/test/InstrumentDescriptor.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/InstrumentDescriptor.test.ts rename to pkgs/sdk/metrics/test/InstrumentDescriptor.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/Instruments.test.ts b/pkgs/sdk/metrics/test/Instruments.test.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/test/Instruments.test.ts rename to pkgs/sdk/metrics/test/Instruments.test.ts index ba0f86bdd..6b37d34b7 100644 --- a/auto-merge/js/packages/sdk-metrics/test/Instruments.test.ts +++ b/pkgs/sdk/metrics/test/Instruments.test.ts @@ -16,8 +16,8 @@ import * as assert from 'assert'; import * as sinon from 'sinon'; -import { InstrumentationScope } from '@opentelemetry/core'; -import { Resource } from '@opentelemetry/resources'; +import { InstrumentationScope } from '@opentelemetry/sandbox-core'; +import { Resource } from '@opentelemetry/sandbox-resources'; import { InstrumentDescriptor, InstrumentType, @@ -39,7 +39,7 @@ import { defaultResource, defaultInstrumentationScope, } from './util'; -import { ObservableResult, ValueType } from '@opentelemetry/api'; +import { ObservableResult, ValueType } from '@opentelemetry/sandbox-api'; describe('Instruments', () => { describe('Counter', () => { diff --git a/auto-merge/js/packages/sdk-metrics/test/Meter.test.ts b/pkgs/sdk/metrics/test/Meter.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/Meter.test.ts rename to pkgs/sdk/metrics/test/Meter.test.ts index 4ffe41607..d3fb06bd3 100644 --- a/auto-merge/js/packages/sdk-metrics/test/Meter.test.ts +++ b/pkgs/sdk/metrics/test/Meter.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Observable } from '@opentelemetry/api'; +import { Observable } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { CounterInstrument, diff --git a/auto-merge/js/packages/sdk-metrics/test/MeterProvider.test.ts b/pkgs/sdk/metrics/test/MeterProvider.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/MeterProvider.test.ts rename to pkgs/sdk/metrics/test/MeterProvider.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/ObservableResult.test.ts b/pkgs/sdk/metrics/test/ObservableResult.test.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/test/ObservableResult.test.ts rename to pkgs/sdk/metrics/test/ObservableResult.test.ts index f07b3f9f2..0308b21e1 100644 --- a/auto-merge/js/packages/sdk-metrics/test/ObservableResult.test.ts +++ b/pkgs/sdk/metrics/test/ObservableResult.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ValueType } from '@opentelemetry/api'; +import { ValueType } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { InstrumentType } from '../src'; import { ObservableInstrument } from '../src/Instruments'; diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/Drop.test.ts b/pkgs/sdk/metrics/test/aggregator/Drop.test.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/Drop.test.ts rename to pkgs/sdk/metrics/test/aggregator/Drop.test.ts index b66ece90a..09b6c4e27 100644 --- a/auto-merge/js/packages/sdk-metrics/test/aggregator/Drop.test.ts +++ b/pkgs/sdk/metrics/test/aggregator/Drop.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { AggregationTemporality } from '../../src'; import { DropAggregator } from '../../src/aggregator'; diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/ExponentialHistogram.test.ts b/pkgs/sdk/metrics/test/aggregator/ExponentialHistogram.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/ExponentialHistogram.test.ts rename to pkgs/sdk/metrics/test/aggregator/ExponentialHistogram.test.ts index 150eb13e9..1dc1017ae 100644 --- a/auto-merge/js/packages/sdk-metrics/test/aggregator/ExponentialHistogram.test.ts +++ b/pkgs/sdk/metrics/test/aggregator/ExponentialHistogram.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime, ValueType } from '@opentelemetry/api'; +import { HrTime, ValueType } from '@opentelemetry/sandbox-api'; import { AggregationTemporality, DataPointType, diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/Histogram.test.ts b/pkgs/sdk/metrics/test/aggregator/Histogram.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/Histogram.test.ts rename to pkgs/sdk/metrics/test/aggregator/Histogram.test.ts index 5d03477d3..11ee44fee 100644 --- a/auto-merge/js/packages/sdk-metrics/test/aggregator/Histogram.test.ts +++ b/pkgs/sdk/metrics/test/aggregator/Histogram.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime, ValueType } from '@opentelemetry/api'; +import { HrTime, ValueType } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { AggregationTemporality, diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/LastValue.test.ts b/pkgs/sdk/metrics/test/aggregator/LastValue.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/LastValue.test.ts rename to pkgs/sdk/metrics/test/aggregator/LastValue.test.ts index 2fd35156c..4f3ebf852 100644 --- a/auto-merge/js/packages/sdk-metrics/test/aggregator/LastValue.test.ts +++ b/pkgs/sdk/metrics/test/aggregator/LastValue.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { AggregationTemporality } from '../../src'; diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/Sum.test.ts b/pkgs/sdk/metrics/test/aggregator/Sum.test.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/Sum.test.ts rename to pkgs/sdk/metrics/test/aggregator/Sum.test.ts index a59549ca8..d3104b83d 100644 --- a/auto-merge/js/packages/sdk-metrics/test/aggregator/Sum.test.ts +++ b/pkgs/sdk/metrics/test/aggregator/Sum.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { AggregationTemporality } from '../../src'; import { SumAccumulation, SumAggregator } from '../../src/aggregator'; diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/ExponentMapping.test.ts b/pkgs/sdk/metrics/test/aggregator/exponential-histogram/ExponentMapping.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/ExponentMapping.test.ts rename to pkgs/sdk/metrics/test/aggregator/exponential-histogram/ExponentMapping.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/LogarithmMapping.test.ts b/pkgs/sdk/metrics/test/aggregator/exponential-histogram/LogarithmMapping.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/LogarithmMapping.test.ts rename to pkgs/sdk/metrics/test/aggregator/exponential-histogram/LogarithmMapping.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/getMapping.test.ts b/pkgs/sdk/metrics/test/aggregator/exponential-histogram/getMapping.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/getMapping.test.ts rename to pkgs/sdk/metrics/test/aggregator/exponential-histogram/getMapping.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/helpers.ts b/pkgs/sdk/metrics/test/aggregator/exponential-histogram/helpers.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/helpers.ts rename to pkgs/sdk/metrics/test/aggregator/exponential-histogram/helpers.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/ieee754.test.ts b/pkgs/sdk/metrics/test/aggregator/exponential-histogram/ieee754.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/aggregator/exponential-histogram/ieee754.test.ts rename to pkgs/sdk/metrics/test/aggregator/exponential-histogram/ieee754.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/export/ConsoleMetricExporter.test.ts b/pkgs/sdk/metrics/test/export/ConsoleMetricExporter.test.ts similarity index 98% rename from auto-merge/js/packages/sdk-metrics/test/export/ConsoleMetricExporter.test.ts rename to pkgs/sdk/metrics/test/export/ConsoleMetricExporter.test.ts index fe46fa9f7..14e858bf3 100644 --- a/auto-merge/js/packages/sdk-metrics/test/export/ConsoleMetricExporter.test.ts +++ b/pkgs/sdk/metrics/test/export/ConsoleMetricExporter.test.ts @@ -13,8 +13,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import * as metrics from '@opentelemetry/api'; -import { ExportResult } from '@opentelemetry/core'; +import * as metrics from '@opentelemetry/sandbox-api'; +import { ExportResult } from '@opentelemetry/sandbox-core'; import { ConsoleMetricExporter } from '../../src/export/ConsoleMetricExporter'; import { PeriodicExportingMetricReader } from '../../src/export/PeriodicExportingMetricReader'; import { ResourceMetrics } from '../../src/export/MetricData'; diff --git a/auto-merge/js/packages/sdk-metrics/test/export/InMemoryMetricExporter.test.ts b/pkgs/sdk/metrics/test/export/InMemoryMetricExporter.test.ts similarity index 96% rename from auto-merge/js/packages/sdk-metrics/test/export/InMemoryMetricExporter.test.ts rename to pkgs/sdk/metrics/test/export/InMemoryMetricExporter.test.ts index 38a3f9858..43e279d02 100644 --- a/auto-merge/js/packages/sdk-metrics/test/export/InMemoryMetricExporter.test.ts +++ b/pkgs/sdk/metrics/test/export/InMemoryMetricExporter.test.ts @@ -13,9 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -import { ExportResultCode } from '@opentelemetry/core'; -import { Resource } from '@opentelemetry/resources'; -import * as metrics from '@opentelemetry/api'; +import { ExportResultCode } from '@opentelemetry/sandbox-core'; +import { Resource } from '@opentelemetry/sandbox-resources'; +import * as metrics from '@opentelemetry/sandbox-api'; import assert = require('assert'); import { AggregationTemporality } from '../../src/export/AggregationTemporality'; import { InMemoryMetricExporter } from '../../src/export/InMemoryMetricExporter'; diff --git a/auto-merge/js/packages/sdk-metrics/test/export/MetricReader.test.ts b/pkgs/sdk/metrics/test/export/MetricReader.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/export/MetricReader.test.ts rename to pkgs/sdk/metrics/test/export/MetricReader.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/export/PeriodicExportingMetricReader.test.ts b/pkgs/sdk/metrics/test/export/PeriodicExportingMetricReader.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/export/PeriodicExportingMetricReader.test.ts rename to pkgs/sdk/metrics/test/export/PeriodicExportingMetricReader.test.ts index d5ab55312..723adc1b8 100644 --- a/auto-merge/js/packages/sdk-metrics/test/export/PeriodicExportingMetricReader.test.ts +++ b/pkgs/sdk/metrics/test/export/PeriodicExportingMetricReader.test.ts @@ -21,7 +21,7 @@ import { ResourceMetrics } from '../../src/export/MetricData'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { TimeoutError } from '../../src/utils'; -import { ExportResult, ExportResultCode } from '@opentelemetry/core'; +import { ExportResult, ExportResultCode } from '@opentelemetry/sandbox-core'; import { assertRejects } from '../test-utils'; import { emptyResourceMetrics, TestMetricProducer } from './TestMetricProducer'; import { diff --git a/auto-merge/js/packages/sdk-metrics/test/export/TestMetricExporter.ts b/pkgs/sdk/metrics/test/export/TestMetricExporter.ts similarity index 94% rename from auto-merge/js/packages/sdk-metrics/test/export/TestMetricExporter.ts rename to pkgs/sdk/metrics/test/export/TestMetricExporter.ts index 86b726bb3..7022ae8f2 100644 --- a/auto-merge/js/packages/sdk-metrics/test/export/TestMetricExporter.ts +++ b/pkgs/sdk/metrics/test/export/TestMetricExporter.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ExportResult, ExportResultCode } from '@opentelemetry/core'; +import { ExportResult, ExportResultCode } from '@opentelemetry/sandbox-core'; import { AggregationTemporality, PushMetricExporter, diff --git a/auto-merge/js/packages/sdk-metrics/test/export/TestMetricProducer.ts b/pkgs/sdk/metrics/test/export/TestMetricProducer.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/export/TestMetricProducer.ts rename to pkgs/sdk/metrics/test/export/TestMetricProducer.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/export/TestMetricReader.ts b/pkgs/sdk/metrics/test/export/TestMetricReader.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/export/TestMetricReader.ts rename to pkgs/sdk/metrics/test/export/TestMetricReader.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/export/utils.ts b/pkgs/sdk/metrics/test/export/utils.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/export/utils.ts rename to pkgs/sdk/metrics/test/export/utils.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/index-webpack.ts b/pkgs/sdk/metrics/test/index-webpack.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/index-webpack.ts rename to pkgs/sdk/metrics/test/index-webpack.ts diff --git a/pkgs/sdk/metrics/test/index-webpack.worker.ts b/pkgs/sdk/metrics/test/index-webpack.worker.ts new file mode 100644 index 000000000..99a230aa7 --- /dev/null +++ b/pkgs/sdk/metrics/test/index-webpack.worker.ts @@ -0,0 +1,20 @@ +/*! + * 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 + * + * 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. +*/ + +{ + const testsContext = require.context('./', false, /test$/); + testsContext.keys().forEach(testsContext); +} diff --git a/auto-merge/js/packages/sdk-metrics/test/regression/two-metric-readers-async-instrument.test.ts b/pkgs/sdk/metrics/test/regression/two-metric-readers-async-instrument.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/regression/two-metric-readers-async-instrument.test.ts rename to pkgs/sdk/metrics/test/regression/two-metric-readers-async-instrument.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/state/AsyncMetricStorage.test.ts b/pkgs/sdk/metrics/test/state/AsyncMetricStorage.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/state/AsyncMetricStorage.test.ts rename to pkgs/sdk/metrics/test/state/AsyncMetricStorage.test.ts index 9fe742ca0..72c46be5d 100644 --- a/auto-merge/js/packages/sdk-metrics/test/state/AsyncMetricStorage.test.ts +++ b/pkgs/sdk/metrics/test/state/AsyncMetricStorage.test.ts @@ -30,7 +30,7 @@ import { ObservableCallbackDelegate, } from '../util'; import { ObservableInstrument } from '../../src/Instruments'; -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; const deltaCollector: MetricCollectorHandle = { selectAggregationTemporality: () => AggregationTemporality.DELTA, diff --git a/auto-merge/js/packages/sdk-metrics/test/state/DeltaMetricProcessor.test.ts b/pkgs/sdk/metrics/test/state/DeltaMetricProcessor.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/state/DeltaMetricProcessor.test.ts rename to pkgs/sdk/metrics/test/state/DeltaMetricProcessor.test.ts index ec0a3d6ff..a2a0a433e 100644 --- a/auto-merge/js/packages/sdk-metrics/test/state/DeltaMetricProcessor.test.ts +++ b/pkgs/sdk/metrics/test/state/DeltaMetricProcessor.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { DropAggregator, SumAggregator } from '../../src/aggregator'; import { DeltaMetricProcessor } from '../../src/state/DeltaMetricProcessor'; diff --git a/auto-merge/js/packages/sdk-metrics/test/state/HashMap.test.ts b/pkgs/sdk/metrics/test/state/HashMap.test.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/test/state/HashMap.test.ts rename to pkgs/sdk/metrics/test/state/HashMap.test.ts index 8ae772989..40285baec 100644 --- a/auto-merge/js/packages/sdk-metrics/test/state/HashMap.test.ts +++ b/pkgs/sdk/metrics/test/state/HashMap.test.ts @@ -15,7 +15,7 @@ */ import * as assert from 'assert'; -import { MetricAttributes } from '@opentelemetry/api'; +import { MetricAttributes } from '@opentelemetry/sandbox-api'; import { HashMap } from '../../src/state/HashMap'; import { hashAttributes } from '../../src/utils'; diff --git a/auto-merge/js/packages/sdk-metrics/test/state/MeterSharedState.test.ts b/pkgs/sdk/metrics/test/state/MeterSharedState.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/state/MeterSharedState.test.ts rename to pkgs/sdk/metrics/test/state/MeterSharedState.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/state/MetricCollector.test.ts b/pkgs/sdk/metrics/test/state/MetricCollector.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/state/MetricCollector.test.ts rename to pkgs/sdk/metrics/test/state/MetricCollector.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/state/MetricStorageRegistry.test.ts b/pkgs/sdk/metrics/test/state/MetricStorageRegistry.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/state/MetricStorageRegistry.test.ts rename to pkgs/sdk/metrics/test/state/MetricStorageRegistry.test.ts index 26a48a0ba..423e38e19 100644 --- a/auto-merge/js/packages/sdk-metrics/test/state/MetricStorageRegistry.test.ts +++ b/pkgs/sdk/metrics/test/state/MetricStorageRegistry.test.ts @@ -15,9 +15,9 @@ */ import { MetricStorageRegistry } from '../../src/state/MetricStorageRegistry'; -import { diag, ValueType } from '@opentelemetry/api'; +import { diag, ValueType } from '@opentelemetry/sandbox-api'; import { MetricStorage } from '../../src/state/MetricStorage'; -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import { MetricCollectorHandle } from '../../src/state/MetricCollector'; import { MetricData, InstrumentDescriptor, InstrumentType } from '../../src'; import { Maybe } from '../../src/utils'; diff --git a/auto-merge/js/packages/sdk-metrics/test/state/MultiWritableMetricStorage.test.ts b/pkgs/sdk/metrics/test/state/MultiWritableMetricStorage.test.ts similarity index 94% rename from auto-merge/js/packages/sdk-metrics/test/state/MultiWritableMetricStorage.test.ts rename to pkgs/sdk/metrics/test/state/MultiWritableMetricStorage.test.ts index f2ee109f1..e6de563c3 100644 --- a/auto-merge/js/packages/sdk-metrics/test/state/MultiWritableMetricStorage.test.ts +++ b/pkgs/sdk/metrics/test/state/MultiWritableMetricStorage.test.ts @@ -14,9 +14,9 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; -import { MetricAttributes } from '@opentelemetry/api'; -import { hrTime } from '@opentelemetry/core'; +import * as api from '@opentelemetry/sandbox-api'; +import { MetricAttributes } from '@opentelemetry/sandbox-api'; +import { hrTime } from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import { MultiMetricStorage } from '../../src/state/MultiWritableMetricStorage'; import { WritableMetricStorage } from '../../src/state/WritableMetricStorage'; diff --git a/auto-merge/js/packages/sdk-metrics/test/state/ObservableRegistry.test.ts b/pkgs/sdk/metrics/test/state/ObservableRegistry.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/state/ObservableRegistry.test.ts rename to pkgs/sdk/metrics/test/state/ObservableRegistry.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/state/SyncMetricStorage.test.ts b/pkgs/sdk/metrics/test/state/SyncMetricStorage.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/state/SyncMetricStorage.test.ts rename to pkgs/sdk/metrics/test/state/SyncMetricStorage.test.ts index 8e568be19..4b26ec540 100644 --- a/auto-merge/js/packages/sdk-metrics/test/state/SyncMetricStorage.test.ts +++ b/pkgs/sdk/metrics/test/state/SyncMetricStorage.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { SumAggregator } from '../../src/aggregator'; diff --git a/auto-merge/js/packages/sdk-metrics/test/state/TemporalMetricProcessor.test.ts b/pkgs/sdk/metrics/test/state/TemporalMetricProcessor.test.ts similarity index 99% rename from auto-merge/js/packages/sdk-metrics/test/state/TemporalMetricProcessor.test.ts rename to pkgs/sdk/metrics/test/state/TemporalMetricProcessor.test.ts index 8d0f165cd..e4fd1018b 100644 --- a/auto-merge/js/packages/sdk-metrics/test/state/TemporalMetricProcessor.test.ts +++ b/pkgs/sdk/metrics/test/state/TemporalMetricProcessor.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { SumAggregator } from '../../src/aggregator'; diff --git a/auto-merge/js/packages/sdk-metrics/test/test-utils.ts b/pkgs/sdk/metrics/test/test-utils.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/test-utils.ts rename to pkgs/sdk/metrics/test/test-utils.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/util.ts b/pkgs/sdk/metrics/test/util.ts similarity index 96% rename from auto-merge/js/packages/sdk-metrics/test/util.ts rename to pkgs/sdk/metrics/test/util.ts index fa7a54b07..79d295393 100644 --- a/auto-merge/js/packages/sdk-metrics/test/util.ts +++ b/pkgs/sdk/metrics/test/util.ts @@ -20,9 +20,9 @@ import { MetricAttributes, ObservableCallback, ValueType, -} from '@opentelemetry/api'; -import { InstrumentationScope } from '@opentelemetry/core'; -import { Resource } from '@opentelemetry/resources'; +} from '@opentelemetry/sandbox-api'; +import { InstrumentationScope } from '@opentelemetry/sandbox-core'; +import { Resource } from '@opentelemetry/sandbox-resources'; import * as assert from 'assert'; import { InstrumentDescriptor, @@ -35,7 +35,7 @@ import { ScopeMetrics, } from '../src/export/MetricData'; import { isNotNullish } from '../src/utils'; -import { HrTime } from '@opentelemetry/api'; +import { HrTime } from '@opentelemetry/sandbox-api'; import { Histogram } from '../src/aggregator/types'; import { AggregationTemporality } from '../src/export/AggregationTemporality'; diff --git a/auto-merge/js/packages/sdk-metrics/test/utils.test.ts b/pkgs/sdk/metrics/test/utils.test.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/test/utils.test.ts rename to pkgs/sdk/metrics/test/utils.test.ts index 16ec0a2b3..7965f389e 100644 --- a/auto-merge/js/packages/sdk-metrics/test/utils.test.ts +++ b/pkgs/sdk/metrics/test/utils.test.ts @@ -23,7 +23,7 @@ import { TimeoutError, } from '../src/utils'; import { assertRejects } from './test-utils'; -import { MetricAttributes } from '@opentelemetry/api'; +import { MetricAttributes } from '@opentelemetry/sandbox-api'; describe('utils', () => { afterEach(() => { diff --git a/auto-merge/js/packages/sdk-metrics/test/view/Aggregation.test.ts b/pkgs/sdk/metrics/test/view/Aggregation.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/view/Aggregation.test.ts rename to pkgs/sdk/metrics/test/view/Aggregation.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/view/AttributesProcessor.test.ts b/pkgs/sdk/metrics/test/view/AttributesProcessor.test.ts similarity index 97% rename from auto-merge/js/packages/sdk-metrics/test/view/AttributesProcessor.test.ts rename to pkgs/sdk/metrics/test/view/AttributesProcessor.test.ts index 8d38efacd..dd2fd6334 100644 --- a/auto-merge/js/packages/sdk-metrics/test/view/AttributesProcessor.test.ts +++ b/pkgs/sdk/metrics/test/view/AttributesProcessor.test.ts @@ -15,7 +15,7 @@ */ import * as assert from 'assert'; -import { context } from '@opentelemetry/api'; +import { context } from '@opentelemetry/sandbox-api'; import { NoopAttributesProcessor } from '../../src/view/AttributesProcessor'; import { FilteringAttributesProcessor } from '../../src/view/AttributesProcessor'; diff --git a/auto-merge/js/packages/sdk-metrics/test/view/Predicate.test.ts b/pkgs/sdk/metrics/test/view/Predicate.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/view/Predicate.test.ts rename to pkgs/sdk/metrics/test/view/Predicate.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/view/View.test.ts b/pkgs/sdk/metrics/test/view/View.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/view/View.test.ts rename to pkgs/sdk/metrics/test/view/View.test.ts diff --git a/auto-merge/js/packages/sdk-metrics/test/view/ViewRegistry.test.ts b/pkgs/sdk/metrics/test/view/ViewRegistry.test.ts similarity index 100% rename from auto-merge/js/packages/sdk-metrics/test/view/ViewRegistry.test.ts rename to pkgs/sdk/metrics/test/view/ViewRegistry.test.ts diff --git a/pkgs/sdk/metrics/tsconfig.esm.json b/pkgs/sdk/metrics/tsconfig.esm.json new file mode 100644 index 000000000..d0d0ce24d --- /dev/null +++ b/pkgs/sdk/metrics/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/sdk/metrics/tsconfig.esnext.json b/pkgs/sdk/metrics/tsconfig.esnext.json new file mode 100644 index 000000000..8e1d797d3 --- /dev/null +++ b/pkgs/sdk/metrics/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/sdk/metrics/tsconfig.json b/pkgs/sdk/metrics/tsconfig.json new file mode 100644 index 000000000..e4729001d --- /dev/null +++ b/pkgs/sdk/metrics/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "files": [], + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/.eslintignore b/pkgs/sdk/trace/base/.eslintignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/.eslintignore rename to pkgs/sdk/trace/base/.eslintignore diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/.eslintrc.js b/pkgs/sdk/trace/base/.eslintrc.js similarity index 74% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/.eslintrc.js rename to pkgs/sdk/trace/base/.eslintrc.js index 9dfe62f9b..a56ddd7a7 100644 --- a/auto-merge/js/packages/opentelemetry-semantic-conventions/.eslintrc.js +++ b/pkgs/sdk/trace/base/.eslintrc.js @@ -5,5 +5,5 @@ module.exports = { "node": true, "browser": true }, - ...require('../../eslint.config.js') + ...require('../../../../eslint.config.js') } diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/.npmignore b/pkgs/sdk/trace/base/.npmignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/.npmignore rename to pkgs/sdk/trace/base/.npmignore diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/LICENSE b/pkgs/sdk/trace/base/LICENSE similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/LICENSE rename to pkgs/sdk/trace/base/LICENSE diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/README.md b/pkgs/sdk/trace/base/README.md similarity index 94% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/README.md rename to pkgs/sdk/trace/base/README.md index 6d7b65589..5c0b62bb8 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/README.md +++ b/pkgs/sdk/trace/base/README.md @@ -22,8 +22,8 @@ npm install --save @opentelemetry/sdk-trace-base ## Usage ```js -const opentelemetry = require('@opentelemetry/api'); -const { BasicTracerProvider } = require('@opentelemetry/sdk-trace-base'); +const opentelemetry = require('@opentelemetry/sandbox-api'); +const { BasicTracerProvider } = require('@opentelemetry/sandbox-sdk-trace-base'); // To start a trace, you first need to initialize the Tracer provider. // NOTE: The default OpenTelemetry tracer provider does not record any tracing information. @@ -60,7 +60,7 @@ Samples every trace regardless of upstream sampling decisions. const { AlwaysOnSampler, BasicTracerProvider, -} = require("@opentelemetry/sdk-trace-base"); +} = require("@opentelemetry/sandbox-sdk-trace-base"); const tracerProvider = new BasicTracerProvider({ sampler: new AlwaysOnSampler() @@ -75,7 +75,7 @@ Doesn't sample any trace, regardless of upstream sampling decisions. const { AlwaysOffSampler, BasicTracerProvider, -} = require("@opentelemetry/sdk-trace-base"); +} = require("@opentelemetry/sandbox-sdk-trace-base"); const tracerProvider = new BasicTracerProvider({ sampler: new AlwaysOffSampler() @@ -93,7 +93,7 @@ The `TraceIDRatioSampler` may be used with the `ParentBasedSampler` to respect t const { BasicTracerProvider, TraceIdRatioBasedSampler, -} = require("@opentelemetry/sdk-trace-base"); +} = require("@opentelemetry/sandbox-sdk-trace-base"); const tracerProvider = new BasicTracerProvider({ // See details of ParentBasedSampler below @@ -141,7 +141,7 @@ const { BasicTracerProvider, ParentBasedSampler, TraceIdRatioBasedSampler, -} = require("@opentelemetry/sdk-trace-base"); +} = require("@opentelemetry/sandbox-sdk-trace-base"); const tracerProvider = new BasicTracerProvider({ sampler: new ParentBasedSampler({ diff --git a/auto-merge/js/api/karma.conf.js b/pkgs/sdk/trace/base/karma.conf.js similarity index 85% rename from auto-merge/js/api/karma.conf.js rename to pkgs/sdk/trace/base/karma.conf.js index 5f7d9f888..ec0186739 100644 --- a/auto-merge/js/api/karma.conf.js +++ b/pkgs/sdk/trace/base/karma.conf.js @@ -14,8 +14,8 @@ * limitations under the License. */ -const karmaWebpackConfig = require('../karma.webpack'); -const karmaBaseConfig = require('../karma.base'); +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.base'); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { diff --git a/pkgs/sdk/trace/base/karma.debug.conf.js b/pkgs/sdk/trace/base/karma.debug.conf.js new file mode 100644 index 000000000..02f69db6b --- /dev/null +++ b/pkgs/sdk/trace/base/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/auto-merge/js/api/karma.worker.js b/pkgs/sdk/trace/base/karma.worker.js similarity index 85% rename from auto-merge/js/api/karma.worker.js rename to pkgs/sdk/trace/base/karma.worker.js index 7917d5a00..ed61054b0 100644 --- a/auto-merge/js/api/karma.worker.js +++ b/pkgs/sdk/trace/base/karma.worker.js @@ -14,8 +14,8 @@ * limitations under the License. */ -const karmaWebpackConfig = require('../karma.webpack'); -const karmaBaseConfig = require('../karma.worker'); +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.worker'); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/package.json b/pkgs/sdk/trace/base/package.json similarity index 51% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/package.json rename to pkgs/sdk/trace/base/package.json index d493500dc..9e325b9c2 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/package.json +++ b/pkgs/sdk/trace/base/package.json @@ -1,5 +1,5 @@ { - "name": "@opentelemetry/sdk-trace-base", + "name": "@opentelemetry/sandbox-sdk-trace-base", "version": "1.13.0", "description": "OpenTelemetry Tracing", "main": "build/src/index.js", @@ -14,24 +14,28 @@ "types": "build/src/index.d.ts", "repository": "open-telemetry/opentelemetry-js", "scripts": { - "prepublishOnly": "npm run compile", - "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", - "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", - "test:browser": "nyc karma start --single-run", - "test:webworker": "nyc karma start karma.worker.js --single-run", - "tdd": "npm run tdd:node", - "tdd:node": "npm run test -- --watch-extensions ts --watch", - "tdd:browser": "karma start", - "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix", "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", "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", - "prewatch": "npm run precompile", - "peer-api-check": "node ../../scripts/peer-api-check.js" + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "npm run tdd:node", + "tdd:browser": "karma start", + "tdd:node": "npm run test -- --watch-extensions ts --watch", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "", + "test:webworker": "nyc karma start karma.worker.js --single-run", + "version": "node ../../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" }, "keywords": [ "opentelemetry", @@ -64,37 +68,53 @@ "access": "public" }, "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/node": "18.6.5", - "@types/sinon": "10.0.13", + "@opentelemetry/resources": "npm:@opentelemetry/resources@1.9.0", + "@opentelemetry/sandbox-api": "1.4.1", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", "@types/webpack-env": "1.16.3", - "codecov": "3.8.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", "istanbul-instrumenter-loader": "3.0.1", "karma": "6.3.16", "karma-chrome-launcher": "3.1.0", "karma-coverage-istanbul-reporter": "3.0.3", - "karma-mocha": "2.0.1", + "karma-mocha": "^2.0.1", "karma-mocha-webworker": "1.3.0", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "4.0.2", + "karma-spec-reporter": "^0.0.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", "mocha": "10.0.0", - "nyc": "15.1.0", - "sinon": "15.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", "ts-loader": "8.4.0", "ts-mocha": "10.0.0", - "typescript": "4.4.4", - "webpack": "4.46.0" + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" }, "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" + "@opentelemetry/sandbox-api": "1.4.1" }, "dependencies": { - "@opentelemetry/core": "1.13.0", - "@opentelemetry/resources": "1.13.0", - "@opentelemetry/semantic-conventions": "1.13.0" + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-resources": "1.13.0", + "@opentelemetry/sandbox-semantic-conventions": "1.13.0" }, "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-base", "sideEffects": false -} +} \ No newline at end of file diff --git a/pkgs/sdk/trace/base/rollup.config.js b/pkgs/sdk/trace/base/rollup.config.js new file mode 100644 index 000000000..59bc3bc1c --- /dev/null +++ b/pkgs/sdk/trace/base/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.sdk-trace-base", inputName, "otel-sndbx.sdk-trace-base", version); diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/BasicTracerProvider.ts b/pkgs/sdk/trace/base/src/BasicTracerProvider.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/BasicTracerProvider.ts rename to pkgs/sdk/trace/base/src/BasicTracerProvider.ts index c06f5cdcb..ed9866cb2 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/BasicTracerProvider.ts +++ b/pkgs/sdk/trace/base/src/BasicTracerProvider.ts @@ -21,15 +21,15 @@ import { TextMapPropagator, trace, TracerProvider, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { CompositePropagator, W3CBaggagePropagator, W3CTraceContextPropagator, getEnv, merge, -} from '@opentelemetry/core'; -import { IResource, Resource } from '@opentelemetry/resources'; +} from '@opentelemetry/sandbox-core'; +import { IResource, Resource } from '@opentelemetry/sandbox-resources'; import { SpanProcessor, Tracer } from '.'; import { loadDefaultConfig } from './config'; import { MultiSpanProcessor } from './MultiSpanProcessor'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/IdGenerator.ts b/pkgs/sdk/trace/base/src/IdGenerator.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/IdGenerator.ts rename to pkgs/sdk/trace/base/src/IdGenerator.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/MultiSpanProcessor.ts b/pkgs/sdk/trace/base/src/MultiSpanProcessor.ts similarity index 94% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/MultiSpanProcessor.ts rename to pkgs/sdk/trace/base/src/MultiSpanProcessor.ts index f5eb8f772..aaeb6de9e 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/MultiSpanProcessor.ts +++ b/pkgs/sdk/trace/base/src/MultiSpanProcessor.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { Context } from '@opentelemetry/api'; -import { globalErrorHandler } from '@opentelemetry/core'; +import { Context } from '@opentelemetry/sandbox-api'; +import { globalErrorHandler } from '@opentelemetry/sandbox-core'; import { ReadableSpan } from './export/ReadableSpan'; import { Span } from './Span'; import { SpanProcessor } from './SpanProcessor'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/Sampler.ts b/pkgs/sdk/trace/base/src/Sampler.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/Sampler.ts rename to pkgs/sdk/trace/base/src/Sampler.ts index 0a4236e88..412438d5b 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/Sampler.ts +++ b/pkgs/sdk/trace/base/src/Sampler.ts @@ -20,7 +20,7 @@ import { SpanAttributes, SpanKind, TraceState, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; /** * A sampling decision that determines how a {@link Span} will be recorded diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/Span.ts b/pkgs/sdk/trace/base/src/Span.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/Span.ts rename to pkgs/sdk/trace/base/src/Span.ts index 31fb1555a..3b32bd4ba 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/Span.ts +++ b/pkgs/sdk/trace/base/src/Span.ts @@ -28,7 +28,7 @@ import { SpanStatus, SpanStatusCode, TimeInput, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { addHrTimes, millisToHrTime, @@ -41,9 +41,9 @@ import { isTimeInputHrTime, otperformance, sanitizeAttributes, -} from '@opentelemetry/core'; -import { IResource } from '@opentelemetry/resources'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +} from '@opentelemetry/sandbox-core'; +import { IResource } from '@opentelemetry/sandbox-resources'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import { ExceptionEventName } from './enums'; import { ReadableSpan } from './export/ReadableSpan'; import { SpanProcessor } from './SpanProcessor'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/SpanProcessor.ts b/pkgs/sdk/trace/base/src/SpanProcessor.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/SpanProcessor.ts rename to pkgs/sdk/trace/base/src/SpanProcessor.ts index dc9b2232f..a68c983d1 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/SpanProcessor.ts +++ b/pkgs/sdk/trace/base/src/SpanProcessor.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context } from '@opentelemetry/api'; +import { Context } from '@opentelemetry/sandbox-api'; import { ReadableSpan } from './export/ReadableSpan'; import { Span } from './Span'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/TimedEvent.ts b/pkgs/sdk/trace/base/src/TimedEvent.ts similarity index 93% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/TimedEvent.ts rename to pkgs/sdk/trace/base/src/TimedEvent.ts index 1f835ba71..bd187c71f 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/TimedEvent.ts +++ b/pkgs/sdk/trace/base/src/TimedEvent.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { HrTime, SpanAttributes } from '@opentelemetry/api'; +import { HrTime, SpanAttributes } from '@opentelemetry/sandbox-api'; /** * Represents a timed event. diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/Tracer.ts b/pkgs/sdk/trace/base/src/Tracer.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/Tracer.ts rename to pkgs/sdk/trace/base/src/Tracer.ts index b77a9427e..c366e9817 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/Tracer.ts +++ b/pkgs/sdk/trace/base/src/Tracer.ts @@ -14,13 +14,13 @@ * limitations under the License. */ -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { InstrumentationLibrary, sanitizeAttributes, isTracingSuppressed, -} from '@opentelemetry/core'; -import { IResource } from '@opentelemetry/resources'; +} from '@opentelemetry/sandbox-core'; +import { IResource } from '@opentelemetry/sandbox-resources'; import { BasicTracerProvider } from './BasicTracerProvider'; import { Span } from './Span'; import { GeneralLimits, SpanLimits, TracerConfig } from './types'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/config.ts b/pkgs/sdk/trace/base/src/config.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/config.ts rename to pkgs/sdk/trace/base/src/config.ts index 3448b793d..da5e94ae8 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/config.ts +++ b/pkgs/sdk/trace/base/src/config.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { diag } from '@opentelemetry/api'; -import { getEnv, TracesSamplerValues, ENVIRONMENT } from '@opentelemetry/core'; +import { diag } from '@opentelemetry/sandbox-api'; +import { getEnv, TracesSamplerValues, ENVIRONMENT } from '@opentelemetry/sandbox-core'; import { Sampler } from './Sampler'; import { AlwaysOffSampler } from './sampler/AlwaysOffSampler'; import { AlwaysOnSampler } from './sampler/AlwaysOnSampler'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/enums.ts b/pkgs/sdk/trace/base/src/enums.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/enums.ts rename to pkgs/sdk/trace/base/src/enums.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/BatchSpanProcessorBase.ts b/pkgs/sdk/trace/base/src/export/BatchSpanProcessorBase.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/BatchSpanProcessorBase.ts rename to pkgs/sdk/trace/base/src/export/BatchSpanProcessorBase.ts index d760ff580..b93e57347 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/BatchSpanProcessorBase.ts +++ b/pkgs/sdk/trace/base/src/export/BatchSpanProcessorBase.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { context, Context, diag, TraceFlags } from '@opentelemetry/api'; +import { context, Context, diag, TraceFlags } from '@opentelemetry/sandbox-api'; import { BindOnceFuture, ExportResultCode, @@ -22,7 +22,7 @@ import { globalErrorHandler, suppressTracing, unrefTimer, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import { Span } from '../Span'; import { SpanProcessor } from '../SpanProcessor'; import { BufferConfig } from '../types'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/ConsoleSpanExporter.ts b/pkgs/sdk/trace/base/src/export/ConsoleSpanExporter.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/ConsoleSpanExporter.ts rename to pkgs/sdk/trace/base/src/export/ConsoleSpanExporter.ts index 596b3cefd..228068030 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/ConsoleSpanExporter.ts +++ b/pkgs/sdk/trace/base/src/export/ConsoleSpanExporter.ts @@ -20,7 +20,7 @@ import { ExportResult, ExportResultCode, hrTimeToMicroseconds, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; /** * This is implementation of {@link SpanExporter} that prints spans to the diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/InMemorySpanExporter.ts b/pkgs/sdk/trace/base/src/export/InMemorySpanExporter.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/InMemorySpanExporter.ts rename to pkgs/sdk/trace/base/src/export/InMemorySpanExporter.ts index 4a755ea8c..52c32e9f7 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/InMemorySpanExporter.ts +++ b/pkgs/sdk/trace/base/src/export/InMemorySpanExporter.ts @@ -16,7 +16,7 @@ import { SpanExporter } from './SpanExporter'; import { ReadableSpan } from './ReadableSpan'; -import { ExportResult, ExportResultCode } from '@opentelemetry/core'; +import { ExportResult, ExportResultCode } from '@opentelemetry/sandbox-core'; /** * This class can be used for testing purposes. It stores the exported spans diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/NoopSpanProcessor.ts b/pkgs/sdk/trace/base/src/export/NoopSpanProcessor.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/NoopSpanProcessor.ts rename to pkgs/sdk/trace/base/src/export/NoopSpanProcessor.ts index 21e608e28..7513ab99a 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/NoopSpanProcessor.ts +++ b/pkgs/sdk/trace/base/src/export/NoopSpanProcessor.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context } from '@opentelemetry/api'; +import { Context } from '@opentelemetry/sandbox-api'; import { ReadableSpan } from './ReadableSpan'; import { Span } from '../Span'; import { SpanProcessor } from '../SpanProcessor'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/ReadableSpan.ts b/pkgs/sdk/trace/base/src/export/ReadableSpan.ts similarity index 88% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/ReadableSpan.ts rename to pkgs/sdk/trace/base/src/export/ReadableSpan.ts index 20ffea4c5..6c537696f 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/ReadableSpan.ts +++ b/pkgs/sdk/trace/base/src/export/ReadableSpan.ts @@ -21,9 +21,9 @@ import { HrTime, Link, SpanContext, -} from '@opentelemetry/api'; -import { IResource } from '@opentelemetry/resources'; -import { InstrumentationLibrary } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { IResource } from '@opentelemetry/sandbox-resources'; +import { InstrumentationLibrary } from '@opentelemetry/sandbox-core'; import { TimedEvent } from '../TimedEvent'; export interface ReadableSpan { diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/SimpleSpanProcessor.ts b/pkgs/sdk/trace/base/src/export/SimpleSpanProcessor.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/SimpleSpanProcessor.ts rename to pkgs/sdk/trace/base/src/export/SimpleSpanProcessor.ts index 463e8376b..7fef7c685 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/SimpleSpanProcessor.ts +++ b/pkgs/sdk/trace/base/src/export/SimpleSpanProcessor.ts @@ -14,19 +14,19 @@ * limitations under the License. */ -import { Context, TraceFlags } from '@opentelemetry/api'; +import { Context, TraceFlags } from '@opentelemetry/sandbox-api'; import { internal, ExportResultCode, globalErrorHandler, BindOnceFuture, ExportResult, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import { Span } from '../Span'; import { SpanProcessor } from '../SpanProcessor'; import { ReadableSpan } from './ReadableSpan'; import { SpanExporter } from './SpanExporter'; -import { Resource } from '@opentelemetry/resources'; +import { Resource } from '@opentelemetry/sandbox-resources'; /** * An implementation of the {@link SpanProcessor} that converts the {@link Span} diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/SpanExporter.ts b/pkgs/sdk/trace/base/src/export/SpanExporter.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/SpanExporter.ts rename to pkgs/sdk/trace/base/src/export/SpanExporter.ts index c9ca9c0c8..fa5795112 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/export/SpanExporter.ts +++ b/pkgs/sdk/trace/base/src/export/SpanExporter.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ExportResult } from '@opentelemetry/core'; +import { ExportResult } from '@opentelemetry/sandbox-core'; import { ReadableSpan } from './ReadableSpan'; /** diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/index.ts b/pkgs/sdk/trace/base/src/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/index.ts rename to pkgs/sdk/trace/base/src/index.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/browser/RandomIdGenerator.ts b/pkgs/sdk/trace/base/src/platform/browser/RandomIdGenerator.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/browser/RandomIdGenerator.ts rename to pkgs/sdk/trace/base/src/platform/browser/RandomIdGenerator.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/browser/export/BatchSpanProcessor.ts b/pkgs/sdk/trace/base/src/platform/browser/export/BatchSpanProcessor.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/browser/export/BatchSpanProcessor.ts rename to pkgs/sdk/trace/base/src/platform/browser/export/BatchSpanProcessor.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/browser/index.ts b/pkgs/sdk/trace/base/src/platform/browser/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/browser/index.ts rename to pkgs/sdk/trace/base/src/platform/browser/index.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/index.ts b/pkgs/sdk/trace/base/src/platform/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/index.ts rename to pkgs/sdk/trace/base/src/platform/index.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/node/RandomIdGenerator.ts b/pkgs/sdk/trace/base/src/platform/node/RandomIdGenerator.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/node/RandomIdGenerator.ts rename to pkgs/sdk/trace/base/src/platform/node/RandomIdGenerator.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/node/export/BatchSpanProcessor.ts b/pkgs/sdk/trace/base/src/platform/node/export/BatchSpanProcessor.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/node/export/BatchSpanProcessor.ts rename to pkgs/sdk/trace/base/src/platform/node/export/BatchSpanProcessor.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/node/index.ts b/pkgs/sdk/trace/base/src/platform/node/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/platform/node/index.ts rename to pkgs/sdk/trace/base/src/platform/node/index.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/AlwaysOffSampler.ts b/pkgs/sdk/trace/base/src/sampler/AlwaysOffSampler.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/AlwaysOffSampler.ts rename to pkgs/sdk/trace/base/src/sampler/AlwaysOffSampler.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/AlwaysOnSampler.ts b/pkgs/sdk/trace/base/src/sampler/AlwaysOnSampler.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/AlwaysOnSampler.ts rename to pkgs/sdk/trace/base/src/sampler/AlwaysOnSampler.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/ParentBasedSampler.ts b/pkgs/sdk/trace/base/src/sampler/ParentBasedSampler.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/ParentBasedSampler.ts rename to pkgs/sdk/trace/base/src/sampler/ParentBasedSampler.ts index 6f89ac643..38aebf67b 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/ParentBasedSampler.ts +++ b/pkgs/sdk/trace/base/src/sampler/ParentBasedSampler.ts @@ -22,8 +22,8 @@ import { SpanKind, TraceFlags, trace, -} from '@opentelemetry/api'; -import { globalErrorHandler } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { globalErrorHandler } from '@opentelemetry/sandbox-core'; import { AlwaysOffSampler } from './AlwaysOffSampler'; import { AlwaysOnSampler } from './AlwaysOnSampler'; import { Sampler, SamplingResult } from '../Sampler'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/TraceIdRatioBasedSampler.ts b/pkgs/sdk/trace/base/src/sampler/TraceIdRatioBasedSampler.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/TraceIdRatioBasedSampler.ts rename to pkgs/sdk/trace/base/src/sampler/TraceIdRatioBasedSampler.ts index aca52ac22..d4467d36a 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/sampler/TraceIdRatioBasedSampler.ts +++ b/pkgs/sdk/trace/base/src/sampler/TraceIdRatioBasedSampler.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { isValidTraceId } from '@opentelemetry/api'; +import { isValidTraceId } from '@opentelemetry/sandbox-api'; import { Sampler, SamplingDecision, SamplingResult } from '../Sampler'; /** Sampler that samples a given fraction of traces based of trace id deterministically. */ diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/types.ts b/pkgs/sdk/trace/base/src/types.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/types.ts rename to pkgs/sdk/trace/base/src/types.ts index 99eeedbe8..aac8b1328 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/types.ts +++ b/pkgs/sdk/trace/base/src/types.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { ContextManager, TextMapPropagator } from '@opentelemetry/api'; -import { IResource } from '@opentelemetry/resources'; +import { ContextManager, TextMapPropagator } from '@opentelemetry/sandbox-api'; +import { IResource } from '@opentelemetry/sandbox-resources'; import { IdGenerator } from './IdGenerator'; import { Sampler } from './Sampler'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/utility.ts b/pkgs/sdk/trace/base/src/utility.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/src/utility.ts rename to pkgs/sdk/trace/base/src/utility.ts index 819d725d4..70687d008 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/src/utility.ts +++ b/pkgs/sdk/trace/base/src/utility.ts @@ -21,7 +21,7 @@ import { DEFAULT_ATTRIBUTE_COUNT_LIMIT, DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT, getEnvWithoutDefaults, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; /** * Function to merge Default configuration (as specified in './config') with diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/browser/export/BatchSpanProcessor.test.ts b/pkgs/sdk/trace/base/test/browser/export/BatchSpanProcessor.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/browser/export/BatchSpanProcessor.test.ts rename to pkgs/sdk/trace/base/test/browser/export/BatchSpanProcessor.test.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/BasicTracerProvider.test.ts b/pkgs/sdk/trace/base/test/common/BasicTracerProvider.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/BasicTracerProvider.test.ts rename to pkgs/sdk/trace/base/test/common/BasicTracerProvider.test.ts index 7a0483ffa..f341c5683 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/BasicTracerProvider.test.ts +++ b/pkgs/sdk/trace/base/test/common/BasicTracerProvider.test.ts @@ -26,10 +26,10 @@ import { TextMapGetter, propagation, diag, -} from '@opentelemetry/api'; -import { CompositePropagator } from '@opentelemetry/core'; -import { TraceState, W3CTraceContextPropagator } from '@opentelemetry/core'; -import { Resource } from '@opentelemetry/resources'; +} from '@opentelemetry/sandbox-api'; +import { CompositePropagator } from '@opentelemetry/sandbox-core'; +import { TraceState, W3CTraceContextPropagator } from '@opentelemetry/sandbox-core'; +import { Resource } from '@opentelemetry/sandbox-resources'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/MultiSpanProcessor.test.ts b/pkgs/sdk/trace/base/test/common/MultiSpanProcessor.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/MultiSpanProcessor.test.ts rename to pkgs/sdk/trace/base/test/common/MultiSpanProcessor.test.ts index 7412a121c..6c6fe23ef 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/MultiSpanProcessor.test.ts +++ b/pkgs/sdk/trace/base/test/common/MultiSpanProcessor.test.ts @@ -26,7 +26,7 @@ import { import { setGlobalErrorHandler, loggingErrorHandler, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import { MultiSpanProcessor } from '../../src/MultiSpanProcessor'; class TestProcessor implements SpanProcessor { diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/Sampler.test.ts b/pkgs/sdk/trace/base/test/common/Sampler.test.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/Sampler.test.ts rename to pkgs/sdk/trace/base/test/common/Sampler.test.ts index 381975496..a990bc09b 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/Sampler.test.ts +++ b/pkgs/sdk/trace/base/test/common/Sampler.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { context, SpanKind } from '@opentelemetry/api'; +import { context, SpanKind } from '@opentelemetry/sandbox-api'; import { AlwaysOffSampler, AlwaysOnSampler, diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/Span.test.ts b/pkgs/sdk/trace/base/test/common/Span.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/Span.test.ts rename to pkgs/sdk/trace/base/test/common/Span.test.ts index 11a94ffc7..4dcd7d749 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/Span.test.ts +++ b/pkgs/sdk/trace/base/test/common/Span.test.ts @@ -24,7 +24,7 @@ import { HrTime, SpanAttributes, SpanAttributeValue, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { DEFAULT_ATTRIBUTE_COUNT_LIMIT, DEFAULT_ATTRIBUTE_VALUE_LENGTH_LIMIT, @@ -32,8 +32,8 @@ import { hrTimeToMilliseconds, hrTimeToNanoseconds, otperformance as performance, -} from '@opentelemetry/core'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +} from '@opentelemetry/sandbox-core'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { BasicTracerProvider, Span, SpanProcessor } from '../../src'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/Tracer.test.ts b/pkgs/sdk/trace/base/test/common/Tracer.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/Tracer.test.ts rename to pkgs/sdk/trace/base/test/common/Tracer.test.ts index 359816874..cb6c3488f 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/Tracer.test.ts +++ b/pkgs/sdk/trace/base/test/common/Tracer.test.ts @@ -27,13 +27,13 @@ import { trace, TraceFlags, TraceState, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { getSpan } from '@opentelemetry/api/build/src/trace/context-utils'; import { InstrumentationLibrary, sanitizeAttributes, suppressTracing, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import { AlwaysOffSampler, diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/config.test.ts b/pkgs/sdk/trace/base/test/common/config.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/config.test.ts rename to pkgs/sdk/trace/base/test/common/config.test.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/BatchSpanProcessorBase.test.ts b/pkgs/sdk/trace/base/test/common/export/BatchSpanProcessorBase.test.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/BatchSpanProcessorBase.test.ts rename to pkgs/sdk/trace/base/test/common/export/BatchSpanProcessorBase.test.ts index 069287fc5..b57204a46 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/BatchSpanProcessorBase.test.ts +++ b/pkgs/sdk/trace/base/test/common/export/BatchSpanProcessorBase.test.ts @@ -14,12 +14,12 @@ * limitations under the License. */ -import { diag, ROOT_CONTEXT } from '@opentelemetry/api'; +import { diag, ROOT_CONTEXT } from '@opentelemetry/sandbox-api'; import { ExportResultCode, loggingErrorHandler, setGlobalErrorHandler, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { @@ -29,12 +29,12 @@ import { InMemorySpanExporter, Span, } from '../../../src'; -import { context } from '@opentelemetry/api'; +import { context } from '@opentelemetry/sandbox-api'; import { TestRecordOnlySampler } from './TestRecordOnlySampler'; import { TestTracingSpanExporter } from './TestTracingSpanExporter'; import { TestStackContextManager } from './TestStackContextManager'; import { BatchSpanProcessorBase } from '../../../src/export/BatchSpanProcessorBase'; -import { Resource, ResourceAttributes } from '@opentelemetry/resources'; +import { Resource, ResourceAttributes } from '@opentelemetry/sandbox-resources'; function createSampledSpan(spanName: string): Span { const tracer = new BasicTracerProvider({ diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/ConsoleSpanExporter.test.ts b/pkgs/sdk/trace/base/test/common/export/ConsoleSpanExporter.test.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/ConsoleSpanExporter.test.ts rename to pkgs/sdk/trace/base/test/common/export/ConsoleSpanExporter.test.ts index d005a2f80..fe9bf2071 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/ConsoleSpanExporter.test.ts +++ b/pkgs/sdk/trace/base/test/common/export/ConsoleSpanExporter.test.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -import { SpanContext, TraceFlags } from '@opentelemetry/api'; -import { TraceState } from '@opentelemetry/core'; +import { SpanContext, TraceFlags } from '@opentelemetry/sandbox-api'; +import { TraceState } from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/InMemorySpanExporter.test.ts b/pkgs/sdk/trace/base/test/common/export/InMemorySpanExporter.test.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/InMemorySpanExporter.test.ts rename to pkgs/sdk/trace/base/test/common/export/InMemorySpanExporter.test.ts index 585610514..546b46f18 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/InMemorySpanExporter.test.ts +++ b/pkgs/sdk/trace/base/test/common/export/InMemorySpanExporter.test.ts @@ -20,8 +20,8 @@ import { SimpleSpanProcessor, BasicTracerProvider, } from '../../../src'; -import { context, trace } from '@opentelemetry/api'; -import { ExportResult, ExportResultCode } from '@opentelemetry/core'; +import { context, trace } from '@opentelemetry/sandbox-api'; +import { ExportResult, ExportResultCode } from '@opentelemetry/sandbox-core'; describe('InMemorySpanExporter', () => { let memoryExporter: InMemorySpanExporter; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/SimpleSpanProcessor.test.ts b/pkgs/sdk/trace/base/test/common/export/SimpleSpanProcessor.test.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/SimpleSpanProcessor.test.ts rename to pkgs/sdk/trace/base/test/common/export/SimpleSpanProcessor.test.ts index 94e86eeed..c6ebfc3a2 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/SimpleSpanProcessor.test.ts +++ b/pkgs/sdk/trace/base/test/common/export/SimpleSpanProcessor.test.ts @@ -20,12 +20,12 @@ import { SpanContext, SpanKind, TraceFlags, -} from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-api'; import { ExportResultCode, loggingErrorHandler, setGlobalErrorHandler, -} from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import * as sinon from 'sinon'; import { @@ -36,8 +36,8 @@ import { } from '../../../src'; import { TestStackContextManager } from './TestStackContextManager'; import { TestTracingSpanExporter } from './TestTracingSpanExporter'; -import { Resource, ResourceAttributes } from '@opentelemetry/resources'; -import { Resource as Resource190 } from '@opentelemetry/resources_1.9.0'; +import { Resource, ResourceAttributes } from '@opentelemetry/sandbox-resources'; +import { Resource as Resource190 } from '@opentelemetry/resources'; import { TestExporterWithDelay } from './TestExporterWithDelay'; describe('SimpleSpanProcessor', () => { diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestExporterWithDelay.ts b/pkgs/sdk/trace/base/test/common/export/TestExporterWithDelay.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestExporterWithDelay.ts rename to pkgs/sdk/trace/base/test/common/export/TestExporterWithDelay.ts index d10dab527..84d70c145 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestExporterWithDelay.ts +++ b/pkgs/sdk/trace/base/test/common/export/TestExporterWithDelay.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ExportResult } from '@opentelemetry/core'; +import { ExportResult } from '@opentelemetry/sandbox-core'; import { InMemorySpanExporter, ReadableSpan } from '../../../src'; /** diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestRecordOnlySampler.ts b/pkgs/sdk/trace/base/test/common/export/TestRecordOnlySampler.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestRecordOnlySampler.ts rename to pkgs/sdk/trace/base/test/common/export/TestRecordOnlySampler.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestStackContextManager.ts b/pkgs/sdk/trace/base/test/common/export/TestStackContextManager.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestStackContextManager.ts rename to pkgs/sdk/trace/base/test/common/export/TestStackContextManager.ts index 3413a4aa1..154551205 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestStackContextManager.ts +++ b/pkgs/sdk/trace/base/test/common/export/TestStackContextManager.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ContextManager, Context, ROOT_CONTEXT } from '@opentelemetry/api'; +import { ContextManager, Context, ROOT_CONTEXT } from '@opentelemetry/sandbox-api'; /** * A test-only ContextManager that uses an in-memory stack to keep track of diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestTracingSpanExporter.ts b/pkgs/sdk/trace/base/test/common/export/TestTracingSpanExporter.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestTracingSpanExporter.ts rename to pkgs/sdk/trace/base/test/common/export/TestTracingSpanExporter.ts index 89eae8d8b..79aac1d40 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/export/TestTracingSpanExporter.ts +++ b/pkgs/sdk/trace/base/test/common/export/TestTracingSpanExporter.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ExportResult } from '@opentelemetry/core'; +import { ExportResult } from '@opentelemetry/sandbox-core'; import { BasicTracerProvider, InMemorySpanExporter, diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/platform/RandomIdGenerator.test.ts b/pkgs/sdk/trace/base/test/common/platform/RandomIdGenerator.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/platform/RandomIdGenerator.test.ts rename to pkgs/sdk/trace/base/test/common/platform/RandomIdGenerator.test.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/AlwaysOffSampler.test.ts b/pkgs/sdk/trace/base/test/common/sampler/AlwaysOffSampler.test.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/AlwaysOffSampler.test.ts rename to pkgs/sdk/trace/base/test/common/sampler/AlwaysOffSampler.test.ts index d591dc53e..106ce2057 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/AlwaysOffSampler.test.ts +++ b/pkgs/sdk/trace/base/test/common/sampler/AlwaysOffSampler.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ import * as assert from 'assert'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { AlwaysOffSampler } from '../../../src/sampler/AlwaysOffSampler'; describe('AlwaysOffSampler', () => { diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/AlwaysOnSampler.test.ts b/pkgs/sdk/trace/base/test/common/sampler/AlwaysOnSampler.test.ts similarity index 95% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/AlwaysOnSampler.test.ts rename to pkgs/sdk/trace/base/test/common/sampler/AlwaysOnSampler.test.ts index 95825dc79..fcda13f8c 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/AlwaysOnSampler.test.ts +++ b/pkgs/sdk/trace/base/test/common/sampler/AlwaysOnSampler.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ import * as assert from 'assert'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { AlwaysOnSampler } from '../../../src/sampler/AlwaysOnSampler'; describe('AlwaysOnSampler', () => { diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/ParentBasedSampler.test.ts b/pkgs/sdk/trace/base/test/common/sampler/ParentBasedSampler.test.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/ParentBasedSampler.test.ts rename to pkgs/sdk/trace/base/test/common/sampler/ParentBasedSampler.test.ts index 22ebfb809..eea1e9704 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/ParentBasedSampler.test.ts +++ b/pkgs/sdk/trace/base/test/common/sampler/ParentBasedSampler.test.ts @@ -14,8 +14,8 @@ * limitations under the License. */ import * as assert from 'assert'; -import * as api from '@opentelemetry/api'; -import { TraceFlags, SpanKind, trace } from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; +import { TraceFlags, SpanKind, trace } from '@opentelemetry/sandbox-api'; import { AlwaysOnSampler, ParentBasedSampler, diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/TraceIdRatioBasedSampler.test.ts b/pkgs/sdk/trace/base/test/common/sampler/TraceIdRatioBasedSampler.test.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/TraceIdRatioBasedSampler.test.ts rename to pkgs/sdk/trace/base/test/common/sampler/TraceIdRatioBasedSampler.test.ts index d40219f95..00b1b85ed 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/sampler/TraceIdRatioBasedSampler.test.ts +++ b/pkgs/sdk/trace/base/test/common/sampler/TraceIdRatioBasedSampler.test.ts @@ -15,7 +15,7 @@ */ import * as assert from 'assert'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { TraceIdRatioBasedSampler } from '../../../src/sampler/TraceIdRatioBasedSampler'; const spanContext = (traceId = '1') => ({ diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/util.ts b/pkgs/sdk/trace/base/test/common/util.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/common/util.ts rename to pkgs/sdk/trace/base/test/common/util.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/index-webpack.ts b/pkgs/sdk/trace/base/test/index-webpack.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/index-webpack.ts rename to pkgs/sdk/trace/base/test/index-webpack.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-base/test/index-webpack.worker.ts b/pkgs/sdk/trace/base/test/index-webpack.worker.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-base/test/index-webpack.worker.ts rename to pkgs/sdk/trace/base/test/index-webpack.worker.ts diff --git a/pkgs/sdk/trace/base/tsconfig.esm.json b/pkgs/sdk/trace/base/tsconfig.esm.json new file mode 100644 index 000000000..ed5341aa3 --- /dev/null +++ b/pkgs/sdk/trace/base/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/sdk/trace/base/tsconfig.esnext.json b/pkgs/sdk/trace/base/tsconfig.esnext.json new file mode 100644 index 000000000..2f8a78e6b --- /dev/null +++ b/pkgs/sdk/trace/base/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/sdk/trace/base/tsconfig.json b/pkgs/sdk/trace/base/tsconfig.json new file mode 100644 index 000000000..33f0e4587 --- /dev/null +++ b/pkgs/sdk/trace/base/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "files": [], + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/.eslintignore b/pkgs/sdk/trace/web/.eslintignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/.eslintignore rename to pkgs/sdk/trace/web/.eslintignore diff --git a/pkgs/sdk/trace/web/.eslintrc.js b/pkgs/sdk/trace/web/.eslintrc.js new file mode 100644 index 000000000..d8a963f4e --- /dev/null +++ b/pkgs/sdk/trace/web/.eslintrc.js @@ -0,0 +1,7 @@ +module.exports = { + "env": { + "mocha": true, + "browser": true, + }, + ...require('../../../../eslint.config.js') +} diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/.npmignore b/pkgs/sdk/trace/web/.npmignore similarity index 100% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/.npmignore rename to pkgs/sdk/trace/web/.npmignore diff --git a/auto-merge/js/packages/sdk-metrics/LICENSE b/pkgs/sdk/trace/web/LICENSE similarity index 100% rename from auto-merge/js/packages/sdk-metrics/LICENSE rename to pkgs/sdk/trace/web/LICENSE diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/README.md b/pkgs/sdk/trace/web/README.md similarity index 90% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/README.md rename to pkgs/sdk/trace/web/README.md index 8eccf7fc1..68cfc5007 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/README.md +++ b/pkgs/sdk/trace/web/README.md @@ -35,10 +35,10 @@ import { ConsoleSpanExporter, SimpleSpanProcessor, WebTracerProvider, -} from '@opentelemetry/sdk-trace-web'; -import { DocumentLoad } from '@opentelemetry/plugin-document-load'; -import { ZoneContextManager } from '@opentelemetry/context-zone'; -import { registerInstrumentations } from '@opentelemetry/instrumentation'; +} from '@opentelemetry/sandbox-sdk-trace-web'; +import { DocumentLoad } from '@opentelemetry/sandbox-plugin-document-load'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone'; +import { registerInstrumentations } from '@opentelemetry/sandbox-instrumentation'; const provider = new WebTracerProvider(); provider.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter())); diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/karma.conf.js b/pkgs/sdk/trace/web/karma.conf.js similarity index 86% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/karma.conf.js rename to pkgs/sdk/trace/web/karma.conf.js index 09cb7c72d..ddd3016ec 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/karma.conf.js +++ b/pkgs/sdk/trace/web/karma.conf.js @@ -14,8 +14,8 @@ * limitations under the License. */ -const karmaWebpackConfig = require('../../karma.webpack'); -const karmaBaseConfig = require('../../karma.base'); +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.base'); module.exports = (config) => { config.set(Object.assign({}, karmaBaseConfig, { diff --git a/pkgs/sdk/trace/web/karma.debug.conf.js b/pkgs/sdk/trace/web/karma.debug.conf.js new file mode 100644 index 000000000..02f69db6b --- /dev/null +++ b/pkgs/sdk/trace/web/karma.debug.conf.js @@ -0,0 +1,22 @@ +/*! + * 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 + * + * 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. +*/ + +const karmaBaseConfig = require("../../../../karma.base"); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + })); +}; diff --git a/pkgs/sdk/trace/web/karma.worker.js b/pkgs/sdk/trace/web/karma.worker.js new file mode 100644 index 000000000..f2126608c --- /dev/null +++ b/pkgs/sdk/trace/web/karma.worker.js @@ -0,0 +1,24 @@ +/*! + * 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 + * + * 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. + */ + +const karmaWebpackConfig = require('../../../../karma.webpack'); +const karmaBaseConfig = require('../../../../karma.worker'); + +module.exports = (config) => { + config.set(Object.assign({}, karmaBaseConfig, { + webpack: karmaWebpackConfig + })) +}; diff --git a/pkgs/sdk/trace/web/package.json b/pkgs/sdk/trace/web/package.json new file mode 100644 index 000000000..545d5c2f8 --- /dev/null +++ b/pkgs/sdk/trace/web/package.json @@ -0,0 +1,119 @@ +{ + "name": "@opentelemetry/sandbox-sdk-trace-web", + "version": "1.13.0", + "description": "OpenTelemetry Web Tracer", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "codecov:browser": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", + "codecov:webworker": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "tdd": "karma start", + "test": "npm run test:node && npm run test:browser && npm run test:webworker", + "test:browser": "nyc karma start ./karma.conf.js --single-run", + "test:debug": "nyc karma start ./karma.debug.conf.js --wait", + "test:node": "", + "test:webworker": "nyc karma start karma.worker.js --single-run", + "version": "node ../../../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "web", + "tracing", + "profiling", + "metrics", + "stats" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@babel/core": "7.16.0", + "@opentelemetry/sandbox-api": "1.4.1", + "@opentelemetry/sandbox-context-zone": "1.13.0", + "@opentelemetry/sandbox-propagator-b3": "1.13.0", + "@opentelemetry/sandbox-resources": "1.13.0", + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "babel-loader": "8.2.3", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0", + "webpack-cli": "4.9.1", + "webpack-merge": "5.8.0" + }, + "peerDependencies": { + "@opentelemetry/sandbox-api": "1.4.1" + }, + "dependencies": { + "@opentelemetry/sandbox-core": "1.13.0", + "@opentelemetry/sandbox-sdk-trace-base": "1.13.0", + "@opentelemetry/sandbox-semantic-conventions": "1.13.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-web", + "sideEffects": false +} \ No newline at end of file diff --git a/pkgs/sdk/trace/web/rollup.config.js b/pkgs/sdk/trace/web/rollup.config.js new file mode 100644 index 000000000..c8d21aff9 --- /dev/null +++ b/pkgs/sdk/trace/web/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.sdk-trace-web", inputName, "otel-sndbx.sdk-trace-web", version); diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/StackContextManager.ts b/pkgs/sdk/trace/web/src/StackContextManager.ts similarity index 99% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/src/StackContextManager.ts rename to pkgs/sdk/trace/web/src/StackContextManager.ts index b15b0b03c..9d759ab42 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/StackContextManager.ts +++ b/pkgs/sdk/trace/web/src/StackContextManager.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { Context, ContextManager, ROOT_CONTEXT } from '@opentelemetry/api'; +import { Context, ContextManager, ROOT_CONTEXT } from '@opentelemetry/sandbox-api'; /** * Stack Context Manager for managing the state in web diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/WebTracerProvider.ts b/pkgs/sdk/trace/web/src/WebTracerProvider.ts similarity index 97% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/src/WebTracerProvider.ts rename to pkgs/sdk/trace/web/src/WebTracerProvider.ts index 0317f48f8..9deea075f 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/WebTracerProvider.ts +++ b/pkgs/sdk/trace/web/src/WebTracerProvider.ts @@ -18,7 +18,7 @@ import { BasicTracerProvider, SDKRegistrationConfig, TracerConfig, -} from '@opentelemetry/sdk-trace-base'; +} from '@opentelemetry/sandbox-sdk-trace-base'; import { StackContextManager } from './StackContextManager'; /** diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/enums/PerformanceTimingNames.ts b/pkgs/sdk/trace/web/src/enums/PerformanceTimingNames.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/src/enums/PerformanceTimingNames.ts rename to pkgs/sdk/trace/web/src/enums/PerformanceTimingNames.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/index.ts b/pkgs/sdk/trace/web/src/index.ts similarity index 93% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/src/index.ts rename to pkgs/sdk/trace/web/src/index.ts index d7bfeaf38..7a2af63ab 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/index.ts +++ b/pkgs/sdk/trace/web/src/index.ts @@ -19,4 +19,4 @@ export * from './StackContextManager'; export * from './enums/PerformanceTimingNames'; export * from './types'; export * from './utils'; -export * from '@opentelemetry/sdk-trace-base'; +export * from '@opentelemetry/sandbox-sdk-trace-base'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/types.ts b/pkgs/sdk/trace/web/src/types.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/src/types.ts rename to pkgs/sdk/trace/web/src/types.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/utils.ts b/pkgs/sdk/trace/web/src/utils.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/src/utils.ts rename to pkgs/sdk/trace/web/src/utils.ts index 2027abc42..4dd2710b0 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/src/utils.ts +++ b/pkgs/sdk/trace/web/src/utils.ts @@ -20,13 +20,13 @@ import { PropagateTraceHeaderCorsUrls, } from './types'; import { PerformanceTimingNames as PTN } from './enums/PerformanceTimingNames'; -import * as api from '@opentelemetry/api'; +import * as api from '@opentelemetry/sandbox-api'; import { hrTimeToNanoseconds, timeInputToHrTime, urlMatches, -} from '@opentelemetry/core'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +} from '@opentelemetry/sandbox-core'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; // Used to normalize relative URLs let urlNormalizingAnchor: HTMLAnchorElement | undefined; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/NodeGlobalsFoolProofing.test.ts b/pkgs/sdk/trace/web/test/NodeGlobalsFoolProofing.test.ts similarity index 93% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/test/NodeGlobalsFoolProofing.test.ts rename to pkgs/sdk/trace/web/test/NodeGlobalsFoolProofing.test.ts index 19090be56..ec807d855 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/NodeGlobalsFoolProofing.test.ts +++ b/pkgs/sdk/trace/web/test/NodeGlobalsFoolProofing.test.ts @@ -19,9 +19,9 @@ import { propagation, trace, ProxyTracerProvider, -} from '@opentelemetry/api'; -import { Resource } from '@opentelemetry/resources'; -import { Tracer } from '@opentelemetry/sdk-trace-base'; +} from '@opentelemetry/sandbox-api'; +import { Resource } from '@opentelemetry/sandbox-resources'; +import { Tracer } from '@opentelemetry/sandbox-sdk-trace-base'; import * as assert from 'assert'; import { StackContextManager, WebTracerProvider } from '../src'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/StackContextManager.test.ts b/pkgs/sdk/trace/web/test/StackContextManager.test.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/test/StackContextManager.test.ts rename to pkgs/sdk/trace/web/test/StackContextManager.test.ts index bcad24015..5846781b8 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/StackContextManager.test.ts +++ b/pkgs/sdk/trace/web/test/StackContextManager.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { createContextKey, ROOT_CONTEXT } from '@opentelemetry/api'; +import { createContextKey, ROOT_CONTEXT } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import { StackContextManager } from '../src'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/WebTracerProvider.test.ts b/pkgs/sdk/trace/web/test/WebTracerProvider.test.ts similarity index 90% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/test/WebTracerProvider.test.ts rename to pkgs/sdk/trace/web/test/WebTracerProvider.test.ts index de63292a6..c70bd31ce 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/WebTracerProvider.test.ts +++ b/pkgs/sdk/trace/web/test/WebTracerProvider.test.ts @@ -14,12 +14,12 @@ * limitations under the License. */ -import { context, ContextManager, trace } from '@opentelemetry/api'; -import { ZoneContextManager } from '@opentelemetry/context-zone'; -import { B3Propagator } from '@opentelemetry/propagator-b3'; -import { Resource } from '@opentelemetry/resources'; -import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; -import { Span, Tracer } from '@opentelemetry/sdk-trace-base'; +import { context, ContextManager, trace } from '@opentelemetry/sandbox-api'; +import { ZoneContextManager } from '@opentelemetry/sandbox-context-zone'; +import { B3Propagator } from '@opentelemetry/sandbox-propagator-b3'; +import { Resource } from '@opentelemetry/sandbox-resources'; +import { SemanticResourceAttributes } from '@opentelemetry/sandbox-semantic-conventions'; +import { Span, Tracer } from '@opentelemetry/sandbox-sdk-trace-base'; import * as assert from 'assert'; import { WebTracerConfig } from '../src'; import { WebTracerProvider } from '../src/WebTracerProvider'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/index-webpack.ts b/pkgs/sdk/trace/web/test/index-webpack.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/test/index-webpack.ts rename to pkgs/sdk/trace/web/test/index-webpack.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/index-webpack.worker.ts b/pkgs/sdk/trace/web/test/index-webpack.worker.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/test/index-webpack.worker.ts rename to pkgs/sdk/trace/web/test/index-webpack.worker.ts diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/registration.test.ts b/pkgs/sdk/trace/web/test/registration.test.ts similarity index 96% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/test/registration.test.ts rename to pkgs/sdk/trace/web/test/registration.test.ts index 0de022a65..bac1ee462 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/registration.test.ts +++ b/pkgs/sdk/trace/web/test/registration.test.ts @@ -19,8 +19,8 @@ import { propagation, trace, ProxyTracerProvider, -} from '@opentelemetry/api'; -import { CompositePropagator } from '@opentelemetry/core'; +} from '@opentelemetry/sandbox-api'; +import { CompositePropagator } from '@opentelemetry/sandbox-core'; import * as assert from 'assert'; import { StackContextManager, WebTracerProvider } from '../src'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/utils.test.ts b/pkgs/sdk/trace/web/test/utils.test.ts similarity index 98% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/test/utils.test.ts rename to pkgs/sdk/trace/web/test/utils.test.ts index 06e550c1f..16abebf63 100644 --- a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/utils.test.ts +++ b/pkgs/sdk/trace/web/test/utils.test.ts @@ -17,10 +17,10 @@ import { hrTimeToNanoseconds, otperformance as performance, -} from '@opentelemetry/core'; -import * as core from '@opentelemetry/core'; -import * as tracing from '@opentelemetry/sdk-trace-base'; -import { HrTime } from '@opentelemetry/api'; +} from '@opentelemetry/sandbox-core'; +import * as core from '@opentelemetry/sandbox-core'; +import * as tracing from '@opentelemetry/sandbox-sdk-trace-base'; +import { HrTime } from '@opentelemetry/sandbox-api'; import * as assert from 'assert'; import * as sinon from 'sinon'; diff --git a/auto-merge/js/packages/opentelemetry-sdk-trace-web/test/window/utils.test.ts b/pkgs/sdk/trace/web/test/window/utils.test.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-sdk-trace-web/test/window/utils.test.ts rename to pkgs/sdk/trace/web/test/window/utils.test.ts diff --git a/pkgs/sdk/trace/web/tsconfig.esm.json b/pkgs/sdk/trace/web/tsconfig.esm.json new file mode 100644 index 000000000..ed5341aa3 --- /dev/null +++ b/pkgs/sdk/trace/web/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/sdk/trace/web/tsconfig.esnext.json b/pkgs/sdk/trace/web/tsconfig.esnext.json new file mode 100644 index 000000000..2f8a78e6b --- /dev/null +++ b/pkgs/sdk/trace/web/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/sdk/trace/web/tsconfig.json b/pkgs/sdk/trace/web/tsconfig.json new file mode 100644 index 000000000..33f0e4587 --- /dev/null +++ b/pkgs/sdk/trace/web/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "files": [], + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/packages/sdk-metrics/.eslintignore b/pkgs/semantic-conventions/.eslintignore similarity index 100% rename from auto-merge/js/packages/sdk-metrics/.eslintignore rename to pkgs/semantic-conventions/.eslintignore diff --git a/auto-merge/js/packages/opentelemetry-resources/.eslintrc.js b/pkgs/semantic-conventions/.eslintrc.js similarity index 100% rename from auto-merge/js/packages/opentelemetry-resources/.eslintrc.js rename to pkgs/semantic-conventions/.eslintrc.js diff --git a/auto-merge/js/packages/sdk-metrics/.npmignore b/pkgs/semantic-conventions/.npmignore similarity index 100% rename from auto-merge/js/packages/sdk-metrics/.npmignore rename to pkgs/semantic-conventions/.npmignore diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/LICENSE b/pkgs/semantic-conventions/LICENSE similarity index 100% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/LICENSE rename to pkgs/semantic-conventions/LICENSE diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/README.md b/pkgs/semantic-conventions/README.md similarity index 94% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/README.md rename to pkgs/semantic-conventions/README.md index bf2700473..c8850aa41 100644 --- a/auto-merge/js/packages/opentelemetry-semantic-conventions/README.md +++ b/pkgs/semantic-conventions/README.md @@ -14,7 +14,7 @@ npm install --save @opentelemetry/semantic-conventions ## Usage ```ts -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; +import { SemanticAttributes } from '@opentelemetry/sandbox-semantic-conventions'; const span = tracer.startSpan().startSpan(spanName, spanOptions) .setAttributes({ diff --git a/pkgs/semantic-conventions/package.json b/pkgs/semantic-conventions/package.json new file mode 100644 index 000000000..e96e8bcb4 --- /dev/null +++ b/pkgs/semantic-conventions/package.json @@ -0,0 +1,99 @@ +{ + "name": "@opentelemetry/sandbox-semantic-conventions", + "version": "1.13.0", + "description": "OpenTelemetry semantic conventions", + "main": "build/src/index.js", + "module": "build/esm/index.js", + "esnext": "build/esnext/index.js", + "types": "build/src/index.d.ts", + "repository": "open-telemetry/opentelemetry-js", + "scripts": { + "build": "npm run lint:fix-quiet && npm run version && tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json && npm run package", + "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json", + "compile": "npm run build", + "lint": "eslint . --ext .ts", + "lint:fix": "npm run lint -- --fix", + "lint:fix-quiet": "npm run lint -- --fix --quiet", + "package": "npx rollup -c ./rollup.config.js --bundleConfigAsCjs", + "peer-api-check": "node ../../scripts/peer-api-check.js", + "prepublishOnly": "npm run compile", + "rebuild": "npm run build", + "test": "", + "test:browser": "", + "test:debug": "", + "test:node": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts' --exclude 'test/browser/**/*.ts'", + "test:webworker": "", + "version": "node ../../scripts/version-update.js", + "watch": "npm run version && tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json" + }, + "keywords": [ + "opentelemetry", + "nodejs", + "tracing", + "attributes", + "semantic conventions" + ], + "author": "OpenTelemetry Authors", + "license": "Apache-2.0", + "engines": { + "node": ">=14" + }, + "files": [ + "build/esm/**/*.js", + "build/esm/**/*.js.map", + "build/esm/**/*.d.ts", + "build/esnext/**/*.js", + "build/esnext/**/*.js.map", + "build/esnext/**/*.d.ts", + "build/src/**/*.js", + "build/src/**/*.js.map", + "build/src/**/*.d.ts", + "doc", + "LICENSE", + "README.md" + ], + "publishConfig": { + "access": "public" + }, + "devDependencies": { + "@types/jquery": "^3.5.14", + "@types/mocha": "^10.0.0", + "@types/node": "^18.14.2", + "@types/sinon": "^10.0.13", + "@types/webpack-env": "1.16.3", + "@typescript-eslint/eslint-plugin": "5.3.1", + "@typescript-eslint/parser": "5.3.1", + "chromium": "^3.0.3", + "codecov": "^3.8.3", + "eslint": "7.32.0", + "eslint-config-prettier": "8.5.0", + "eslint-plugin-header": "3.1.1", + "eslint-plugin-import": "2.25.3", + "eslint-plugin-node": "11.1.0", + "eslint-plugin-prettier": "4.2.1", + "istanbul-instrumenter-loader": "3.0.1", + "karma": "6.3.16", + "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.34", + "karma-typescript": "^5.5.3", + "karma-webpack": "^4.0.2", + "mocha": "10.0.0", + "nock": "13.0.11", + "nyc": "^15.1.0", + "pako": "^2.0.3", + "puppeteer": "^14.2.1", + "sinon": "^14.0.0", + "ts-loader": "8.4.0", + "ts-mocha": "10.0.0", + "typedoc": "^0.23.26", + "typedoc-plugin-missing-exports": "^1.0.0", + "typedoc-plugin-resolve-crossmodule-references": "^0.3.3", + "typescript": "^4.7.4", + "webpack": "^4.46.0" + }, + "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-semantic-conventions", + "sideEffects": false +} \ No newline at end of file diff --git a/pkgs/semantic-conventions/rollup.config.js b/pkgs/semantic-conventions/rollup.config.js new file mode 100644 index 000000000..99e511a80 --- /dev/null +++ b/pkgs/semantic-conventions/rollup.config.js @@ -0,0 +1,21 @@ +/*! + * 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 + * + * 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. +*/ + +import { createConfig } from "../../rollup.base.config"; +const version = require("./package.json").version; +const inputName = "build/esm/index.js"; + +export default createConfig("opentelemetry.sandbox.web.semantic-conventions", inputName, "otel-sndbx.semantic-conventions", version); diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/src/index.ts b/pkgs/semantic-conventions/src/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/src/index.ts rename to pkgs/semantic-conventions/src/index.ts diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/src/resource/SemanticResourceAttributes.ts b/pkgs/semantic-conventions/src/resource/SemanticResourceAttributes.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/src/resource/SemanticResourceAttributes.ts rename to pkgs/semantic-conventions/src/resource/SemanticResourceAttributes.ts diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/src/resource/index.ts b/pkgs/semantic-conventions/src/resource/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/src/resource/index.ts rename to pkgs/semantic-conventions/src/resource/index.ts diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/src/trace/SemanticAttributes.ts b/pkgs/semantic-conventions/src/trace/SemanticAttributes.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/src/trace/SemanticAttributes.ts rename to pkgs/semantic-conventions/src/trace/SemanticAttributes.ts diff --git a/auto-merge/js/packages/opentelemetry-semantic-conventions/src/trace/index.ts b/pkgs/semantic-conventions/src/trace/index.ts similarity index 100% rename from auto-merge/js/packages/opentelemetry-semantic-conventions/src/trace/index.ts rename to pkgs/semantic-conventions/src/trace/index.ts diff --git a/pkgs/semantic-conventions/tsconfig.esm.json b/pkgs/semantic-conventions/tsconfig.esm.json new file mode 100644 index 000000000..6f96cbec1 --- /dev/null +++ b/pkgs/semantic-conventions/tsconfig.esm.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.base.esm.json", + "compilerOptions": { + "outDir": "build/esm", + "rootDir": "src", + "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/semantic-conventions/tsconfig.esnext.json b/pkgs/semantic-conventions/tsconfig.esnext.json new file mode 100644 index 000000000..2525ac36a --- /dev/null +++ b/pkgs/semantic-conventions/tsconfig.esnext.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.base.esnext.json", + "compilerOptions": { + "outDir": "build/esnext", + "rootDir": "src", + "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/pkgs/semantic-conventions/tsconfig.json b/pkgs/semantic-conventions/tsconfig.json new file mode 100644 index 000000000..cb48d4258 --- /dev/null +++ b/pkgs/semantic-conventions/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "outDir": "build", + "rootDir": "." + }, + "files": [], + "include": [ + "src/**/*.ts", + "test/**/*.ts" + ] +} \ No newline at end of file diff --git a/auto-merge/js/prettier.config.js b/prettier.config.js similarity index 100% rename from auto-merge/js/prettier.config.js rename to prettier.config.js diff --git a/auto-merge/js/scripts/generate-protos.js b/scripts/generate-protos.js similarity index 100% rename from auto-merge/js/scripts/generate-protos.js rename to scripts/generate-protos.js diff --git a/auto-merge/js/scripts/peer-api-check.js b/scripts/peer-api-check.js similarity index 100% rename from auto-merge/js/scripts/peer-api-check.js rename to scripts/peer-api-check.js diff --git a/auto-merge/js/scripts/semconv/.gitignore b/scripts/semconv/.gitignore similarity index 100% rename from auto-merge/js/scripts/semconv/.gitignore rename to scripts/semconv/.gitignore diff --git a/auto-merge/js/scripts/semconv/generate.sh b/scripts/semconv/generate.sh similarity index 100% rename from auto-merge/js/scripts/semconv/generate.sh rename to scripts/semconv/generate.sh diff --git a/auto-merge/js/scripts/semconv/templates/SemanticAttributes.ts.j2 b/scripts/semconv/templates/SemanticAttributes.ts.j2 similarity index 100% rename from auto-merge/js/scripts/semconv/templates/SemanticAttributes.ts.j2 rename to scripts/semconv/templates/SemanticAttributes.ts.j2 diff --git a/auto-merge/js/scripts/update-ts-configs-constants.js b/scripts/update-ts-configs-constants.js similarity index 100% rename from auto-merge/js/scripts/update-ts-configs-constants.js rename to scripts/update-ts-configs-constants.js diff --git a/auto-merge/js/scripts/update-ts-configs.js b/scripts/update-ts-configs.js similarity index 100% rename from auto-merge/js/scripts/update-ts-configs.js rename to scripts/update-ts-configs.js diff --git a/auto-merge/js/scripts/version-update.js b/scripts/version-update.js similarity index 90% rename from auto-merge/js/scripts/version-update.js rename to scripts/version-update.js index b0aee8845..323ee6832 100644 --- a/auto-merge/js/scripts/version-update.js +++ b/scripts/version-update.js @@ -39,10 +39,13 @@ const content = `/* * limitations under the License. */ -// this is autogenerated file, see scripts/version-update.js +// this is autogenerated file for ${pjson.name}, see scripts/version-update.js export const VERSION = '${pjson.version}'; `; const fileUrl = path.join(appRoot, "src", "version.ts") fs.writeFileSync(fileUrl, content); + +// Returning zero to tell npm that we completed successfully +process.exit(0); diff --git a/auto-merge/js/tsconfig.base.es5.json b/tsconfig.base.es5.json similarity index 100% rename from auto-merge/js/tsconfig.base.es5.json rename to tsconfig.base.es5.json diff --git a/auto-merge/js/tsconfig.base.esm.json b/tsconfig.base.esm.json similarity index 100% rename from auto-merge/js/tsconfig.base.esm.json rename to tsconfig.base.esm.json diff --git a/auto-merge/js/tsconfig.base.esnext.json b/tsconfig.base.esnext.json similarity index 100% rename from auto-merge/js/tsconfig.base.esnext.json rename to tsconfig.base.esnext.json diff --git a/auto-merge/js/tsconfig.base.json b/tsconfig.base.json similarity index 100% rename from auto-merge/js/tsconfig.base.json rename to tsconfig.base.json diff --git a/auto-merge/js/tsconfig.esm.json b/tsconfig.esm.json similarity index 100% rename from auto-merge/js/tsconfig.esm.json rename to tsconfig.esm.json diff --git a/auto-merge/js/tsconfig.esnext.json b/tsconfig.esnext.json similarity index 100% rename from auto-merge/js/tsconfig.esnext.json rename to tsconfig.esnext.json diff --git a/auto-merge/js/tsconfig.json b/tsconfig.json similarity index 100% rename from auto-merge/js/tsconfig.json rename to tsconfig.json diff --git a/auto-merge/js/webpack.node-polyfills.js b/webpack.node-polyfills.js similarity index 100% rename from auto-merge/js/webpack.node-polyfills.js rename to webpack.node-polyfills.js