feat(http): show route in span name

This commit is contained in:
TomyJan 2024-08-08 12:33:26 +08:00
parent 6a84a8bb8b
commit 686375ea75
5 changed files with 14 additions and 12 deletions

12
package-lock.json generated
View File

@ -1,12 +1,12 @@
{ {
"name": "@tachybase/opentelemetry-auto-instrumentations", "name": "@tachybase/opentelemetry-auto-instrumentations",
"version": "0.0.2", "version": "0.0.3",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@tachybase/opentelemetry-auto-instrumentations", "name": "@tachybase/opentelemetry-auto-instrumentations",
"version": "0.0.2", "version": "0.0.3",
"license": "Apache-2.0", "license": "Apache-2.0",
"workspaces": [ "workspaces": [
"/*" "/*"
@ -58,7 +58,7 @@
"@opentelemetry/resource-detector-gcp": "^0.29.10", "@opentelemetry/resource-detector-gcp": "^0.29.10",
"@opentelemetry/resources": "^1.24.0", "@opentelemetry/resources": "^1.24.0",
"@opentelemetry/sdk-node": "^0.52.0", "@opentelemetry/sdk-node": "^0.52.0",
"@tachybase/opentelemetry-instrumentation-http": "^0.0.1" "@tachybase/opentelemetry-instrumentation-http": "^0.0.2"
}, },
"devDependencies": { "devDependencies": {
"@opentelemetry/api": "^1.4.1", "@opentelemetry/api": "^1.4.1",
@ -3933,9 +3933,9 @@
"dev": true "dev": true
}, },
"node_modules/@tachybase/opentelemetry-instrumentation-http": { "node_modules/@tachybase/opentelemetry-instrumentation-http": {
"version": "0.0.1", "version": "0.0.2",
"resolved": "https://registry.npmjs.org/@tachybase/opentelemetry-instrumentation-http/-/opentelemetry-instrumentation-http-0.0.1.tgz", "resolved": "https://registry.npmjs.org/@tachybase/opentelemetry-instrumentation-http/-/opentelemetry-instrumentation-http-0.0.2.tgz",
"integrity": "sha512-7gnwXS9OesmY36s09YlwJgLEv93EoRSrChqw5HhraRtDzEcatYsFUdhaO/QpGMwnp70SG1Nd4hj5yN2CGvvPcA==", "integrity": "sha512-tCfMAuRH0nmUpVpwAIuhfCC9vQu12mHaPw9Hz3oef5OnKFRafXXPNPZOXv2SHlgB8EiNXfE24PsGOs9QE7SDrA==",
"dependencies": { "dependencies": {
"@opentelemetry/core": "1.25.1", "@opentelemetry/core": "1.25.1",
"@opentelemetry/instrumentation": "0.52.1", "@opentelemetry/instrumentation": "0.52.1",

View File

@ -1,6 +1,6 @@
{ {
"name": "@tachybase/opentelemetry-auto-instrumentations", "name": "@tachybase/opentelemetry-auto-instrumentations",
"version": "0.0.2", "version": "0.0.3",
"description": "Metapackage of telemetry for TachyBase which bundles OpenTelemetry node core and instrumentations", "description": "Metapackage of telemetry for TachyBase which bundles OpenTelemetry node core and instrumentations",
"author": "TachyBase Team", "author": "TachyBase Team",
"homepage": "https://git.daoyoucloud.com/TomyJan/opentelemetry-auto-instrumentations", "homepage": "https://git.daoyoucloud.com/TomyJan/opentelemetry-auto-instrumentations",
@ -76,7 +76,6 @@
"@opentelemetry/instrumentation-graphql": "^0.42.0", "@opentelemetry/instrumentation-graphql": "^0.42.0",
"@opentelemetry/instrumentation-grpc": "^0.52.0", "@opentelemetry/instrumentation-grpc": "^0.52.0",
"@opentelemetry/instrumentation-hapi": "^0.40.0", "@opentelemetry/instrumentation-hapi": "^0.40.0",
"@tachybase/opentelemetry-instrumentation-http": "^0.0.1",
"@opentelemetry/instrumentation-ioredis": "^0.42.0", "@opentelemetry/instrumentation-ioredis": "^0.42.0",
"@opentelemetry/instrumentation-kafkajs": "^0.2.0", "@opentelemetry/instrumentation-kafkajs": "^0.2.0",
"@opentelemetry/instrumentation-knex": "^0.39.0", "@opentelemetry/instrumentation-knex": "^0.39.0",
@ -105,7 +104,8 @@
"@opentelemetry/resource-detector-container": "^0.3.11", "@opentelemetry/resource-detector-container": "^0.3.11",
"@opentelemetry/resource-detector-gcp": "^0.29.10", "@opentelemetry/resource-detector-gcp": "^0.29.10",
"@opentelemetry/resources": "^1.24.0", "@opentelemetry/resources": "^1.24.0",
"@opentelemetry/sdk-node": "^0.52.0" "@opentelemetry/sdk-node": "^0.52.0",
"@tachybase/opentelemetry-instrumentation-http": "^0.0.2"
}, },
"files": [ "files": [
"build/src/**/*.js", "build/src/**/*.js",

View File

@ -1,12 +1,12 @@
{ {
"name": "@tachybase/opentelemetry-instrumentation-http", "name": "@tachybase/opentelemetry-instrumentation-http",
"version": "0.0.1", "version": "0.0.2",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@tachybase/opentelemetry-instrumentation-http", "name": "@tachybase/opentelemetry-instrumentation-http",
"version": "0.0.1", "version": "0.0.2",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@opentelemetry/core": "1.25.1", "@opentelemetry/core": "1.25.1",

View File

@ -1,6 +1,6 @@
{ {
"name": "@tachybase/opentelemetry-instrumentation-http", "name": "@tachybase/opentelemetry-instrumentation-http",
"version": "0.0.1", "version": "0.0.2",
"description": "OpenTelemetry instrumentation for `node:http` and `node:https` http client and server modules for TachyBase", "description": "OpenTelemetry instrumentation for `node:http` and `node:https` http client and server modules for TachyBase",
"author": "TachyBase Team", "author": "TachyBase Team",
"homepage": "https://git.daoyoucloud.com/TomyJan/opentelemetry-auto-instrumentations/plugins/node/opentelemetry-instrumentation-http", "homepage": "https://git.daoyoucloud.com/TomyJan/opentelemetry-auto-instrumentations/plugins/node/opentelemetry-instrumentation-http",

View File

@ -773,6 +773,8 @@ export class HttpInstrumentation extends InstrumentationBase<HttpInstrumentation
* If a parent is required but not present, we use a `NoopSpan` to still * If a parent is required but not present, we use a `NoopSpan` to still
* propagate context without recording it. * propagate context without recording it.
*/ */
// 修改 name 加上具体的 route
name = `${name} ${options.attributes?.[SEMATTRS_HTTP_ROUTE] ?? ''}`;
const requireParent = const requireParent =
options.kind === SpanKind.CLIENT options.kind === SpanKind.CLIENT
? this.getConfig().requireParentforOutgoingSpans ? this.getConfig().requireParentforOutgoingSpans