@depup/sentry__server-utils 10.67.0-depup.0 → 10.68.0-depup.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/README.md +5 -4
- package/build/cjs/integrations/tracing-channel/dataloader.js +17 -7
- package/build/cjs/integrations/tracing-channel/dataloader.js.map +1 -1
- package/build/cjs/integrations/tracing-channel/fastify/index.js +2 -4
- package/build/cjs/integrations/tracing-channel/fastify/index.js.map +1 -1
- package/build/cjs/integrations/tracing-channel/fastify/utils.js.map +1 -1
- package/build/cjs/integrations/tracing-channel/firebase/firestore.js +78 -0
- package/build/cjs/integrations/tracing-channel/firebase/firestore.js.map +1 -0
- package/build/cjs/integrations/tracing-channel/firebase/functions.js +67 -0
- package/build/cjs/integrations/tracing-channel/firebase/functions.js.map +1 -0
- package/build/cjs/integrations/tracing-channel/firebase/index.js +24 -0
- package/build/cjs/integrations/tracing-channel/firebase/index.js.map +1 -0
- package/build/cjs/integrations/tracing-channel/firebase/instrumentation.js +66 -0
- package/build/cjs/integrations/tracing-channel/firebase/instrumentation.js.map +1 -0
- package/build/cjs/orchestrion/bundler/esbuild.js +24 -1
- package/build/cjs/orchestrion/bundler/esbuild.js.map +1 -1
- package/build/cjs/orchestrion/bundler/options.js +16 -2
- package/build/cjs/orchestrion/bundler/options.js.map +1 -1
- package/build/cjs/orchestrion/bundler/rollup.js +11 -1
- package/build/cjs/orchestrion/bundler/rollup.js.map +1 -1
- package/build/cjs/orchestrion/bundler/subscribeInjection.js +40 -0
- package/build/cjs/orchestrion/bundler/subscribeInjection.js.map +1 -0
- package/build/cjs/orchestrion/bundler/vite.js +13 -0
- package/build/cjs/orchestrion/bundler/vite.js.map +1 -1
- package/build/cjs/orchestrion/bundler/webpack.js +32 -1
- package/build/cjs/orchestrion/bundler/webpack.js.map +1 -1
- package/build/cjs/orchestrion/channels.js +0 -4
- package/build/cjs/orchestrion/channels.js.map +1 -1
- package/build/cjs/orchestrion/config/amqplib.js +4 -0
- package/build/cjs/orchestrion/config/amqplib.js.map +1 -1
- package/build/cjs/orchestrion/config/anthropic-ai.js +4 -0
- package/build/cjs/orchestrion/config/anthropic-ai.js.map +1 -1
- package/build/cjs/orchestrion/config/aws-sdk.js +4 -0
- package/build/cjs/orchestrion/config/aws-sdk.js.map +1 -1
- package/build/cjs/orchestrion/config/channel-integration-definitions.js +29 -0
- package/build/cjs/orchestrion/config/channel-integration-definitions.js.map +1 -0
- package/build/cjs/orchestrion/config/dataloader.js +4 -0
- package/build/cjs/orchestrion/config/dataloader.js.map +1 -1
- package/build/cjs/orchestrion/config/express.js +4 -0
- package/build/cjs/orchestrion/config/express.js.map +1 -1
- package/build/cjs/orchestrion/config/firebase.js +79 -2
- package/build/cjs/orchestrion/config/firebase.js.map +1 -1
- package/build/cjs/orchestrion/config/generic-pool.js +4 -0
- package/build/cjs/orchestrion/config/generic-pool.js.map +1 -1
- package/build/cjs/orchestrion/config/google-genai.js +4 -0
- package/build/cjs/orchestrion/config/google-genai.js.map +1 -1
- package/build/cjs/orchestrion/config/graphql.js +4 -0
- package/build/cjs/orchestrion/config/graphql.js.map +1 -1
- package/build/cjs/orchestrion/config/hapi.js +4 -0
- package/build/cjs/orchestrion/config/hapi.js.map +1 -1
- package/build/cjs/orchestrion/config/index.js +33 -5
- package/build/cjs/orchestrion/config/index.js.map +1 -1
- package/build/cjs/orchestrion/config/ioredis.js +4 -0
- package/build/cjs/orchestrion/config/ioredis.js.map +1 -1
- package/build/cjs/orchestrion/config/kafkajs.js +4 -0
- package/build/cjs/orchestrion/config/kafkajs.js.map +1 -1
- package/build/cjs/orchestrion/config/knex.js +4 -0
- package/build/cjs/orchestrion/config/knex.js.map +1 -1
- package/build/cjs/orchestrion/config/koa.js +4 -0
- package/build/cjs/orchestrion/config/koa.js.map +1 -1
- package/build/cjs/orchestrion/config/langchain.js +4 -0
- package/build/cjs/orchestrion/config/langchain.js.map +1 -1
- package/build/cjs/orchestrion/config/langgraph.js +4 -0
- package/build/cjs/orchestrion/config/langgraph.js.map +1 -1
- package/build/cjs/orchestrion/config/lru-memoizer.js +4 -0
- package/build/cjs/orchestrion/config/lru-memoizer.js.map +1 -1
- package/build/cjs/orchestrion/config/mongodb.js +4 -0
- package/build/cjs/orchestrion/config/mongodb.js.map +1 -1
- package/build/cjs/orchestrion/config/mongoose.js +4 -0
- package/build/cjs/orchestrion/config/mongoose.js.map +1 -1
- package/build/cjs/orchestrion/config/mysql.js +4 -0
- package/build/cjs/orchestrion/config/mysql.js.map +1 -1
- package/build/cjs/orchestrion/config/mysql2.js +4 -0
- package/build/cjs/orchestrion/config/mysql2.js.map +1 -1
- package/build/cjs/orchestrion/config/nestjs.js +4 -0
- package/build/cjs/orchestrion/config/nestjs.js.map +1 -1
- package/build/cjs/orchestrion/config/openai.js +4 -0
- package/build/cjs/orchestrion/config/openai.js.map +1 -1
- package/build/cjs/orchestrion/config/pg.js +4 -0
- package/build/cjs/orchestrion/config/pg.js.map +1 -1
- package/build/cjs/orchestrion/config/postgres.js +4 -0
- package/build/cjs/orchestrion/config/postgres.js.map +1 -1
- package/build/cjs/orchestrion/config/redis.js +4 -0
- package/build/cjs/orchestrion/config/redis.js.map +1 -1
- package/build/cjs/orchestrion/config/remix.js +4 -0
- package/build/cjs/orchestrion/config/remix.js.map +1 -1
- package/build/cjs/orchestrion/config/subscribe-injection.js +25 -0
- package/build/cjs/orchestrion/config/subscribe-injection.js.map +1 -0
- package/build/cjs/orchestrion/config/tedious.js +4 -0
- package/build/cjs/orchestrion/config/tedious.js.map +1 -1
- package/build/cjs/orchestrion/config/vercel-ai.js +4 -0
- package/build/cjs/orchestrion/config/vercel-ai.js.map +1 -1
- package/build/cjs/orchestrion/index.js +12 -7
- package/build/cjs/orchestrion/index.js.map +1 -1
- package/build/cjs/orchestrion/registerChannelIntegration.js +13 -0
- package/build/cjs/orchestrion/registerChannelIntegration.js.map +1 -0
- package/build/cjs/vercel-ai/index.js.map +1 -1
- package/build/esm/integrations/tracing-channel/dataloader.js +17 -7
- package/build/esm/integrations/tracing-channel/dataloader.js.map +1 -1
- package/build/esm/integrations/tracing-channel/fastify/index.js +2 -4
- package/build/esm/integrations/tracing-channel/fastify/index.js.map +1 -1
- package/build/esm/integrations/tracing-channel/fastify/utils.js.map +1 -1
- package/build/esm/integrations/tracing-channel/firebase/firestore.js +75 -0
- package/build/esm/integrations/tracing-channel/firebase/firestore.js.map +1 -0
- package/build/esm/integrations/tracing-channel/firebase/functions.js +65 -0
- package/build/esm/integrations/tracing-channel/firebase/functions.js.map +1 -0
- package/build/esm/integrations/tracing-channel/firebase/index.js +22 -0
- package/build/esm/integrations/tracing-channel/firebase/index.js.map +1 -0
- package/build/esm/integrations/tracing-channel/firebase/instrumentation.js +64 -0
- package/build/esm/integrations/tracing-channel/firebase/instrumentation.js.map +1 -0
- package/build/esm/orchestrion/bundler/esbuild.js +25 -2
- package/build/esm/orchestrion/bundler/esbuild.js.map +1 -1
- package/build/esm/orchestrion/bundler/options.js +15 -3
- package/build/esm/orchestrion/bundler/options.js.map +1 -1
- package/build/esm/orchestrion/bundler/rollup.js +12 -2
- package/build/esm/orchestrion/bundler/rollup.js.map +1 -1
- package/build/esm/orchestrion/bundler/subscribeInjection.js +38 -0
- package/build/esm/orchestrion/bundler/subscribeInjection.js.map +1 -0
- package/build/esm/orchestrion/bundler/vite.js +14 -1
- package/build/esm/orchestrion/bundler/vite.js.map +1 -1
- package/build/esm/orchestrion/bundler/webpack.js +33 -3
- package/build/esm/orchestrion/bundler/webpack.js.map +1 -1
- package/build/esm/orchestrion/channels.js +0 -4
- package/build/esm/orchestrion/channels.js.map +1 -1
- package/build/esm/orchestrion/config/amqplib.js +4 -1
- package/build/esm/orchestrion/config/amqplib.js.map +1 -1
- package/build/esm/orchestrion/config/anthropic-ai.js +4 -1
- package/build/esm/orchestrion/config/anthropic-ai.js.map +1 -1
- package/build/esm/orchestrion/config/aws-sdk.js +4 -1
- package/build/esm/orchestrion/config/aws-sdk.js.map +1 -1
- package/build/esm/orchestrion/config/channel-integration-definitions.js +26 -0
- package/build/esm/orchestrion/config/channel-integration-definitions.js.map +1 -0
- package/build/esm/orchestrion/config/dataloader.js +4 -1
- package/build/esm/orchestrion/config/dataloader.js.map +1 -1
- package/build/esm/orchestrion/config/express.js +4 -1
- package/build/esm/orchestrion/config/express.js.map +1 -1
- package/build/esm/orchestrion/config/firebase.js +79 -3
- package/build/esm/orchestrion/config/firebase.js.map +1 -1
- package/build/esm/orchestrion/config/generic-pool.js +4 -1
- package/build/esm/orchestrion/config/generic-pool.js.map +1 -1
- package/build/esm/orchestrion/config/google-genai.js +4 -1
- package/build/esm/orchestrion/config/google-genai.js.map +1 -1
- package/build/esm/orchestrion/config/graphql.js +4 -1
- package/build/esm/orchestrion/config/graphql.js.map +1 -1
- package/build/esm/orchestrion/config/hapi.js +4 -1
- package/build/esm/orchestrion/config/hapi.js.map +1 -1
- package/build/esm/orchestrion/config/index.js +61 -34
- package/build/esm/orchestrion/config/index.js.map +1 -1
- package/build/esm/orchestrion/config/ioredis.js +4 -1
- package/build/esm/orchestrion/config/ioredis.js.map +1 -1
- package/build/esm/orchestrion/config/kafkajs.js +4 -1
- package/build/esm/orchestrion/config/kafkajs.js.map +1 -1
- package/build/esm/orchestrion/config/knex.js +4 -1
- package/build/esm/orchestrion/config/knex.js.map +1 -1
- package/build/esm/orchestrion/config/koa.js +4 -1
- package/build/esm/orchestrion/config/koa.js.map +1 -1
- package/build/esm/orchestrion/config/langchain.js +4 -1
- package/build/esm/orchestrion/config/langchain.js.map +1 -1
- package/build/esm/orchestrion/config/langgraph.js +4 -1
- package/build/esm/orchestrion/config/langgraph.js.map +1 -1
- package/build/esm/orchestrion/config/lru-memoizer.js +4 -1
- package/build/esm/orchestrion/config/lru-memoizer.js.map +1 -1
- package/build/esm/orchestrion/config/mongodb.js +4 -1
- package/build/esm/orchestrion/config/mongodb.js.map +1 -1
- package/build/esm/orchestrion/config/mongoose.js +4 -1
- package/build/esm/orchestrion/config/mongoose.js.map +1 -1
- package/build/esm/orchestrion/config/mysql.js +4 -1
- package/build/esm/orchestrion/config/mysql.js.map +1 -1
- package/build/esm/orchestrion/config/mysql2.js +4 -1
- package/build/esm/orchestrion/config/mysql2.js.map +1 -1
- package/build/esm/orchestrion/config/nestjs.js +4 -1
- package/build/esm/orchestrion/config/nestjs.js.map +1 -1
- package/build/esm/orchestrion/config/openai.js +4 -1
- package/build/esm/orchestrion/config/openai.js.map +1 -1
- package/build/esm/orchestrion/config/pg.js +4 -1
- package/build/esm/orchestrion/config/pg.js.map +1 -1
- package/build/esm/orchestrion/config/postgres.js +4 -1
- package/build/esm/orchestrion/config/postgres.js.map +1 -1
- package/build/esm/orchestrion/config/redis.js +4 -1
- package/build/esm/orchestrion/config/redis.js.map +1 -1
- package/build/esm/orchestrion/config/remix.js +4 -1
- package/build/esm/orchestrion/config/remix.js.map +1 -1
- package/build/esm/orchestrion/config/subscribe-injection.js +22 -0
- package/build/esm/orchestrion/config/subscribe-injection.js.map +1 -0
- package/build/esm/orchestrion/config/tedious.js +4 -1
- package/build/esm/orchestrion/config/tedious.js.map +1 -1
- package/build/esm/orchestrion/config/vercel-ai.js +4 -1
- package/build/esm/orchestrion/config/vercel-ai.js.map +1 -1
- package/build/esm/orchestrion/index.js +5 -2
- package/build/esm/orchestrion/index.js.map +1 -1
- package/build/esm/orchestrion/registerChannelIntegration.js +11 -0
- package/build/esm/orchestrion/registerChannelIntegration.js.map +1 -0
- package/build/esm/package.json +1 -1
- package/build/esm/vercel-ai/index.js.map +1 -1
- package/build/types/index.d.ts +1 -1
- package/build/types/index.d.ts.map +1 -1
- package/build/types/integrations/tracing-channel/dataloader.d.ts.map +1 -1
- package/build/types/integrations/tracing-channel/fastify/index.d.ts +2 -2
- package/build/types/integrations/tracing-channel/fastify/index.d.ts.map +1 -1
- package/build/types/integrations/tracing-channel/fastify/utils.d.ts +1 -1
- package/build/types/integrations/tracing-channel/fastify/utils.d.ts.map +1 -1
- package/build/types/integrations/tracing-channel/firebase/firestore-types.d.ts +38 -0
- package/build/types/integrations/tracing-channel/firebase/firestore-types.d.ts.map +1 -0
- package/build/types/integrations/tracing-channel/firebase/firestore.d.ts +18 -0
- package/build/types/integrations/tracing-channel/firebase/firestore.d.ts.map +1 -0
- package/build/types/integrations/tracing-channel/firebase/functions.d.ts +15 -0
- package/build/types/integrations/tracing-channel/firebase/functions.d.ts.map +1 -0
- package/build/types/integrations/tracing-channel/firebase/index.d.ts +15 -0
- package/build/types/integrations/tracing-channel/firebase/index.d.ts.map +1 -0
- package/build/types/integrations/tracing-channel/firebase/instrumentation.d.ts +2 -0
- package/build/types/integrations/tracing-channel/firebase/instrumentation.d.ts.map +1 -0
- package/build/types/integrations/tracing-channel/vercel-ai.d.ts +1 -5
- package/build/types/integrations/tracing-channel/vercel-ai.d.ts.map +1 -1
- package/build/types/orchestrion/bundler/esbuild.d.ts +2 -3
- package/build/types/orchestrion/bundler/esbuild.d.ts.map +1 -1
- package/build/types/orchestrion/bundler/options.d.ts +34 -0
- package/build/types/orchestrion/bundler/options.d.ts.map +1 -1
- package/build/types/orchestrion/bundler/rollup.d.ts.map +1 -1
- package/build/types/orchestrion/bundler/subscribeInjection.d.ts +13 -0
- package/build/types/orchestrion/bundler/subscribeInjection.d.ts.map +1 -0
- package/build/types/orchestrion/bundler/vite.d.ts.map +1 -1
- package/build/types/orchestrion/bundler/webpack.d.ts +6 -1
- package/build/types/orchestrion/bundler/webpack.d.ts.map +1 -1
- package/build/types/orchestrion/channels.d.ts +15 -0
- package/build/types/orchestrion/channels.d.ts.map +1 -1
- package/build/types/orchestrion/config/amqplib.d.ts +2 -0
- package/build/types/orchestrion/config/amqplib.d.ts.map +1 -1
- package/build/types/orchestrion/config/anthropic-ai.d.ts +2 -0
- package/build/types/orchestrion/config/anthropic-ai.d.ts.map +1 -1
- package/build/types/orchestrion/config/aws-sdk.d.ts +2 -0
- package/build/types/orchestrion/config/aws-sdk.d.ts.map +1 -1
- package/build/types/orchestrion/config/channel-integration-definitions.d.ts +81 -0
- package/build/types/orchestrion/config/channel-integration-definitions.d.ts.map +1 -0
- package/build/types/orchestrion/config/dataloader.d.ts +2 -0
- package/build/types/orchestrion/config/dataloader.d.ts.map +1 -1
- package/build/types/orchestrion/config/express.d.ts +2 -0
- package/build/types/orchestrion/config/express.d.ts.map +1 -1
- package/build/types/orchestrion/config/firebase.d.ts +41 -2
- package/build/types/orchestrion/config/firebase.d.ts.map +1 -1
- package/build/types/orchestrion/config/generic-pool.d.ts +2 -0
- package/build/types/orchestrion/config/generic-pool.d.ts.map +1 -1
- package/build/types/orchestrion/config/google-genai.d.ts +2 -0
- package/build/types/orchestrion/config/google-genai.d.ts.map +1 -1
- package/build/types/orchestrion/config/graphql.d.ts +2 -0
- package/build/types/orchestrion/config/graphql.d.ts.map +1 -1
- package/build/types/orchestrion/config/hapi.d.ts +2 -0
- package/build/types/orchestrion/config/hapi.d.ts.map +1 -1
- package/build/types/orchestrion/config/index.d.ts +12 -0
- package/build/types/orchestrion/config/index.d.ts.map +1 -1
- package/build/types/orchestrion/config/ioredis.d.ts +1 -0
- package/build/types/orchestrion/config/ioredis.d.ts.map +1 -1
- package/build/types/orchestrion/config/kafkajs.d.ts +2 -0
- package/build/types/orchestrion/config/kafkajs.d.ts.map +1 -1
- package/build/types/orchestrion/config/knex.d.ts +1 -0
- package/build/types/orchestrion/config/knex.d.ts.map +1 -1
- package/build/types/orchestrion/config/koa.d.ts +2 -0
- package/build/types/orchestrion/config/koa.d.ts.map +1 -1
- package/build/types/orchestrion/config/langchain.d.ts +2 -0
- package/build/types/orchestrion/config/langchain.d.ts.map +1 -1
- package/build/types/orchestrion/config/langgraph.d.ts +2 -0
- package/build/types/orchestrion/config/langgraph.d.ts.map +1 -1
- package/build/types/orchestrion/config/lru-memoizer.d.ts +2 -0
- package/build/types/orchestrion/config/lru-memoizer.d.ts.map +1 -1
- package/build/types/orchestrion/config/mongodb.d.ts +2 -0
- package/build/types/orchestrion/config/mongodb.d.ts.map +1 -1
- package/build/types/orchestrion/config/mongoose.d.ts +2 -0
- package/build/types/orchestrion/config/mongoose.d.ts.map +1 -1
- package/build/types/orchestrion/config/mysql.d.ts +2 -0
- package/build/types/orchestrion/config/mysql.d.ts.map +1 -1
- package/build/types/orchestrion/config/mysql2.d.ts +2 -0
- package/build/types/orchestrion/config/mysql2.d.ts.map +1 -1
- package/build/types/orchestrion/config/nestjs.d.ts +1 -0
- package/build/types/orchestrion/config/nestjs.d.ts.map +1 -1
- package/build/types/orchestrion/config/openai.d.ts +2 -0
- package/build/types/orchestrion/config/openai.d.ts.map +1 -1
- package/build/types/orchestrion/config/pg.d.ts +2 -0
- package/build/types/orchestrion/config/pg.d.ts.map +1 -1
- package/build/types/orchestrion/config/postgres.d.ts +1 -0
- package/build/types/orchestrion/config/postgres.d.ts.map +1 -1
- package/build/types/orchestrion/config/redis.d.ts +2 -0
- package/build/types/orchestrion/config/redis.d.ts.map +1 -1
- package/build/types/orchestrion/config/remix.d.ts +1 -0
- package/build/types/orchestrion/config/remix.d.ts.map +1 -1
- package/build/types/orchestrion/config/subscribe-injection.d.ts +31 -0
- package/build/types/orchestrion/config/subscribe-injection.d.ts.map +1 -0
- package/build/types/orchestrion/config/tedious.d.ts +1 -0
- package/build/types/orchestrion/config/tedious.d.ts.map +1 -1
- package/build/types/orchestrion/config/vercel-ai.d.ts +1 -0
- package/build/types/orchestrion/config/vercel-ai.d.ts.map +1 -1
- package/build/types/orchestrion/index.d.ts +7 -6
- package/build/types/orchestrion/index.d.ts.map +1 -1
- package/build/types/orchestrion/registerChannelIntegration.d.ts +33 -0
- package/build/types/orchestrion/registerChannelIntegration.d.ts.map +1 -0
- package/build/types/vercel-ai/index.d.ts +2 -3
- package/build/types/vercel-ai/index.d.ts.map +1 -1
- package/build/types-ts3.8/index.d.ts +1 -1
- package/build/types-ts3.8/integrations/tracing-channel/fastify/index.d.ts +2 -2
- package/build/types-ts3.8/integrations/tracing-channel/fastify/utils.d.ts +1 -1
- package/build/types-ts3.8/integrations/tracing-channel/firebase/firestore-types.d.ts +38 -0
- package/build/types-ts3.8/integrations/tracing-channel/firebase/firestore.d.ts +18 -0
- package/build/types-ts3.8/integrations/tracing-channel/firebase/functions.d.ts +15 -0
- package/build/types-ts3.8/integrations/tracing-channel/firebase/index.d.ts +15 -0
- package/build/types-ts3.8/integrations/tracing-channel/firebase/instrumentation.d.ts +2 -0
- package/build/types-ts3.8/integrations/tracing-channel/vercel-ai.d.ts +1 -5
- package/build/types-ts3.8/orchestrion/bundler/esbuild.d.ts +2 -3
- package/build/types-ts3.8/orchestrion/bundler/options.d.ts +34 -0
- package/build/types-ts3.8/orchestrion/bundler/subscribeInjection.d.ts +13 -0
- package/build/types-ts3.8/orchestrion/bundler/webpack.d.ts +6 -1
- package/build/types-ts3.8/orchestrion/channels.d.ts +15 -0
- package/build/types-ts3.8/orchestrion/config/amqplib.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/anthropic-ai.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/aws-sdk.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/channel-integration-definitions.d.ts +139 -0
- package/build/types-ts3.8/orchestrion/config/dataloader.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/express.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/firebase.d.ts +41 -2
- package/build/types-ts3.8/orchestrion/config/generic-pool.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/google-genai.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/graphql.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/hapi.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/index.d.ts +12 -0
- package/build/types-ts3.8/orchestrion/config/ioredis.d.ts +1 -0
- package/build/types-ts3.8/orchestrion/config/kafkajs.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/knex.d.ts +1 -0
- package/build/types-ts3.8/orchestrion/config/koa.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/langchain.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/langgraph.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/lru-memoizer.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/mongodb.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/mongoose.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/mysql.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/mysql2.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/nestjs.d.ts +1 -0
- package/build/types-ts3.8/orchestrion/config/openai.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/pg.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/postgres.d.ts +1 -0
- package/build/types-ts3.8/orchestrion/config/redis.d.ts +2 -0
- package/build/types-ts3.8/orchestrion/config/remix.d.ts +1 -0
- package/build/types-ts3.8/orchestrion/config/subscribe-injection.d.ts +31 -0
- package/build/types-ts3.8/orchestrion/config/tedious.d.ts +1 -0
- package/build/types-ts3.8/orchestrion/config/vercel-ai.d.ts +1 -0
- package/build/types-ts3.8/orchestrion/index.d.ts +7 -6
- package/build/types-ts3.8/orchestrion/registerChannelIntegration.d.ts +33 -0
- package/build/types-ts3.8/vercel-ai/index.d.ts +2 -3
- package/changes.json +7 -3
- package/package.json +11 -6
- package/build/cjs/orchestrion/config/prisma.js +0 -8
- package/build/cjs/orchestrion/config/prisma.js.map +0 -1
- package/build/cjs/orchestrion/config/react-router.js +0 -8
- package/build/cjs/orchestrion/config/react-router.js.map +0 -1
- package/build/esm/orchestrion/config/prisma.js +0 -5
- package/build/esm/orchestrion/config/prisma.js.map +0 -1
- package/build/esm/orchestrion/config/react-router.js +0 -5
- package/build/esm/orchestrion/config/react-router.js.map +0 -1
- package/build/types/orchestrion/config/prisma.d.ts +0 -4
- package/build/types/orchestrion/config/prisma.d.ts.map +0 -1
- package/build/types/orchestrion/config/react-router.d.ts +0 -4
- package/build/types/orchestrion/config/react-router.d.ts.map +0 -1
- package/build/types-ts3.8/orchestrion/config/prisma.d.ts +0 -4
- package/build/types-ts3.8/orchestrion/config/react-router.d.ts +0 -4
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const module$1 = { name: "dataloader", versionRange: ">=2.0.0 <3", filePath: "index.js" };
|
|
2
4
|
const dataloaderConfig = [
|
|
3
5
|
// Wrap the constructor so the subscriber can wrap the user's `batchLoadFn` (arg 0). The batch span
|
|
@@ -45,6 +47,7 @@ const dataloaderChannels = {
|
|
|
45
47
|
DATALOADER_CLEAR: "orchestrion:dataloader:clear",
|
|
46
48
|
DATALOADER_CLEAR_ALL: "orchestrion:dataloader:clearAll"
|
|
47
49
|
};
|
|
50
|
+
const dataloaderSubscribeInjection = toSubscribeInjections(dataloaderConfig);
|
|
48
51
|
|
|
49
|
-
export { dataloaderChannels, dataloaderConfig };
|
|
52
|
+
export { dataloaderChannels, dataloaderConfig, dataloaderSubscribeInjection };
|
|
50
53
|
//# sourceMappingURL=dataloader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataloader.js","sources":["../../../../src/orchestrion/config/dataloader.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\n// `dataloader` ships a single transpiled CommonJS `index.js`. Its class methods are emitted as\n// `_proto.<name> = function <name>() {}` (named function *expressions*), so they match on\n// `expressionName` rather than `methodName`. The constructor is a named function declaration.\n// The version range mirrors `supportedVersions` in the vendored OTel instrumentation.\nconst module = { name: 'dataloader', versionRange: '>=2.0.0 <3', filePath: 'index.js' } as const;\n\nexport const dataloaderConfig = [\n // Wrap the constructor so the subscriber can wrap the user's `batchLoadFn` (arg 0). The batch span\n // is opened when that wrapped function actually runs (on the deferred dispatch tick), mirroring the\n // vendored OTel instrumentation which also wraps `batchLoadFn` at construction time.\n {\n channelName: 'construct',\n module,\n functionQuery: { functionName: 'DataLoader', kind: 'Sync' },\n },\n // `load`/`loadMany` return Promises, so they're `Async`: the span ends on `asyncEnd` (when the\n // load resolves), capturing the real latency and enclosing the deferred `batch` span — matching the\n // vendored OTel `startSpan`. `prime`/`clear`/`clearAll` return `this` synchronously, so they stay `Sync`.\n {\n channelName: 'load',\n module,\n functionQuery: { expressionName: 'load', kind: 'Async' },\n },\n {\n channelName: 'loadMany',\n module,\n functionQuery: { expressionName: 'loadMany', kind: 'Async' },\n },\n {\n channelName: 'prime',\n module,\n functionQuery: { expressionName: 'prime', kind: 'Sync' },\n },\n {\n channelName: 'clear',\n module,\n functionQuery: { expressionName: 'clear', kind: 'Sync' },\n },\n {\n channelName: 'clearAll',\n module,\n functionQuery: { expressionName: 'clearAll', kind: 'Sync' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const dataloaderChannels = {\n DATALOADER_CONSTRUCT: 'orchestrion:dataloader:construct',\n DATALOADER_LOAD: 'orchestrion:dataloader:load',\n DATALOADER_LOAD_MANY: 'orchestrion:dataloader:loadMany',\n DATALOADER_PRIME: 'orchestrion:dataloader:prime',\n DATALOADER_CLEAR: 'orchestrion:dataloader:clear',\n DATALOADER_CLEAR_ALL: 'orchestrion:dataloader:clearAll',\n} as const;\n"],"names":["module"],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataloader.js","sources":["../../../../src/orchestrion/config/dataloader.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\n// `dataloader` ships a single transpiled CommonJS `index.js`. Its class methods are emitted as\n// `_proto.<name> = function <name>() {}` (named function *expressions*), so they match on\n// `expressionName` rather than `methodName`. The constructor is a named function declaration.\n// The version range mirrors `supportedVersions` in the vendored OTel instrumentation.\nconst module = { name: 'dataloader', versionRange: '>=2.0.0 <3', filePath: 'index.js' } as const;\n\nexport const dataloaderConfig = [\n // Wrap the constructor so the subscriber can wrap the user's `batchLoadFn` (arg 0). The batch span\n // is opened when that wrapped function actually runs (on the deferred dispatch tick), mirroring the\n // vendored OTel instrumentation which also wraps `batchLoadFn` at construction time.\n {\n channelName: 'construct',\n module,\n functionQuery: { functionName: 'DataLoader', kind: 'Sync' },\n },\n // `load`/`loadMany` return Promises, so they're `Async`: the span ends on `asyncEnd` (when the\n // load resolves), capturing the real latency and enclosing the deferred `batch` span — matching the\n // vendored OTel `startSpan`. `prime`/`clear`/`clearAll` return `this` synchronously, so they stay `Sync`.\n {\n channelName: 'load',\n module,\n functionQuery: { expressionName: 'load', kind: 'Async' },\n },\n {\n channelName: 'loadMany',\n module,\n functionQuery: { expressionName: 'loadMany', kind: 'Async' },\n },\n {\n channelName: 'prime',\n module,\n functionQuery: { expressionName: 'prime', kind: 'Sync' },\n },\n {\n channelName: 'clear',\n module,\n functionQuery: { expressionName: 'clear', kind: 'Sync' },\n },\n {\n channelName: 'clearAll',\n module,\n functionQuery: { expressionName: 'clearAll', kind: 'Sync' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const dataloaderChannels = {\n DATALOADER_CONSTRUCT: 'orchestrion:dataloader:construct',\n DATALOADER_LOAD: 'orchestrion:dataloader:load',\n DATALOADER_LOAD_MANY: 'orchestrion:dataloader:loadMany',\n DATALOADER_PRIME: 'orchestrion:dataloader:prime',\n DATALOADER_CLEAR: 'orchestrion:dataloader:clear',\n DATALOADER_CLEAR_ALL: 'orchestrion:dataloader:clearAll',\n} as const;\n\nexport const dataloaderSubscribeInjection = toSubscribeInjections(dataloaderConfig);\n"],"names":["module"],"mappings":";;AAOA,MAAMA,WAAS,EAAE,IAAA,EAAM,cAAc,YAAA,EAAc,YAAA,EAAc,UAAU,UAAA,EAAW;AAE/E,MAAM,gBAAA,GAAmB;AAAA;AAAA;AAAA;AAAA,EAI9B;AAAA,IACE,WAAA,EAAa,WAAA;AAAA,YACbA,QAAA;AAAA,IACA,aAAA,EAAe,EAAE,YAAA,EAAc,YAAA,EAAc,MAAM,MAAA;AAAO,GAC5D;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA,IACE,WAAA,EAAa,MAAA;AAAA,YACbA,QAAA;AAAA,IACA,aAAA,EAAe,EAAE,cAAA,EAAgB,MAAA,EAAQ,MAAM,OAAA;AAAQ,GACzD;AAAA,EACA;AAAA,IACE,WAAA,EAAa,UAAA;AAAA,YACbA,QAAA;AAAA,IACA,aAAA,EAAe,EAAE,cAAA,EAAgB,UAAA,EAAY,MAAM,OAAA;AAAQ,GAC7D;AAAA,EACA;AAAA,IACE,WAAA,EAAa,OAAA;AAAA,YACbA,QAAA;AAAA,IACA,aAAA,EAAe,EAAE,cAAA,EAAgB,OAAA,EAAS,MAAM,MAAA;AAAO,GACzD;AAAA,EACA;AAAA,IACE,WAAA,EAAa,OAAA;AAAA,YACbA,QAAA;AAAA,IACA,aAAA,EAAe,EAAE,cAAA,EAAgB,OAAA,EAAS,MAAM,MAAA;AAAO,GACzD;AAAA,EACA;AAAA,IACE,WAAA,EAAa,UAAA;AAAA,YACbA,QAAA;AAAA,IACA,aAAA,EAAe,EAAE,cAAA,EAAgB,UAAA,EAAY,MAAM,MAAA;AAAO;AAE9D;AAEO,MAAM,kBAAA,GAAqB;AAAA,EAChC,oBAAA,EAAsB,kCAAA;AAAA,EACtB,eAAA,EAAiB,6BAAA;AAAA,EACjB,oBAAA,EAAsB,iCAAA;AAAA,EACtB,gBAAA,EAAkB,8BAAA;AAAA,EAClB,gBAAA,EAAkB,8BAAA;AAAA,EAClB,oBAAA,EAAsB;AACxB;AAEO,MAAM,4BAAA,GAA+B,sBAAsB,gBAAgB;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const expressConfig = [
|
|
2
4
|
// Express funnels every middleware/route handler through a single method on
|
|
3
5
|
// its routing `Layer`, so instrumenting that one method covers the whole
|
|
@@ -69,6 +71,7 @@ const expressChannels = {
|
|
|
69
71
|
EXPRESS_REGISTER: "orchestrion:express:register",
|
|
70
72
|
ROUTER_REGISTER: "orchestrion:router:register"
|
|
71
73
|
};
|
|
74
|
+
const expressSubscribeInjection = toSubscribeInjections(expressConfig);
|
|
72
75
|
|
|
73
|
-
export { expressChannels, expressConfig };
|
|
76
|
+
export { expressChannels, expressConfig, expressSubscribeInjection };
|
|
74
77
|
//# sourceMappingURL=express.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"express.js","sources":["../../../../src/orchestrion/config/express.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\nexport const expressConfig = [\n // Express funnels every middleware/route handler through a single method on\n // its routing `Layer`, so instrumenting that one method covers the whole\n // request pipeline. The `expressChannelIntegration` opens one span per layer\n // invocation. Both are `Layer.prototype.<method> = function <fn>(req, res, next)`\n // prototype assignments (not `class` methods), so `expressionName` (matching\n // the assignment's `left.property.name`) is used. `Callback`: the handler's\n // last argument is `next`, so the transform ends the traced operation when\n // `next` is invoked (and publishes `error` when it's called with an error).\n //\n // Express v4 ships its own router in `express/lib/router/layer.js`.\n {\n channelName: 'handle',\n module: { name: 'express', versionRange: '>=4.0.0 <5', filePath: 'lib/router/layer.js' },\n // v4's method is `Layer.prototype.handle_request = function handle(...)` —\n // match the assigned property name, not the function name.\n functionQuery: { expressionName: 'handle_request', kind: 'Callback' },\n },\n // Express v5 delegates routing to the standalone `router` package.\n {\n channelName: 'handle',\n module: { name: 'router', versionRange: '>=2.0.0 <3', filePath: 'lib/layer.js' },\n functionQuery: { expressionName: 'handleRequest', kind: 'Callback' },\n },\n // Layer *registration* methods. `Router.prototype.route`/`.use` are called\n // once per registered route/middleware (including internally by `app.get`/\n // `app.use`), so subscribing here lets us record each layer's registered path\n // *pattern* — which the handler path (`req.baseUrl`) can't recover for\n // parameterized mounts. `Sync`: these return synchronously and, unlike a\n // handler, `use`'s trailing function argument is a registration payload, not a\n // callback — so `Callback` would misclassify it and never fire `end`.\n //\n // `route` and `use` share one `register` channel because the subscriber handles\n // them identically, saving a channel per module.\n //\n // Express v4 ships its own router in `express/lib/router/index.js`.\n {\n channelName: 'register',\n module: { name: 'express', versionRange: '>=4.0.0 <5', filePath: 'lib/router/index.js' },\n functionQuery: { expressionName: 'route', kind: 'Sync' },\n },\n {\n channelName: 'register',\n module: { name: 'express', versionRange: '>=4.0.0 <5', filePath: 'lib/router/index.js' },\n functionQuery: { expressionName: 'use', kind: 'Sync' },\n },\n // Express v5 delegates routing to the standalone `router` package.\n {\n channelName: 'register',\n module: { name: 'router', versionRange: '>=2.0.0 <3', filePath: 'index.js' },\n functionQuery: { expressionName: 'route', kind: 'Sync' },\n },\n {\n channelName: 'register',\n module: { name: 'router', versionRange: '>=2.0.0 <3', filePath: 'index.js' },\n functionQuery: { expressionName: 'use', kind: 'Sync' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const expressChannels = {\n // Express v4 runs each layer's handler through `Layer.prototype.handle_request`\n // in the `express` module.\n EXPRESS_HANDLE: 'orchestrion:express:handle',\n // Express v5 delegates routing to the standalone `router` package, where the\n // equivalent method is `Layer.prototype.handleRequest`.\n ROUTER_HANDLE: 'orchestrion:router:handle',\n // Layer *registration* (`Router.prototype.route`/`.use`), used to capture each\n // layer's registered path pattern so the matched route can be reconstructed\n // with its parameters intact (`req.baseUrl` only exposes the resolved prefix).\n EXPRESS_REGISTER: 'orchestrion:express:register',\n ROUTER_REGISTER: 'orchestrion:router:register',\n} as const;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"express.js","sources":["../../../../src/orchestrion/config/express.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\nexport const expressConfig = [\n // Express funnels every middleware/route handler through a single method on\n // its routing `Layer`, so instrumenting that one method covers the whole\n // request pipeline. The `expressChannelIntegration` opens one span per layer\n // invocation. Both are `Layer.prototype.<method> = function <fn>(req, res, next)`\n // prototype assignments (not `class` methods), so `expressionName` (matching\n // the assignment's `left.property.name`) is used. `Callback`: the handler's\n // last argument is `next`, so the transform ends the traced operation when\n // `next` is invoked (and publishes `error` when it's called with an error).\n //\n // Express v4 ships its own router in `express/lib/router/layer.js`.\n {\n channelName: 'handle',\n module: { name: 'express', versionRange: '>=4.0.0 <5', filePath: 'lib/router/layer.js' },\n // v4's method is `Layer.prototype.handle_request = function handle(...)` —\n // match the assigned property name, not the function name.\n functionQuery: { expressionName: 'handle_request', kind: 'Callback' },\n },\n // Express v5 delegates routing to the standalone `router` package.\n {\n channelName: 'handle',\n module: { name: 'router', versionRange: '>=2.0.0 <3', filePath: 'lib/layer.js' },\n functionQuery: { expressionName: 'handleRequest', kind: 'Callback' },\n },\n // Layer *registration* methods. `Router.prototype.route`/`.use` are called\n // once per registered route/middleware (including internally by `app.get`/\n // `app.use`), so subscribing here lets us record each layer's registered path\n // *pattern* — which the handler path (`req.baseUrl`) can't recover for\n // parameterized mounts. `Sync`: these return synchronously and, unlike a\n // handler, `use`'s trailing function argument is a registration payload, not a\n // callback — so `Callback` would misclassify it and never fire `end`.\n //\n // `route` and `use` share one `register` channel because the subscriber handles\n // them identically, saving a channel per module.\n //\n // Express v4 ships its own router in `express/lib/router/index.js`.\n {\n channelName: 'register',\n module: { name: 'express', versionRange: '>=4.0.0 <5', filePath: 'lib/router/index.js' },\n functionQuery: { expressionName: 'route', kind: 'Sync' },\n },\n {\n channelName: 'register',\n module: { name: 'express', versionRange: '>=4.0.0 <5', filePath: 'lib/router/index.js' },\n functionQuery: { expressionName: 'use', kind: 'Sync' },\n },\n // Express v5 delegates routing to the standalone `router` package.\n {\n channelName: 'register',\n module: { name: 'router', versionRange: '>=2.0.0 <3', filePath: 'index.js' },\n functionQuery: { expressionName: 'route', kind: 'Sync' },\n },\n {\n channelName: 'register',\n module: { name: 'router', versionRange: '>=2.0.0 <3', filePath: 'index.js' },\n functionQuery: { expressionName: 'use', kind: 'Sync' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const expressChannels = {\n // Express v4 runs each layer's handler through `Layer.prototype.handle_request`\n // in the `express` module.\n EXPRESS_HANDLE: 'orchestrion:express:handle',\n // Express v5 delegates routing to the standalone `router` package, where the\n // equivalent method is `Layer.prototype.handleRequest`.\n ROUTER_HANDLE: 'orchestrion:router:handle',\n // Layer *registration* (`Router.prototype.route`/`.use`), used to capture each\n // layer's registered path pattern so the matched route can be reconstructed\n // with its parameters intact (`req.baseUrl` only exposes the resolved prefix).\n EXPRESS_REGISTER: 'orchestrion:express:register',\n ROUTER_REGISTER: 'orchestrion:router:register',\n} as const;\n\nexport const expressSubscribeInjection = toSubscribeInjections(expressConfig);\n"],"names":[],"mappings":";;AAGO,MAAM,aAAA,GAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAW3B;AAAA,IACE,WAAA,EAAa,QAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,YAAA,EAAc,UAAU,qBAAA,EAAsB;AAAA;AAAA;AAAA,IAGvF,aAAA,EAAe,EAAE,cAAA,EAAgB,gBAAA,EAAkB,MAAM,UAAA;AAAW,GACtE;AAAA;AAAA,EAEA;AAAA,IACE,WAAA,EAAa,QAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,UAAU,YAAA,EAAc,YAAA,EAAc,UAAU,cAAA,EAAe;AAAA,IAC/E,aAAA,EAAe,EAAE,cAAA,EAAgB,eAAA,EAAiB,MAAM,UAAA;AAAW,GACrE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA;AAAA,IACE,WAAA,EAAa,UAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,YAAA,EAAc,UAAU,qBAAA,EAAsB;AAAA,IACvF,aAAA,EAAe,EAAE,cAAA,EAAgB,OAAA,EAAS,MAAM,MAAA;AAAO,GACzD;AAAA,EACA;AAAA,IACE,WAAA,EAAa,UAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,YAAA,EAAc,UAAU,qBAAA,EAAsB;AAAA,IACvF,aAAA,EAAe,EAAE,cAAA,EAAgB,KAAA,EAAO,MAAM,MAAA;AAAO,GACvD;AAAA;AAAA,EAEA;AAAA,IACE,WAAA,EAAa,UAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,UAAU,YAAA,EAAc,YAAA,EAAc,UAAU,UAAA,EAAW;AAAA,IAC3E,aAAA,EAAe,EAAE,cAAA,EAAgB,OAAA,EAAS,MAAM,MAAA;AAAO,GACzD;AAAA,EACA;AAAA,IACE,WAAA,EAAa,UAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,UAAU,YAAA,EAAc,YAAA,EAAc,UAAU,UAAA,EAAW;AAAA,IAC3E,aAAA,EAAe,EAAE,cAAA,EAAgB,KAAA,EAAO,MAAM,MAAA;AAAO;AAEzD;AAEO,MAAM,eAAA,GAAkB;AAAA;AAAA;AAAA,EAG7B,cAAA,EAAgB,4BAAA;AAAA;AAAA;AAAA,EAGhB,aAAA,EAAe,2BAAA;AAAA;AAAA;AAAA;AAAA,EAIf,gBAAA,EAAkB,8BAAA;AAAA,EAClB,eAAA,EAAiB;AACnB;AAEO,MAAM,yBAAA,GAA4B,sBAAsB,aAAa;;;;"}
|
|
@@ -1,5 +1,81 @@
|
|
|
1
|
-
|
|
2
|
-
const firebaseChannels = {};
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
3
2
|
|
|
4
|
-
|
|
3
|
+
const FIRESTORE_VERSION_RANGE = ">=3.0.0 <5";
|
|
4
|
+
const FIRESTORE_FILE = /dist\/lite\/(index|common-[^/]+)\.node\.(cjs\.js|mjs)$/;
|
|
5
|
+
const FIRESTORE_OPERATIONS = [
|
|
6
|
+
{ functionName: "addDoc", channelName: "add-doc" },
|
|
7
|
+
{ functionName: "getDocs", channelName: "get-docs" },
|
|
8
|
+
{ functionName: "setDoc", channelName: "set-doc" },
|
|
9
|
+
{ functionName: "deleteDoc", channelName: "delete-doc" }
|
|
10
|
+
];
|
|
11
|
+
const FUNCTIONS_VERSION_RANGE = ">=6.0.0 <7";
|
|
12
|
+
const FUNCTIONS_TRIGGERS = [
|
|
13
|
+
{ file: "lib/v2/providers/https.js", functionName: "onRequest", channelName: "http-request" },
|
|
14
|
+
{ file: "lib/v2/providers/https.js", functionName: "onCall", channelName: "http-call" },
|
|
15
|
+
{ file: "lib/v2/providers/firestore.js", functionName: "onDocumentCreated", channelName: "firestore-created" },
|
|
16
|
+
{
|
|
17
|
+
file: "lib/v2/providers/firestore.js",
|
|
18
|
+
functionName: "onDocumentCreatedWithAuthContext",
|
|
19
|
+
channelName: "firestore-created"
|
|
20
|
+
},
|
|
21
|
+
{ file: "lib/v2/providers/firestore.js", functionName: "onDocumentUpdated", channelName: "firestore-updated" },
|
|
22
|
+
{
|
|
23
|
+
file: "lib/v2/providers/firestore.js",
|
|
24
|
+
functionName: "onDocumentUpdatedWithAuthContext",
|
|
25
|
+
channelName: "firestore-updated"
|
|
26
|
+
},
|
|
27
|
+
{ file: "lib/v2/providers/firestore.js", functionName: "onDocumentDeleted", channelName: "firestore-deleted" },
|
|
28
|
+
{
|
|
29
|
+
file: "lib/v2/providers/firestore.js",
|
|
30
|
+
functionName: "onDocumentDeletedWithAuthContext",
|
|
31
|
+
channelName: "firestore-deleted"
|
|
32
|
+
},
|
|
33
|
+
{ file: "lib/v2/providers/firestore.js", functionName: "onDocumentWritten", channelName: "firestore-written" },
|
|
34
|
+
{
|
|
35
|
+
file: "lib/v2/providers/firestore.js",
|
|
36
|
+
functionName: "onDocumentWrittenWithAuthContext",
|
|
37
|
+
channelName: "firestore-written"
|
|
38
|
+
},
|
|
39
|
+
{ file: "lib/v2/providers/scheduler.js", functionName: "onSchedule", channelName: "scheduler" },
|
|
40
|
+
{ file: "lib/v2/providers/storage.js", functionName: "onObjectFinalized", channelName: "storage-finalized" },
|
|
41
|
+
{ file: "lib/v2/providers/storage.js", functionName: "onObjectArchived", channelName: "storage-archived" },
|
|
42
|
+
{ file: "lib/v2/providers/storage.js", functionName: "onObjectDeleted", channelName: "storage-deleted" },
|
|
43
|
+
{
|
|
44
|
+
file: "lib/v2/providers/storage.js",
|
|
45
|
+
functionName: "onObjectMetadataUpdated",
|
|
46
|
+
channelName: "storage-metadata-updated"
|
|
47
|
+
}
|
|
48
|
+
];
|
|
49
|
+
const firebaseConfig = [
|
|
50
|
+
...FIRESTORE_OPERATIONS.map(({ functionName, channelName }) => ({
|
|
51
|
+
channelName,
|
|
52
|
+
module: { name: "@firebase/firestore", versionRange: FIRESTORE_VERSION_RANGE, filePath: FIRESTORE_FILE },
|
|
53
|
+
functionQuery: { functionName, kind: "Auto" }
|
|
54
|
+
})),
|
|
55
|
+
...FUNCTIONS_TRIGGERS.map(({ file, functionName, channelName }) => ({
|
|
56
|
+
channelName,
|
|
57
|
+
module: { name: "firebase-functions", versionRange: FUNCTIONS_VERSION_RANGE, filePath: file },
|
|
58
|
+
functionQuery: { functionName, kind: "Sync" }
|
|
59
|
+
}))
|
|
60
|
+
];
|
|
61
|
+
const firebaseChannels = {
|
|
62
|
+
FIREBASE_FIRESTORE_ADD_DOC: "orchestrion:@firebase/firestore:add-doc",
|
|
63
|
+
FIREBASE_FIRESTORE_GET_DOCS: "orchestrion:@firebase/firestore:get-docs",
|
|
64
|
+
FIREBASE_FIRESTORE_SET_DOC: "orchestrion:@firebase/firestore:set-doc",
|
|
65
|
+
FIREBASE_FIRESTORE_DELETE_DOC: "orchestrion:@firebase/firestore:delete-doc",
|
|
66
|
+
FIREBASE_FUNCTIONS_HTTP_REQUEST: "orchestrion:firebase-functions:http-request",
|
|
67
|
+
FIREBASE_FUNCTIONS_HTTP_CALL: "orchestrion:firebase-functions:http-call",
|
|
68
|
+
FIREBASE_FUNCTIONS_FIRESTORE_CREATED: "orchestrion:firebase-functions:firestore-created",
|
|
69
|
+
FIREBASE_FUNCTIONS_FIRESTORE_UPDATED: "orchestrion:firebase-functions:firestore-updated",
|
|
70
|
+
FIREBASE_FUNCTIONS_FIRESTORE_DELETED: "orchestrion:firebase-functions:firestore-deleted",
|
|
71
|
+
FIREBASE_FUNCTIONS_FIRESTORE_WRITTEN: "orchestrion:firebase-functions:firestore-written",
|
|
72
|
+
FIREBASE_FUNCTIONS_SCHEDULER: "orchestrion:firebase-functions:scheduler",
|
|
73
|
+
FIREBASE_FUNCTIONS_STORAGE_FINALIZED: "orchestrion:firebase-functions:storage-finalized",
|
|
74
|
+
FIREBASE_FUNCTIONS_STORAGE_ARCHIVED: "orchestrion:firebase-functions:storage-archived",
|
|
75
|
+
FIREBASE_FUNCTIONS_STORAGE_DELETED: "orchestrion:firebase-functions:storage-deleted",
|
|
76
|
+
FIREBASE_FUNCTIONS_STORAGE_METADATA_UPDATED: "orchestrion:firebase-functions:storage-metadata-updated"
|
|
77
|
+
};
|
|
78
|
+
const firebaseSubscribeInjection = toSubscribeInjections(firebaseConfig);
|
|
79
|
+
|
|
80
|
+
export { firebaseChannels, firebaseConfig, firebaseSubscribeInjection };
|
|
5
81
|
//# sourceMappingURL=firebase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase.js","sources":["../../../../src/orchestrion/config/firebase.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\n//
|
|
1
|
+
{"version":3,"file":"firebase.js","sources":["../../../../src/orchestrion/config/firebase.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\n// firebase 9+ ships firestore as `@firebase/firestore` (matches the OTel integration's range). Only the\n// `lite` SDK exposes the free `addDoc`/`getDocs`/`setDoc`/`deleteDoc` functions we trace, and only the\n// `node` entry points (CJS `require`, ESM `import`) are reachable from `@sentry/node`; the\n// browser/react-native builds are irrelevant here. `addDoc` & co. are top-level `function <name>`\n// declarations, so `functionName` matches; they return promises, so `Auto` settles the span on\n// `asyncEnd`. firebase <12.8 declares them in `index.node.{cjs.js,mjs}`; firebase >=12.8 (firestore\n// >=4.10) moved them into a hash-named shared chunk `common-<hash>.node.{cjs.js,mjs}` — the RegExp\n// matches both, so injection keeps working across the version range without pinning a build hash.\nconst FIRESTORE_VERSION_RANGE = '>=3.0.0 <5';\nconst FIRESTORE_FILE = /dist\\/lite\\/(index|common-[^/]+)\\.node\\.(cjs\\.js|mjs)$/;\nconst FIRESTORE_OPERATIONS = [\n { functionName: 'addDoc', channelName: 'add-doc' },\n { functionName: 'getDocs', channelName: 'get-docs' },\n { functionName: 'setDoc', channelName: 'set-doc' },\n { functionName: 'deleteDoc', channelName: 'delete-doc' },\n] as const;\n\n// firebase-functions v2 (CJS-only). The `onX` provider functions *register* a handler and return a\n// synchronous cloud function, so `Sync` is required — the span itself is opened later, when the handler\n// runs, by rewrapping the handler argument in the channel's `start` (see `./firebase/functions`). One\n// channel per faas trigger so the subscriber knows the trigger type without inspecting arguments.\nconst FUNCTIONS_VERSION_RANGE = '>=6.0.0 <7';\nconst FUNCTIONS_TRIGGERS = [\n { file: 'lib/v2/providers/https.js', functionName: 'onRequest', channelName: 'http-request' },\n { file: 'lib/v2/providers/https.js', functionName: 'onCall', channelName: 'http-call' },\n { file: 'lib/v2/providers/firestore.js', functionName: 'onDocumentCreated', channelName: 'firestore-created' },\n {\n file: 'lib/v2/providers/firestore.js',\n functionName: 'onDocumentCreatedWithAuthContext',\n channelName: 'firestore-created',\n },\n { file: 'lib/v2/providers/firestore.js', functionName: 'onDocumentUpdated', channelName: 'firestore-updated' },\n {\n file: 'lib/v2/providers/firestore.js',\n functionName: 'onDocumentUpdatedWithAuthContext',\n channelName: 'firestore-updated',\n },\n { file: 'lib/v2/providers/firestore.js', functionName: 'onDocumentDeleted', channelName: 'firestore-deleted' },\n {\n file: 'lib/v2/providers/firestore.js',\n functionName: 'onDocumentDeletedWithAuthContext',\n channelName: 'firestore-deleted',\n },\n { file: 'lib/v2/providers/firestore.js', functionName: 'onDocumentWritten', channelName: 'firestore-written' },\n {\n file: 'lib/v2/providers/firestore.js',\n functionName: 'onDocumentWrittenWithAuthContext',\n channelName: 'firestore-written',\n },\n { file: 'lib/v2/providers/scheduler.js', functionName: 'onSchedule', channelName: 'scheduler' },\n { file: 'lib/v2/providers/storage.js', functionName: 'onObjectFinalized', channelName: 'storage-finalized' },\n { file: 'lib/v2/providers/storage.js', functionName: 'onObjectArchived', channelName: 'storage-archived' },\n { file: 'lib/v2/providers/storage.js', functionName: 'onObjectDeleted', channelName: 'storage-deleted' },\n {\n file: 'lib/v2/providers/storage.js',\n functionName: 'onObjectMetadataUpdated',\n channelName: 'storage-metadata-updated',\n },\n] as const;\n\nexport const firebaseConfig = [\n ...FIRESTORE_OPERATIONS.map(({ functionName, channelName }) => ({\n channelName,\n module: { name: '@firebase/firestore', versionRange: FIRESTORE_VERSION_RANGE, filePath: FIRESTORE_FILE },\n functionQuery: { functionName, kind: 'Auto' as const },\n })),\n ...FUNCTIONS_TRIGGERS.map(({ file, functionName, channelName }) => ({\n channelName,\n module: { name: 'firebase-functions', versionRange: FUNCTIONS_VERSION_RANGE, filePath: file },\n functionQuery: { functionName, kind: 'Sync' as const },\n })),\n] satisfies InstrumentationConfig[];\n\nexport const firebaseChannels = {\n FIREBASE_FIRESTORE_ADD_DOC: 'orchestrion:@firebase/firestore:add-doc',\n FIREBASE_FIRESTORE_GET_DOCS: 'orchestrion:@firebase/firestore:get-docs',\n FIREBASE_FIRESTORE_SET_DOC: 'orchestrion:@firebase/firestore:set-doc',\n FIREBASE_FIRESTORE_DELETE_DOC: 'orchestrion:@firebase/firestore:delete-doc',\n FIREBASE_FUNCTIONS_HTTP_REQUEST: 'orchestrion:firebase-functions:http-request',\n FIREBASE_FUNCTIONS_HTTP_CALL: 'orchestrion:firebase-functions:http-call',\n FIREBASE_FUNCTIONS_FIRESTORE_CREATED: 'orchestrion:firebase-functions:firestore-created',\n FIREBASE_FUNCTIONS_FIRESTORE_UPDATED: 'orchestrion:firebase-functions:firestore-updated',\n FIREBASE_FUNCTIONS_FIRESTORE_DELETED: 'orchestrion:firebase-functions:firestore-deleted',\n FIREBASE_FUNCTIONS_FIRESTORE_WRITTEN: 'orchestrion:firebase-functions:firestore-written',\n FIREBASE_FUNCTIONS_SCHEDULER: 'orchestrion:firebase-functions:scheduler',\n FIREBASE_FUNCTIONS_STORAGE_FINALIZED: 'orchestrion:firebase-functions:storage-finalized',\n FIREBASE_FUNCTIONS_STORAGE_ARCHIVED: 'orchestrion:firebase-functions:storage-archived',\n FIREBASE_FUNCTIONS_STORAGE_DELETED: 'orchestrion:firebase-functions:storage-deleted',\n FIREBASE_FUNCTIONS_STORAGE_METADATA_UPDATED: 'orchestrion:firebase-functions:storage-metadata-updated',\n} as const;\n\nexport const firebaseSubscribeInjection = toSubscribeInjections(firebaseConfig);\n"],"names":[],"mappings":";;AAWA,MAAM,uBAAA,GAA0B,YAAA;AAChC,MAAM,cAAA,GAAiB,wDAAA;AACvB,MAAM,oBAAA,GAAuB;AAAA,EAC3B,EAAE,YAAA,EAAc,QAAA,EAAU,WAAA,EAAa,SAAA,EAAU;AAAA,EACjD,EAAE,YAAA,EAAc,SAAA,EAAW,WAAA,EAAa,UAAA,EAAW;AAAA,EACnD,EAAE,YAAA,EAAc,QAAA,EAAU,WAAA,EAAa,SAAA,EAAU;AAAA,EACjD,EAAE,YAAA,EAAc,WAAA,EAAa,WAAA,EAAa,YAAA;AAC5C,CAAA;AAMA,MAAM,uBAAA,GAA0B,YAAA;AAChC,MAAM,kBAAA,GAAqB;AAAA,EACzB,EAAE,IAAA,EAAM,2BAAA,EAA6B,YAAA,EAAc,WAAA,EAAa,aAAa,cAAA,EAAe;AAAA,EAC5F,EAAE,IAAA,EAAM,2BAAA,EAA6B,YAAA,EAAc,QAAA,EAAU,aAAa,WAAA,EAAY;AAAA,EACtF,EAAE,IAAA,EAAM,+BAAA,EAAiC,YAAA,EAAc,mBAAA,EAAqB,aAAa,mBAAA,EAAoB;AAAA,EAC7G;AAAA,IACE,IAAA,EAAM,+BAAA;AAAA,IACN,YAAA,EAAc,kCAAA;AAAA,IACd,WAAA,EAAa;AAAA,GACf;AAAA,EACA,EAAE,IAAA,EAAM,+BAAA,EAAiC,YAAA,EAAc,mBAAA,EAAqB,aAAa,mBAAA,EAAoB;AAAA,EAC7G;AAAA,IACE,IAAA,EAAM,+BAAA;AAAA,IACN,YAAA,EAAc,kCAAA;AAAA,IACd,WAAA,EAAa;AAAA,GACf;AAAA,EACA,EAAE,IAAA,EAAM,+BAAA,EAAiC,YAAA,EAAc,mBAAA,EAAqB,aAAa,mBAAA,EAAoB;AAAA,EAC7G;AAAA,IACE,IAAA,EAAM,+BAAA;AAAA,IACN,YAAA,EAAc,kCAAA;AAAA,IACd,WAAA,EAAa;AAAA,GACf;AAAA,EACA,EAAE,IAAA,EAAM,+BAAA,EAAiC,YAAA,EAAc,mBAAA,EAAqB,aAAa,mBAAA,EAAoB;AAAA,EAC7G;AAAA,IACE,IAAA,EAAM,+BAAA;AAAA,IACN,YAAA,EAAc,kCAAA;AAAA,IACd,WAAA,EAAa;AAAA,GACf;AAAA,EACA,EAAE,IAAA,EAAM,+BAAA,EAAiC,YAAA,EAAc,YAAA,EAAc,aAAa,WAAA,EAAY;AAAA,EAC9F,EAAE,IAAA,EAAM,6BAAA,EAA+B,YAAA,EAAc,mBAAA,EAAqB,aAAa,mBAAA,EAAoB;AAAA,EAC3G,EAAE,IAAA,EAAM,6BAAA,EAA+B,YAAA,EAAc,kBAAA,EAAoB,aAAa,kBAAA,EAAmB;AAAA,EACzG,EAAE,IAAA,EAAM,6BAAA,EAA+B,YAAA,EAAc,iBAAA,EAAmB,aAAa,iBAAA,EAAkB;AAAA,EACvG;AAAA,IACE,IAAA,EAAM,6BAAA;AAAA,IACN,YAAA,EAAc,yBAAA;AAAA,IACd,WAAA,EAAa;AAAA;AAEjB,CAAA;AAEO,MAAM,cAAA,GAAiB;AAAA,EAC5B,GAAG,oBAAA,CAAqB,GAAA,CAAI,CAAC,EAAE,YAAA,EAAc,aAAY,MAAO;AAAA,IAC9D,WAAA;AAAA,IACA,QAAQ,EAAE,IAAA,EAAM,uBAAuB,YAAA,EAAc,uBAAA,EAAyB,UAAU,cAAA,EAAe;AAAA,IACvG,aAAA,EAAe,EAAE,YAAA,EAAc,IAAA,EAAM,MAAA;AAAgB,GACvD,CAAE,CAAA;AAAA,EACF,GAAG,mBAAmB,GAAA,CAAI,CAAC,EAAE,IAAA,EAAM,YAAA,EAAc,aAAY,MAAO;AAAA,IAClE,WAAA;AAAA,IACA,QAAQ,EAAE,IAAA,EAAM,sBAAsB,YAAA,EAAc,uBAAA,EAAyB,UAAU,IAAA,EAAK;AAAA,IAC5F,aAAA,EAAe,EAAE,YAAA,EAAc,IAAA,EAAM,MAAA;AAAgB,GACvD,CAAE;AACJ;AAEO,MAAM,gBAAA,GAAmB;AAAA,EAC9B,0BAAA,EAA4B,yCAAA;AAAA,EAC5B,2BAAA,EAA6B,0CAAA;AAAA,EAC7B,0BAAA,EAA4B,yCAAA;AAAA,EAC5B,6BAAA,EAA+B,4CAAA;AAAA,EAC/B,+BAAA,EAAiC,6CAAA;AAAA,EACjC,4BAAA,EAA8B,0CAAA;AAAA,EAC9B,oCAAA,EAAsC,kDAAA;AAAA,EACtC,oCAAA,EAAsC,kDAAA;AAAA,EACtC,oCAAA,EAAsC,kDAAA;AAAA,EACtC,oCAAA,EAAsC,kDAAA;AAAA,EACtC,4BAAA,EAA8B,0CAAA;AAAA,EAC9B,oCAAA,EAAsC,kDAAA;AAAA,EACtC,mCAAA,EAAqC,iDAAA;AAAA,EACrC,kCAAA,EAAoC,gDAAA;AAAA,EACpC,2CAAA,EAA6C;AAC/C;AAEO,MAAM,0BAAA,GAA6B,sBAAsB,cAAc;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const genericPoolConfig = [
|
|
2
4
|
{
|
|
3
5
|
channelName: "acquire",
|
|
@@ -13,6 +15,7 @@ const genericPoolConfig = [
|
|
|
13
15
|
const genericPoolChannels = {
|
|
14
16
|
GENERIC_POOL_ACQUIRE: "orchestrion:generic-pool:acquire"
|
|
15
17
|
};
|
|
18
|
+
const genericPoolSubscribeInjection = toSubscribeInjections(genericPoolConfig);
|
|
16
19
|
|
|
17
|
-
export { genericPoolChannels, genericPoolConfig };
|
|
20
|
+
export { genericPoolChannels, genericPoolConfig, genericPoolSubscribeInjection };
|
|
18
21
|
//# sourceMappingURL=generic-pool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generic-pool.js","sources":["../../../../src/orchestrion/config/generic-pool.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\n// Two shapes of `acquire`, both publishing to the same `orchestrion:generic-pool:acquire` channel:\n// - v3+: `class Pool { acquire(priority) }` returns a promise, so `kind: 'Auto'` resolves to `wrapPromise`.\n// - v2.4–v3: `Pool.prototype.acquire = function acquire(callback, priority)` is callback-based.\n// Versions before 2.4 assigned an anonymous `acquire` per pool instance (a factory), which a static\n// transform can't target, so they're out of scope (matching how the OTel instrumentation split them).\nexport const genericPoolConfig = [\n {\n channelName: 'acquire',\n module: { name: 'generic-pool', versionRange: '>=3.0.0 <4', filePath: 'lib/Pool.js' },\n functionQuery: { className: 'Pool', methodName: 'acquire', kind: 'Auto' },\n },\n {\n channelName: 'acquire',\n module: { name: 'generic-pool', versionRange: '>=2.4.0 <3', filePath: 'lib/generic-pool.js' },\n functionQuery: { expressionName: 'acquire', kind: 'Callback' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const genericPoolChannels = {\n GENERIC_POOL_ACQUIRE: 'orchestrion:generic-pool:acquire',\n} as const;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generic-pool.js","sources":["../../../../src/orchestrion/config/generic-pool.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\n// Two shapes of `acquire`, both publishing to the same `orchestrion:generic-pool:acquire` channel:\n// - v3+: `class Pool { acquire(priority) }` returns a promise, so `kind: 'Auto'` resolves to `wrapPromise`.\n// - v2.4–v3: `Pool.prototype.acquire = function acquire(callback, priority)` is callback-based.\n// Versions before 2.4 assigned an anonymous `acquire` per pool instance (a factory), which a static\n// transform can't target, so they're out of scope (matching how the OTel instrumentation split them).\nexport const genericPoolConfig = [\n {\n channelName: 'acquire',\n module: { name: 'generic-pool', versionRange: '>=3.0.0 <4', filePath: 'lib/Pool.js' },\n functionQuery: { className: 'Pool', methodName: 'acquire', kind: 'Auto' },\n },\n {\n channelName: 'acquire',\n module: { name: 'generic-pool', versionRange: '>=2.4.0 <3', filePath: 'lib/generic-pool.js' },\n functionQuery: { expressionName: 'acquire', kind: 'Callback' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const genericPoolChannels = {\n GENERIC_POOL_ACQUIRE: 'orchestrion:generic-pool:acquire',\n} as const;\n\nexport const genericPoolSubscribeInjection = toSubscribeInjections(genericPoolConfig);\n"],"names":[],"mappings":";;AAQO,MAAM,iBAAA,GAAoB;AAAA,EAC/B;AAAA,IACE,WAAA,EAAa,SAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,gBAAgB,YAAA,EAAc,YAAA,EAAc,UAAU,aAAA,EAAc;AAAA,IACpF,eAAe,EAAE,SAAA,EAAW,QAAQ,UAAA,EAAY,SAAA,EAAW,MAAM,MAAA;AAAO,GAC1E;AAAA,EACA;AAAA,IACE,WAAA,EAAa,SAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,gBAAgB,YAAA,EAAc,YAAA,EAAc,UAAU,qBAAA,EAAsB;AAAA,IAC5F,aAAA,EAAe,EAAE,cAAA,EAAgB,SAAA,EAAW,MAAM,UAAA;AAAW;AAEjE;AAEO,MAAM,mBAAA,GAAsB;AAAA,EACjC,oBAAA,EAAsB;AACxB;AAEO,MAAM,6BAAA,GAAgC,sBAAsB,iBAAiB;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const NODE_DIST_FILES = ["dist/node/index.js", "dist/node/index.mjs", "dist/node/index.cjs"];
|
|
2
4
|
const googleGenAiConfig = [
|
|
3
5
|
// `generateContent`/`generateContentStream` are arrow properties assigned in the constructor, not class
|
|
@@ -30,6 +32,7 @@ const googleGenAiChannels = {
|
|
|
30
32
|
GOOGLE_GENAI_EMBED_CONTENT: "orchestrion:@google/genai:embed-content",
|
|
31
33
|
GOOGLE_GENAI_CHAT: "orchestrion:@google/genai:chat"
|
|
32
34
|
};
|
|
35
|
+
const googleGenAiSubscribeInjection = toSubscribeInjections(googleGenAiConfig);
|
|
33
36
|
|
|
34
|
-
export { googleGenAiChannels, googleGenAiConfig };
|
|
37
|
+
export { googleGenAiChannels, googleGenAiConfig, googleGenAiSubscribeInjection };
|
|
35
38
|
//# sourceMappingURL=google-genai.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-genai.js","sources":["../../../../src/orchestrion/config/google-genai.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\n// `@google/genai` ships one bundled file per module format and the matcher compares `filePath` exactly,\n// so we list every file the `node` export condition resolves to across the supported range: `index.js`\n// (ESM+CJS for <0.15.0, CJS for <1.1.0), `index.mjs` (ESM for >=0.15.0), and `index.cjs` (CJS for >=1.1.0).\n// A file that doesn't exist in a given version simply never matches, so listing all three is safe.\nconst NODE_DIST_FILES = ['dist/node/index.js', 'dist/node/index.mjs', 'dist/node/index.cjs'];\n\nexport const googleGenAiConfig = [\n // `generateContent`/`generateContentStream` are arrow properties assigned in the constructor, not class\n // methods, so they need `expressionName` rather than `className`/`methodName`.\n ...NODE_DIST_FILES.flatMap(filePath =>\n (['generateContent', 'generateContentStream'] as const).map(expressionName => ({\n channelName: 'generate-content',\n module: { name: '@google/genai', versionRange: '>=0.10.0 <2', filePath },\n functionQuery: { expressionName, kind: 'Auto' as const },\n })),\n ),\n // `embedContent` and the `Chat` methods are real class methods.\n ...NODE_DIST_FILES.map(filePath => ({\n channelName: 'embed-content',\n module: { name: '@google/genai', versionRange: '>=0.10.0 <2', filePath },\n functionQuery: { className: 'Models', methodName: 'embedContent', kind: 'Auto' as const },\n })),\n // `sendMessage`/`sendMessageStream` internally delegate to `Models.generateContent(Stream)`; the\n // subscriber suppresses that nested `generate-content` event so a chat call yields a single span.\n ...NODE_DIST_FILES.flatMap(filePath =>\n (['sendMessage', 'sendMessageStream'] as const).map(methodName => ({\n channelName: 'chat',\n module: { name: '@google/genai', versionRange: '>=0.10.0 <2', filePath },\n functionQuery: { className: 'Chat', methodName, kind: 'Auto' as const },\n })),\n ),\n] satisfies InstrumentationConfig[];\n\nexport const googleGenAiChannels = {\n GOOGLE_GENAI_GENERATE_CONTENT: 'orchestrion:@google/genai:generate-content',\n GOOGLE_GENAI_EMBED_CONTENT: 'orchestrion:@google/genai:embed-content',\n GOOGLE_GENAI_CHAT: 'orchestrion:@google/genai:chat',\n} as const;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"google-genai.js","sources":["../../../../src/orchestrion/config/google-genai.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\n// `@google/genai` ships one bundled file per module format and the matcher compares `filePath` exactly,\n// so we list every file the `node` export condition resolves to across the supported range: `index.js`\n// (ESM+CJS for <0.15.0, CJS for <1.1.0), `index.mjs` (ESM for >=0.15.0), and `index.cjs` (CJS for >=1.1.0).\n// A file that doesn't exist in a given version simply never matches, so listing all three is safe.\nconst NODE_DIST_FILES = ['dist/node/index.js', 'dist/node/index.mjs', 'dist/node/index.cjs'];\n\nexport const googleGenAiConfig = [\n // `generateContent`/`generateContentStream` are arrow properties assigned in the constructor, not class\n // methods, so they need `expressionName` rather than `className`/`methodName`.\n ...NODE_DIST_FILES.flatMap(filePath =>\n (['generateContent', 'generateContentStream'] as const).map(expressionName => ({\n channelName: 'generate-content',\n module: { name: '@google/genai', versionRange: '>=0.10.0 <2', filePath },\n functionQuery: { expressionName, kind: 'Auto' as const },\n })),\n ),\n // `embedContent` and the `Chat` methods are real class methods.\n ...NODE_DIST_FILES.map(filePath => ({\n channelName: 'embed-content',\n module: { name: '@google/genai', versionRange: '>=0.10.0 <2', filePath },\n functionQuery: { className: 'Models', methodName: 'embedContent', kind: 'Auto' as const },\n })),\n // `sendMessage`/`sendMessageStream` internally delegate to `Models.generateContent(Stream)`; the\n // subscriber suppresses that nested `generate-content` event so a chat call yields a single span.\n ...NODE_DIST_FILES.flatMap(filePath =>\n (['sendMessage', 'sendMessageStream'] as const).map(methodName => ({\n channelName: 'chat',\n module: { name: '@google/genai', versionRange: '>=0.10.0 <2', filePath },\n functionQuery: { className: 'Chat', methodName, kind: 'Auto' as const },\n })),\n ),\n] satisfies InstrumentationConfig[];\n\nexport const googleGenAiChannels = {\n GOOGLE_GENAI_GENERATE_CONTENT: 'orchestrion:@google/genai:generate-content',\n GOOGLE_GENAI_EMBED_CONTENT: 'orchestrion:@google/genai:embed-content',\n GOOGLE_GENAI_CHAT: 'orchestrion:@google/genai:chat',\n} as const;\n\nexport const googleGenAiSubscribeInjection = toSubscribeInjections(googleGenAiConfig);\n"],"names":[],"mappings":";;AAOA,MAAM,eAAA,GAAkB,CAAC,oBAAA,EAAsB,qBAAA,EAAuB,qBAAqB,CAAA;AAEpF,MAAM,iBAAA,GAAoB;AAAA;AAAA;AAAA,EAG/B,GAAG,eAAA,CAAgB,OAAA;AAAA,IAAQ,cACxB,CAAC,iBAAA,EAAmB,uBAAuB,CAAA,CAAY,IAAI,CAAA,cAAA,MAAmB;AAAA,MAC7E,WAAA,EAAa,kBAAA;AAAA,MACb,QAAQ,EAAE,IAAA,EAAM,eAAA,EAAiB,YAAA,EAAc,eAAe,QAAA,EAAS;AAAA,MACvE,aAAA,EAAe,EAAE,cAAA,EAAgB,IAAA,EAAM,MAAA;AAAgB,KACzD,CAAE;AAAA,GACJ;AAAA;AAAA,EAEA,GAAG,eAAA,CAAgB,GAAA,CAAI,CAAA,QAAA,MAAa;AAAA,IAClC,WAAA,EAAa,eAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,eAAA,EAAiB,YAAA,EAAc,eAAe,QAAA,EAAS;AAAA,IACvE,eAAe,EAAE,SAAA,EAAW,UAAU,UAAA,EAAY,cAAA,EAAgB,MAAM,MAAA;AAAgB,GAC1F,CAAE,CAAA;AAAA;AAAA;AAAA,EAGF,GAAG,eAAA,CAAgB,OAAA;AAAA,IAAQ,cACxB,CAAC,aAAA,EAAe,mBAAmB,CAAA,CAAY,IAAI,CAAA,UAAA,MAAe;AAAA,MACjE,WAAA,EAAa,MAAA;AAAA,MACb,QAAQ,EAAE,IAAA,EAAM,eAAA,EAAiB,YAAA,EAAc,eAAe,QAAA,EAAS;AAAA,MACvE,eAAe,EAAE,SAAA,EAAW,MAAA,EAAQ,UAAA,EAAY,MAAM,MAAA;AAAgB,KACxE,CAAE;AAAA;AAEN;AAEO,MAAM,mBAAA,GAAsB;AAAA,EACjC,6BAAA,EAA+B,4CAAA;AAAA,EAC/B,0BAAA,EAA4B,yCAAA;AAAA,EAC5B,iBAAA,EAAmB;AACrB;AAEO,MAAM,6BAAA,GAAgC,sBAAsB,iBAAiB;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const graphqlConfig = [
|
|
2
4
|
{
|
|
3
5
|
channelName: "parse",
|
|
@@ -20,6 +22,7 @@ const graphqlChannels = {
|
|
|
20
22
|
GRAPHQL_VALIDATE: "orchestrion:graphql:validate",
|
|
21
23
|
GRAPHQL_EXECUTE: "orchestrion:graphql:execute"
|
|
22
24
|
};
|
|
25
|
+
const graphqlSubscribeInjection = toSubscribeInjections(graphqlConfig);
|
|
23
26
|
|
|
24
|
-
export { graphqlChannels, graphqlConfig };
|
|
27
|
+
export { graphqlChannels, graphqlConfig, graphqlSubscribeInjection };
|
|
25
28
|
//# sourceMappingURL=graphql.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql.js","sources":["../../../../src/orchestrion/config/graphql.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\n// `parse`/`validate`/`execute` are top-level named `function` declarations in graphql's compiled\n// files, stable across the supported majors, so `functionName` matches. `execute` returns\n// `PromiseOrValue`, so `Auto` covers both async (settles on `asyncEnd`) and sync (`end`) schemas.\nexport const graphqlConfig = [\n {\n channelName: 'parse',\n module: { name: 'graphql', versionRange: '>=14.0.0 <17', filePath: 'language/parser.js' },\n functionQuery: { functionName: 'parse', kind: 'Sync' },\n },\n {\n channelName: 'validate',\n module: { name: 'graphql', versionRange: '>=14.0.0 <17', filePath: 'validation/validate.js' },\n functionQuery: { functionName: 'validate', kind: 'Sync' },\n },\n {\n channelName: 'execute',\n module: { name: 'graphql', versionRange: '>=14.0.0 <17', filePath: 'execution/execute.js' },\n functionQuery: { functionName: 'execute', kind: 'Auto' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const graphqlChannels = {\n GRAPHQL_PARSE: 'orchestrion:graphql:parse',\n GRAPHQL_VALIDATE: 'orchestrion:graphql:validate',\n GRAPHQL_EXECUTE: 'orchestrion:graphql:execute',\n} as const;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"graphql.js","sources":["../../../../src/orchestrion/config/graphql.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\n// `parse`/`validate`/`execute` are top-level named `function` declarations in graphql's compiled\n// files, stable across the supported majors, so `functionName` matches. `execute` returns\n// `PromiseOrValue`, so `Auto` covers both async (settles on `asyncEnd`) and sync (`end`) schemas.\nexport const graphqlConfig = [\n {\n channelName: 'parse',\n module: { name: 'graphql', versionRange: '>=14.0.0 <17', filePath: 'language/parser.js' },\n functionQuery: { functionName: 'parse', kind: 'Sync' },\n },\n {\n channelName: 'validate',\n module: { name: 'graphql', versionRange: '>=14.0.0 <17', filePath: 'validation/validate.js' },\n functionQuery: { functionName: 'validate', kind: 'Sync' },\n },\n {\n channelName: 'execute',\n module: { name: 'graphql', versionRange: '>=14.0.0 <17', filePath: 'execution/execute.js' },\n functionQuery: { functionName: 'execute', kind: 'Auto' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const graphqlChannels = {\n GRAPHQL_PARSE: 'orchestrion:graphql:parse',\n GRAPHQL_VALIDATE: 'orchestrion:graphql:validate',\n GRAPHQL_EXECUTE: 'orchestrion:graphql:execute',\n} as const;\n\nexport const graphqlSubscribeInjection = toSubscribeInjections(graphqlConfig);\n"],"names":[],"mappings":";;AAMO,MAAM,aAAA,GAAgB;AAAA,EAC3B;AAAA,IACE,WAAA,EAAa,OAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,cAAA,EAAgB,UAAU,oBAAA,EAAqB;AAAA,IACxF,aAAA,EAAe,EAAE,YAAA,EAAc,OAAA,EAAS,MAAM,MAAA;AAAO,GACvD;AAAA,EACA;AAAA,IACE,WAAA,EAAa,UAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,cAAA,EAAgB,UAAU,wBAAA,EAAyB;AAAA,IAC5F,aAAA,EAAe,EAAE,YAAA,EAAc,UAAA,EAAY,MAAM,MAAA;AAAO,GAC1D;AAAA,EACA;AAAA,IACE,WAAA,EAAa,SAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,cAAA,EAAgB,UAAU,sBAAA,EAAuB;AAAA,IAC1F,aAAA,EAAe,EAAE,YAAA,EAAc,SAAA,EAAW,MAAM,MAAA;AAAO;AAE3D;AAEO,MAAM,eAAA,GAAkB;AAAA,EAC7B,aAAA,EAAe,2BAAA;AAAA,EACf,gBAAA,EAAkB,8BAAA;AAAA,EAClB,eAAA,EAAiB;AACnB;AAEO,MAAM,yBAAA,GAA4B,sBAAsB,aAAa;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const hapiConfig = [
|
|
2
4
|
// hapi's `route`/`ext` live on an anonymous class (`internals.Server = class {}`),
|
|
3
5
|
// so `{className}` can't match — `{methodName}` targets them in lib/server.js. Both
|
|
@@ -18,6 +20,7 @@ const hapiChannels = {
|
|
|
18
20
|
HAPI_ROUTE: "orchestrion:@hapi/hapi:route",
|
|
19
21
|
HAPI_EXT: "orchestrion:@hapi/hapi:ext"
|
|
20
22
|
};
|
|
23
|
+
const hapiSubscribeInjection = toSubscribeInjections(hapiConfig);
|
|
21
24
|
|
|
22
|
-
export { hapiChannels, hapiConfig };
|
|
25
|
+
export { hapiChannels, hapiConfig, hapiSubscribeInjection };
|
|
23
26
|
//# sourceMappingURL=hapi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hapi.js","sources":["../../../../src/orchestrion/config/hapi.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\nexport const hapiConfig = [\n // hapi's `route`/`ext` live on an anonymous class (`internals.Server = class {}`),\n // so `{className}` can't match — `{methodName}` targets them in lib/server.js. Both\n // are synchronous void methods, so `Sync` suffices: we only use `start` to swap\n // handlers in `ctx.arguments`. Shape verified across the whole range.\n {\n channelName: 'route',\n module: { name: '@hapi/hapi', versionRange: '>=17.0.0 <22.0.0', filePath: 'lib/server.js' },\n functionQuery: { methodName: 'route', kind: 'Sync' },\n },\n {\n channelName: 'ext',\n module: { name: '@hapi/hapi', versionRange: '>=17.0.0 <22.0.0', filePath: 'lib/server.js' },\n functionQuery: { methodName: 'ext', kind: 'Sync' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const hapiChannels = {\n HAPI_ROUTE: 'orchestrion:@hapi/hapi:route',\n HAPI_EXT: 'orchestrion:@hapi/hapi:ext',\n} as const;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hapi.js","sources":["../../../../src/orchestrion/config/hapi.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\nexport const hapiConfig = [\n // hapi's `route`/`ext` live on an anonymous class (`internals.Server = class {}`),\n // so `{className}` can't match — `{methodName}` targets them in lib/server.js. Both\n // are synchronous void methods, so `Sync` suffices: we only use `start` to swap\n // handlers in `ctx.arguments`. Shape verified across the whole range.\n {\n channelName: 'route',\n module: { name: '@hapi/hapi', versionRange: '>=17.0.0 <22.0.0', filePath: 'lib/server.js' },\n functionQuery: { methodName: 'route', kind: 'Sync' },\n },\n {\n channelName: 'ext',\n module: { name: '@hapi/hapi', versionRange: '>=17.0.0 <22.0.0', filePath: 'lib/server.js' },\n functionQuery: { methodName: 'ext', kind: 'Sync' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const hapiChannels = {\n HAPI_ROUTE: 'orchestrion:@hapi/hapi:route',\n HAPI_EXT: 'orchestrion:@hapi/hapi:ext',\n} as const;\n\nexport const hapiSubscribeInjection = toSubscribeInjections(hapiConfig);\n"],"names":[],"mappings":";;AAGO,MAAM,UAAA,GAAa;AAAA;AAAA;AAAA;AAAA;AAAA,EAKxB;AAAA,IACE,WAAA,EAAa,OAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,cAAc,YAAA,EAAc,kBAAA,EAAoB,UAAU,eAAA,EAAgB;AAAA,IAC1F,aAAA,EAAe,EAAE,UAAA,EAAY,OAAA,EAAS,MAAM,MAAA;AAAO,GACrD;AAAA,EACA;AAAA,IACE,WAAA,EAAa,KAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,cAAc,YAAA,EAAc,kBAAA,EAAoB,UAAU,eAAA,EAAgB;AAAA,IAC1F,aAAA,EAAe,EAAE,UAAA,EAAY,KAAA,EAAO,MAAM,MAAA;AAAO;AAErD;AAEO,MAAM,YAAA,GAAe;AAAA,EAC1B,UAAA,EAAY,8BAAA;AAAA,EACZ,QAAA,EAAU;AACZ;AAEO,MAAM,sBAAA,GAAyB,sBAAsB,UAAU;;;;"}
|
|
@@ -1,35 +1,33 @@
|
|
|
1
1
|
import { uniq } from '@sentry/core';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { dataloaderConfig } from './dataloader.js';
|
|
6
|
-
import { expressConfig } from './express.js';
|
|
7
|
-
import { firebaseConfig } from './firebase.js';
|
|
8
|
-
import { genericPoolConfig } from './generic-pool.js';
|
|
9
|
-
import { googleGenAiConfig } from './google-genai.js';
|
|
10
|
-
import { graphqlConfig } from './graphql.js';
|
|
11
|
-
import { hapiConfig } from './hapi.js';
|
|
12
|
-
import { ioredisConfig } from './ioredis.js';
|
|
13
|
-
import { kafkajsConfig } from './kafkajs.js';
|
|
14
|
-
import { knexConfig } from './knex.js';
|
|
15
|
-
import { koaConfig } from './koa.js';
|
|
16
|
-
import { langchainConfig } from './langchain.js';
|
|
17
|
-
import { langgraphConfig } from './langgraph.js';
|
|
18
|
-
import { lruMemoizerConfig } from './lru-memoizer.js';
|
|
19
|
-
import { mongodbConfig } from './mongodb.js';
|
|
20
|
-
import { mongooseConfig } from './mongoose.js';
|
|
21
|
-
import { mysql2Config } from './mysql2.js';
|
|
22
|
-
import { mysqlConfig } from './mysql.js';
|
|
23
|
-
import { nestjsConfig } from './nestjs.js';
|
|
24
|
-
import { openaiConfig } from './openai.js';
|
|
25
|
-
import { pgConfig } from './pg.js';
|
|
26
|
-
import { postgresJsConfig } from './postgres.js';
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import { tediousConfig } from './tedious.js';
|
|
32
|
-
import { vercelAiConfig } from './vercel-ai.js';
|
|
2
|
+
import { awsSdkConfig, awsSdkSubscribeInjection } from './aws-sdk.js';
|
|
3
|
+
import { amqplibConfig, amqplibSubscribeInjection } from './amqplib.js';
|
|
4
|
+
import { anthropicAiConfig, anthropicAiSubscribeInjection } from './anthropic-ai.js';
|
|
5
|
+
import { dataloaderConfig, dataloaderSubscribeInjection } from './dataloader.js';
|
|
6
|
+
import { expressConfig, expressSubscribeInjection } from './express.js';
|
|
7
|
+
import { firebaseConfig, firebaseSubscribeInjection } from './firebase.js';
|
|
8
|
+
import { genericPoolConfig, genericPoolSubscribeInjection } from './generic-pool.js';
|
|
9
|
+
import { googleGenAiConfig, googleGenAiSubscribeInjection } from './google-genai.js';
|
|
10
|
+
import { graphqlConfig, graphqlSubscribeInjection } from './graphql.js';
|
|
11
|
+
import { hapiConfig, hapiSubscribeInjection } from './hapi.js';
|
|
12
|
+
import { ioredisConfig, ioredisSubscribeInjection } from './ioredis.js';
|
|
13
|
+
import { kafkajsConfig, kafkajsSubscribeInjection } from './kafkajs.js';
|
|
14
|
+
import { knexConfig, knexSubscribeInjection } from './knex.js';
|
|
15
|
+
import { koaConfig, koaSubscribeInjection } from './koa.js';
|
|
16
|
+
import { langchainConfig, langchainSubscribeInjection } from './langchain.js';
|
|
17
|
+
import { langgraphConfig, langgraphSubscribeInjection } from './langgraph.js';
|
|
18
|
+
import { lruMemoizerConfig, lruMemoizerSubscribeInjection } from './lru-memoizer.js';
|
|
19
|
+
import { mongodbConfig, mongodbSubscribeInjection } from './mongodb.js';
|
|
20
|
+
import { mongooseConfig, mongooseSubscribeInjection } from './mongoose.js';
|
|
21
|
+
import { mysql2Config, mysql2SubscribeInjection } from './mysql2.js';
|
|
22
|
+
import { mysqlConfig, mysqlSubscribeInjection } from './mysql.js';
|
|
23
|
+
import { nestjsConfig, nestjsSubscribeInjection } from './nestjs.js';
|
|
24
|
+
import { openaiConfig, openaiSubscribeInjection } from './openai.js';
|
|
25
|
+
import { pgConfig, pgSubscribeInjection } from './pg.js';
|
|
26
|
+
import { postgresJsConfig, postgresJsSubscribeInjection } from './postgres.js';
|
|
27
|
+
import { redisConfig, redisSubscribeInjection } from './redis.js';
|
|
28
|
+
import { remixConfig, remixSubscribeInjection } from './remix.js';
|
|
29
|
+
import { tediousConfig, tediousSubscribeInjection } from './tedious.js';
|
|
30
|
+
import { vercelAiConfig, vercelAiSubscribeInjection } from './vercel-ai.js';
|
|
33
31
|
|
|
34
32
|
const SENTRY_INSTRUMENTATIONS = [
|
|
35
33
|
...amqplibConfig,
|
|
@@ -57,13 +55,42 @@ const SENTRY_INSTRUMENTATIONS = [
|
|
|
57
55
|
...openaiConfig,
|
|
58
56
|
...pgConfig,
|
|
59
57
|
...postgresJsConfig,
|
|
60
|
-
...prismaConfig,
|
|
61
|
-
...reactRouterConfig,
|
|
62
58
|
...redisConfig,
|
|
63
59
|
...remixConfig,
|
|
64
60
|
...tediousConfig,
|
|
65
61
|
...vercelAiConfig
|
|
66
62
|
];
|
|
63
|
+
const SUBSCRIBE_INJECTIONS = [
|
|
64
|
+
...amqplibSubscribeInjection,
|
|
65
|
+
...anthropicAiSubscribeInjection,
|
|
66
|
+
...awsSdkSubscribeInjection,
|
|
67
|
+
...dataloaderSubscribeInjection,
|
|
68
|
+
...expressSubscribeInjection,
|
|
69
|
+
...firebaseSubscribeInjection,
|
|
70
|
+
...genericPoolSubscribeInjection,
|
|
71
|
+
...googleGenAiSubscribeInjection,
|
|
72
|
+
...graphqlSubscribeInjection,
|
|
73
|
+
...hapiSubscribeInjection,
|
|
74
|
+
...ioredisSubscribeInjection,
|
|
75
|
+
...kafkajsSubscribeInjection,
|
|
76
|
+
...knexSubscribeInjection,
|
|
77
|
+
...koaSubscribeInjection,
|
|
78
|
+
...langchainSubscribeInjection,
|
|
79
|
+
...langgraphSubscribeInjection,
|
|
80
|
+
...lruMemoizerSubscribeInjection,
|
|
81
|
+
...mongodbSubscribeInjection,
|
|
82
|
+
...mongooseSubscribeInjection,
|
|
83
|
+
...mysql2SubscribeInjection,
|
|
84
|
+
...mysqlSubscribeInjection,
|
|
85
|
+
...nestjsSubscribeInjection,
|
|
86
|
+
...openaiSubscribeInjection,
|
|
87
|
+
...pgSubscribeInjection,
|
|
88
|
+
...postgresJsSubscribeInjection,
|
|
89
|
+
...redisSubscribeInjection,
|
|
90
|
+
...remixSubscribeInjection,
|
|
91
|
+
...tediousSubscribeInjection,
|
|
92
|
+
...vercelAiSubscribeInjection
|
|
93
|
+
];
|
|
67
94
|
function instrumentedModuleNames(instrumentations = []) {
|
|
68
95
|
return [
|
|
69
96
|
...uniq([...SENTRY_INSTRUMENTATIONS, ...instrumentations].map((i) => i.module.name)),
|
|
@@ -80,5 +107,5 @@ function withoutInstrumentedExternals(external, moduleNames = INSTRUMENTED_MODUL
|
|
|
80
107
|
return external.filter((entry) => !moduleNames.some((name) => entry === name || entry.startsWith(`${name}/`)));
|
|
81
108
|
}
|
|
82
109
|
|
|
83
|
-
export { INSTRUMENTED_MODULE_NAMES, SENTRY_INSTRUMENTATIONS, instrumentedModuleNames, withoutInstrumentedExternals };
|
|
110
|
+
export { INSTRUMENTED_MODULE_NAMES, SENTRY_INSTRUMENTATIONS, SUBSCRIBE_INJECTIONS, instrumentedModuleNames, withoutInstrumentedExternals };
|
|
84
111
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/orchestrion/config/index.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { uniq } from '@sentry/core';\n\nimport {
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/orchestrion/config/index.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { uniq } from '@sentry/core';\n\nimport { awsSdkConfig, awsSdkSubscribeInjection } from './aws-sdk';\nimport { amqplibConfig, amqplibSubscribeInjection } from './amqplib';\nimport { anthropicAiConfig, anthropicAiSubscribeInjection } from './anthropic-ai';\nimport { dataloaderConfig, dataloaderSubscribeInjection } from './dataloader';\nimport { expressConfig, expressSubscribeInjection } from './express';\nimport { firebaseConfig, firebaseSubscribeInjection } from './firebase';\nimport { genericPoolConfig, genericPoolSubscribeInjection } from './generic-pool';\nimport { googleGenAiConfig, googleGenAiSubscribeInjection } from './google-genai';\nimport { graphqlConfig, graphqlSubscribeInjection } from './graphql';\nimport { hapiConfig, hapiSubscribeInjection } from './hapi';\nimport { ioredisConfig, ioredisSubscribeInjection } from './ioredis';\nimport { kafkajsConfig, kafkajsSubscribeInjection } from './kafkajs';\nimport { knexConfig, knexSubscribeInjection } from './knex';\nimport { koaConfig, koaSubscribeInjection } from './koa';\nimport { langchainConfig, langchainSubscribeInjection } from './langchain';\nimport { langgraphConfig, langgraphSubscribeInjection } from './langgraph';\nimport { lruMemoizerConfig, lruMemoizerSubscribeInjection } from './lru-memoizer';\nimport { mongodbConfig, mongodbSubscribeInjection } from './mongodb';\nimport { mongooseConfig, mongooseSubscribeInjection } from './mongoose';\nimport { mysql2Config, mysql2SubscribeInjection } from './mysql2';\nimport { mysqlConfig, mysqlSubscribeInjection } from './mysql';\nimport { nestjsConfig, nestjsSubscribeInjection } from './nestjs';\nimport { openaiConfig, openaiSubscribeInjection } from './openai';\nimport { pgConfig, pgSubscribeInjection } from './pg';\nimport { postgresJsConfig, postgresJsSubscribeInjection } from './postgres';\nimport { redisConfig, redisSubscribeInjection } from './redis';\nimport { remixConfig, remixSubscribeInjection } from './remix';\nimport { tediousConfig, tediousSubscribeInjection } from './tedious';\nimport { vercelAiConfig, vercelAiSubscribeInjection } from './vercel-ai';\n// Kept sorted alphabetically by module so concurrent additions insert at different\n// points rather than all appending to the end (fewer merge conflicts).\n\n/**\n * The orchestrion code-transform configs. Every instrumentable library is here\n * so the transform is all-or-nothing: whenever orchestrion is enabled, all of\n * these are injected. The channel LISTENERS may live elsewhere (e.g. the NestJS\n * one lives in `@sentry/nestjs`), but the config that decides what gets\n * transformed is centralized here.\n */\nexport const SENTRY_INSTRUMENTATIONS: InstrumentationConfig[] = [\n ...amqplibConfig,\n ...anthropicAiConfig,\n ...awsSdkConfig,\n ...dataloaderConfig,\n ...expressConfig,\n ...firebaseConfig,\n ...genericPoolConfig,\n ...googleGenAiConfig,\n ...graphqlConfig,\n ...hapiConfig,\n ...ioredisConfig,\n ...kafkajsConfig,\n ...knexConfig,\n ...koaConfig,\n ...langchainConfig,\n ...langgraphConfig,\n ...lruMemoizerConfig,\n ...mongodbConfig,\n ...mongooseConfig,\n ...mysql2Config,\n ...mysqlConfig,\n ...nestjsConfig,\n ...openaiConfig,\n ...pgConfig,\n ...postgresJsConfig,\n ...redisConfig,\n ...remixConfig,\n ...tediousConfig,\n ...vercelAiConfig,\n];\n\n/**\n * The `Program`-matching injection configs that make each instrumented file\n * self-register its channel subscriber at load (used by bundler-only SDKs like\n * `@sentry/cloudflare`).\n *\n * Deliberately separate from `SENTRY_INSTRUMENTATIONS`: these reference a custom\n * transform that only the opted-in bundler plugin registers, so feeding them to\n * the runtime `--import` hook (which can't register it) would make the\n * code-transformer drop the whole file. Each library owns its own\n * `*SubscribeInjection` (derived from its channel configs), collected here.\n */\nexport const SUBSCRIBE_INJECTIONS: InstrumentationConfig[] = [\n ...amqplibSubscribeInjection,\n ...anthropicAiSubscribeInjection,\n ...awsSdkSubscribeInjection,\n ...dataloaderSubscribeInjection,\n ...expressSubscribeInjection,\n ...firebaseSubscribeInjection,\n ...genericPoolSubscribeInjection,\n ...googleGenAiSubscribeInjection,\n ...graphqlSubscribeInjection,\n ...hapiSubscribeInjection,\n ...ioredisSubscribeInjection,\n ...kafkajsSubscribeInjection,\n ...knexSubscribeInjection,\n ...koaSubscribeInjection,\n ...langchainSubscribeInjection,\n ...langgraphSubscribeInjection,\n ...lruMemoizerSubscribeInjection,\n ...mongodbSubscribeInjection,\n ...mongooseSubscribeInjection,\n ...mysql2SubscribeInjection,\n ...mysqlSubscribeInjection,\n ...nestjsSubscribeInjection,\n ...openaiSubscribeInjection,\n ...pgSubscribeInjection,\n ...postgresJsSubscribeInjection,\n ...redisSubscribeInjection,\n ...remixSubscribeInjection,\n ...tediousSubscribeInjection,\n ...vercelAiSubscribeInjection,\n];\n\n/**\n * The unique set of package names instrumented by `SENTRY_INSTRUMENTATIONS`\n * merged with any caller-provided `instrumentations` (e.g. `['mysql']`).\n *\n * Bundler plugins MUST ensure these are actually bundled rather than\n * externalized: an externalized dependency is resolved from `node_modules` at\n * runtime and never passes through the code transform's `onLoad`, so its\n * diagnostics_channel calls are silently never injected. This includes a\n * plugin's custom `instrumentations`, otherwise those extra packages can stay\n * externalized and their transform never runs.\n */\nexport function instrumentedModuleNames(instrumentations: InstrumentationConfig[] = []): string[] {\n return [\n ...uniq([...SENTRY_INSTRUMENTATIONS, ...instrumentations].map(i => i.module.name)),\n // Additional things that need to be bundled but are not covered by the above\n // Remix needs to bundle this so @remix-run/server-runtime is _also_ bundled\n '@remix-run/node',\n ];\n}\n\n/** The instrumented module names from the default Sentry config, with no custom additions. */\nexport const INSTRUMENTED_MODULE_NAMES: string[] = instrumentedModuleNames();\n\n/**\n * Returns `external` with any instrumented packages removed, so a bundler that\n * uses an \"external\" denylist (esbuild, Bun, Rollup) still bundles — and thus\n * transforms — them. Matches an exact package name (`'mysql'`) or a subpath\n * (`'mysql/lib/...'`); wildcard/other patterns are left untouched. `undefined`\n * is returned unchanged.\n *\n * Pass `moduleNames` from `instrumentedModuleNames(options.instrumentations)` so\n * custom instrumentations are stripped too; it defaults to the Sentry config\n * list. (Vite uses an `ssr.noExternal` allowlist instead, so it consumes\n * `instrumentedModuleNames` directly rather than this helper.)\n */\nexport function withoutInstrumentedExternals(\n external: readonly string[] | undefined,\n moduleNames: string[] = INSTRUMENTED_MODULE_NAMES,\n): string[] | undefined {\n if (!external) {\n return undefined;\n }\n return external.filter(entry => !moduleNames.some(name => entry === name || entry.startsWith(`${name}/`)));\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CO,MAAM,uBAAA,GAAmD;AAAA,EAC9D,GAAG,aAAA;AAAA,EACH,GAAG,iBAAA;AAAA,EACH,GAAG,YAAA;AAAA,EACH,GAAG,gBAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,GAAG,cAAA;AAAA,EACH,GAAG,iBAAA;AAAA,EACH,GAAG,iBAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,GAAG,UAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,GAAG,UAAA;AAAA,EACH,GAAG,SAAA;AAAA,EACH,GAAG,eAAA;AAAA,EACH,GAAG,eAAA;AAAA,EACH,GAAG,iBAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,GAAG,cAAA;AAAA,EACH,GAAG,YAAA;AAAA,EACH,GAAG,WAAA;AAAA,EACH,GAAG,YAAA;AAAA,EACH,GAAG,YAAA;AAAA,EACH,GAAG,QAAA;AAAA,EACH,GAAG,gBAAA;AAAA,EACH,GAAG,WAAA;AAAA,EACH,GAAG,WAAA;AAAA,EACH,GAAG,aAAA;AAAA,EACH,GAAG;AACL;AAaO,MAAM,oBAAA,GAAgD;AAAA,EAC3D,GAAG,yBAAA;AAAA,EACH,GAAG,6BAAA;AAAA,EACH,GAAG,wBAAA;AAAA,EACH,GAAG,4BAAA;AAAA,EACH,GAAG,yBAAA;AAAA,EACH,GAAG,0BAAA;AAAA,EACH,GAAG,6BAAA;AAAA,EACH,GAAG,6BAAA;AAAA,EACH,GAAG,yBAAA;AAAA,EACH,GAAG,sBAAA;AAAA,EACH,GAAG,yBAAA;AAAA,EACH,GAAG,yBAAA;AAAA,EACH,GAAG,sBAAA;AAAA,EACH,GAAG,qBAAA;AAAA,EACH,GAAG,2BAAA;AAAA,EACH,GAAG,2BAAA;AAAA,EACH,GAAG,6BAAA;AAAA,EACH,GAAG,yBAAA;AAAA,EACH,GAAG,0BAAA;AAAA,EACH,GAAG,wBAAA;AAAA,EACH,GAAG,uBAAA;AAAA,EACH,GAAG,wBAAA;AAAA,EACH,GAAG,wBAAA;AAAA,EACH,GAAG,oBAAA;AAAA,EACH,GAAG,4BAAA;AAAA,EACH,GAAG,uBAAA;AAAA,EACH,GAAG,uBAAA;AAAA,EACH,GAAG,yBAAA;AAAA,EACH,GAAG;AACL;AAaO,SAAS,uBAAA,CAAwB,gBAAA,GAA4C,EAAC,EAAa;AAChG,EAAA,OAAO;AAAA,IACL,GAAG,IAAA,CAAK,CAAC,GAAG,uBAAA,EAAyB,GAAG,gBAAgB,CAAA,CAAE,GAAA,CAAI,CAAA,CAAA,KAAK,CAAA,CAAE,MAAA,CAAO,IAAI,CAAC,CAAA;AAAA;AAAA;AAAA,IAGjF;AAAA,GACF;AACF;AAGO,MAAM,4BAAsC,uBAAA;AAc5C,SAAS,4BAAA,CACd,QAAA,EACA,WAAA,GAAwB,yBAAA,EACF;AACtB,EAAA,IAAI,CAAC,QAAA,EAAU;AACb,IAAA,OAAO,MAAA;AAAA,EACT;AACA,EAAA,OAAO,QAAA,CAAS,MAAA,CAAO,CAAA,KAAA,KAAS,CAAC,YAAY,IAAA,CAAK,CAAA,IAAA,KAAQ,KAAA,KAAU,IAAA,IAAQ,MAAM,UAAA,CAAW,CAAA,EAAG,IAAI,CAAA,CAAA,CAAG,CAAC,CAAC,CAAA;AAC3G;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const ioredisConfig = [
|
|
2
4
|
// ioredis `<5.11.0` (>=5.11.0 publishes its own `ioredis:*` diagnostics_channel)
|
|
3
5
|
...["lib/redis.js", "built/redis.js", "built/redis/index.js"].flatMap((filePath) => [
|
|
@@ -27,6 +29,7 @@ const ioredisChannels = {
|
|
|
27
29
|
IOREDIS_COMMAND: "orchestrion:ioredis:command",
|
|
28
30
|
IOREDIS_CONNECT: "orchestrion:ioredis:connect"
|
|
29
31
|
};
|
|
32
|
+
const ioredisSubscribeInjection = toSubscribeInjections(ioredisConfig);
|
|
30
33
|
|
|
31
|
-
export { ioredisChannels, ioredisConfig };
|
|
34
|
+
export { ioredisChannels, ioredisConfig, ioredisSubscribeInjection };
|
|
32
35
|
//# sourceMappingURL=ioredis.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ioredis.js","sources":["../../../../src/orchestrion/config/ioredis.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\nexport const ioredisConfig = [\n // ioredis `<5.11.0` (>=5.11.0 publishes its own `ioredis:*` diagnostics_channel)\n ...['lib/redis.js', 'built/redis.js', 'built/redis/index.js'].flatMap((filePath): InstrumentationConfig[] => [\n {\n channelName: 'command',\n module: { name: 'ioredis', versionRange: '>=2.0.0 <5.0.0', filePath },\n functionQuery: { expressionName: 'sendCommand', kind: 'Async' },\n },\n {\n channelName: 'connect',\n module: { name: 'ioredis', versionRange: '>=2.0.0 <5.0.0', filePath },\n functionQuery: { expressionName: 'connect', kind: 'Async' },\n },\n ]),\n {\n channelName: 'command',\n module: { name: 'ioredis', versionRange: '>=5.0.0 <5.11.0', filePath: 'built/Redis.js' },\n functionQuery: { className: 'Redis', methodName: 'sendCommand', kind: 'Async' },\n },\n {\n channelName: 'connect',\n module: { name: 'ioredis', versionRange: '>=5.0.0 <5.11.0', filePath: 'built/Redis.js' },\n functionQuery: { className: 'Redis', methodName: 'connect', kind: 'Async' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const ioredisChannels = {\n IOREDIS_COMMAND: 'orchestrion:ioredis:command',\n IOREDIS_CONNECT: 'orchestrion:ioredis:connect',\n} as const;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ioredis.js","sources":["../../../../src/orchestrion/config/ioredis.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\nexport const ioredisConfig = [\n // ioredis `<5.11.0` (>=5.11.0 publishes its own `ioredis:*` diagnostics_channel)\n ...['lib/redis.js', 'built/redis.js', 'built/redis/index.js'].flatMap((filePath): InstrumentationConfig[] => [\n {\n channelName: 'command',\n module: { name: 'ioredis', versionRange: '>=2.0.0 <5.0.0', filePath },\n functionQuery: { expressionName: 'sendCommand', kind: 'Async' },\n },\n {\n channelName: 'connect',\n module: { name: 'ioredis', versionRange: '>=2.0.0 <5.0.0', filePath },\n functionQuery: { expressionName: 'connect', kind: 'Async' },\n },\n ]),\n {\n channelName: 'command',\n module: { name: 'ioredis', versionRange: '>=5.0.0 <5.11.0', filePath: 'built/Redis.js' },\n functionQuery: { className: 'Redis', methodName: 'sendCommand', kind: 'Async' },\n },\n {\n channelName: 'connect',\n module: { name: 'ioredis', versionRange: '>=5.0.0 <5.11.0', filePath: 'built/Redis.js' },\n functionQuery: { className: 'Redis', methodName: 'connect', kind: 'Async' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const ioredisChannels = {\n IOREDIS_COMMAND: 'orchestrion:ioredis:command',\n IOREDIS_CONNECT: 'orchestrion:ioredis:connect',\n} as const;\n\nexport const ioredisSubscribeInjection = toSubscribeInjections(ioredisConfig);\n"],"names":[],"mappings":";;AAGO,MAAM,aAAA,GAAgB;AAAA;AAAA,EAE3B,GAAG,CAAC,cAAA,EAAgB,gBAAA,EAAkB,sBAAsB,CAAA,CAAE,OAAA,CAAQ,CAAC,QAAA,KAAsC;AAAA,IAC3G;AAAA,MACE,WAAA,EAAa,SAAA;AAAA,MACb,QAAQ,EAAE,IAAA,EAAM,SAAA,EAAW,YAAA,EAAc,kBAAkB,QAAA,EAAS;AAAA,MACpE,aAAA,EAAe,EAAE,cAAA,EAAgB,aAAA,EAAe,MAAM,OAAA;AAAQ,KAChE;AAAA,IACA;AAAA,MACE,WAAA,EAAa,SAAA;AAAA,MACb,QAAQ,EAAE,IAAA,EAAM,SAAA,EAAW,YAAA,EAAc,kBAAkB,QAAA,EAAS;AAAA,MACpE,aAAA,EAAe,EAAE,cAAA,EAAgB,SAAA,EAAW,MAAM,OAAA;AAAQ;AAC5D,GACD,CAAA;AAAA,EACD;AAAA,IACE,WAAA,EAAa,SAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,iBAAA,EAAmB,UAAU,gBAAA,EAAiB;AAAA,IACvF,eAAe,EAAE,SAAA,EAAW,SAAS,UAAA,EAAY,aAAA,EAAe,MAAM,OAAA;AAAQ,GAChF;AAAA,EACA;AAAA,IACE,WAAA,EAAa,SAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,iBAAA,EAAmB,UAAU,gBAAA,EAAiB;AAAA,IACvF,eAAe,EAAE,SAAA,EAAW,SAAS,UAAA,EAAY,SAAA,EAAW,MAAM,OAAA;AAAQ;AAE9E;AAEO,MAAM,eAAA,GAAkB;AAAA,EAC7B,eAAA,EAAiB,6BAAA;AAAA,EACjB,eAAA,EAAiB;AACnB;AAEO,MAAM,yBAAA,GAA4B,sBAAsB,aAAa;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const kafkajsConfig = [
|
|
2
4
|
{
|
|
3
5
|
channelName: "send_batch",
|
|
@@ -22,6 +24,7 @@ const kafkajsChannels = {
|
|
|
22
24
|
KAFKAJS_SEND_BATCH: "orchestrion:kafkajs:send_batch",
|
|
23
25
|
KAFKAJS_CONSUMER_RUN: "orchestrion:kafkajs:consumer_run"
|
|
24
26
|
};
|
|
27
|
+
const kafkajsSubscribeInjection = toSubscribeInjections(kafkajsConfig);
|
|
25
28
|
|
|
26
|
-
export { kafkajsChannels, kafkajsConfig };
|
|
29
|
+
export { kafkajsChannels, kafkajsConfig, kafkajsSubscribeInjection };
|
|
27
30
|
//# sourceMappingURL=kafkajs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kafkajs.js","sources":["../../../../src/orchestrion/config/kafkajs.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\nexport const kafkajsConfig = [\n {\n channelName: 'send_batch',\n module: { name: 'kafkajs', versionRange: '>=2.0.0 <3', filePath: 'src/producer/messageProducer.js' },\n // `const sendBatch = async (...) => {...}` — `expressionName` matches the `const` assignment.\n // We instrument ONLY `sendBatch`: `send` funnels into it internally, so `producer.send`,\n // `producer.sendBatch` and their transactional variants all flow through this one channel.\n // Instrumenting `send` too would double-count spans.\n functionQuery: { expressionName: 'sendBatch', kind: 'Async' },\n },\n {\n channelName: 'consumer_run',\n module: { name: 'kafkajs', versionRange: '>=2.0.0 <3', filePath: 'src/consumer/index.js' },\n // `const run = async (config) => {...}` — matched by `expressionName`. We don't span `run` itself:\n // the `start` subscriber swaps `config.eachMessage`/`eachBatch` (on `ctx.arguments[0]`) for\n // span-creating wrappers before the original runs. This works because the transform re-reads\n // `ctx.arguments` when invoking the original.\n functionQuery: { expressionName: 'run', kind: 'Async' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const kafkajsChannels = {\n KAFKAJS_SEND_BATCH: 'orchestrion:kafkajs:send_batch',\n KAFKAJS_CONSUMER_RUN: 'orchestrion:kafkajs:consumer_run',\n} as const;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"kafkajs.js","sources":["../../../../src/orchestrion/config/kafkajs.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\nexport const kafkajsConfig = [\n {\n channelName: 'send_batch',\n module: { name: 'kafkajs', versionRange: '>=2.0.0 <3', filePath: 'src/producer/messageProducer.js' },\n // `const sendBatch = async (...) => {...}` — `expressionName` matches the `const` assignment.\n // We instrument ONLY `sendBatch`: `send` funnels into it internally, so `producer.send`,\n // `producer.sendBatch` and their transactional variants all flow through this one channel.\n // Instrumenting `send` too would double-count spans.\n functionQuery: { expressionName: 'sendBatch', kind: 'Async' },\n },\n {\n channelName: 'consumer_run',\n module: { name: 'kafkajs', versionRange: '>=2.0.0 <3', filePath: 'src/consumer/index.js' },\n // `const run = async (config) => {...}` — matched by `expressionName`. We don't span `run` itself:\n // the `start` subscriber swaps `config.eachMessage`/`eachBatch` (on `ctx.arguments[0]`) for\n // span-creating wrappers before the original runs. This works because the transform re-reads\n // `ctx.arguments` when invoking the original.\n functionQuery: { expressionName: 'run', kind: 'Async' },\n },\n] satisfies InstrumentationConfig[];\n\nexport const kafkajsChannels = {\n KAFKAJS_SEND_BATCH: 'orchestrion:kafkajs:send_batch',\n KAFKAJS_CONSUMER_RUN: 'orchestrion:kafkajs:consumer_run',\n} as const;\n\nexport const kafkajsSubscribeInjection = toSubscribeInjections(kafkajsConfig);\n"],"names":[],"mappings":";;AAGO,MAAM,aAAA,GAAgB;AAAA,EAC3B;AAAA,IACE,WAAA,EAAa,YAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,YAAA,EAAc,UAAU,iCAAA,EAAkC;AAAA;AAAA;AAAA;AAAA;AAAA,IAKnG,aAAA,EAAe,EAAE,cAAA,EAAgB,WAAA,EAAa,MAAM,OAAA;AAAQ,GAC9D;AAAA,EACA;AAAA,IACE,WAAA,EAAa,cAAA;AAAA,IACb,QAAQ,EAAE,IAAA,EAAM,WAAW,YAAA,EAAc,YAAA,EAAc,UAAU,uBAAA,EAAwB;AAAA;AAAA;AAAA;AAAA;AAAA,IAKzF,aAAA,EAAe,EAAE,cAAA,EAAgB,KAAA,EAAO,MAAM,OAAA;AAAQ;AAE1D;AAEO,MAAM,eAAA,GAAkB;AAAA,EAC7B,kBAAA,EAAoB,gCAAA;AAAA,EACpB,oBAAA,EAAsB;AACxB;AAEO,MAAM,yBAAA,GAA4B,sBAAsB,aAAa;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const MODULE_NAME = "knex";
|
|
2
4
|
const RUNNER_FILES = [
|
|
3
5
|
{ filePath: "lib/execution/runner.js", versionRange: ">=0.22.0 <4" },
|
|
@@ -35,6 +37,7 @@ const knexChannels = {
|
|
|
35
37
|
KNEX_SCHEMA_BUILDER: "orchestrion:knex:schemaBuilder",
|
|
36
38
|
KNEX_RAW: "orchestrion:knex:raw"
|
|
37
39
|
};
|
|
40
|
+
const knexSubscribeInjection = toSubscribeInjections(knexConfig);
|
|
38
41
|
|
|
39
|
-
export { knexChannels, knexConfig };
|
|
42
|
+
export { knexChannels, knexConfig, knexSubscribeInjection };
|
|
40
43
|
//# sourceMappingURL=knex.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knex.js","sources":["../../../../src/orchestrion/config/knex.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\n\nconst MODULE_NAME = 'knex';\n\n// knex ships different file layouts across versions (see `SUPPORTED_VERSIONS` in the vendored OTel\n// instrumentation). Modern builds keep the runner under `lib/execution`, older ones under `lib`, and\n// the source-tree build under `src`. A file that doesn't exist for a given version simply never\n// matches, so overlapping ranges are safe.\nconst RUNNER_FILES = [\n { filePath: 'lib/execution/runner.js', versionRange: '>=0.22.0 <4' },\n { filePath: 'lib/runner.js', versionRange: '>=0.10.0 <0.22.0' },\n { filePath: 'src/runner.js', versionRange: '>=0.18.0 <0.19.0' },\n];\n\nconst CLIENT_FILES = [\n { filePath: 'lib/client.js', versionRange: '>=0.10.0 <4' },\n { filePath: 'src/client.js', versionRange: '>=0.18.0 <0.19.0' },\n];\n\n// The three `Client` methods that create a builder. Wrapping them lets the subscriber capture the\n// span active at builder-creation time, which is reused as the parent when the query runs later\n// (often in a different async context).\nconst CLIENT_METHODS = ['queryBuilder', 'schemaBuilder', 'raw'] as const;\n\nfunction runnerQuery(filePath: string, versionRange: string): InstrumentationConfig {\n return {\n channelName: 'query',\n module: { name: MODULE_NAME, versionRange, filePath },\n functionQuery: { className: 'Runner', methodName: 'query', kind: 'Async' },\n };\n}\n\nfunction clientMethod(methodName: string, filePath: string, versionRange: string): InstrumentationConfig {\n return {\n channelName: methodName,\n module: { name: MODULE_NAME, versionRange, filePath },\n functionQuery: { className: 'Client', methodName, kind: 'Sync' },\n };\n}\n\nexport const knexConfig: InstrumentationConfig[] = [\n ...RUNNER_FILES.map(({ filePath, versionRange }) => runnerQuery(filePath, versionRange)),\n ...CLIENT_FILES.flatMap(({ filePath, versionRange }) =>\n CLIENT_METHODS.map(methodName => clientMethod(methodName, filePath, versionRange)),\n ),\n];\n\nexport const knexChannels = {\n KNEX_QUERY: 'orchestrion:knex:query',\n KNEX_QUERY_BUILDER: 'orchestrion:knex:queryBuilder',\n KNEX_SCHEMA_BUILDER: 'orchestrion:knex:schemaBuilder',\n KNEX_RAW: 'orchestrion:knex:raw',\n} as const;\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"knex.js","sources":["../../../../src/orchestrion/config/knex.ts"],"sourcesContent":["import type { InstrumentationConfig } from '..';\nimport { toSubscribeInjections } from './subscribe-injection';\n\nconst MODULE_NAME = 'knex';\n\n// knex ships different file layouts across versions (see `SUPPORTED_VERSIONS` in the vendored OTel\n// instrumentation). Modern builds keep the runner under `lib/execution`, older ones under `lib`, and\n// the source-tree build under `src`. A file that doesn't exist for a given version simply never\n// matches, so overlapping ranges are safe.\nconst RUNNER_FILES = [\n { filePath: 'lib/execution/runner.js', versionRange: '>=0.22.0 <4' },\n { filePath: 'lib/runner.js', versionRange: '>=0.10.0 <0.22.0' },\n { filePath: 'src/runner.js', versionRange: '>=0.18.0 <0.19.0' },\n];\n\nconst CLIENT_FILES = [\n { filePath: 'lib/client.js', versionRange: '>=0.10.0 <4' },\n { filePath: 'src/client.js', versionRange: '>=0.18.0 <0.19.0' },\n];\n\n// The three `Client` methods that create a builder. Wrapping them lets the subscriber capture the\n// span active at builder-creation time, which is reused as the parent when the query runs later\n// (often in a different async context).\nconst CLIENT_METHODS = ['queryBuilder', 'schemaBuilder', 'raw'] as const;\n\nfunction runnerQuery(filePath: string, versionRange: string): InstrumentationConfig {\n return {\n channelName: 'query',\n module: { name: MODULE_NAME, versionRange, filePath },\n functionQuery: { className: 'Runner', methodName: 'query', kind: 'Async' },\n };\n}\n\nfunction clientMethod(methodName: string, filePath: string, versionRange: string): InstrumentationConfig {\n return {\n channelName: methodName,\n module: { name: MODULE_NAME, versionRange, filePath },\n functionQuery: { className: 'Client', methodName, kind: 'Sync' },\n };\n}\n\nexport const knexConfig: InstrumentationConfig[] = [\n ...RUNNER_FILES.map(({ filePath, versionRange }) => runnerQuery(filePath, versionRange)),\n ...CLIENT_FILES.flatMap(({ filePath, versionRange }) =>\n CLIENT_METHODS.map(methodName => clientMethod(methodName, filePath, versionRange)),\n ),\n];\n\nexport const knexChannels = {\n KNEX_QUERY: 'orchestrion:knex:query',\n KNEX_QUERY_BUILDER: 'orchestrion:knex:queryBuilder',\n KNEX_SCHEMA_BUILDER: 'orchestrion:knex:schemaBuilder',\n KNEX_RAW: 'orchestrion:knex:raw',\n} as const;\n\nexport const knexSubscribeInjection = toSubscribeInjections(knexConfig);\n"],"names":[],"mappings":";;AAGA,MAAM,WAAA,GAAc,MAAA;AAMpB,MAAM,YAAA,GAAe;AAAA,EACnB,EAAE,QAAA,EAAU,yBAAA,EAA2B,YAAA,EAAc,aAAA,EAAc;AAAA,EACnE,EAAE,QAAA,EAAU,eAAA,EAAiB,YAAA,EAAc,kBAAA,EAAmB;AAAA,EAC9D,EAAE,QAAA,EAAU,eAAA,EAAiB,YAAA,EAAc,kBAAA;AAC7C,CAAA;AAEA,MAAM,YAAA,GAAe;AAAA,EACnB,EAAE,QAAA,EAAU,eAAA,EAAiB,YAAA,EAAc,aAAA,EAAc;AAAA,EACzD,EAAE,QAAA,EAAU,eAAA,EAAiB,YAAA,EAAc,kBAAA;AAC7C,CAAA;AAKA,MAAM,cAAA,GAAiB,CAAC,cAAA,EAAgB,eAAA,EAAiB,KAAK,CAAA;AAE9D,SAAS,WAAA,CAAY,UAAkB,YAAA,EAA6C;AAClF,EAAA,OAAO;AAAA,IACL,WAAA,EAAa,OAAA;AAAA,IACb,MAAA,EAAQ,EAAE,IAAA,EAAM,WAAA,EAAa,cAAc,QAAA,EAAS;AAAA,IACpD,eAAe,EAAE,SAAA,EAAW,UAAU,UAAA,EAAY,OAAA,EAAS,MAAM,OAAA;AAAQ,GAC3E;AACF;AAEA,SAAS,YAAA,CAAa,UAAA,EAAoB,QAAA,EAAkB,YAAA,EAA6C;AACvG,EAAA,OAAO;AAAA,IACL,WAAA,EAAa,UAAA;AAAA,IACb,MAAA,EAAQ,EAAE,IAAA,EAAM,WAAA,EAAa,cAAc,QAAA,EAAS;AAAA,IACpD,eAAe,EAAE,SAAA,EAAW,QAAA,EAAU,UAAA,EAAY,MAAM,MAAA;AAAO,GACjE;AACF;AAEO,MAAM,UAAA,GAAsC;AAAA,EACjD,GAAG,YAAA,CAAa,GAAA,CAAI,CAAC,EAAE,QAAA,EAAU,YAAA,EAAa,KAAM,WAAA,CAAY,QAAA,EAAU,YAAY,CAAC,CAAA;AAAA,EACvF,GAAG,YAAA,CAAa,OAAA;AAAA,IAAQ,CAAC,EAAE,QAAA,EAAU,YAAA,EAAa,KAChD,cAAA,CAAe,GAAA,CAAI,CAAA,UAAA,KAAc,YAAA,CAAa,UAAA,EAAY,QAAA,EAAU,YAAY,CAAC;AAAA;AAErF;AAEO,MAAM,YAAA,GAAe;AAAA,EAC1B,UAAA,EAAY,wBAAA;AAAA,EACZ,kBAAA,EAAoB,+BAAA;AAAA,EACpB,mBAAA,EAAqB,gCAAA;AAAA,EACrB,QAAA,EAAU;AACZ;AAEO,MAAM,sBAAA,GAAyB,sBAAsB,UAAU;;;;"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { toSubscribeInjections } from './subscribe-injection.js';
|
|
2
|
+
|
|
1
3
|
const koaConfig = [
|
|
2
4
|
{
|
|
3
5
|
channelName: "use",
|
|
@@ -8,6 +10,7 @@ const koaConfig = [
|
|
|
8
10
|
const koaChannels = {
|
|
9
11
|
KOA_USE: "orchestrion:koa:use"
|
|
10
12
|
};
|
|
13
|
+
const koaSubscribeInjection = toSubscribeInjections(koaConfig);
|
|
11
14
|
|
|
12
|
-
export { koaChannels, koaConfig };
|
|
15
|
+
export { koaChannels, koaConfig, koaSubscribeInjection };
|
|
13
16
|
//# sourceMappingURL=koa.js.map
|