From 0f67c683c9cfcf8b9df72c0b934d5760248a42b3 Mon Sep 17 00:00:00 2001 From: liuyi Date: Wed, 24 Jan 2024 08:06:34 +0000 Subject: [PATCH] fix(server): add metrics missing attributes (#5682) --- packages/backend/server/package.json | 20 +- .../src/fundamentals/metrics/opentelemetry.ts | 20 +- yarn.lock | 401 ++++++++++-------- 3 files changed, 244 insertions(+), 197 deletions(-) diff --git a/packages/backend/server/package.json b/packages/backend/server/package.json index 059f34ba7..0fa11eb86 100644 --- a/packages/backend/server/package.json +++ b/packages/backend/server/package.json @@ -23,6 +23,7 @@ "@aws-sdk/client-s3": "^3.454.0", "@google-cloud/opentelemetry-cloud-monitoring-exporter": "^0.17.0", "@google-cloud/opentelemetry-cloud-trace-exporter": "^2.1.0", + "@google-cloud/opentelemetry-resource-util": "^2.1.0", "@keyv/redis": "^2.8.0", "@nestjs/apollo": "^12.0.11", "@nestjs/common": "^10.2.10", @@ -39,20 +40,21 @@ "@node-rs/crc32": "^1.7.2", "@node-rs/jsonwebtoken": "^0.3.0", "@opentelemetry/api": "^1.7.0", - "@opentelemetry/core": "^1.19.0", - "@opentelemetry/exporter-prometheus": "^0.46.0", - "@opentelemetry/exporter-zipkin": "^1.19.0", + "@opentelemetry/core": "^1.20.0", + "@opentelemetry/exporter-prometheus": "^0.47.0", + "@opentelemetry/exporter-zipkin": "^1.20.0", "@opentelemetry/host-metrics": "^0.34.0", - "@opentelemetry/instrumentation": "^0.46.0", + "@opentelemetry/instrumentation": "^0.47.0", "@opentelemetry/instrumentation-graphql": "^0.36.0", - "@opentelemetry/instrumentation-http": "^0.46.0", + "@opentelemetry/instrumentation-http": "^0.47.0", "@opentelemetry/instrumentation-ioredis": "^0.36.0", "@opentelemetry/instrumentation-nestjs-core": "^0.33.3", "@opentelemetry/instrumentation-socket.io": "^0.35.0", - "@opentelemetry/resources": "^1.19.0", - "@opentelemetry/sdk-metrics": "^1.19.0", - "@opentelemetry/sdk-node": "^0.46.0", - "@opentelemetry/sdk-trace-node": "^1.19.0", + "@opentelemetry/resources": "^1.20.0", + "@opentelemetry/sdk-metrics": "^1.20.0", + "@opentelemetry/sdk-node": "^0.47.0", + "@opentelemetry/sdk-trace-node": "^1.20.0", + "@opentelemetry/semantic-conventions": "^1.20.0", "@prisma/client": "^5.7.1", "@prisma/instrumentation": "^5.7.1", "@socket.io/redis-adapter": "^8.2.1", diff --git a/packages/backend/server/src/fundamentals/metrics/opentelemetry.ts b/packages/backend/server/src/fundamentals/metrics/opentelemetry.ts index 0f3206bb2..c7457276c 100644 --- a/packages/backend/server/src/fundamentals/metrics/opentelemetry.ts +++ b/packages/backend/server/src/fundamentals/metrics/opentelemetry.ts @@ -1,5 +1,6 @@ import { MetricExporter } from '@google-cloud/opentelemetry-cloud-monitoring-exporter'; import { TraceExporter } from '@google-cloud/opentelemetry-cloud-trace-exporter'; +import { GcpDetectorSync } from '@google-cloud/opentelemetry-resource-util'; import { metrics } from '@opentelemetry/api'; import { CompositePropagator, @@ -15,6 +16,7 @@ import { HttpInstrumentation } from '@opentelemetry/instrumentation-http'; import { IORedisInstrumentation } from '@opentelemetry/instrumentation-ioredis'; import { NestInstrumentation } from '@opentelemetry/instrumentation-nestjs-core'; import { SocketIoInstrumentation } from '@opentelemetry/instrumentation-socket.io'; +import { Resource } from '@opentelemetry/resources'; import { ConsoleMetricExporter, type MeterProvider, @@ -29,12 +31,13 @@ import { SpanExporter, TraceIdRatioBasedSampler, } from '@opentelemetry/sdk-trace-node'; +import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions'; import prismaInstrument from '@prisma/instrumentation'; -const { PrismaInstrumentation } = prismaInstrument; - import { PrismaMetricProducer } from './prisma'; +const { PrismaInstrumentation } = prismaInstrument; + abstract class OpentelemetryFactor { abstract getMetricReader(): MetricReader; abstract getSpanExporter(): SpanExporter; @@ -54,9 +57,18 @@ abstract class OpentelemetryFactor { return [new PrismaMetricProducer()]; } + getResource() { + return new Resource({ + [SemanticResourceAttributes.K8S_NAMESPACE_NAME]: AFFiNE.affineEnv, + [SemanticResourceAttributes.SERVICE_NAME]: AFFiNE.flavor.type, + [SemanticResourceAttributes.SERVICE_VERSION]: AFFiNE.version, + }); + } + create() { const traceExporter = this.getSpanExporter(); return new NodeSDK({ + resource: this.getResource(), sampler: new TraceIdRatioBasedSampler(0.1), traceExporter, metricReader: this.getMetricReader(), @@ -74,6 +86,10 @@ abstract class OpentelemetryFactor { } class GCloudOpentelemetryFactor extends OpentelemetryFactor { + override getResource(): Resource { + return super.getResource().merge(new GcpDetectorSync().detect()); + } + override getMetricReader(): MetricReader { return new PeriodicExportingMetricReader({ exportIntervalMillis: 30000, diff --git a/yarn.lock b/yarn.lock index d11d232f9..2a6ce1e81 100644 --- a/yarn.lock +++ b/yarn.lock @@ -631,6 +631,7 @@ __metadata: "@aws-sdk/client-s3": "npm:^3.454.0" "@google-cloud/opentelemetry-cloud-monitoring-exporter": "npm:^0.17.0" "@google-cloud/opentelemetry-cloud-trace-exporter": "npm:^2.1.0" + "@google-cloud/opentelemetry-resource-util": "npm:^2.1.0" "@keyv/redis": "npm:^2.8.0" "@napi-rs/image": "npm:^1.7.0" "@nestjs/apollo": "npm:^12.0.11" @@ -649,20 +650,21 @@ __metadata: "@node-rs/crc32": "npm:^1.7.2" "@node-rs/jsonwebtoken": "npm:^0.3.0" "@opentelemetry/api": "npm:^1.7.0" - "@opentelemetry/core": "npm:^1.19.0" - "@opentelemetry/exporter-prometheus": "npm:^0.46.0" - "@opentelemetry/exporter-zipkin": "npm:^1.19.0" + "@opentelemetry/core": "npm:^1.20.0" + "@opentelemetry/exporter-prometheus": "npm:^0.47.0" + "@opentelemetry/exporter-zipkin": "npm:^1.20.0" "@opentelemetry/host-metrics": "npm:^0.34.0" - "@opentelemetry/instrumentation": "npm:^0.46.0" + "@opentelemetry/instrumentation": "npm:^0.47.0" "@opentelemetry/instrumentation-graphql": "npm:^0.36.0" - "@opentelemetry/instrumentation-http": "npm:^0.46.0" + "@opentelemetry/instrumentation-http": "npm:^0.47.0" "@opentelemetry/instrumentation-ioredis": "npm:^0.36.0" "@opentelemetry/instrumentation-nestjs-core": "npm:^0.33.3" "@opentelemetry/instrumentation-socket.io": "npm:^0.35.0" - "@opentelemetry/resources": "npm:^1.19.0" - "@opentelemetry/sdk-metrics": "npm:^1.19.0" - "@opentelemetry/sdk-node": "npm:^0.46.0" - "@opentelemetry/sdk-trace-node": "npm:^1.19.0" + "@opentelemetry/resources": "npm:^1.20.0" + "@opentelemetry/sdk-metrics": "npm:^1.20.0" + "@opentelemetry/sdk-node": "npm:^0.47.0" + "@opentelemetry/sdk-trace-node": "npm:^1.20.0" + "@opentelemetry/semantic-conventions": "npm:^1.20.0" "@prisma/client": "npm:^5.7.1" "@prisma/instrumentation": "npm:^5.7.1" "@socket.io/redis-adapter": "npm:^8.2.1" @@ -8417,12 +8419,12 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/api-logs@npm:0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/api-logs@npm:0.46.0" +"@opentelemetry/api-logs@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/api-logs@npm:0.47.0" dependencies: "@opentelemetry/api": "npm:^1.0.0" - checksum: a20dc5ea37923b87cd3dbd2e4e0317b70cfab2de61df0781a27d6d2024d7defed0619a5fc52a5c65f3b22137d4264e12f7a4f6a6bf2ab688a068cf93b597301b + checksum: 64ea3fb66f331764ca847730e9887bf6cd75624c0d37b27a0f5687c125ef882995d5ef37efc79efab53c535ba87df5ac4620e82077e0ca9d16bb61548d2729eb languageName: node linkType: hard @@ -8433,12 +8435,12 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/context-async-hooks@npm:1.19.0": - version: 1.19.0 - resolution: "@opentelemetry/context-async-hooks@npm:1.19.0" +"@opentelemetry/context-async-hooks@npm:1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/context-async-hooks@npm:1.20.0" peerDependencies: "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 05cd675cecf55aaed24509091c61c9fd10f16ac663ca276b198c2701b7d6af1dc38cb40e620ac7b237d5a01c6f052d787baae98e51e07f636d1a3262150f7163 + checksum: b883901c636f718a9c54fbb65e4663a9f98076aca17da7af582252ea25b37bf280ccacea512216a2d89adc05bade1536d02ffeeb7d51001064e021b0091e59dc languageName: node linkType: hard @@ -8453,151 +8455,151 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/core@npm:1.19.0, @opentelemetry/core@npm:^1.19.0": - version: 1.19.0 - resolution: "@opentelemetry/core@npm:1.19.0" +"@opentelemetry/core@npm:1.20.0, @opentelemetry/core@npm:^1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/core@npm:1.20.0" dependencies: - "@opentelemetry/semantic-conventions": "npm:1.19.0" + "@opentelemetry/semantic-conventions": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: bd64d256994be62a53f60736b739fd8dcd447c46fd593beab51e925ad6b4437d7b26e164da7a02aa9a90c639b218de2bbe9df7932304755e3a0e6347c319aa4e + checksum: e319382afe116a8b05686170c126061e45d6895c4371107c13d2afa38119b91c78391ecf17319de2accb9b722cd12e692b92cfca46485034df3c0f5210995958 languageName: node linkType: hard -"@opentelemetry/exporter-prometheus@npm:^0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/exporter-prometheus@npm:0.46.0" +"@opentelemetry/exporter-prometheus@npm:^0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/exporter-prometheus@npm:0.47.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/resources": "npm:1.19.0" - "@opentelemetry/sdk-metrics": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/resources": "npm:1.20.0" + "@opentelemetry/sdk-metrics": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 4435dc4240907847975f6c6f3dd0b3629eeba42363f1e66ca2d59ecabdeb6df5e3e7e10201a761f83cc7cd180c9be5ff456948837d739f32b66b414951a7eca6 + checksum: 51bb7786b817335e4281c25d6897dd1ce53af66244d7a973004c0b4a5c35b600a43436c56685f80bcd3e8b30ea30222beb770812b0cc039a3fc1fd8ac16b6cb1 languageName: node linkType: hard -"@opentelemetry/exporter-trace-otlp-grpc@npm:0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/exporter-trace-otlp-grpc@npm:0.46.0" +"@opentelemetry/exporter-trace-otlp-grpc@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/exporter-trace-otlp-grpc@npm:0.47.0" dependencies: "@grpc/grpc-js": "npm:^1.7.1" - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/otlp-grpc-exporter-base": "npm:0.46.0" - "@opentelemetry/otlp-transformer": "npm:0.46.0" - "@opentelemetry/resources": "npm:1.19.0" - "@opentelemetry/sdk-trace-base": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/otlp-grpc-exporter-base": "npm:0.47.0" + "@opentelemetry/otlp-transformer": "npm:0.47.0" + "@opentelemetry/resources": "npm:1.20.0" + "@opentelemetry/sdk-trace-base": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: 52cd367857672eeb15d8eac93c0cf6a4efac4f63e6e658fdf241e64d1bcc939a628cd7934ce0c3f92c042c42c41bcd93687de6e0230eda586ebc726026116684 + checksum: 9e4c54e4aa54f51167e2eed37721f26e2b0b0dff6a6bae922401656ccc3f82455f13d4403ff9cf6e31181f1ec7ea0531026bed8ac7e1102aa20cf225327b5007 languageName: node linkType: hard -"@opentelemetry/exporter-trace-otlp-http@npm:0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/exporter-trace-otlp-http@npm:0.46.0" +"@opentelemetry/exporter-trace-otlp-http@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/exporter-trace-otlp-http@npm:0.47.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/otlp-exporter-base": "npm:0.46.0" - "@opentelemetry/otlp-transformer": "npm:0.46.0" - "@opentelemetry/resources": "npm:1.19.0" - "@opentelemetry/sdk-trace-base": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/otlp-exporter-base": "npm:0.47.0" + "@opentelemetry/otlp-transformer": "npm:0.47.0" + "@opentelemetry/resources": "npm:1.20.0" + "@opentelemetry/sdk-trace-base": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: 19373a044f49161a3f6602fe448f16869200051154876e0629113c334e6ee844b3e178ca6a9a6d57fd9c5620b0b0e9afd4c022ca91d03fdac4af7617c6a036ed + checksum: 0f24e788aae773830b1fb04e73e88967ea2a52144a8f49f12bc2d95e8018b0bae22ebc61669e33a79caa3695cd9d78c6900c560c7443a5f91fe654adba82e98a languageName: node linkType: hard -"@opentelemetry/exporter-trace-otlp-proto@npm:0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/exporter-trace-otlp-proto@npm:0.46.0" +"@opentelemetry/exporter-trace-otlp-proto@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/exporter-trace-otlp-proto@npm:0.47.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/otlp-exporter-base": "npm:0.46.0" - "@opentelemetry/otlp-proto-exporter-base": "npm:0.46.0" - "@opentelemetry/otlp-transformer": "npm:0.46.0" - "@opentelemetry/resources": "npm:1.19.0" - "@opentelemetry/sdk-trace-base": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/otlp-exporter-base": "npm:0.47.0" + "@opentelemetry/otlp-proto-exporter-base": "npm:0.47.0" + "@opentelemetry/otlp-transformer": "npm:0.47.0" + "@opentelemetry/resources": "npm:1.20.0" + "@opentelemetry/sdk-trace-base": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: bf4bc0fc3d3812d0197a3cd00f21f7b038b890bf634b66549e2b78fe1691450f3cf9e13318a00898d7100aeaa28bb8214556d696c8a3a6229a72208be5ed5752 + checksum: f2b7bfdd58ad58b0710b890208586d668d381315fb500937ce3e89eaf22bb9464f38b41014031256d2a70be5616c174fbbeedd7de0be9d886a2781bb32f29e6a languageName: node linkType: hard -"@opentelemetry/exporter-zipkin@npm:1.19.0, @opentelemetry/exporter-zipkin@npm:^1.19.0": - version: 1.19.0 - resolution: "@opentelemetry/exporter-zipkin@npm:1.19.0" +"@opentelemetry/exporter-zipkin@npm:1.20.0, @opentelemetry/exporter-zipkin@npm:^1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/exporter-zipkin@npm:1.20.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/resources": "npm:1.19.0" - "@opentelemetry/sdk-trace-base": "npm:1.19.0" - "@opentelemetry/semantic-conventions": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/resources": "npm:1.20.0" + "@opentelemetry/sdk-trace-base": "npm:1.20.0" + "@opentelemetry/semantic-conventions": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: f9a89cbb02c36f5ee72472f35ccaf231bc76cdeaf63481cef998bb46cbe8f6f2cfdc1a515af56f0c90d50938ff415ff1a8fd373d7222ef70db066a656520c3be + checksum: 24db3b737fadca25b8a7b408ee21b5f55ec4f48e12647a4fef6e712a9bbf20534bf84c513188dd05eeac3309356ba4e188edb5f266e88982df0dffa9691e6056 languageName: node linkType: hard "@opentelemetry/host-metrics@npm:^0.34.0": - version: 0.34.0 - resolution: "@opentelemetry/host-metrics@npm:0.34.0" + version: 0.34.1 + resolution: "@opentelemetry/host-metrics@npm:0.34.1" dependencies: "@opentelemetry/sdk-metrics": "npm:^1.8.0" - systeminformation: "npm:^5.0.0" + systeminformation: "npm:^5.21.20" peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 54f6a6c2f2ab8f236dc5f0d32d71771339f211c8e492afad45394e15067178491181823aa66ebe43c4d832fa9f6785b7fdd5fad515c92a6785c6ee1f81df2a38 + checksum: 45f2da15ccc9fa1c053912abad948198a759f794d34a049a5b3e3502c3c148cc511e76bebc31696dc566f564f03afab7b095471faa07dc001e690c43f5f9b6e0 languageName: node linkType: hard "@opentelemetry/instrumentation-graphql@npm:^0.36.0": - version: 0.36.0 - resolution: "@opentelemetry/instrumentation-graphql@npm:0.36.0" + version: 0.36.1 + resolution: "@opentelemetry/instrumentation-graphql@npm:0.36.1" dependencies: - "@opentelemetry/instrumentation": "npm:^0.45.1" + "@opentelemetry/instrumentation": "npm:^0.46.0" peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 2409f17de65eb053b99ad820c2d26e23e771035351c8b3fda887c9a301cfe768a54a3fe624e96aa07719ae92527f4009faeb68d261a2b296ad9e3c7459952c0d + checksum: 8d36d4a74429da30f2585fbc752093007745be17a482992010a38418cf95bd4716776ef0e1b70b83824e8be9fd6b235f3b65de1588b8aab00fd1fc3e7165fa1e languageName: node linkType: hard -"@opentelemetry/instrumentation-http@npm:^0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/instrumentation-http@npm:0.46.0" +"@opentelemetry/instrumentation-http@npm:^0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/instrumentation-http@npm:0.47.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/instrumentation": "npm:0.46.0" - "@opentelemetry/semantic-conventions": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/instrumentation": "npm:0.47.0" + "@opentelemetry/semantic-conventions": "npm:1.20.0" semver: "npm:^7.5.2" peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 030358e53e6db6735f6a647e6363daf06ed0c5dfc6101b365451e3bd6286c4ccbe865a2320c17b32354655e380b164682e710b6e77ffedca8f2e20b7eb806aa2 + checksum: 647c057d2ee0e26a206e00a55efda57322ce02828637ae024b8aa57d24d6e9dc14e86e15039ed41453e0cf758cc042452bf143f05479c030bde6170c0ad3df0f languageName: node linkType: hard "@opentelemetry/instrumentation-ioredis@npm:^0.36.0": - version: 0.36.0 - resolution: "@opentelemetry/instrumentation-ioredis@npm:0.36.0" + version: 0.36.1 + resolution: "@opentelemetry/instrumentation-ioredis@npm:0.36.1" dependencies: - "@opentelemetry/instrumentation": "npm:^0.45.1" + "@opentelemetry/instrumentation": "npm:^0.46.0" "@opentelemetry/redis-common": "npm:^0.36.1" "@opentelemetry/semantic-conventions": "npm:^1.0.0" "@types/ioredis4": "npm:@types/ioredis@^4.28.10" peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: c9f07ad9d51eb5aabadb3b190b6810ad28ab58a15ec371ca6e910739ae922c86658bc90127b466c038858f3dd206f6a5e2f51a025d10f92a7f28ee81055b6390 + checksum: 22d37ffd2f6a092ae7884e0b4bf932544cbacdfd2ce59e2cf341bf2bfe9679a56aea51c29dab771a854d04c890d5f15b3eb60c7bc30c4337c3dae4476115dbdf languageName: node linkType: hard "@opentelemetry/instrumentation-nestjs-core@npm:^0.33.3": - version: 0.33.3 - resolution: "@opentelemetry/instrumentation-nestjs-core@npm:0.33.3" + version: 0.33.4 + resolution: "@opentelemetry/instrumentation-nestjs-core@npm:0.33.4" dependencies: - "@opentelemetry/instrumentation": "npm:^0.45.1" + "@opentelemetry/instrumentation": "npm:^0.46.0" "@opentelemetry/semantic-conventions": "npm:^1.0.0" peerDependencies: "@opentelemetry/api": ^1.3.0 - checksum: 7446072437dcdcfcbef233c9ed63e5c6fe0bfc42a84b148d45b65a51efff17518e851089f8b48fbfe67be741628fcf6d33e0492b7321c6c48c7c6f3eed10cfa4 + checksum: d6f2df7b0602a457178b4725f8e8f1ddf9c0bcc1040e2cadf64a6f30c4b17c3cd90b8be414a2bfdf7b014b59a9ff3a2461afff1e47daf9cf696681b462cd0b75 languageName: node linkType: hard @@ -8613,7 +8615,7 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/instrumentation@npm:0.45.1, @opentelemetry/instrumentation@npm:^0.45.1": +"@opentelemetry/instrumentation@npm:0.45.1": version: 0.45.1 resolution: "@opentelemetry/instrumentation@npm:0.45.1" dependencies: @@ -8628,7 +8630,22 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/instrumentation@npm:0.46.0, @opentelemetry/instrumentation@npm:^0.46.0": +"@opentelemetry/instrumentation@npm:0.47.0, @opentelemetry/instrumentation@npm:^0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/instrumentation@npm:0.47.0" + dependencies: + "@types/shimmer": "npm:^1.0.2" + import-in-the-middle: "npm:^1.7.2" + require-in-the-middle: "npm:^7.1.1" + semver: "npm:^7.5.2" + shimmer: "npm:^1.2.1" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 98b7cc9a116eec8adb71fff4b159b8086c4c3a56692235ad04c75fd1e5ef7d2c465ca8879d50c3ab86af371c423945a340fd0e88d6a656f405a141194fba5402 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation@npm:^0.46.0": version: 0.46.0 resolution: "@opentelemetry/instrumentation@npm:0.46.0" dependencies: @@ -8643,79 +8660,79 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/otlp-exporter-base@npm:0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/otlp-exporter-base@npm:0.46.0" +"@opentelemetry/otlp-exporter-base@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/otlp-exporter-base@npm:0.47.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: 14743448a03edf7f869aaa16b30f35c8b11e3a84ab5f83358e4e6556a69a36115c00c4b8192ded94c30a42e1d0a9a0ea27fb68160fa8c0021bfbdcbf5b99564d + checksum: fe1add6de28355e88b254d3ee9589518a88f993050815bbdc16d492c4145fe589308c7fd9db4419201cf38f7feea2e25667590ff7dea7d71aa75d359ecdb75c2 languageName: node linkType: hard -"@opentelemetry/otlp-grpc-exporter-base@npm:0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/otlp-grpc-exporter-base@npm:0.46.0" +"@opentelemetry/otlp-grpc-exporter-base@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/otlp-grpc-exporter-base@npm:0.47.0" dependencies: "@grpc/grpc-js": "npm:^1.7.1" - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/otlp-exporter-base": "npm:0.46.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/otlp-exporter-base": "npm:0.47.0" protobufjs: "npm:^7.2.3" peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: bfcd02a8b3d906f20d021f596681b6abfda57b5b5f85a6adc0e6ed67780f11301ce78dadc196870f4cbc7134606a64108e1892ea089f8b45395a26bf17c80595 + checksum: 4980304fbacb1f1fdceffd2b9488795d64a2ad5cbc57946d32971da0ae99ac0a2b4619555dd6eaf8742de618ac469c87ed47618feab966069388533e886fab80 languageName: node linkType: hard -"@opentelemetry/otlp-proto-exporter-base@npm:0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/otlp-proto-exporter-base@npm:0.46.0" +"@opentelemetry/otlp-proto-exporter-base@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/otlp-proto-exporter-base@npm:0.47.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/otlp-exporter-base": "npm:0.46.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/otlp-exporter-base": "npm:0.47.0" protobufjs: "npm:^7.2.3" peerDependencies: "@opentelemetry/api": ^1.0.0 - checksum: ef1d90d351c09be366d925a2587f963a41e9fa43152879eae6d893fc35de5711b09b0b5e10025f6544a2132024f00de82427f4777cbc05b7a25c21dd910cdd85 + checksum: aceb023bb453dd1f365f3f5a4b760f7a6a3dfc0a7d7f83e6dcb630ba26d0b37f4a37205e2dc38d2b1f86e25f8a32f26e63b1b15c08429c56192c41238592adab languageName: node linkType: hard -"@opentelemetry/otlp-transformer@npm:0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/otlp-transformer@npm:0.46.0" +"@opentelemetry/otlp-transformer@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/otlp-transformer@npm:0.47.0" dependencies: - "@opentelemetry/api-logs": "npm:0.46.0" - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/resources": "npm:1.19.0" - "@opentelemetry/sdk-logs": "npm:0.46.0" - "@opentelemetry/sdk-metrics": "npm:1.19.0" - "@opentelemetry/sdk-trace-base": "npm:1.19.0" + "@opentelemetry/api-logs": "npm:0.47.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/resources": "npm:1.20.0" + "@opentelemetry/sdk-logs": "npm:0.47.0" + "@opentelemetry/sdk-metrics": "npm:1.20.0" + "@opentelemetry/sdk-trace-base": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ">=1.3.0 <1.8.0" - checksum: 172683345edbd77357c78e53d1f75f27cf18488c48b95e29a9533942861b24847d3073c1eb91a1edbca96bcb61dfc24f705e87a7ceab9852e345b627b09fa3d2 + checksum: df32b82cfb4466d04308101da574dc5c58cc396ce971c17939b9276269b1074b83edc6ec21c9538a9efb897baee4fca073b34c68bc2d3ae96aefd45d9602fd0e languageName: node linkType: hard -"@opentelemetry/propagator-b3@npm:1.19.0": - version: 1.19.0 - resolution: "@opentelemetry/propagator-b3@npm:1.19.0" +"@opentelemetry/propagator-b3@npm:1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/propagator-b3@npm:1.20.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: e38b8c1fae7ab16de9902f8da563820e6f20aa51a5d15fc40f8129adf912307d13c00571cb9aa63c552f5dbaa35505152310a84947de1cb98dbff2af8ea8f906 + checksum: 006fed5b9e8cffefbcffa73f7af60f4ca0a6a3f8c42d64898e5821c798cdfbf76bb1fd447fe7501989cf5655d2a1d99cf3b09561afa6995dfe48888300bcfbff languageName: node linkType: hard -"@opentelemetry/propagator-jaeger@npm:1.19.0": - version: 1.19.0 - resolution: "@opentelemetry/propagator-jaeger@npm:1.19.0" +"@opentelemetry/propagator-jaeger@npm:1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/propagator-jaeger@npm:1.20.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 7545c285672aca7738e68a88f2b6e84230fa01ad14ece53ee41fbde18d9c41c14f1816551e673cfe4f86f1b53f01c8154868c9a8aee60166daba9e8915c5b114 + checksum: bea253bc2400382ab57b94f7accb28abf0c1ec2c7566a86ddafba5467af311e5436dced13374a5ef3fee3028b306e31cff0bf3b37d53b7f06dbce5641b3dab79 languageName: node linkType: hard @@ -8738,64 +8755,64 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/resources@npm:1.19.0, @opentelemetry/resources@npm:^1.19.0": - version: 1.19.0 - resolution: "@opentelemetry/resources@npm:1.19.0" +"@opentelemetry/resources@npm:1.20.0, @opentelemetry/resources@npm:^1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/resources@npm:1.20.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/semantic-conventions": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/semantic-conventions": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 7e5f33fe7557a521d1e4dc714fef3e4d2cfa64c6c2fa4371a02894a91f4129c4ff7b23146ac9baff1a73c5dc06db445615dfe51776ab933c7b3b2e7e88ac869f + checksum: 0f5bd46c92ce596edc8c30beb4bfd48ede2e0806bed5874f7150879b7bc7ed9e810bc7b00d5dd8508e9b4c496770ee04f4949e0de9324272d904dd27a4b5dccd languageName: node linkType: hard -"@opentelemetry/sdk-logs@npm:0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/sdk-logs@npm:0.46.0" +"@opentelemetry/sdk-logs@npm:0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/sdk-logs@npm:0.47.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/resources": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/resources": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ">=1.4.0 <1.8.0" "@opentelemetry/api-logs": ">=0.39.1" - checksum: 3f6dc8fcc2b593282f47be7620c0844c7c675f697e8328f1ecbca62800ff795b18c041111a4ed822557e8dc3c1abc279175240561331c799247d2401bf5ca142 + checksum: 19b737e9137d9cb07fef9f5c16ad486f75138149af1adb2a24b503fbbb578a60804412b068e8bf88ead4e76dba9d69259e0233104707a1ead3a476864fa790fb languageName: node linkType: hard -"@opentelemetry/sdk-metrics@npm:1.19.0, @opentelemetry/sdk-metrics@npm:^1.19.0, @opentelemetry/sdk-metrics@npm:^1.8.0": - version: 1.19.0 - resolution: "@opentelemetry/sdk-metrics@npm:1.19.0" +"@opentelemetry/sdk-metrics@npm:1.20.0, @opentelemetry/sdk-metrics@npm:^1.20.0, @opentelemetry/sdk-metrics@npm:^1.8.0": + version: 1.20.0 + resolution: "@opentelemetry/sdk-metrics@npm:1.20.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/resources": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/resources": "npm:1.20.0" lodash.merge: "npm:^4.6.2" peerDependencies: "@opentelemetry/api": ">=1.3.0 <1.8.0" - checksum: dc2372f976a08e7dbf15f7bb2701105f2a536e1299c8eee1bc9f747d7f6a64340921d23ed8e58409527a1b65272792abf55433b0f0a6e8c024dbd2ab77763b6c + checksum: a254145482be054b6e97bc3b763e190ee3d90e869e26a412b22f29d73ee20ffbc626d19204cb273b46fae2ea003f3ff3a426051b977a949979f44b767f3fb800 languageName: node linkType: hard -"@opentelemetry/sdk-node@npm:^0.46.0": - version: 0.46.0 - resolution: "@opentelemetry/sdk-node@npm:0.46.0" +"@opentelemetry/sdk-node@npm:^0.47.0": + version: 0.47.0 + resolution: "@opentelemetry/sdk-node@npm:0.47.0" dependencies: - "@opentelemetry/api-logs": "npm:0.46.0" - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/exporter-trace-otlp-grpc": "npm:0.46.0" - "@opentelemetry/exporter-trace-otlp-http": "npm:0.46.0" - "@opentelemetry/exporter-trace-otlp-proto": "npm:0.46.0" - "@opentelemetry/exporter-zipkin": "npm:1.19.0" - "@opentelemetry/instrumentation": "npm:0.46.0" - "@opentelemetry/resources": "npm:1.19.0" - "@opentelemetry/sdk-logs": "npm:0.46.0" - "@opentelemetry/sdk-metrics": "npm:1.19.0" - "@opentelemetry/sdk-trace-base": "npm:1.19.0" - "@opentelemetry/sdk-trace-node": "npm:1.19.0" - "@opentelemetry/semantic-conventions": "npm:1.19.0" + "@opentelemetry/api-logs": "npm:0.47.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/exporter-trace-otlp-grpc": "npm:0.47.0" + "@opentelemetry/exporter-trace-otlp-http": "npm:0.47.0" + "@opentelemetry/exporter-trace-otlp-proto": "npm:0.47.0" + "@opentelemetry/exporter-zipkin": "npm:1.20.0" + "@opentelemetry/instrumentation": "npm:0.47.0" + "@opentelemetry/resources": "npm:1.20.0" + "@opentelemetry/sdk-logs": "npm:0.47.0" + "@opentelemetry/sdk-metrics": "npm:1.20.0" + "@opentelemetry/sdk-trace-base": "npm:1.20.0" + "@opentelemetry/sdk-trace-node": "npm:1.20.0" + "@opentelemetry/semantic-conventions": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ">=1.3.0 <1.8.0" - checksum: db4ab4d34432a48149c09e257bce50972bb5d699202d3d4a52a0105d73848f10cfa2079cbae682a0ca90c801b27f6b879533a1a84df21292a90fa6fe11290279 + checksum: cca3816ec940707fe21af6db07f5e401b0eaeeb60a17422e29939645b759c1ead56e8c6caea5844b92e7e4f0a5a7e22361240df97e5a25068f24a342f8de4795 languageName: node linkType: hard @@ -8812,32 +8829,32 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/sdk-trace-base@npm:1.19.0": - version: 1.19.0 - resolution: "@opentelemetry/sdk-trace-base@npm:1.19.0" +"@opentelemetry/sdk-trace-base@npm:1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/sdk-trace-base@npm:1.20.0" dependencies: - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/resources": "npm:1.19.0" - "@opentelemetry/semantic-conventions": "npm:1.19.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/resources": "npm:1.20.0" + "@opentelemetry/semantic-conventions": "npm:1.20.0" peerDependencies: "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 244e2eda47f939b426da0c9426bcb56d6e308f8c41ece21195af8da06f0705e124ae55e970921db88b65a2a87bc6548c809ba9691633a9bce34561f1123132f7 + checksum: 1614cb97bab909431cb2d98dad83404dc0fabb041aafa05eda052a771f2200ce3e5920768c6fc5671de21c4857113c3130200fd29f04ab9ef0a50d8fb5b13385 languageName: node linkType: hard -"@opentelemetry/sdk-trace-node@npm:1.19.0, @opentelemetry/sdk-trace-node@npm:^1.19.0": - version: 1.19.0 - resolution: "@opentelemetry/sdk-trace-node@npm:1.19.0" +"@opentelemetry/sdk-trace-node@npm:1.20.0, @opentelemetry/sdk-trace-node@npm:^1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/sdk-trace-node@npm:1.20.0" dependencies: - "@opentelemetry/context-async-hooks": "npm:1.19.0" - "@opentelemetry/core": "npm:1.19.0" - "@opentelemetry/propagator-b3": "npm:1.19.0" - "@opentelemetry/propagator-jaeger": "npm:1.19.0" - "@opentelemetry/sdk-trace-base": "npm:1.19.0" + "@opentelemetry/context-async-hooks": "npm:1.20.0" + "@opentelemetry/core": "npm:1.20.0" + "@opentelemetry/propagator-b3": "npm:1.20.0" + "@opentelemetry/propagator-jaeger": "npm:1.20.0" + "@opentelemetry/sdk-trace-base": "npm:1.20.0" semver: "npm:^7.5.2" peerDependencies: "@opentelemetry/api": ">=1.0.0 <1.8.0" - checksum: 6cf15b674fd3a22104bc1387a46af9ff972146f6f858d1a0a535dff6c231f9393f94c15e3ddf5b10732719995bd7a77186d9186ab7a2ff1ceafa40f8f2f50fbc + checksum: b6ff2d692aa88f24e2fcdaf1789e8895e0f2b28bb76b6a02604ea02c2199ab660ae5dcbe819b4f3fba57e8da8375db6c14cc7beef59c7b79e3e33ecb0a0fe58d languageName: node linkType: hard @@ -8848,10 +8865,10 @@ __metadata: languageName: node linkType: hard -"@opentelemetry/semantic-conventions@npm:1.19.0, @opentelemetry/semantic-conventions@npm:^1.0.0": - version: 1.19.0 - resolution: "@opentelemetry/semantic-conventions@npm:1.19.0" - checksum: f4f1757af468077253d2e2ad4a3e7a9838d1ac663a7f77fba2b02df39ece27059a8ee4b81c5d9f4fe6201993380f3bce645249e14d90c6331feb4199621731bd +"@opentelemetry/semantic-conventions@npm:1.20.0, @opentelemetry/semantic-conventions@npm:^1.0.0, @opentelemetry/semantic-conventions@npm:^1.20.0": + version: 1.20.0 + resolution: "@opentelemetry/semantic-conventions@npm:1.20.0" + checksum: ee24d0ba5d337c3b2696594432184d2b654f47c76c67504294b46236000b903bca851ffebd7a3ea38a6f88cd10c211eb1b1750ddd53f198e3ead019d19b958ae languageName: node linkType: hard @@ -22763,6 +22780,18 @@ __metadata: languageName: node linkType: hard +"import-in-the-middle@npm:^1.7.2": + version: 1.7.3 + resolution: "import-in-the-middle@npm:1.7.3" + dependencies: + acorn: "npm:^8.8.2" + acorn-import-assertions: "npm:^1.9.0" + cjs-module-lexer: "npm:^1.2.2" + module-details-from-path: "npm:^1.0.3" + checksum: 7176dbb5c8b27bd9684a5ef0bf93c2929f98ee301a58ca75dd443a88f0cfe26fa1cfe80ca7326029cbc74701b61a3733623e019faa14acab1c1c393a89ac057b + languageName: node + linkType: hard + "import-lazy@npm:~4.0.0": version: 4.0.0 resolution: "import-lazy@npm:4.0.0" @@ -32665,12 +32694,12 @@ __metadata: languageName: node linkType: hard -"systeminformation@npm:^5.0.0": - version: 5.21.17 - resolution: "systeminformation@npm:5.21.17" +"systeminformation@npm:^5.21.20": + version: 5.21.24 + resolution: "systeminformation@npm:5.21.24" bin: systeminformation: lib/cli.js - checksum: bc910730829f1b232a1ca824bb35dfb211489430a1a612fe9e0d27fd3cb73c0793a00cbff7512c782cac2f2dfd2416a7e698b410f6dd5b4f66cbf5ae458c9cab + checksum: 3796b8474c25420f2fb7dc91b55e5f30050f9eaa01351ed6cfb56569d9789e19245985a9cd65e4b9adcdf13baa5148f2a722e1792d940e8e9ab32872226a53cd conditions: (os=darwin | os=linux | os=win32 | os=freebsd | os=openbsd | os=netbsd | os=sunos | os=android) languageName: node linkType: hard