@sentry/node 10.58.0 → 10.60.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/index.js +3 -0
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/integrations/fs/index.js +3 -84
- package/build/cjs/integrations/fs/index.js.map +1 -1
- package/build/cjs/integrations/fs/vendored/constants.js.map +1 -1
- package/build/cjs/integrations/fs/vendored/instrumentation.js +145 -175
- package/build/cjs/integrations/fs/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/fs/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/node-fetch/index.js +7 -8
- package/build/cjs/integrations/node-fetch/index.js.map +1 -1
- package/build/cjs/integrations/node-fetch/vendored/semconv.js +28 -0
- package/build/cjs/integrations/node-fetch/vendored/semconv.js.map +1 -0
- package/build/cjs/integrations/node-fetch/vendored/undici.js +91 -127
- package/build/cjs/integrations/node-fetch/vendored/undici.js.map +1 -1
- package/build/cjs/integrations/tracing/amqplib/vendored/amqplib.js.map +1 -1
- package/build/cjs/integrations/tracing/amqplib/vendored/semconv-obsolete.js.map +1 -1
- package/build/cjs/integrations/tracing/amqplib/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/amqplib/vendored/types.js.map +1 -1
- package/build/cjs/integrations/tracing/amqplib/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/connect/index.js +0 -21
- package/build/cjs/integrations/tracing/connect/index.js.map +1 -1
- package/build/cjs/integrations/tracing/connect/vendored/enums/AttributeNames.js +0 -6
- package/build/cjs/integrations/tracing/connect/vendored/enums/AttributeNames.js.map +1 -1
- package/build/cjs/integrations/tracing/connect/vendored/instrumentation.js +33 -42
- package/build/cjs/integrations/tracing/connect/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/connect/vendored/internal-types.js.map +1 -1
- package/build/cjs/integrations/tracing/connect/vendored/utils.js +3 -2
- package/build/cjs/integrations/tracing/connect/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/dataloader/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/fastify/v3/instrumentation.js +1 -1
- package/build/cjs/integrations/tracing/fastify/v3/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/fastify/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/genericPool/index.js +1 -15
- package/build/cjs/integrations/tracing/genericPool/index.js.map +1 -1
- package/build/cjs/integrations/tracing/genericPool/vendored/instrumentation.js +30 -18
- package/build/cjs/integrations/tracing/genericPool/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/graphql/index.js +1 -51
- package/build/cjs/integrations/tracing/graphql/index.js.map +1 -1
- package/build/cjs/integrations/tracing/graphql/vendored/enum.js.map +1 -1
- package/build/cjs/integrations/tracing/graphql/vendored/enums/AttributeNames.js +0 -2
- package/build/cjs/integrations/tracing/graphql/vendored/enums/AttributeNames.js.map +1 -1
- package/build/cjs/integrations/tracing/graphql/vendored/instrumentation.js +67 -57
- package/build/cjs/integrations/tracing/graphql/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/graphql/vendored/internal-types.js.map +1 -1
- package/build/cjs/integrations/tracing/graphql/vendored/symbols.js.map +1 -1
- package/build/cjs/integrations/tracing/graphql/vendored/utils.js +28 -62
- package/build/cjs/integrations/tracing/graphql/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/hapi/index.js +0 -17
- package/build/cjs/integrations/tracing/hapi/index.js.map +1 -1
- package/build/cjs/integrations/tracing/hapi/vendored/enums/AttributeNames.js.map +1 -1
- package/build/cjs/integrations/tracing/hapi/vendored/instrumentation.js +28 -45
- package/build/cjs/integrations/tracing/hapi/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/hapi/vendored/internal-types.js.map +1 -1
- package/build/cjs/integrations/tracing/hapi/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/hapi/vendored/utils.js +4 -9
- package/build/cjs/integrations/tracing/hapi/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/index.js +1 -0
- package/build/cjs/integrations/tracing/index.js.map +1 -1
- package/build/cjs/integrations/tracing/kafka/index.js +1 -11
- package/build/cjs/integrations/tracing/kafka/index.js.map +1 -1
- package/build/cjs/integrations/tracing/kafka/vendored/instrumentation.js +45 -247
- package/build/cjs/integrations/tracing/kafka/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/kafka/vendored/semconv.js +4 -8
- package/build/cjs/integrations/tracing/kafka/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/kafka/vendored/utils.js +113 -0
- package/build/cjs/integrations/tracing/kafka/vendored/utils.js.map +1 -0
- package/build/cjs/integrations/tracing/knex/index.js +2 -17
- package/build/cjs/integrations/tracing/knex/index.js.map +1 -1
- package/build/cjs/integrations/tracing/knex/vendored/instrumentation.js +65 -93
- package/build/cjs/integrations/tracing/knex/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/knex/vendored/semconv.js +2 -0
- package/build/cjs/integrations/tracing/knex/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/knex/vendored/utils.js +2 -15
- package/build/cjs/integrations/tracing/knex/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/koa/index.js +1 -24
- package/build/cjs/integrations/tracing/koa/index.js.map +1 -1
- package/build/cjs/integrations/tracing/koa/vendored/enums/AttributeNames.js.map +1 -1
- package/build/cjs/integrations/tracing/koa/vendored/instrumentation.js +29 -41
- package/build/cjs/integrations/tracing/koa/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/koa/vendored/internal-types.js.map +1 -1
- package/build/cjs/integrations/tracing/koa/vendored/types.js.map +1 -1
- package/build/cjs/integrations/tracing/koa/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/lrumemoizer/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/mongo/index.js +1 -42
- package/build/cjs/integrations/tracing/mongo/index.js.map +1 -1
- package/build/cjs/integrations/tracing/mongo/vendored/instrumentation.js +12 -562
- package/build/cjs/integrations/tracing/mongo/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/mongo/vendored/internal-types.js.map +1 -1
- package/build/cjs/integrations/tracing/mongo/vendored/patches.js +151 -0
- package/build/cjs/integrations/tracing/mongo/vendored/patches.js.map +1 -0
- package/build/cjs/integrations/tracing/mongo/vendored/semconv.js +0 -4
- package/build/cjs/integrations/tracing/mongo/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/mongo/vendored/utils.js +153 -0
- package/build/cjs/integrations/tracing/mongo/vendored/utils.js.map +1 -0
- package/build/cjs/integrations/tracing/mongoose/index.js +1 -8
- package/build/cjs/integrations/tracing/mongoose/index.js.map +1 -1
- package/build/cjs/integrations/tracing/mongoose/vendored/mongoose.js +56 -203
- package/build/cjs/integrations/tracing/mongoose/vendored/mongoose.js.map +1 -1
- package/build/cjs/integrations/tracing/mongoose/vendored/semconv.js +0 -4
- package/build/cjs/integrations/tracing/mongoose/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/mongoose/vendored/utils.js +19 -49
- package/build/cjs/integrations/tracing/mongoose/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/mysql/vendored/AttributeNames.js.map +1 -1
- package/build/cjs/integrations/tracing/mysql/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/mysql/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/mysql/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/mysql2/index.js +1 -8
- package/build/cjs/integrations/tracing/mysql2/index.js.map +1 -1
- package/build/cjs/integrations/tracing/mysql2/vendored/instrumentation.js +21 -59
- package/build/cjs/integrations/tracing/mysql2/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/mysql2/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/mysql2/vendored/utils.js +14 -33
- package/build/cjs/integrations/tracing/mysql2/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/postgres/index.js +0 -4
- package/build/cjs/integrations/tracing/postgres/index.js.map +1 -1
- package/build/cjs/integrations/tracing/postgres/vendored/enums/AttributeNames.js +0 -1
- package/build/cjs/integrations/tracing/postgres/vendored/enums/AttributeNames.js.map +1 -1
- package/build/cjs/integrations/tracing/postgres/vendored/enums/SpanNames.js.map +1 -1
- package/build/cjs/integrations/tracing/postgres/vendored/instrumentation.js +51 -261
- package/build/cjs/integrations/tracing/postgres/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/postgres/vendored/semconv.js +0 -12
- package/build/cjs/integrations/tracing/postgres/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/postgres/vendored/utils.js +43 -167
- package/build/cjs/integrations/tracing/postgres/vendored/utils.js.map +1 -1
- package/build/cjs/integrations/tracing/prisma/vendored/active-tracing-helper.js.map +1 -1
- package/build/cjs/integrations/tracing/prisma/vendored/constants.js.map +1 -1
- package/build/cjs/integrations/tracing/prisma/vendored/global.js.map +1 -1
- package/build/cjs/integrations/tracing/prisma/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/redis/index.js.map +1 -1
- package/build/cjs/integrations/tracing/redis/vendored/ioredis-instrumentation.js +89 -160
- package/build/cjs/integrations/tracing/redis/vendored/ioredis-instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/redis/vendored/redis-common.js.map +1 -1
- package/build/cjs/integrations/tracing/redis/vendored/redis-instrumentation.js +92 -231
- package/build/cjs/integrations/tracing/redis/vendored/redis-instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/redis/vendored/semconv.js +0 -2
- package/build/cjs/integrations/tracing/redis/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/tedious/index.js +1 -25
- package/build/cjs/integrations/tracing/tedious/index.js.map +1 -1
- package/build/cjs/integrations/tracing/tedious/vendored/instrumentation.js +25 -76
- package/build/cjs/integrations/tracing/tedious/vendored/instrumentation.js.map +1 -1
- package/build/cjs/integrations/tracing/tedious/vendored/semconv.js.map +1 -1
- package/build/cjs/integrations/tracing/tedious/vendored/utils.js.map +1 -1
- package/build/cjs/sdk/diagnosticsChannelInjection.js +21 -0
- package/build/cjs/sdk/diagnosticsChannelInjection.js.map +1 -0
- package/build/cjs/sdk/experimentalUseDiagnosticsChannelInjection.js +19 -0
- package/build/cjs/sdk/experimentalUseDiagnosticsChannelInjection.js.map +1 -0
- package/build/cjs/sdk/index.js +17 -1
- package/build/cjs/sdk/index.js.map +1 -1
- package/build/cjs/sdk/initOtel.js +2 -1
- package/build/cjs/sdk/initOtel.js.map +1 -1
- package/build/esm/index.js +2 -1
- package/build/esm/index.js.map +1 -1
- package/build/esm/integrations/fs/index.js +4 -85
- package/build/esm/integrations/fs/index.js.map +1 -1
- package/build/esm/integrations/fs/vendored/constants.js.map +1 -1
- package/build/esm/integrations/fs/vendored/instrumentation.js +147 -177
- package/build/esm/integrations/fs/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/fs/vendored/utils.js.map +1 -1
- package/build/esm/integrations/node-fetch/index.js +8 -9
- package/build/esm/integrations/node-fetch/index.js.map +1 -1
- package/build/esm/integrations/node-fetch/vendored/semconv.js +15 -0
- package/build/esm/integrations/node-fetch/vendored/semconv.js.map +1 -0
- package/build/esm/integrations/node-fetch/vendored/undici.js +80 -116
- package/build/esm/integrations/node-fetch/vendored/undici.js.map +1 -1
- package/build/esm/integrations/tracing/amqplib/vendored/amqplib.js.map +1 -1
- package/build/esm/integrations/tracing/amqplib/vendored/semconv-obsolete.js.map +1 -1
- package/build/esm/integrations/tracing/amqplib/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/amqplib/vendored/types.js.map +1 -1
- package/build/esm/integrations/tracing/amqplib/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/connect/index.js +1 -22
- package/build/esm/integrations/tracing/connect/index.js.map +1 -1
- package/build/esm/integrations/tracing/connect/vendored/enums/AttributeNames.js +1 -6
- package/build/esm/integrations/tracing/connect/vendored/enums/AttributeNames.js.map +1 -1
- package/build/esm/integrations/tracing/connect/vendored/instrumentation.js +36 -44
- package/build/esm/integrations/tracing/connect/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/connect/vendored/internal-types.js.map +1 -1
- package/build/esm/integrations/tracing/connect/vendored/utils.js +3 -2
- package/build/esm/integrations/tracing/connect/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/dataloader/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/fastify/v3/instrumentation.js +1 -1
- package/build/esm/integrations/tracing/fastify/v3/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/fastify/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/genericPool/index.js +3 -17
- package/build/esm/integrations/tracing/genericPool/index.js.map +1 -1
- package/build/esm/integrations/tracing/genericPool/vendored/instrumentation.js +31 -19
- package/build/esm/integrations/tracing/genericPool/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/graphql/index.js +3 -53
- package/build/esm/integrations/tracing/graphql/index.js.map +1 -1
- package/build/esm/integrations/tracing/graphql/vendored/enum.js.map +1 -1
- package/build/esm/integrations/tracing/graphql/vendored/enums/AttributeNames.js +0 -2
- package/build/esm/integrations/tracing/graphql/vendored/enums/AttributeNames.js.map +1 -1
- package/build/esm/integrations/tracing/graphql/vendored/instrumentation.js +69 -59
- package/build/esm/integrations/tracing/graphql/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/graphql/vendored/internal-types.js.map +1 -1
- package/build/esm/integrations/tracing/graphql/vendored/symbols.js.map +1 -1
- package/build/esm/integrations/tracing/graphql/vendored/utils.js +29 -62
- package/build/esm/integrations/tracing/graphql/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/hapi/index.js +1 -18
- package/build/esm/integrations/tracing/hapi/index.js.map +1 -1
- package/build/esm/integrations/tracing/hapi/vendored/enums/AttributeNames.js.map +1 -1
- package/build/esm/integrations/tracing/hapi/vendored/instrumentation.js +30 -47
- package/build/esm/integrations/tracing/hapi/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/hapi/vendored/internal-types.js.map +1 -1
- package/build/esm/integrations/tracing/hapi/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/hapi/vendored/utils.js +5 -10
- package/build/esm/integrations/tracing/hapi/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/index.js +1 -0
- package/build/esm/integrations/tracing/index.js.map +1 -1
- package/build/esm/integrations/tracing/kafka/index.js +2 -12
- package/build/esm/integrations/tracing/kafka/index.js.map +1 -1
- package/build/esm/integrations/tracing/kafka/vendored/instrumentation.js +47 -249
- package/build/esm/integrations/tracing/kafka/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/kafka/vendored/semconv.js +3 -5
- package/build/esm/integrations/tracing/kafka/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/kafka/vendored/utils.js +107 -0
- package/build/esm/integrations/tracing/kafka/vendored/utils.js.map +1 -0
- package/build/esm/integrations/tracing/knex/index.js +4 -19
- package/build/esm/integrations/tracing/knex/index.js.map +1 -1
- package/build/esm/integrations/tracing/knex/vendored/instrumentation.js +66 -94
- package/build/esm/integrations/tracing/knex/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/knex/vendored/semconv.js +2 -1
- package/build/esm/integrations/tracing/knex/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/knex/vendored/utils.js +3 -15
- package/build/esm/integrations/tracing/knex/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/koa/index.js +3 -26
- package/build/esm/integrations/tracing/koa/index.js.map +1 -1
- package/build/esm/integrations/tracing/koa/vendored/enums/AttributeNames.js.map +1 -1
- package/build/esm/integrations/tracing/koa/vendored/instrumentation.js +31 -43
- package/build/esm/integrations/tracing/koa/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/koa/vendored/internal-types.js.map +1 -1
- package/build/esm/integrations/tracing/koa/vendored/types.js.map +1 -1
- package/build/esm/integrations/tracing/koa/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/lrumemoizer/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/mongo/index.js +3 -43
- package/build/esm/integrations/tracing/mongo/index.js.map +1 -1
- package/build/esm/integrations/tracing/mongo/vendored/instrumentation.js +13 -563
- package/build/esm/integrations/tracing/mongo/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/mongo/vendored/internal-types.js.map +1 -1
- package/build/esm/integrations/tracing/mongo/vendored/patches.js +143 -0
- package/build/esm/integrations/tracing/mongo/vendored/patches.js.map +1 -0
- package/build/esm/integrations/tracing/mongo/vendored/semconv.js +1 -3
- package/build/esm/integrations/tracing/mongo/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/mongo/vendored/utils.js +146 -0
- package/build/esm/integrations/tracing/mongo/vendored/utils.js.map +1 -0
- package/build/esm/integrations/tracing/mongoose/index.js +2 -9
- package/build/esm/integrations/tracing/mongoose/index.js.map +1 -1
- package/build/esm/integrations/tracing/mongoose/vendored/mongoose.js +59 -206
- package/build/esm/integrations/tracing/mongoose/vendored/mongoose.js.map +1 -1
- package/build/esm/integrations/tracing/mongoose/vendored/semconv.js +1 -3
- package/build/esm/integrations/tracing/mongoose/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/mongoose/vendored/utils.js +20 -50
- package/build/esm/integrations/tracing/mongoose/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/mysql/vendored/AttributeNames.js.map +1 -1
- package/build/esm/integrations/tracing/mysql/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/mysql/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/mysql/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/mysql2/index.js +2 -9
- package/build/esm/integrations/tracing/mysql2/index.js.map +1 -1
- package/build/esm/integrations/tracing/mysql2/vendored/instrumentation.js +26 -64
- package/build/esm/integrations/tracing/mysql2/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/mysql2/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/mysql2/vendored/utils.js +15 -34
- package/build/esm/integrations/tracing/mysql2/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/postgres/index.js +1 -5
- package/build/esm/integrations/tracing/postgres/index.js.map +1 -1
- package/build/esm/integrations/tracing/postgres/vendored/enums/AttributeNames.js +0 -1
- package/build/esm/integrations/tracing/postgres/vendored/enums/AttributeNames.js.map +1 -1
- package/build/esm/integrations/tracing/postgres/vendored/enums/SpanNames.js.map +1 -1
- package/build/esm/integrations/tracing/postgres/vendored/instrumentation.js +52 -262
- package/build/esm/integrations/tracing/postgres/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/postgres/vendored/semconv.js +1 -7
- package/build/esm/integrations/tracing/postgres/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/postgres/vendored/utils.js +44 -165
- package/build/esm/integrations/tracing/postgres/vendored/utils.js.map +1 -1
- package/build/esm/integrations/tracing/prisma/vendored/active-tracing-helper.js.map +1 -1
- package/build/esm/integrations/tracing/prisma/vendored/constants.js.map +1 -1
- package/build/esm/integrations/tracing/prisma/vendored/global.js.map +1 -1
- package/build/esm/integrations/tracing/prisma/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/redis/index.js.map +1 -1
- package/build/esm/integrations/tracing/redis/vendored/ioredis-instrumentation.js +92 -163
- package/build/esm/integrations/tracing/redis/vendored/ioredis-instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/redis/vendored/redis-common.js.map +1 -1
- package/build/esm/integrations/tracing/redis/vendored/redis-instrumentation.js +94 -233
- package/build/esm/integrations/tracing/redis/vendored/redis-instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/redis/vendored/semconv.js +1 -2
- package/build/esm/integrations/tracing/redis/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/tedious/index.js +3 -27
- package/build/esm/integrations/tracing/tedious/index.js.map +1 -1
- package/build/esm/integrations/tracing/tedious/vendored/instrumentation.js +29 -79
- package/build/esm/integrations/tracing/tedious/vendored/instrumentation.js.map +1 -1
- package/build/esm/integrations/tracing/tedious/vendored/semconv.js.map +1 -1
- package/build/esm/integrations/tracing/tedious/vendored/utils.js.map +1 -1
- package/build/esm/package.json +1 -1
- package/build/esm/sdk/diagnosticsChannelInjection.js +17 -0
- package/build/esm/sdk/diagnosticsChannelInjection.js.map +1 -0
- package/build/esm/sdk/experimentalUseDiagnosticsChannelInjection.js +17 -0
- package/build/esm/sdk/experimentalUseDiagnosticsChannelInjection.js.map +1 -0
- package/build/esm/sdk/index.js +17 -1
- package/build/esm/sdk/index.js.map +1 -1
- package/build/esm/sdk/initOtel.js +2 -1
- package/build/esm/sdk/initOtel.js.map +1 -1
- package/build/import-hook.mjs +6 -0
- package/build/types/index.d.ts +2 -1
- package/build/types/index.d.ts.map +1 -1
- package/build/types/integrations/fs/index.d.ts.map +1 -1
- package/build/types/integrations/fs/vendored/constants.d.ts.map +1 -1
- package/build/types/integrations/fs/vendored/instrumentation.d.ts +6 -10
- package/build/types/integrations/fs/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/fs/vendored/types.d.ts +10 -15
- package/build/types/integrations/fs/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/fs/vendored/utils.d.ts +2 -2
- package/build/types/integrations/fs/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/node-fetch/index.d.ts.map +1 -1
- package/build/types/integrations/node-fetch/vendored/internal-types.d.ts.map +1 -1
- package/build/types/integrations/node-fetch/vendored/semconv.d.ts +13 -0
- package/build/types/integrations/node-fetch/vendored/semconv.d.ts.map +1 -0
- package/build/types/integrations/node-fetch/vendored/types.d.ts +2 -4
- package/build/types/integrations/node-fetch/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/node-fetch/vendored/undici.d.ts +6 -7
- package/build/types/integrations/node-fetch/vendored/undici.d.ts.map +1 -1
- package/build/types/integrations/tracing/amqplib/vendored/amqplib.d.ts.map +1 -1
- package/build/types/integrations/tracing/amqplib/vendored/semconv-obsolete.d.ts.map +1 -1
- package/build/types/integrations/tracing/amqplib/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/amqplib/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/tracing/amqplib/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/connect/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/connect/vendored/enums/AttributeNames.d.ts +0 -4
- package/build/types/integrations/tracing/connect/vendored/enums/AttributeNames.d.ts.map +1 -1
- package/build/types/integrations/tracing/connect/vendored/instrumentation.d.ts +5 -5
- package/build/types/integrations/tracing/connect/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/connect/vendored/internal-types.d.ts +2 -2
- package/build/types/integrations/tracing/connect/vendored/internal-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/connect/vendored/utils.d.ts +1 -1
- package/build/types/integrations/tracing/connect/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/dataloader/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/dataloader/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/tracing/fastify/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/genericPool/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/genericPool/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/graphql/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/graphql/vendored/enum.d.ts.map +1 -1
- package/build/types/integrations/tracing/graphql/vendored/enums/AttributeNames.d.ts +1 -3
- package/build/types/integrations/tracing/graphql/vendored/enums/AttributeNames.d.ts.map +1 -1
- package/build/types/integrations/tracing/graphql/vendored/instrumentation.d.ts +7 -2
- package/build/types/integrations/tracing/graphql/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/graphql/vendored/internal-types.d.ts +4 -4
- package/build/types/integrations/tracing/graphql/vendored/internal-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/graphql/vendored/symbols.d.ts.map +1 -1
- package/build/types/integrations/tracing/graphql/vendored/types.d.ts +5 -43
- package/build/types/integrations/tracing/graphql/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/tracing/graphql/vendored/utils.d.ts +8 -11
- package/build/types/integrations/tracing/graphql/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/hapi/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/hapi/vendored/enums/AttributeNames.d.ts.map +1 -1
- package/build/types/integrations/tracing/hapi/vendored/instrumentation.d.ts +2 -2
- package/build/types/integrations/tracing/hapi/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/hapi/vendored/internal-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/hapi/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/hapi/vendored/utils.d.ts +3 -4
- package/build/types/integrations/tracing/hapi/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/kafka/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/kafka/vendored/instrumentation.d.ts +3 -13
- package/build/types/integrations/tracing/kafka/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/kafka/vendored/kafkajs-types.d.ts +0 -32
- package/build/types/integrations/tracing/kafka/vendored/kafkajs-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/kafka/vendored/semconv.d.ts +9 -28
- package/build/types/integrations/tracing/kafka/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/kafka/vendored/utils.d.ts +29 -0
- package/build/types/integrations/tracing/kafka/vendored/utils.d.ts.map +1 -0
- package/build/types/integrations/tracing/knex/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/knex/vendored/instrumentation.d.ts +8 -10
- package/build/types/integrations/tracing/knex/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/knex/vendored/semconv.d.ts +1 -0
- package/build/types/integrations/tracing/knex/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/knex/vendored/utils.d.ts +0 -6
- package/build/types/integrations/tracing/knex/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/koa/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/koa/vendored/enums/AttributeNames.d.ts.map +1 -1
- package/build/types/integrations/tracing/koa/vendored/instrumentation.d.ts +1 -1
- package/build/types/integrations/tracing/koa/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/koa/vendored/internal-types.d.ts +4 -4
- package/build/types/integrations/tracing/koa/vendored/internal-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/koa/vendored/types.d.ts +2 -39
- package/build/types/integrations/tracing/koa/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/tracing/koa/vendored/utils.d.ts +3 -3
- package/build/types/integrations/tracing/koa/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/lrumemoizer/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/mongo/index.d.ts +0 -4
- package/build/types/integrations/tracing/mongo/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/mongo/vendored/instrumentation.d.ts +4 -72
- package/build/types/integrations/tracing/mongo/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/mongo/vendored/internal-types.d.ts +0 -59
- package/build/types/integrations/tracing/mongo/vendored/internal-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/mongo/vendored/patches.d.ts +15 -0
- package/build/types/integrations/tracing/mongo/vendored/patches.d.ts.map +1 -0
- package/build/types/integrations/tracing/mongo/vendored/semconv.d.ts +0 -54
- package/build/types/integrations/tracing/mongo/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/mongo/vendored/utils.d.ts +24 -0
- package/build/types/integrations/tracing/mongo/vendored/utils.d.ts.map +1 -0
- package/build/types/integrations/tracing/mongoose/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/mongoose/vendored/mongoose-types.d.ts +3 -0
- package/build/types/integrations/tracing/mongoose/vendored/mongoose-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/mongoose/vendored/mongoose.d.ts +3 -8
- package/build/types/integrations/tracing/mongoose/vendored/mongoose.d.ts.map +1 -1
- package/build/types/integrations/tracing/mongoose/vendored/semconv.d.ts +0 -14
- package/build/types/integrations/tracing/mongoose/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/mongoose/vendored/utils.d.ts +4 -6
- package/build/types/integrations/tracing/mongoose/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql/vendored/AttributeNames.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql/vendored/mysql-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql2/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql2/vendored/instrumentation.d.ts +3 -6
- package/build/types/integrations/tracing/mysql2/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql2/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/mysql2/vendored/utils.d.ts +3 -5
- package/build/types/integrations/tracing/mysql2/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/vendored/enums/AttributeNames.d.ts +0 -1
- package/build/types/integrations/tracing/postgres/vendored/enums/AttributeNames.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/vendored/enums/SpanNames.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/vendored/instrumentation.d.ts +1 -9
- package/build/types/integrations/tracing/postgres/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/vendored/internal-types.d.ts +0 -2
- package/build/types/integrations/tracing/postgres/vendored/internal-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/vendored/pg-pool-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/vendored/pg-types.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/vendored/semconv.d.ts +0 -50
- package/build/types/integrations/tracing/postgres/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/vendored/types.d.ts +2 -56
- package/build/types/integrations/tracing/postgres/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/tracing/postgres/vendored/utils.d.ts +13 -26
- package/build/types/integrations/tracing/postgres/vendored/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing/prisma/vendored/active-tracing-helper.d.ts.map +1 -1
- package/build/types/integrations/tracing/prisma/vendored/constants.d.ts.map +1 -1
- package/build/types/integrations/tracing/prisma/vendored/global.d.ts.map +1 -1
- package/build/types/integrations/tracing/prisma/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/prisma/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/tracing/redis/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/redis/vendored/ioredis-instrumentation.d.ts +3 -8
- package/build/types/integrations/tracing/redis/vendored/ioredis-instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/redis/vendored/redis-common.d.ts.map +1 -1
- package/build/types/integrations/tracing/redis/vendored/redis-instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/redis/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/redis/vendored/types.d.ts +2 -36
- package/build/types/integrations/tracing/redis/vendored/types.d.ts.map +1 -1
- package/build/types/integrations/tracing/tedious/index.d.ts.map +1 -1
- package/build/types/integrations/tracing/tedious/vendored/instrumentation.d.ts +3 -14
- package/build/types/integrations/tracing/tedious/vendored/instrumentation.d.ts.map +1 -1
- package/build/types/integrations/tracing/tedious/vendored/semconv.d.ts.map +1 -1
- package/build/types/integrations/tracing/tedious/vendored/utils.d.ts.map +1 -1
- package/build/types/sdk/diagnosticsChannelInjection.d.ts +41 -0
- package/build/types/sdk/diagnosticsChannelInjection.d.ts.map +1 -0
- package/build/types/sdk/experimentalUseDiagnosticsChannelInjection.d.ts +34 -0
- package/build/types/sdk/experimentalUseDiagnosticsChannelInjection.d.ts.map +1 -0
- package/build/types/sdk/index.d.ts.map +1 -1
- package/build/types/sdk/initOtel.d.ts.map +1 -1
- package/build/types-ts3.8/index.d.ts +2 -1
- package/build/types-ts3.8/integrations/fs/vendored/instrumentation.d.ts +6 -10
- package/build/types-ts3.8/integrations/fs/vendored/types.d.ts +10 -15
- package/build/types-ts3.8/integrations/fs/vendored/utils.d.ts +2 -2
- package/build/types-ts3.8/integrations/node-fetch/vendored/semconv.d.ts +13 -0
- package/build/types-ts3.8/integrations/node-fetch/vendored/types.d.ts +2 -4
- package/build/types-ts3.8/integrations/node-fetch/vendored/undici.d.ts +6 -7
- package/build/types-ts3.8/integrations/tracing/connect/vendored/enums/AttributeNames.d.ts +0 -4
- package/build/types-ts3.8/integrations/tracing/connect/vendored/instrumentation.d.ts +4 -4
- package/build/types-ts3.8/integrations/tracing/connect/vendored/internal-types.d.ts +2 -2
- package/build/types-ts3.8/integrations/tracing/graphql/vendored/enums/AttributeNames.d.ts +1 -3
- package/build/types-ts3.8/integrations/tracing/graphql/vendored/instrumentation.d.ts +6 -1
- package/build/types-ts3.8/integrations/tracing/graphql/vendored/internal-types.d.ts +3 -3
- package/build/types-ts3.8/integrations/tracing/graphql/vendored/types.d.ts +4 -42
- package/build/types-ts3.8/integrations/tracing/graphql/vendored/utils.d.ts +6 -9
- package/build/types-ts3.8/integrations/tracing/hapi/vendored/instrumentation.d.ts +2 -2
- package/build/types-ts3.8/integrations/tracing/hapi/vendored/utils.d.ts +1 -2
- package/build/types-ts3.8/integrations/tracing/kafka/vendored/instrumentation.d.ts +3 -13
- package/build/types-ts3.8/integrations/tracing/kafka/vendored/kafkajs-types.d.ts +0 -32
- package/build/types-ts3.8/integrations/tracing/kafka/vendored/semconv.d.ts +9 -28
- package/build/types-ts3.8/integrations/tracing/kafka/vendored/utils.d.ts +29 -0
- package/build/types-ts3.8/integrations/tracing/knex/vendored/instrumentation.d.ts +8 -10
- package/build/types-ts3.8/integrations/tracing/knex/vendored/semconv.d.ts +1 -0
- package/build/types-ts3.8/integrations/tracing/knex/vendored/utils.d.ts +0 -6
- package/build/types-ts3.8/integrations/tracing/koa/vendored/internal-types.d.ts +4 -4
- package/build/types-ts3.8/integrations/tracing/koa/vendored/types.d.ts +1 -38
- package/build/types-ts3.8/integrations/tracing/mongo/index.d.ts +0 -4
- package/build/types-ts3.8/integrations/tracing/mongo/vendored/instrumentation.d.ts +4 -72
- package/build/types-ts3.8/integrations/tracing/mongo/vendored/internal-types.d.ts +0 -59
- package/build/types-ts3.8/integrations/tracing/mongo/vendored/patches.d.ts +15 -0
- package/build/types-ts3.8/integrations/tracing/mongo/vendored/semconv.d.ts +0 -54
- package/build/types-ts3.8/integrations/tracing/mongo/vendored/utils.d.ts +24 -0
- package/build/types-ts3.8/integrations/tracing/mongoose/vendored/mongoose-types.d.ts +3 -0
- package/build/types-ts3.8/integrations/tracing/mongoose/vendored/mongoose.d.ts +3 -8
- package/build/types-ts3.8/integrations/tracing/mongoose/vendored/semconv.d.ts +0 -14
- package/build/types-ts3.8/integrations/tracing/mongoose/vendored/utils.d.ts +4 -6
- package/build/types-ts3.8/integrations/tracing/mysql2/vendored/instrumentation.d.ts +3 -6
- package/build/types-ts3.8/integrations/tracing/mysql2/vendored/utils.d.ts +3 -5
- package/build/types-ts3.8/integrations/tracing/postgres/vendored/enums/AttributeNames.d.ts +0 -1
- package/build/types-ts3.8/integrations/tracing/postgres/vendored/instrumentation.d.ts +0 -8
- package/build/types-ts3.8/integrations/tracing/postgres/vendored/internal-types.d.ts +0 -2
- package/build/types-ts3.8/integrations/tracing/postgres/vendored/semconv.d.ts +0 -50
- package/build/types-ts3.8/integrations/tracing/postgres/vendored/types.d.ts +1 -55
- package/build/types-ts3.8/integrations/tracing/postgres/vendored/utils.d.ts +13 -26
- package/build/types-ts3.8/integrations/tracing/redis/vendored/ioredis-instrumentation.d.ts +3 -8
- package/build/types-ts3.8/integrations/tracing/redis/vendored/types.d.ts +2 -36
- package/build/types-ts3.8/integrations/tracing/tedious/vendored/instrumentation.d.ts +3 -14
- package/build/types-ts3.8/sdk/diagnosticsChannelInjection.d.ts +41 -0
- package/build/types-ts3.8/sdk/experimentalUseDiagnosticsChannelInjection.d.ts +34 -0
- package/package.json +20 -7
- package/build/cjs/integrations/tracing/kafka/vendored/internal-types.js +0 -6
- package/build/cjs/integrations/tracing/kafka/vendored/internal-types.js.map +0 -1
- package/build/cjs/integrations/tracing/kafka/vendored/propagator.js +0 -22
- package/build/cjs/integrations/tracing/kafka/vendored/propagator.js.map +0 -1
- package/build/cjs/integrations/tracing/knex/vendored/constants.js +0 -16
- package/build/cjs/integrations/tracing/knex/vendored/constants.js.map +0 -1
- package/build/cjs/integrations/tracing/postgres/vendored/internal-types.js +0 -6
- package/build/cjs/integrations/tracing/postgres/vendored/internal-types.js.map +0 -1
- package/build/cjs/integrations/tracing/utils/sql-common.js +0 -43
- package/build/cjs/integrations/tracing/utils/sql-common.js.map +0 -1
- package/build/esm/integrations/tracing/kafka/vendored/internal-types.js +0 -4
- package/build/esm/integrations/tracing/kafka/vendored/internal-types.js.map +0 -1
- package/build/esm/integrations/tracing/kafka/vendored/propagator.js +0 -20
- package/build/esm/integrations/tracing/kafka/vendored/propagator.js.map +0 -1
- package/build/esm/integrations/tracing/knex/vendored/constants.js +0 -13
- package/build/esm/integrations/tracing/knex/vendored/constants.js.map +0 -1
- package/build/esm/integrations/tracing/postgres/vendored/internal-types.js +0 -4
- package/build/esm/integrations/tracing/postgres/vendored/internal-types.js.map +0 -1
- package/build/esm/integrations/tracing/utils/sql-common.js +0 -41
- package/build/esm/integrations/tracing/utils/sql-common.js.map +0 -1
- package/build/types/integrations/tracing/kafka/vendored/internal-types.d.ts +0 -9
- package/build/types/integrations/tracing/kafka/vendored/internal-types.d.ts.map +0 -1
- package/build/types/integrations/tracing/kafka/vendored/propagator.d.ts +0 -3
- package/build/types/integrations/tracing/kafka/vendored/propagator.d.ts.map +0 -1
- package/build/types/integrations/tracing/kafka/vendored/types.d.ts +0 -26
- package/build/types/integrations/tracing/kafka/vendored/types.d.ts.map +0 -1
- package/build/types/integrations/tracing/knex/vendored/constants.d.ts +0 -3
- package/build/types/integrations/tracing/knex/vendored/constants.d.ts.map +0 -1
- package/build/types/integrations/tracing/knex/vendored/types.d.ts +0 -8
- package/build/types/integrations/tracing/knex/vendored/types.d.ts.map +0 -1
- package/build/types/integrations/tracing/mongo/vendored/types.d.ts +0 -51
- package/build/types/integrations/tracing/mongo/vendored/types.d.ts.map +0 -1
- package/build/types/integrations/tracing/mongoose/vendored/types.d.ts +0 -36
- package/build/types/integrations/tracing/mongoose/vendored/types.d.ts.map +0 -1
- package/build/types/integrations/tracing/mysql2/vendored/types.d.ts +0 -18
- package/build/types/integrations/tracing/mysql2/vendored/types.d.ts.map +0 -1
- package/build/types/integrations/tracing/tedious/vendored/types.d.ts +0 -10
- package/build/types/integrations/tracing/tedious/vendored/types.d.ts.map +0 -1
- package/build/types/integrations/tracing/utils/sql-common.d.ts +0 -3
- package/build/types/integrations/tracing/utils/sql-common.d.ts.map +0 -1
- package/build/types-ts3.8/integrations/tracing/kafka/vendored/internal-types.d.ts +0 -9
- package/build/types-ts3.8/integrations/tracing/kafka/vendored/propagator.d.ts +0 -3
- package/build/types-ts3.8/integrations/tracing/kafka/vendored/types.d.ts +0 -26
- package/build/types-ts3.8/integrations/tracing/knex/vendored/constants.d.ts +0 -3
- package/build/types-ts3.8/integrations/tracing/knex/vendored/types.d.ts +0 -8
- package/build/types-ts3.8/integrations/tracing/mongo/vendored/types.d.ts +0 -51
- package/build/types-ts3.8/integrations/tracing/mongoose/vendored/types.d.ts +0 -36
- package/build/types-ts3.8/integrations/tracing/mysql2/vendored/types.d.ts +0 -18
- package/build/types-ts3.8/integrations/tracing/tedious/vendored/types.d.ts +0 -10
- package/build/types-ts3.8/integrations/tracing/utils/sql-common.d.ts +0 -3
|
@@ -1,45 +1,15 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
2
|
|
|
3
|
-
const api = require('@opentelemetry/api');
|
|
4
3
|
const instrumentation = require('@opentelemetry/instrumentation');
|
|
5
|
-
const semanticConventions = require('@opentelemetry/semantic-conventions');
|
|
6
|
-
const internalTypes = require('./internal-types.js');
|
|
7
|
-
const propagator = require('./propagator.js');
|
|
8
|
-
const semconv = require('./semconv.js');
|
|
9
4
|
const core = require('@sentry/core');
|
|
5
|
+
const semconv = require('./semconv.js');
|
|
6
|
+
const utils = require('./utils.js');
|
|
10
7
|
|
|
11
8
|
const PACKAGE_NAME = "@sentry/instrumentation-kafkajs";
|
|
12
|
-
function prepareCounter(meter, value, attributes) {
|
|
13
|
-
return (errorType) => {
|
|
14
|
-
meter.add(value, {
|
|
15
|
-
...attributes,
|
|
16
|
-
...errorType ? { [semanticConventions.ATTR_ERROR_TYPE]: errorType } : {}
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
function prepareDurationHistogram(meter, value, attributes) {
|
|
21
|
-
return (errorType) => {
|
|
22
|
-
meter.record((Date.now() - value) / 1e3, {
|
|
23
|
-
...attributes,
|
|
24
|
-
...errorType ? { [semanticConventions.ATTR_ERROR_TYPE]: errorType } : {}
|
|
25
|
-
});
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
const HISTOGRAM_BUCKET_BOUNDARIES = [5e-3, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10];
|
|
29
9
|
class KafkaJsInstrumentation extends instrumentation.InstrumentationBase {
|
|
30
10
|
constructor(config = {}) {
|
|
31
11
|
super(PACKAGE_NAME, core.SDK_VERSION, config);
|
|
32
12
|
}
|
|
33
|
-
_updateMetricInstruments() {
|
|
34
|
-
this._clientDuration = this.meter.createHistogram(semconv.METRIC_MESSAGING_CLIENT_OPERATION_DURATION, {
|
|
35
|
-
advice: { explicitBucketBoundaries: HISTOGRAM_BUCKET_BOUNDARIES }
|
|
36
|
-
});
|
|
37
|
-
this._sentMessages = this.meter.createCounter(semconv.METRIC_MESSAGING_CLIENT_SENT_MESSAGES);
|
|
38
|
-
this._consumedMessages = this.meter.createCounter(semconv.METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES);
|
|
39
|
-
this._processDuration = this.meter.createHistogram(semconv.METRIC_MESSAGING_PROCESS_DURATION, {
|
|
40
|
-
advice: { explicitBucketBoundaries: HISTOGRAM_BUCKET_BOUNDARIES }
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
13
|
init() {
|
|
44
14
|
const unpatch = (moduleExports) => {
|
|
45
15
|
if (instrumentation.isWrapped(moduleExports?.Kafka?.prototype.producer)) {
|
|
@@ -71,27 +41,10 @@ class KafkaJsInstrumentation extends instrumentation.InstrumentationBase {
|
|
|
71
41
|
instrumentation$1._unwrap(newConsumer, "run");
|
|
72
42
|
}
|
|
73
43
|
instrumentation$1._wrap(newConsumer, "run", instrumentation$1._getConsumerRunPatch());
|
|
74
|
-
instrumentation$1._setKafkaEventListeners(newConsumer);
|
|
75
44
|
return newConsumer;
|
|
76
45
|
};
|
|
77
46
|
};
|
|
78
47
|
}
|
|
79
|
-
_setKafkaEventListeners(kafkaObj) {
|
|
80
|
-
if (kafkaObj[internalTypes.EVENT_LISTENERS_SET]) return;
|
|
81
|
-
if (kafkaObj.events?.REQUEST) {
|
|
82
|
-
kafkaObj.on(kafkaObj.events.REQUEST, this._recordClientDurationMetric.bind(this));
|
|
83
|
-
}
|
|
84
|
-
kafkaObj[internalTypes.EVENT_LISTENERS_SET] = true;
|
|
85
|
-
}
|
|
86
|
-
_recordClientDurationMetric(event) {
|
|
87
|
-
const [address = "", port = "0"] = event.payload.broker.split(":");
|
|
88
|
-
this._clientDuration.record(event.payload.duration / 1e3, {
|
|
89
|
-
[semconv.ATTR_MESSAGING_SYSTEM]: semconv.MESSAGING_SYSTEM_VALUE_KAFKA,
|
|
90
|
-
[semconv.ATTR_MESSAGING_OPERATION_NAME]: `${event.payload.apiName}`,
|
|
91
|
-
[semanticConventions.ATTR_SERVER_ADDRESS]: address,
|
|
92
|
-
[semanticConventions.ATTR_SERVER_PORT]: Number.parseInt(port, 10)
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
48
|
_getProducerPatch() {
|
|
96
49
|
const instrumentation$1 = this;
|
|
97
50
|
return (original) => {
|
|
@@ -109,7 +62,6 @@ class KafkaJsInstrumentation extends instrumentation.InstrumentationBase {
|
|
|
109
62
|
instrumentation$1._unwrap(newProducer, "transaction");
|
|
110
63
|
}
|
|
111
64
|
instrumentation$1._wrap(newProducer, "transaction", instrumentation$1._getProducerTransactionPatch());
|
|
112
|
-
instrumentation$1._setKafkaEventListeners(newProducer);
|
|
113
65
|
return newProducer;
|
|
114
66
|
};
|
|
115
67
|
};
|
|
@@ -136,103 +88,60 @@ class KafkaJsInstrumentation extends instrumentation.InstrumentationBase {
|
|
|
136
88
|
};
|
|
137
89
|
}
|
|
138
90
|
_getConsumerEachMessagePatch() {
|
|
139
|
-
const instrumentation = this;
|
|
140
91
|
return (original) => {
|
|
141
92
|
return function eachMessage(...args) {
|
|
142
93
|
const payload = args[0];
|
|
143
|
-
const
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
prepareDurationHistogram(instrumentation._processDuration, Date.now(), {
|
|
159
|
-
[semconv.ATTR_MESSAGING_SYSTEM]: semconv.MESSAGING_SYSTEM_VALUE_KAFKA,
|
|
160
|
-
[semconv.ATTR_MESSAGING_OPERATION_NAME]: "process",
|
|
161
|
-
[semconv.ATTR_MESSAGING_DESTINATION_NAME]: payload.topic,
|
|
162
|
-
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.partition)
|
|
163
|
-
}),
|
|
164
|
-
prepareCounter(instrumentation._consumedMessages, 1, {
|
|
165
|
-
[semconv.ATTR_MESSAGING_SYSTEM]: semconv.MESSAGING_SYSTEM_VALUE_KAFKA,
|
|
166
|
-
[semconv.ATTR_MESSAGING_OPERATION_NAME]: "process",
|
|
167
|
-
[semconv.ATTR_MESSAGING_DESTINATION_NAME]: payload.topic,
|
|
168
|
-
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.partition)
|
|
169
|
-
})
|
|
170
|
-
];
|
|
171
|
-
const eachMessagePromise = api.context.with(api.trace.setSpan(propagatedContext, span), () => {
|
|
172
|
-
return original.apply(this, args);
|
|
94
|
+
const sentryTrace = utils.getHeaderAsString(payload.message.headers, "sentry-trace");
|
|
95
|
+
const baggage = utils.getHeaderAsString(payload.message.headers, "baggage");
|
|
96
|
+
return core.continueTrace({ sentryTrace, baggage }, () => {
|
|
97
|
+
const span = utils.startConsumerSpan({
|
|
98
|
+
topic: payload.topic,
|
|
99
|
+
message: payload.message,
|
|
100
|
+
operationType: semconv.MESSAGING_OPERATION_TYPE_VALUE_PROCESS,
|
|
101
|
+
attributes: {
|
|
102
|
+
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.partition)
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
const eachMessagePromise = core.withActiveSpan(span, () => {
|
|
106
|
+
return original.apply(this, args);
|
|
107
|
+
});
|
|
108
|
+
return utils.endSpansOnPromise([span], eachMessagePromise);
|
|
173
109
|
});
|
|
174
|
-
return instrumentation._endSpansOnPromise([span], pendingMetrics, eachMessagePromise);
|
|
175
110
|
};
|
|
176
111
|
};
|
|
177
112
|
}
|
|
178
113
|
_getConsumerEachBatchPatch() {
|
|
179
114
|
return (original) => {
|
|
180
|
-
const instrumentation = this;
|
|
181
115
|
return function eachBatch(...args) {
|
|
182
116
|
const payload = args[0];
|
|
183
|
-
const receivingSpan =
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition)
|
|
191
|
-
}
|
|
192
|
-
});
|
|
193
|
-
return api.context.with(api.trace.setSpan(api.context.active(), receivingSpan), () => {
|
|
194
|
-
const startTime = Date.now();
|
|
195
|
-
const spans = [];
|
|
196
|
-
const pendingMetrics = [
|
|
197
|
-
prepareCounter(instrumentation._consumedMessages, payload.batch.messages.length, {
|
|
198
|
-
[semconv.ATTR_MESSAGING_SYSTEM]: semconv.MESSAGING_SYSTEM_VALUE_KAFKA,
|
|
199
|
-
[semconv.ATTR_MESSAGING_OPERATION_NAME]: "process",
|
|
200
|
-
[semconv.ATTR_MESSAGING_DESTINATION_NAME]: payload.batch.topic,
|
|
117
|
+
const receivingSpan = core.startNewTrace(
|
|
118
|
+
() => utils.startConsumerSpan({
|
|
119
|
+
topic: payload.batch.topic,
|
|
120
|
+
message: void 0,
|
|
121
|
+
operationType: semconv.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE,
|
|
122
|
+
attributes: {
|
|
123
|
+
[semconv.ATTR_MESSAGING_BATCH_MESSAGE_COUNT]: payload.batch.messages.length,
|
|
201
124
|
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition)
|
|
202
|
-
})
|
|
203
|
-
];
|
|
204
|
-
payload.batch.messages.forEach((message) => {
|
|
205
|
-
const propagatedContext = api.propagation.extract(api.ROOT_CONTEXT, message.headers, propagator.bufferTextMapGetter);
|
|
206
|
-
const spanContext = api.trace.getSpan(propagatedContext)?.spanContext();
|
|
207
|
-
let origSpanLink;
|
|
208
|
-
if (spanContext) {
|
|
209
|
-
origSpanLink = {
|
|
210
|
-
context: spanContext
|
|
211
|
-
};
|
|
212
125
|
}
|
|
126
|
+
})
|
|
127
|
+
);
|
|
128
|
+
return core.withActiveSpan(receivingSpan, () => {
|
|
129
|
+
const spans = [receivingSpan];
|
|
130
|
+
payload.batch.messages.forEach((message) => {
|
|
213
131
|
spans.push(
|
|
214
|
-
|
|
132
|
+
utils.startConsumerSpan({
|
|
215
133
|
topic: payload.batch.topic,
|
|
216
134
|
message,
|
|
217
135
|
operationType: semconv.MESSAGING_OPERATION_TYPE_VALUE_PROCESS,
|
|
218
|
-
|
|
136
|
+
links: utils.getLinksFromHeaders(message.headers),
|
|
219
137
|
attributes: {
|
|
220
138
|
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition)
|
|
221
139
|
}
|
|
222
140
|
})
|
|
223
141
|
);
|
|
224
|
-
pendingMetrics.push(
|
|
225
|
-
prepareDurationHistogram(instrumentation._processDuration, startTime, {
|
|
226
|
-
[semconv.ATTR_MESSAGING_SYSTEM]: semconv.MESSAGING_SYSTEM_VALUE_KAFKA,
|
|
227
|
-
[semconv.ATTR_MESSAGING_OPERATION_NAME]: "process",
|
|
228
|
-
[semconv.ATTR_MESSAGING_DESTINATION_NAME]: payload.batch.topic,
|
|
229
|
-
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition)
|
|
230
|
-
})
|
|
231
|
-
);
|
|
232
142
|
});
|
|
233
143
|
const batchMessagePromise = original.apply(this, args);
|
|
234
|
-
|
|
235
|
-
return instrumentation._endSpansOnPromise(spans, pendingMetrics, batchMessagePromise);
|
|
144
|
+
return utils.endSpansOnPromise(spans, batchMessagePromise);
|
|
236
145
|
});
|
|
237
146
|
};
|
|
238
147
|
};
|
|
@@ -241,33 +150,31 @@ class KafkaJsInstrumentation extends instrumentation.InstrumentationBase {
|
|
|
241
150
|
const instrumentation = this;
|
|
242
151
|
return (original) => {
|
|
243
152
|
return function transaction(...args) {
|
|
244
|
-
const transactionSpan =
|
|
153
|
+
const transactionSpan = core.startInactiveSpan({ name: "transaction" });
|
|
245
154
|
const transactionPromise = original.apply(this, args);
|
|
246
155
|
transactionPromise.then((transaction2) => {
|
|
247
156
|
const originalSend = transaction2.send;
|
|
248
157
|
transaction2.send = function send(...args2) {
|
|
249
|
-
return
|
|
158
|
+
return core.withActiveSpan(transactionSpan, () => {
|
|
250
159
|
const patched = instrumentation._getSendPatch()(originalSend);
|
|
251
160
|
return patched.apply(this, args2).catch((err) => {
|
|
252
161
|
transactionSpan.setStatus({
|
|
253
|
-
code:
|
|
162
|
+
code: core.SPAN_STATUS_ERROR,
|
|
254
163
|
message: err?.message
|
|
255
164
|
});
|
|
256
|
-
transactionSpan.recordException(err);
|
|
257
165
|
throw err;
|
|
258
166
|
});
|
|
259
167
|
});
|
|
260
168
|
};
|
|
261
169
|
const originalSendBatch = transaction2.sendBatch;
|
|
262
170
|
transaction2.sendBatch = function sendBatch(...args2) {
|
|
263
|
-
return
|
|
171
|
+
return core.withActiveSpan(transactionSpan, () => {
|
|
264
172
|
const patched = instrumentation._getSendBatchPatch()(originalSendBatch);
|
|
265
173
|
return patched.apply(this, args2).catch((err) => {
|
|
266
174
|
transactionSpan.setStatus({
|
|
267
|
-
code:
|
|
175
|
+
code: core.SPAN_STATUS_ERROR,
|
|
268
176
|
message: err?.message
|
|
269
177
|
});
|
|
270
|
-
transactionSpan.recordException(err);
|
|
271
178
|
throw err;
|
|
272
179
|
});
|
|
273
180
|
});
|
|
@@ -275,21 +182,20 @@ class KafkaJsInstrumentation extends instrumentation.InstrumentationBase {
|
|
|
275
182
|
const originalCommit = transaction2.commit;
|
|
276
183
|
transaction2.commit = function commit(...args2) {
|
|
277
184
|
const originCommitPromise = originalCommit.apply(this, args2).then(() => {
|
|
278
|
-
transactionSpan.setStatus({ code:
|
|
185
|
+
transactionSpan.setStatus({ code: core.SPAN_STATUS_OK });
|
|
279
186
|
});
|
|
280
|
-
return
|
|
187
|
+
return utils.endSpansOnPromise([transactionSpan], originCommitPromise);
|
|
281
188
|
};
|
|
282
189
|
const originalAbort = transaction2.abort;
|
|
283
190
|
transaction2.abort = function abort(...args2) {
|
|
284
191
|
const originAbortPromise = originalAbort.apply(this, args2);
|
|
285
|
-
return
|
|
192
|
+
return utils.endSpansOnPromise([transactionSpan], originAbortPromise);
|
|
286
193
|
};
|
|
287
194
|
}).catch((err) => {
|
|
288
195
|
transactionSpan.setStatus({
|
|
289
|
-
code:
|
|
196
|
+
code: core.SPAN_STATUS_ERROR,
|
|
290
197
|
message: err?.message
|
|
291
198
|
});
|
|
292
|
-
transactionSpan.recordException(err);
|
|
293
199
|
transactionSpan.end();
|
|
294
200
|
});
|
|
295
201
|
return transactionPromise;
|
|
@@ -297,141 +203,33 @@ class KafkaJsInstrumentation extends instrumentation.InstrumentationBase {
|
|
|
297
203
|
};
|
|
298
204
|
}
|
|
299
205
|
_getSendBatchPatch() {
|
|
300
|
-
const instrumentation = this;
|
|
301
206
|
return (original) => {
|
|
302
207
|
return function sendBatch(...args) {
|
|
303
208
|
const batch = args[0];
|
|
304
209
|
const messages = batch.topicMessages || [];
|
|
305
210
|
const spans = [];
|
|
306
|
-
const pendingMetrics = [];
|
|
307
211
|
messages.forEach((topicMessage) => {
|
|
308
212
|
topicMessage.messages.forEach((message) => {
|
|
309
|
-
spans.push(
|
|
310
|
-
pendingMetrics.push(
|
|
311
|
-
prepareCounter(instrumentation._sentMessages, 1, {
|
|
312
|
-
[semconv.ATTR_MESSAGING_SYSTEM]: semconv.MESSAGING_SYSTEM_VALUE_KAFKA,
|
|
313
|
-
[semconv.ATTR_MESSAGING_OPERATION_NAME]: "send",
|
|
314
|
-
[semconv.ATTR_MESSAGING_DESTINATION_NAME]: topicMessage.topic,
|
|
315
|
-
...message.partition !== void 0 ? {
|
|
316
|
-
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(message.partition)
|
|
317
|
-
} : {}
|
|
318
|
-
})
|
|
319
|
-
);
|
|
213
|
+
spans.push(utils.startProducerSpan(topicMessage.topic, message));
|
|
320
214
|
});
|
|
321
215
|
});
|
|
322
216
|
const origSendResult = original.apply(this, args);
|
|
323
|
-
return
|
|
217
|
+
return utils.endSpansOnPromise(spans, origSendResult);
|
|
324
218
|
};
|
|
325
219
|
};
|
|
326
220
|
}
|
|
327
221
|
_getSendPatch() {
|
|
328
|
-
const instrumentation = this;
|
|
329
222
|
return (original) => {
|
|
330
223
|
return function send(...args) {
|
|
331
224
|
const record = args[0];
|
|
332
225
|
const spans = record.messages.map((message) => {
|
|
333
|
-
return
|
|
226
|
+
return utils.startProducerSpan(record.topic, message);
|
|
334
227
|
});
|
|
335
|
-
const pendingMetrics = record.messages.map(
|
|
336
|
-
(m) => prepareCounter(instrumentation._sentMessages, 1, {
|
|
337
|
-
[semconv.ATTR_MESSAGING_SYSTEM]: semconv.MESSAGING_SYSTEM_VALUE_KAFKA,
|
|
338
|
-
[semconv.ATTR_MESSAGING_OPERATION_NAME]: "send",
|
|
339
|
-
[semconv.ATTR_MESSAGING_DESTINATION_NAME]: record.topic,
|
|
340
|
-
...m.partition !== void 0 ? {
|
|
341
|
-
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(m.partition)
|
|
342
|
-
} : {}
|
|
343
|
-
})
|
|
344
|
-
);
|
|
345
228
|
const origSendResult = original.apply(this, args);
|
|
346
|
-
return
|
|
229
|
+
return utils.endSpansOnPromise(spans, origSendResult);
|
|
347
230
|
};
|
|
348
231
|
};
|
|
349
232
|
}
|
|
350
|
-
_endSpansOnPromise(spans, pendingMetrics, sendPromise) {
|
|
351
|
-
return Promise.resolve(sendPromise).then((result) => {
|
|
352
|
-
pendingMetrics.forEach((m) => m());
|
|
353
|
-
return result;
|
|
354
|
-
}).catch((reason) => {
|
|
355
|
-
let errorMessage;
|
|
356
|
-
let errorType = semanticConventions.ERROR_TYPE_VALUE_OTHER;
|
|
357
|
-
if (typeof reason === "string" || reason === void 0) {
|
|
358
|
-
errorMessage = reason;
|
|
359
|
-
} else if (typeof reason === "object" && Object.prototype.hasOwnProperty.call(reason, "message")) {
|
|
360
|
-
errorMessage = reason.message;
|
|
361
|
-
errorType = reason.constructor.name;
|
|
362
|
-
}
|
|
363
|
-
pendingMetrics.forEach((m) => m(errorType));
|
|
364
|
-
spans.forEach((span) => {
|
|
365
|
-
span.setAttribute(semanticConventions.ATTR_ERROR_TYPE, errorType);
|
|
366
|
-
span.setStatus({
|
|
367
|
-
code: api.SpanStatusCode.ERROR,
|
|
368
|
-
message: errorMessage
|
|
369
|
-
});
|
|
370
|
-
});
|
|
371
|
-
throw reason;
|
|
372
|
-
}).finally(() => {
|
|
373
|
-
spans.forEach((span) => span.end());
|
|
374
|
-
});
|
|
375
|
-
}
|
|
376
|
-
_startConsumerSpan({ topic, message, operationType, ctx, link, attributes }) {
|
|
377
|
-
const operationName = operationType === semconv.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE ? "poll" : operationType;
|
|
378
|
-
const span = this.tracer.startSpan(
|
|
379
|
-
`${operationName} ${topic}`,
|
|
380
|
-
{
|
|
381
|
-
kind: operationType === semconv.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE ? api.SpanKind.CLIENT : api.SpanKind.CONSUMER,
|
|
382
|
-
attributes: {
|
|
383
|
-
...attributes,
|
|
384
|
-
[semconv.ATTR_MESSAGING_SYSTEM]: semconv.MESSAGING_SYSTEM_VALUE_KAFKA,
|
|
385
|
-
[semconv.ATTR_MESSAGING_DESTINATION_NAME]: topic,
|
|
386
|
-
[semconv.ATTR_MESSAGING_OPERATION_TYPE]: operationType,
|
|
387
|
-
[semconv.ATTR_MESSAGING_OPERATION_NAME]: operationName,
|
|
388
|
-
[semconv.ATTR_MESSAGING_KAFKA_MESSAGE_KEY]: message?.key ? String(message.key) : void 0,
|
|
389
|
-
[semconv.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE]: message?.key && message.value === null ? true : void 0,
|
|
390
|
-
[semconv.ATTR_MESSAGING_KAFKA_OFFSET]: message?.offset
|
|
391
|
-
},
|
|
392
|
-
links: link ? [link] : []
|
|
393
|
-
},
|
|
394
|
-
ctx
|
|
395
|
-
);
|
|
396
|
-
const { consumerHook } = this.getConfig();
|
|
397
|
-
if (consumerHook && message) {
|
|
398
|
-
instrumentation.safeExecuteInTheMiddle(
|
|
399
|
-
() => consumerHook(span, { topic, message }),
|
|
400
|
-
(e) => {
|
|
401
|
-
if (e) this._diag.error("consumerHook error", e);
|
|
402
|
-
},
|
|
403
|
-
true
|
|
404
|
-
);
|
|
405
|
-
}
|
|
406
|
-
return span;
|
|
407
|
-
}
|
|
408
|
-
_startProducerSpan(topic, message) {
|
|
409
|
-
const span = this.tracer.startSpan(`send ${topic}`, {
|
|
410
|
-
kind: api.SpanKind.PRODUCER,
|
|
411
|
-
attributes: {
|
|
412
|
-
[semconv.ATTR_MESSAGING_SYSTEM]: semconv.MESSAGING_SYSTEM_VALUE_KAFKA,
|
|
413
|
-
[semconv.ATTR_MESSAGING_DESTINATION_NAME]: topic,
|
|
414
|
-
[semconv.ATTR_MESSAGING_KAFKA_MESSAGE_KEY]: message.key ? String(message.key) : void 0,
|
|
415
|
-
[semconv.ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE]: message.key && message.value === null ? true : void 0,
|
|
416
|
-
[semconv.ATTR_MESSAGING_DESTINATION_PARTITION_ID]: message.partition !== void 0 ? String(message.partition) : void 0,
|
|
417
|
-
[semconv.ATTR_MESSAGING_OPERATION_NAME]: "send",
|
|
418
|
-
[semconv.ATTR_MESSAGING_OPERATION_TYPE]: semconv.MESSAGING_OPERATION_TYPE_VALUE_SEND
|
|
419
|
-
}
|
|
420
|
-
});
|
|
421
|
-
message.headers = message.headers ?? {};
|
|
422
|
-
api.propagation.inject(api.trace.setSpan(api.context.active(), span), message.headers);
|
|
423
|
-
const { producerHook } = this.getConfig();
|
|
424
|
-
if (producerHook) {
|
|
425
|
-
instrumentation.safeExecuteInTheMiddle(
|
|
426
|
-
() => producerHook(span, { topic, message }),
|
|
427
|
-
(e) => {
|
|
428
|
-
if (e) this._diag.error("producerHook error", e);
|
|
429
|
-
},
|
|
430
|
-
true
|
|
431
|
-
);
|
|
432
|
-
}
|
|
433
|
-
return span;
|
|
434
|
-
}
|
|
435
233
|
}
|
|
436
234
|
|
|
437
235
|
exports.KafkaJsInstrumentation = KafkaJsInstrumentation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instrumentation.js","sources":["../../../../../../src/integrations/tracing/kafka/vendored/instrumentation.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors, Aspecto\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 *\n * NOTICE from the Sentry authors:\n * - Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/tree/15ef7506553f631ea4181391e0c5725a56f0d082/packages/instrumentation-kafkajs\n * - Upstream version: @opentelemetry/instrumentation-kafkajs@0.27.0\n * - Some types vendored from kafkajs with simplifications\n * - Minor TypeScript strictness adjustments for this repository's compiler settings\n */\n/* eslint-disable */\n\nimport {\n Attributes,\n Context,\n context,\n Counter,\n Histogram,\n Link,\n propagation,\n ROOT_CONTEXT,\n Span,\n SpanKind,\n SpanStatusCode,\n trace,\n} from '@opentelemetry/api';\nimport {\n InstrumentationBase,\n InstrumentationNodeModuleDefinition,\n isWrapped,\n safeExecuteInTheMiddle,\n} from '@opentelemetry/instrumentation';\nimport {\n ATTR_ERROR_TYPE,\n ATTR_SERVER_ADDRESS,\n ATTR_SERVER_PORT,\n ERROR_TYPE_VALUE_OTHER,\n} from '@opentelemetry/semantic-conventions';\nimport type { Kafka, Transaction, Producer, ConsumerEvents, ProducerEvents, RequestEvent } from './kafkajs-types';\nimport type {\n Consumer,\n ConsumerRunConfig,\n EachBatchHandler,\n EachMessageHandler,\n KafkaMessage,\n Message,\n RecordMetadata,\n} from './kafkajs-types';\nimport { EVENT_LISTENERS_SET } from './internal-types';\nimport { bufferTextMapGetter } from './propagator';\nimport {\n ATTR_MESSAGING_BATCH_MESSAGE_COUNT,\n ATTR_MESSAGING_DESTINATION_NAME,\n ATTR_MESSAGING_DESTINATION_PARTITION_ID,\n ATTR_MESSAGING_KAFKA_MESSAGE_KEY,\n ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE,\n ATTR_MESSAGING_KAFKA_OFFSET,\n ATTR_MESSAGING_OPERATION_NAME,\n ATTR_MESSAGING_OPERATION_TYPE,\n ATTR_MESSAGING_SYSTEM,\n MESSAGING_OPERATION_TYPE_VALUE_PROCESS,\n MESSAGING_OPERATION_TYPE_VALUE_RECEIVE,\n MESSAGING_OPERATION_TYPE_VALUE_SEND,\n MESSAGING_SYSTEM_VALUE_KAFKA,\n METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES,\n METRIC_MESSAGING_CLIENT_OPERATION_DURATION,\n METRIC_MESSAGING_CLIENT_SENT_MESSAGES,\n METRIC_MESSAGING_PROCESS_DURATION,\n} from './semconv';\nimport { KafkaJsInstrumentationConfig } from './types';\n\ninterface ConsumerSpanOptions {\n topic: string;\n message: KafkaMessage | undefined;\n operationType: string;\n attributes: Attributes;\n ctx?: Context | undefined;\n link?: Link;\n}\nimport { SDK_VERSION } from '@sentry/core';\n\nconst PACKAGE_NAME = '@sentry/instrumentation-kafkajs';\n\n// This interface acts as a strict subset of the KafkaJS Consumer and\n// Producer interfaces (just for the event we're needing)\ninterface KafkaEventEmitter {\n on(eventName: ConsumerEvents['REQUEST'] | ProducerEvents['REQUEST'], listener: (event: RequestEvent) => void): void;\n events: {\n REQUEST: ConsumerEvents['REQUEST'] | ProducerEvents['REQUEST'];\n };\n [EVENT_LISTENERS_SET]?: boolean;\n}\n\ninterface StandardAttributes<OP extends string = string> extends Attributes {\n [ATTR_MESSAGING_SYSTEM]: string;\n [ATTR_MESSAGING_OPERATION_NAME]: OP;\n [ATTR_ERROR_TYPE]?: string;\n}\ninterface TopicAttributes {\n [ATTR_MESSAGING_DESTINATION_NAME]: string;\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]?: string;\n}\n\ninterface ClientDurationAttributes extends StandardAttributes, Partial<TopicAttributes> {\n [ATTR_SERVER_ADDRESS]: string;\n [ATTR_SERVER_PORT]: number;\n [ATTR_MESSAGING_OPERATION_TYPE]?: string;\n}\ninterface SentMessagesAttributes extends StandardAttributes<'send'>, TopicAttributes {\n [ATTR_ERROR_TYPE]?: string;\n}\ntype ConsumedMessagesAttributes = StandardAttributes<'receive' | 'process'>;\ninterface MessageProcessDurationAttributes extends StandardAttributes<'process'>, TopicAttributes {\n [ATTR_MESSAGING_SYSTEM]: string;\n [ATTR_MESSAGING_OPERATION_NAME]: 'process';\n [ATTR_ERROR_TYPE]?: string;\n}\ntype RecordPendingMetric = (errorType?: string | undefined) => void;\n\nfunction prepareCounter<T extends Attributes>(meter: Counter<T>, value: number, attributes: T): RecordPendingMetric {\n return (errorType?: string | undefined) => {\n meter.add(value, {\n ...attributes,\n ...(errorType ? { [ATTR_ERROR_TYPE]: errorType } : {}),\n });\n };\n}\n\nfunction prepareDurationHistogram<T extends Attributes>(\n meter: Histogram<T>,\n value: number,\n attributes: T,\n): RecordPendingMetric {\n return (errorType?: string | undefined) => {\n meter.record((Date.now() - value) / 1000, {\n ...attributes,\n ...(errorType ? { [ATTR_ERROR_TYPE]: errorType } : {}),\n });\n };\n}\n\nconst HISTOGRAM_BUCKET_BOUNDARIES = [0.005, 0.01, 0.025, 0.05, 0.075, 0.1, 0.25, 0.5, 0.75, 1, 2.5, 5, 7.5, 10];\nexport class KafkaJsInstrumentation extends InstrumentationBase<KafkaJsInstrumentationConfig> {\n declare private _clientDuration: Histogram<ClientDurationAttributes>;\n declare private _sentMessages: Counter<SentMessagesAttributes>;\n declare private _consumedMessages: Counter<ConsumedMessagesAttributes>;\n declare private _processDuration: Histogram<MessageProcessDurationAttributes>;\n\n constructor(config: KafkaJsInstrumentationConfig = {}) {\n super(PACKAGE_NAME, SDK_VERSION, config);\n }\n\n override _updateMetricInstruments() {\n this._clientDuration = this.meter.createHistogram(METRIC_MESSAGING_CLIENT_OPERATION_DURATION, {\n advice: { explicitBucketBoundaries: HISTOGRAM_BUCKET_BOUNDARIES },\n });\n this._sentMessages = this.meter.createCounter(METRIC_MESSAGING_CLIENT_SENT_MESSAGES);\n this._consumedMessages = this.meter.createCounter(METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES);\n this._processDuration = this.meter.createHistogram(METRIC_MESSAGING_PROCESS_DURATION, {\n advice: { explicitBucketBoundaries: HISTOGRAM_BUCKET_BOUNDARIES },\n });\n }\n\n protected init() {\n const unpatch = (moduleExports: any) => {\n if (isWrapped(moduleExports?.Kafka?.prototype.producer)) {\n this._unwrap(moduleExports.Kafka.prototype, 'producer');\n }\n if (isWrapped(moduleExports?.Kafka?.prototype.consumer)) {\n this._unwrap(moduleExports.Kafka.prototype, 'consumer');\n }\n };\n\n const module = new InstrumentationNodeModuleDefinition(\n 'kafkajs',\n ['>=0.3.0 <3'],\n (moduleExports: any) => {\n unpatch(moduleExports);\n this._wrap(moduleExports?.Kafka?.prototype, 'producer', this._getProducerPatch());\n this._wrap(moduleExports?.Kafka?.prototype, 'consumer', this._getConsumerPatch());\n\n return moduleExports;\n },\n unpatch,\n );\n return module;\n }\n\n private _getConsumerPatch() {\n const instrumentation = this;\n return (original: Kafka['consumer']) => {\n return function consumer(this: Kafka, ...args: Parameters<Kafka['consumer']>) {\n const newConsumer: Consumer = original.apply(this, args);\n\n if (isWrapped(newConsumer.run)) {\n instrumentation._unwrap(newConsumer, 'run');\n }\n\n instrumentation._wrap(newConsumer, 'run', instrumentation._getConsumerRunPatch());\n\n instrumentation._setKafkaEventListeners(newConsumer);\n\n return newConsumer;\n };\n };\n }\n\n private _setKafkaEventListeners(kafkaObj: KafkaEventEmitter) {\n if (kafkaObj[EVENT_LISTENERS_SET]) return;\n\n // The REQUEST Consumer event was added in kafkajs@1.5.0.\n if (kafkaObj.events?.REQUEST) {\n kafkaObj.on(kafkaObj.events.REQUEST, this._recordClientDurationMetric.bind(this));\n }\n\n kafkaObj[EVENT_LISTENERS_SET] = true;\n }\n\n private _recordClientDurationMetric(event: Pick<RequestEvent, 'payload'>) {\n const [address = '', port = '0'] = event.payload.broker.split(':');\n this._clientDuration.record(event.payload.duration / 1000, {\n [ATTR_MESSAGING_SYSTEM]: MESSAGING_SYSTEM_VALUE_KAFKA,\n [ATTR_MESSAGING_OPERATION_NAME]: `${event.payload.apiName}`,\n [ATTR_SERVER_ADDRESS]: address,\n [ATTR_SERVER_PORT]: Number.parseInt(port, 10),\n });\n }\n\n private _getProducerPatch() {\n const instrumentation = this;\n return (original: Kafka['producer']) => {\n return function consumer(this: Kafka, ...args: Parameters<Kafka['producer']>) {\n const newProducer: Producer = original.apply(this, args);\n\n if (isWrapped(newProducer.sendBatch)) {\n instrumentation._unwrap(newProducer, 'sendBatch');\n }\n instrumentation._wrap(newProducer, 'sendBatch', instrumentation._getSendBatchPatch());\n\n if (isWrapped(newProducer.send)) {\n instrumentation._unwrap(newProducer, 'send');\n }\n instrumentation._wrap(newProducer, 'send', instrumentation._getSendPatch());\n\n if (isWrapped(newProducer.transaction)) {\n instrumentation._unwrap(newProducer, 'transaction');\n }\n instrumentation._wrap(newProducer, 'transaction', instrumentation._getProducerTransactionPatch());\n\n instrumentation._setKafkaEventListeners(newProducer);\n\n return newProducer;\n };\n };\n }\n\n private _getConsumerRunPatch() {\n const instrumentation = this;\n return (original: Consumer['run']) => {\n return function run(this: Consumer, ...args: Parameters<Consumer['run']>): ReturnType<Consumer['run']> {\n const config = args[0];\n if (config?.eachMessage) {\n if (isWrapped(config.eachMessage)) {\n instrumentation._unwrap(config, 'eachMessage');\n }\n instrumentation._wrap(config, 'eachMessage', instrumentation._getConsumerEachMessagePatch());\n }\n if (config?.eachBatch) {\n if (isWrapped(config.eachBatch)) {\n instrumentation._unwrap(config, 'eachBatch');\n }\n instrumentation._wrap(config, 'eachBatch', instrumentation._getConsumerEachBatchPatch());\n }\n return original.call(this, config);\n };\n };\n }\n\n private _getConsumerEachMessagePatch() {\n const instrumentation = this;\n return (original: ConsumerRunConfig['eachMessage']) => {\n return function eachMessage(this: unknown, ...args: Parameters<EachMessageHandler>): Promise<void> {\n const payload = args[0];\n const propagatedContext: Context = propagation.extract(\n ROOT_CONTEXT,\n payload.message.headers,\n bufferTextMapGetter,\n );\n const span = instrumentation._startConsumerSpan({\n topic: payload.topic,\n message: payload.message,\n operationType: MESSAGING_OPERATION_TYPE_VALUE_PROCESS,\n ctx: propagatedContext,\n attributes: {\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.partition),\n },\n });\n\n const pendingMetrics: RecordPendingMetric[] = [\n prepareDurationHistogram(instrumentation._processDuration, Date.now(), {\n [ATTR_MESSAGING_SYSTEM]: MESSAGING_SYSTEM_VALUE_KAFKA,\n [ATTR_MESSAGING_OPERATION_NAME]: 'process',\n [ATTR_MESSAGING_DESTINATION_NAME]: payload.topic,\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.partition),\n }),\n prepareCounter(instrumentation._consumedMessages, 1, {\n [ATTR_MESSAGING_SYSTEM]: MESSAGING_SYSTEM_VALUE_KAFKA,\n [ATTR_MESSAGING_OPERATION_NAME]: 'process',\n [ATTR_MESSAGING_DESTINATION_NAME]: payload.topic,\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.partition),\n }),\n ];\n\n const eachMessagePromise = context.with(trace.setSpan(propagatedContext, span), () => {\n return original!.apply(this, args);\n });\n return instrumentation._endSpansOnPromise([span], pendingMetrics, eachMessagePromise);\n };\n };\n }\n\n private _getConsumerEachBatchPatch() {\n return (original: ConsumerRunConfig['eachBatch']) => {\n const instrumentation = this;\n return function eachBatch(this: unknown, ...args: Parameters<EachBatchHandler>): Promise<void> {\n const payload = args[0];\n // https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/trace/semantic_conventions/messaging.md#topic-with-multiple-consumers\n const receivingSpan = instrumentation._startConsumerSpan({\n topic: payload.batch.topic,\n message: undefined,\n operationType: MESSAGING_OPERATION_TYPE_VALUE_RECEIVE,\n ctx: ROOT_CONTEXT,\n attributes: {\n [ATTR_MESSAGING_BATCH_MESSAGE_COUNT]: payload.batch.messages.length,\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition),\n },\n });\n return context.with(trace.setSpan(context.active(), receivingSpan), () => {\n const startTime = Date.now();\n const spans: Span[] = [];\n const pendingMetrics: RecordPendingMetric[] = [\n prepareCounter(instrumentation._consumedMessages, payload.batch.messages.length, {\n [ATTR_MESSAGING_SYSTEM]: MESSAGING_SYSTEM_VALUE_KAFKA,\n [ATTR_MESSAGING_OPERATION_NAME]: 'process',\n [ATTR_MESSAGING_DESTINATION_NAME]: payload.batch.topic,\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition),\n }),\n ];\n payload.batch.messages.forEach((message: any) => {\n const propagatedContext: Context = propagation.extract(ROOT_CONTEXT, message.headers, bufferTextMapGetter);\n const spanContext = trace.getSpan(propagatedContext)?.spanContext();\n let origSpanLink: Link | undefined;\n if (spanContext) {\n origSpanLink = {\n context: spanContext,\n };\n }\n spans.push(\n instrumentation._startConsumerSpan({\n topic: payload.batch.topic,\n message,\n operationType: MESSAGING_OPERATION_TYPE_VALUE_PROCESS,\n link: origSpanLink,\n attributes: {\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition),\n },\n }),\n );\n pendingMetrics.push(\n prepareDurationHistogram(instrumentation._processDuration, startTime, {\n [ATTR_MESSAGING_SYSTEM]: MESSAGING_SYSTEM_VALUE_KAFKA,\n [ATTR_MESSAGING_OPERATION_NAME]: 'process',\n [ATTR_MESSAGING_DESTINATION_NAME]: payload.batch.topic,\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition),\n }),\n );\n });\n const batchMessagePromise: Promise<void> = original!.apply(this, args);\n spans.unshift(receivingSpan);\n return instrumentation._endSpansOnPromise(spans, pendingMetrics, batchMessagePromise);\n });\n };\n };\n }\n\n private _getProducerTransactionPatch() {\n const instrumentation = this;\n return (original: Producer['transaction']) => {\n return function transaction(\n this: Producer,\n ...args: Parameters<Producer['transaction']>\n ): ReturnType<Producer['transaction']> {\n const transactionSpan = instrumentation.tracer.startSpan('transaction');\n\n const transactionPromise = original.apply(this, args);\n\n transactionPromise\n .then((transaction: Transaction) => {\n const originalSend = transaction.send;\n transaction.send = function send(this: Transaction, ...args) {\n return context.with(trace.setSpan(context.active(), transactionSpan), () => {\n const patched = instrumentation._getSendPatch()(originalSend);\n return patched.apply(this, args).catch((err: any) => {\n transactionSpan.setStatus({\n code: SpanStatusCode.ERROR,\n message: err?.message,\n });\n transactionSpan.recordException(err);\n throw err;\n });\n });\n };\n\n const originalSendBatch = transaction.sendBatch;\n transaction.sendBatch = function sendBatch(this: Transaction, ...args) {\n return context.with(trace.setSpan(context.active(), transactionSpan), () => {\n const patched = instrumentation._getSendBatchPatch()(originalSendBatch);\n return patched.apply(this, args).catch((err: any) => {\n transactionSpan.setStatus({\n code: SpanStatusCode.ERROR,\n message: err?.message,\n });\n transactionSpan.recordException(err);\n throw err;\n });\n });\n };\n\n const originalCommit = transaction.commit;\n transaction.commit = function commit(this: Transaction, ...args) {\n const originCommitPromise = originalCommit.apply(this, args).then(() => {\n transactionSpan.setStatus({ code: SpanStatusCode.OK });\n });\n return instrumentation._endSpansOnPromise([transactionSpan], [], originCommitPromise);\n };\n\n const originalAbort = transaction.abort;\n transaction.abort = function abort(this: Transaction, ...args) {\n const originAbortPromise = originalAbort.apply(this, args);\n return instrumentation._endSpansOnPromise([transactionSpan], [], originAbortPromise);\n };\n })\n .catch((err: any) => {\n transactionSpan.setStatus({\n code: SpanStatusCode.ERROR,\n message: err?.message,\n });\n transactionSpan.recordException(err);\n transactionSpan.end();\n });\n\n return transactionPromise;\n };\n };\n }\n\n private _getSendBatchPatch() {\n const instrumentation = this;\n return (original: Producer['sendBatch'] | Transaction['sendBatch']) => {\n return function sendBatch(\n this: Producer | Transaction,\n ...args: Parameters<Producer['sendBatch']>\n ): ReturnType<Producer['sendBatch']> {\n const batch = args[0];\n const messages = batch.topicMessages || [];\n\n const spans: Span[] = [];\n const pendingMetrics: RecordPendingMetric[] = [];\n\n messages.forEach((topicMessage: any) => {\n topicMessage.messages.forEach((message: any) => {\n spans.push(instrumentation._startProducerSpan(topicMessage.topic, message));\n pendingMetrics.push(\n prepareCounter(instrumentation._sentMessages, 1, {\n [ATTR_MESSAGING_SYSTEM]: MESSAGING_SYSTEM_VALUE_KAFKA,\n [ATTR_MESSAGING_OPERATION_NAME]: 'send',\n [ATTR_MESSAGING_DESTINATION_NAME]: topicMessage.topic,\n ...(message.partition !== undefined\n ? {\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(message.partition),\n }\n : {}),\n }),\n );\n });\n });\n const origSendResult: Promise<RecordMetadata[]> = original.apply(this, args);\n return instrumentation._endSpansOnPromise(spans, pendingMetrics, origSendResult);\n };\n };\n }\n\n private _getSendPatch() {\n const instrumentation = this;\n return (original: Producer['send'] | Transaction['send']) => {\n return function send(\n this: Producer | Transaction,\n ...args: Parameters<Producer['send']>\n ): ReturnType<Producer['send']> {\n const record = args[0];\n const spans: Span[] = record.messages.map((message: any) => {\n return instrumentation._startProducerSpan(record.topic, message);\n });\n\n const pendingMetrics: RecordPendingMetric[] = record.messages.map((m: any) =>\n prepareCounter(instrumentation._sentMessages, 1, {\n [ATTR_MESSAGING_SYSTEM]: MESSAGING_SYSTEM_VALUE_KAFKA,\n [ATTR_MESSAGING_OPERATION_NAME]: 'send',\n [ATTR_MESSAGING_DESTINATION_NAME]: record.topic,\n ...(m.partition !== undefined\n ? {\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(m.partition),\n }\n : {}),\n }),\n );\n const origSendResult: Promise<RecordMetadata[]> = original.apply(this, args);\n return instrumentation._endSpansOnPromise(spans, pendingMetrics, origSendResult);\n };\n };\n }\n\n private _endSpansOnPromise<T>(\n spans: Span[],\n pendingMetrics: RecordPendingMetric[],\n sendPromise: Promise<T>,\n ): Promise<T> {\n return Promise.resolve(sendPromise)\n .then(result => {\n pendingMetrics.forEach(m => m());\n return result;\n })\n .catch(reason => {\n let errorMessage: string | undefined;\n let errorType: string = ERROR_TYPE_VALUE_OTHER;\n if (typeof reason === 'string' || reason === undefined) {\n errorMessage = reason;\n } else if (typeof reason === 'object' && Object.prototype.hasOwnProperty.call(reason, 'message')) {\n errorMessage = reason.message;\n errorType = reason.constructor.name;\n }\n pendingMetrics.forEach(m => m(errorType));\n\n spans.forEach(span => {\n span.setAttribute(ATTR_ERROR_TYPE, errorType);\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: errorMessage,\n });\n });\n\n throw reason;\n })\n .finally(() => {\n spans.forEach(span => span.end());\n });\n }\n\n private _startConsumerSpan({ topic, message, operationType, ctx, link, attributes }: ConsumerSpanOptions) {\n const operationName =\n operationType === MESSAGING_OPERATION_TYPE_VALUE_RECEIVE\n ? 'poll' // for batch processing spans\n : operationType; // for individual message processing spans\n\n const span = this.tracer.startSpan(\n `${operationName} ${topic}`,\n {\n kind: operationType === MESSAGING_OPERATION_TYPE_VALUE_RECEIVE ? SpanKind.CLIENT : SpanKind.CONSUMER,\n attributes: {\n ...attributes,\n [ATTR_MESSAGING_SYSTEM]: MESSAGING_SYSTEM_VALUE_KAFKA,\n [ATTR_MESSAGING_DESTINATION_NAME]: topic,\n [ATTR_MESSAGING_OPERATION_TYPE]: operationType,\n [ATTR_MESSAGING_OPERATION_NAME]: operationName,\n [ATTR_MESSAGING_KAFKA_MESSAGE_KEY]: message?.key ? String(message.key) : undefined,\n [ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE]: message?.key && message.value === null ? true : undefined,\n [ATTR_MESSAGING_KAFKA_OFFSET]: message?.offset,\n },\n links: link ? [link] : [],\n },\n ctx,\n );\n\n const { consumerHook } = this.getConfig();\n if (consumerHook && message) {\n safeExecuteInTheMiddle(\n () => consumerHook(span, { topic, message }),\n e => {\n if (e) this._diag.error('consumerHook error', e);\n },\n true,\n );\n }\n\n return span;\n }\n\n private _startProducerSpan(topic: string, message: Message) {\n const span = this.tracer.startSpan(`send ${topic}`, {\n kind: SpanKind.PRODUCER,\n attributes: {\n [ATTR_MESSAGING_SYSTEM]: MESSAGING_SYSTEM_VALUE_KAFKA,\n [ATTR_MESSAGING_DESTINATION_NAME]: topic,\n [ATTR_MESSAGING_KAFKA_MESSAGE_KEY]: message.key ? String(message.key) : undefined,\n [ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE]: message.key && message.value === null ? true : undefined,\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]:\n message.partition !== undefined ? String(message.partition) : undefined,\n [ATTR_MESSAGING_OPERATION_NAME]: 'send',\n [ATTR_MESSAGING_OPERATION_TYPE]: MESSAGING_OPERATION_TYPE_VALUE_SEND,\n },\n });\n\n message.headers = message.headers ?? {};\n propagation.inject(trace.setSpan(context.active(), span), message.headers);\n\n const { producerHook } = this.getConfig();\n if (producerHook) {\n safeExecuteInTheMiddle(\n () => producerHook(span, { topic, message }),\n e => {\n if (e) this._diag.error('producerHook error', e);\n },\n true,\n );\n }\n\n return span;\n }\n}\n"],"names":["ATTR_ERROR_TYPE","InstrumentationBase","SDK_VERSION","METRIC_MESSAGING_CLIENT_OPERATION_DURATION","METRIC_MESSAGING_CLIENT_SENT_MESSAGES","METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES","METRIC_MESSAGING_PROCESS_DURATION","isWrapped","InstrumentationNodeModuleDefinition","instrumentation","EVENT_LISTENERS_SET","ATTR_MESSAGING_SYSTEM","MESSAGING_SYSTEM_VALUE_KAFKA","ATTR_MESSAGING_OPERATION_NAME","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","propagation","ROOT_CONTEXT","bufferTextMapGetter","MESSAGING_OPERATION_TYPE_VALUE_PROCESS","ATTR_MESSAGING_DESTINATION_PARTITION_ID","ATTR_MESSAGING_DESTINATION_NAME","context","trace","MESSAGING_OPERATION_TYPE_VALUE_RECEIVE","ATTR_MESSAGING_BATCH_MESSAGE_COUNT","transaction","args","SpanStatusCode","ERROR_TYPE_VALUE_OTHER","SpanKind","ATTR_MESSAGING_OPERATION_TYPE","ATTR_MESSAGING_KAFKA_MESSAGE_KEY","ATTR_MESSAGING_KAFKA_MESSAGE_TOMBSTONE","ATTR_MESSAGING_KAFKA_OFFSET","safeExecuteInTheMiddle","MESSAGING_OPERATION_TYPE_VALUE_SEND"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"instrumentation.js","sources":["../../../../../../src/integrations/tracing/kafka/vendored/instrumentation.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors, Aspecto\n * SPDX-License-Identifier: Apache-2.0\n *\n * NOTICE from the Sentry authors:\n * - Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/tree/15ef7506553f631ea4181391e0c5725a56f0d082/packages/instrumentation-kafkajs\n * - Upstream version: @opentelemetry/instrumentation-kafkajs@0.27.0\n * - Some types vendored from kafkajs with simplifications\n * - Refactored to use Sentry's span APIs instead of OpenTelemetry tracing APIs\n * - Cross-broker trace propagation uses Sentry's `getTraceData`/`continueTrace` instead of the OTel\n * propagator, so the vendored `bufferTextMapGetter` propagator is gone\n * - Dropped the OTel metrics (no MeterProvider is wired up) and, with them, the `network.request`\n * event listeners they relied on; origin is folded into span creation instead of `index.ts` hooks\n */\n\nimport type { InstrumentationConfig } from '@opentelemetry/instrumentation';\nimport { InstrumentationBase, InstrumentationNodeModuleDefinition, isWrapped } from '@opentelemetry/instrumentation';\nimport type { Span } from '@sentry/core';\nimport {\n continueTrace,\n SDK_VERSION,\n SPAN_STATUS_ERROR,\n SPAN_STATUS_OK,\n startInactiveSpan,\n startNewTrace,\n withActiveSpan,\n} from '@sentry/core';\nimport type {\n Consumer,\n ConsumerRunConfig,\n EachBatchHandler,\n EachMessageHandler,\n Kafka,\n KafkaMessage,\n Producer,\n RecordMetadata,\n Transaction,\n} from './kafkajs-types';\nimport {\n ATTR_MESSAGING_BATCH_MESSAGE_COUNT,\n ATTR_MESSAGING_DESTINATION_PARTITION_ID,\n MESSAGING_OPERATION_TYPE_VALUE_PROCESS,\n MESSAGING_OPERATION_TYPE_VALUE_RECEIVE,\n} from './semconv';\nimport {\n endSpansOnPromise,\n getHeaderAsString,\n getLinksFromHeaders,\n startConsumerSpan,\n startProducerSpan,\n} from './utils';\n\nconst PACKAGE_NAME = '@sentry/instrumentation-kafkajs';\n\nexport class KafkaJsInstrumentation extends InstrumentationBase<InstrumentationConfig> {\n public constructor(config: InstrumentationConfig = {}) {\n super(PACKAGE_NAME, SDK_VERSION, config);\n }\n\n protected init(): InstrumentationNodeModuleDefinition {\n const unpatch = (moduleExports: any): void => {\n if (isWrapped(moduleExports?.Kafka?.prototype.producer)) {\n this._unwrap(moduleExports.Kafka.prototype, 'producer');\n }\n if (isWrapped(moduleExports?.Kafka?.prototype.consumer)) {\n this._unwrap(moduleExports.Kafka.prototype, 'consumer');\n }\n };\n\n const module = new InstrumentationNodeModuleDefinition(\n 'kafkajs',\n ['>=0.3.0 <3'],\n (moduleExports: any) => {\n unpatch(moduleExports);\n this._wrap(moduleExports?.Kafka?.prototype, 'producer', this._getProducerPatch());\n this._wrap(moduleExports?.Kafka?.prototype, 'consumer', this._getConsumerPatch());\n\n return moduleExports;\n },\n unpatch,\n );\n return module;\n }\n\n private _getConsumerPatch() {\n const instrumentation = this;\n return (original: Kafka['consumer']) => {\n return function consumer(this: Kafka, ...args: Parameters<Kafka['consumer']>) {\n const newConsumer: Consumer = original.apply(this, args);\n\n // oxlint-disable-next-line typescript/unbound-method -- property check, the method is never called\n if (isWrapped(newConsumer.run)) {\n instrumentation._unwrap(newConsumer, 'run');\n }\n\n instrumentation._wrap(newConsumer, 'run', instrumentation._getConsumerRunPatch());\n\n return newConsumer;\n };\n };\n }\n\n private _getProducerPatch() {\n const instrumentation = this;\n return (original: Kafka['producer']) => {\n return function consumer(this: Kafka, ...args: Parameters<Kafka['producer']>) {\n const newProducer: Producer = original.apply(this, args);\n\n // oxlint-disable-next-line typescript/unbound-method -- property check, the method is never called\n if (isWrapped(newProducer.sendBatch)) {\n instrumentation._unwrap(newProducer, 'sendBatch');\n }\n instrumentation._wrap(newProducer, 'sendBatch', instrumentation._getSendBatchPatch());\n\n // oxlint-disable-next-line typescript/unbound-method -- property check, the method is never called\n if (isWrapped(newProducer.send)) {\n instrumentation._unwrap(newProducer, 'send');\n }\n instrumentation._wrap(newProducer, 'send', instrumentation._getSendPatch());\n\n // oxlint-disable-next-line typescript/unbound-method -- property check, the method is never called\n if (isWrapped(newProducer.transaction)) {\n instrumentation._unwrap(newProducer, 'transaction');\n }\n instrumentation._wrap(newProducer, 'transaction', instrumentation._getProducerTransactionPatch());\n\n return newProducer;\n };\n };\n }\n\n private _getConsumerRunPatch() {\n const instrumentation = this;\n return (original: Consumer['run']) => {\n return function run(this: Consumer, ...args: Parameters<Consumer['run']>): ReturnType<Consumer['run']> {\n const config = args[0];\n if (config?.eachMessage) {\n if (isWrapped(config.eachMessage)) {\n instrumentation._unwrap(config, 'eachMessage');\n }\n instrumentation._wrap(config, 'eachMessage', instrumentation._getConsumerEachMessagePatch());\n }\n if (config?.eachBatch) {\n if (isWrapped(config.eachBatch)) {\n instrumentation._unwrap(config, 'eachBatch');\n }\n instrumentation._wrap(config, 'eachBatch', instrumentation._getConsumerEachBatchPatch());\n }\n return original.call(this, config);\n };\n };\n }\n\n private _getConsumerEachMessagePatch() {\n return (original: ConsumerRunConfig['eachMessage']) => {\n return function eachMessage(this: unknown, ...args: Parameters<EachMessageHandler>): Promise<void> {\n const payload = args[0];\n const sentryTrace = getHeaderAsString(payload.message.headers, 'sentry-trace');\n const baggage = getHeaderAsString(payload.message.headers, 'baggage');\n\n // Continue the producer's trace so the consumer span is parented to the message's producer.\n return continueTrace({ sentryTrace, baggage }, () => {\n const span = startConsumerSpan({\n topic: payload.topic,\n message: payload.message,\n operationType: MESSAGING_OPERATION_TYPE_VALUE_PROCESS,\n attributes: {\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.partition),\n },\n });\n\n const eachMessagePromise = withActiveSpan(span, () => {\n return original!.apply(this, args);\n });\n return endSpansOnPromise([span], eachMessagePromise);\n });\n };\n };\n }\n\n private _getConsumerEachBatchPatch() {\n return (original: ConsumerRunConfig['eachBatch']) => {\n return function eachBatch(this: unknown, ...args: Parameters<EachBatchHandler>): Promise<void> {\n const payload = args[0];\n // https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/trace/semantic_conventions/messaging.md#topic-with-multiple-consumers\n // A batch pull aggregates messages from many producers, so the receiving span is a fresh root\n // trace and each processed message links back to its own producer span.\n const receivingSpan = startNewTrace(() =>\n startConsumerSpan({\n topic: payload.batch.topic,\n message: undefined,\n operationType: MESSAGING_OPERATION_TYPE_VALUE_RECEIVE,\n attributes: {\n [ATTR_MESSAGING_BATCH_MESSAGE_COUNT]: payload.batch.messages.length,\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition),\n },\n }),\n );\n\n return withActiveSpan(receivingSpan, () => {\n const spans: Span[] = [receivingSpan];\n payload.batch.messages.forEach((message: KafkaMessage) => {\n spans.push(\n startConsumerSpan({\n topic: payload.batch.topic,\n message,\n operationType: MESSAGING_OPERATION_TYPE_VALUE_PROCESS,\n links: getLinksFromHeaders(message.headers),\n attributes: {\n [ATTR_MESSAGING_DESTINATION_PARTITION_ID]: String(payload.batch.partition),\n },\n }),\n );\n });\n const batchMessagePromise: Promise<void> = original!.apply(this, args);\n return endSpansOnPromise(spans, batchMessagePromise);\n });\n };\n };\n }\n\n private _getProducerTransactionPatch() {\n const instrumentation = this;\n return (original: Producer['transaction']) => {\n return function transaction(\n this: Producer,\n ...args: Parameters<Producer['transaction']>\n ): ReturnType<Producer['transaction']> {\n const transactionSpan = startInactiveSpan({ name: 'transaction' });\n\n const transactionPromise = original.apply(this, args);\n\n transactionPromise\n .then((transaction: Transaction) => {\n // oxlint-disable-next-line typescript/unbound-method -- re-bound below via `.apply(this, args)`\n const originalSend = transaction.send;\n transaction.send = function send(this: Transaction, ...args) {\n return withActiveSpan(transactionSpan, () => {\n const patched = instrumentation._getSendPatch()(originalSend);\n return patched.apply(this, args).catch((err: any) => {\n transactionSpan.setStatus({\n code: SPAN_STATUS_ERROR,\n message: err?.message,\n });\n throw err;\n });\n });\n };\n\n // oxlint-disable-next-line typescript/unbound-method -- re-bound below via `.apply(this, args)`\n const originalSendBatch = transaction.sendBatch;\n transaction.sendBatch = function sendBatch(this: Transaction, ...args) {\n return withActiveSpan(transactionSpan, () => {\n const patched = instrumentation._getSendBatchPatch()(originalSendBatch);\n return patched.apply(this, args).catch((err: any) => {\n transactionSpan.setStatus({\n code: SPAN_STATUS_ERROR,\n message: err?.message,\n });\n throw err;\n });\n });\n };\n\n // oxlint-disable-next-line typescript/unbound-method -- re-bound below via `.apply(this, args)`\n const originalCommit = transaction.commit;\n transaction.commit = function commit(this: Transaction, ...args) {\n const originCommitPromise = originalCommit.apply(this, args).then(() => {\n transactionSpan.setStatus({ code: SPAN_STATUS_OK });\n });\n return endSpansOnPromise([transactionSpan], originCommitPromise);\n };\n\n // oxlint-disable-next-line typescript/unbound-method -- re-bound below via `.apply(this, args)`\n const originalAbort = transaction.abort;\n transaction.abort = function abort(this: Transaction, ...args) {\n const originAbortPromise = originalAbort.apply(this, args);\n return endSpansOnPromise([transactionSpan], originAbortPromise);\n };\n })\n .catch((err: any) => {\n transactionSpan.setStatus({\n code: SPAN_STATUS_ERROR,\n message: err?.message,\n });\n transactionSpan.end();\n });\n\n return transactionPromise;\n };\n };\n }\n\n private _getSendBatchPatch() {\n return (original: Producer['sendBatch'] | Transaction['sendBatch']) => {\n return function sendBatch(\n this: Producer | Transaction,\n ...args: Parameters<Producer['sendBatch']>\n ): ReturnType<Producer['sendBatch']> {\n const batch = args[0];\n const messages = batch.topicMessages || [];\n\n const spans: Span[] = [];\n\n messages.forEach((topicMessage: any) => {\n topicMessage.messages.forEach((message: any) => {\n spans.push(startProducerSpan(topicMessage.topic, message));\n });\n });\n const origSendResult: Promise<RecordMetadata[]> = original.apply(this, args);\n return endSpansOnPromise(spans, origSendResult);\n };\n };\n }\n\n private _getSendPatch() {\n return (original: Producer['send'] | Transaction['send']) => {\n return function send(\n this: Producer | Transaction,\n ...args: Parameters<Producer['send']>\n ): ReturnType<Producer['send']> {\n const record = args[0];\n const spans: Span[] = record.messages.map((message: any) => {\n return startProducerSpan(record.topic, message);\n });\n\n const origSendResult: Promise<RecordMetadata[]> = original.apply(this, args);\n return endSpansOnPromise(spans, origSendResult);\n };\n };\n }\n}\n"],"names":["InstrumentationBase","SDK_VERSION","isWrapped","InstrumentationNodeModuleDefinition","instrumentation","getHeaderAsString","continueTrace","startConsumerSpan","MESSAGING_OPERATION_TYPE_VALUE_PROCESS","ATTR_MESSAGING_DESTINATION_PARTITION_ID","withActiveSpan","endSpansOnPromise","startNewTrace","MESSAGING_OPERATION_TYPE_VALUE_RECEIVE","ATTR_MESSAGING_BATCH_MESSAGE_COUNT","getLinksFromHeaders","startInactiveSpan","transaction","args","SPAN_STATUS_ERROR","SPAN_STATUS_OK","startProducerSpan"],"mappings":"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"}
|
|
@@ -13,11 +13,10 @@ const MESSAGING_OPERATION_TYPE_VALUE_PROCESS = "process";
|
|
|
13
13
|
const MESSAGING_OPERATION_TYPE_VALUE_RECEIVE = "receive";
|
|
14
14
|
const MESSAGING_OPERATION_TYPE_VALUE_SEND = "send";
|
|
15
15
|
const MESSAGING_SYSTEM_VALUE_KAFKA = "kafka";
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const METRIC_MESSAGING_CLIENT_SENT_MESSAGES = "messaging.client.sent.messages";
|
|
19
|
-
const METRIC_MESSAGING_PROCESS_DURATION = "messaging.process.duration";
|
|
16
|
+
const ATTR_ERROR_TYPE = "error.type";
|
|
17
|
+
const ERROR_TYPE_VALUE_OTHER = "_OTHER";
|
|
20
18
|
|
|
19
|
+
exports.ATTR_ERROR_TYPE = ATTR_ERROR_TYPE;
|
|
21
20
|
exports.ATTR_MESSAGING_BATCH_MESSAGE_COUNT = ATTR_MESSAGING_BATCH_MESSAGE_COUNT;
|
|
22
21
|
exports.ATTR_MESSAGING_DESTINATION_NAME = ATTR_MESSAGING_DESTINATION_NAME;
|
|
23
22
|
exports.ATTR_MESSAGING_DESTINATION_PARTITION_ID = ATTR_MESSAGING_DESTINATION_PARTITION_ID;
|
|
@@ -27,12 +26,9 @@ exports.ATTR_MESSAGING_KAFKA_OFFSET = ATTR_MESSAGING_KAFKA_OFFSET;
|
|
|
27
26
|
exports.ATTR_MESSAGING_OPERATION_NAME = ATTR_MESSAGING_OPERATION_NAME;
|
|
28
27
|
exports.ATTR_MESSAGING_OPERATION_TYPE = ATTR_MESSAGING_OPERATION_TYPE;
|
|
29
28
|
exports.ATTR_MESSAGING_SYSTEM = ATTR_MESSAGING_SYSTEM;
|
|
29
|
+
exports.ERROR_TYPE_VALUE_OTHER = ERROR_TYPE_VALUE_OTHER;
|
|
30
30
|
exports.MESSAGING_OPERATION_TYPE_VALUE_PROCESS = MESSAGING_OPERATION_TYPE_VALUE_PROCESS;
|
|
31
31
|
exports.MESSAGING_OPERATION_TYPE_VALUE_RECEIVE = MESSAGING_OPERATION_TYPE_VALUE_RECEIVE;
|
|
32
32
|
exports.MESSAGING_OPERATION_TYPE_VALUE_SEND = MESSAGING_OPERATION_TYPE_VALUE_SEND;
|
|
33
33
|
exports.MESSAGING_SYSTEM_VALUE_KAFKA = MESSAGING_SYSTEM_VALUE_KAFKA;
|
|
34
|
-
exports.METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES = METRIC_MESSAGING_CLIENT_CONSUMED_MESSAGES;
|
|
35
|
-
exports.METRIC_MESSAGING_CLIENT_OPERATION_DURATION = METRIC_MESSAGING_CLIENT_OPERATION_DURATION;
|
|
36
|
-
exports.METRIC_MESSAGING_CLIENT_SENT_MESSAGES = METRIC_MESSAGING_CLIENT_SENT_MESSAGES;
|
|
37
|
-
exports.METRIC_MESSAGING_PROCESS_DURATION = METRIC_MESSAGING_PROCESS_DURATION;
|
|
38
34
|
//# sourceMappingURL=semconv.js.map
|