Skip to content

Commit 3b19084

Browse files
authored
chore: stub modules for orchestrion configs, channels (#22195)
As several of us focus on porting integrations to orchestrion, each new addition to the barrel file causes conflicts in all pending PRs. Stub out the remaining TODO instrumentations, and sort them alphabetically, to reduce the incidence of conflicts and allow us to more swiftly get these all landed. Koa, NestJS, and AWS are intentionally *not* included, because PRs are already in progress to instrument those, and so they can fit themselves into the list easily enough once this lands (or this patch can be updated if those land first).
1 parent 8c6358a commit 3b19084

15 files changed

Lines changed: 177 additions & 42 deletions

File tree

Lines changed: 51 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,31 @@
1-
import { mysqlChannels } from './config/mysql';
2-
import { lruMemoizerChannels } from './config/lru-memoizer';
3-
import { ioredisChannels } from './config/ioredis';
4-
import { pgChannels } from './config/pg';
5-
import { postgresJsChannels } from './config/postgres';
6-
import { openaiChannels } from './config/openai';
7-
import { anthropicAiChannels } from './config/anthropic-ai';
8-
import { googleGenAiChannels } from './config/google-genai';
9-
import { vercelAiChannels } from './config/vercel-ai';
101
import { amqplibChannels } from './config/amqplib';
11-
import { hapiChannels } from './config/hapi';
12-
import { redisChannels } from './config/redis';
2+
import { anthropicAiChannels } from './config/anthropic-ai';
3+
import { dataloaderChannels } from './config/dataloader';
134
import { expressChannels } from './config/express';
5+
import { firebaseChannels } from './config/firebase';
6+
import { genericPoolChannels } from './config/generic-pool';
7+
import { googleGenAiChannels } from './config/google-genai';
148
import { graphqlChannels } from './config/graphql';
9+
import { hapiChannels } from './config/hapi';
10+
import { ioredisChannels } from './config/ioredis';
1511
import { kafkajsChannels } from './config/kafkajs';
12+
import { knexChannels } from './config/knex';
13+
import { langchainChannels } from './config/langchain';
14+
import { langgraphChannels } from './config/langgraph';
15+
import { lruMemoizerChannels } from './config/lru-memoizer';
16+
import { mongodbChannels } from './config/mongodb';
17+
import { mongooseChannels } from './config/mongoose';
18+
import { mysqlChannels } from './config/mysql';
19+
import { mysql2Channels } from './config/mysql2';
20+
import { openaiChannels } from './config/openai';
21+
import { pgChannels } from './config/pg';
22+
import { postgresJsChannels } from './config/postgres';
23+
import { prismaChannels } from './config/prisma';
24+
import { reactRouterChannels } from './config/react-router';
25+
import { redisChannels } from './config/redis';
26+
import { remixChannels } from './config/remix';
27+
import { tediousChannels } from './config/tedious';
28+
import { vercelAiChannels } from './config/vercel-ai';
1629

1730
/**
1831
* Fully-qualified `diagnostics_channel` names that orchestrion publishes to.
@@ -26,23 +39,39 @@ import { kafkajsChannels } from './config/kafkajs';
2639
* prefixed string from this map; the config files set only the unprefixed
2740
* suffix in `channelName`. Keeping both pieces in one file is what guarantees
2841
* they don't drift apart and silently stop firing.
42+
*
43+
* Kept sorted alphabetically by module so concurrent additions insert at different
44+
* points rather than all appending to the end (fewer merge conflicts).
2945
*/
3046
export const CHANNELS = {
31-
...mysqlChannels,
32-
...lruMemoizerChannels,
33-
...ioredisChannels,
34-
...pgChannels,
35-
...postgresJsChannels,
36-
...openaiChannels,
37-
...anthropicAiChannels,
38-
...googleGenAiChannels,
39-
...vercelAiChannels,
4047
...amqplibChannels,
41-
...hapiChannels,
42-
...redisChannels,
48+
...anthropicAiChannels,
49+
...dataloaderChannels,
4350
...expressChannels,
51+
...firebaseChannels,
52+
...genericPoolChannels,
53+
...googleGenAiChannels,
4454
...graphqlChannels,
55+
...hapiChannels,
56+
...ioredisChannels,
4557
...kafkajsChannels,
58+
...knexChannels,
59+
...langchainChannels,
60+
...langgraphChannels,
61+
...lruMemoizerChannels,
62+
...mongodbChannels,
63+
...mongooseChannels,
64+
...mysqlChannels,
65+
...mysql2Channels,
66+
...openaiChannels,
67+
...pgChannels,
68+
...postgresJsChannels,
69+
...prismaChannels,
70+
...reactRouterChannels,
71+
...redisChannels,
72+
...remixChannels,
73+
...tediousChannels,
74+
...vercelAiChannels,
4675
} as const;
4776

4877
export type ChannelName = (typeof CHANNELS)[keyof typeof CHANNELS];
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import type { InstrumentationConfig } from '@apm-js-collab/code-transformer';
2+
3+
// TODO: Stub for the `dataloader` orchestrion integration (ports `@opentelemetry/instrumentation-dataloader`).
4+
export const dataloaderConfig: InstrumentationConfig[] = [];
5+
6+
export const dataloaderChannels = {} as const;
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import type { InstrumentationConfig } from '@apm-js-collab/code-transformer';
2+
3+
// TODO: Stub for the `firebase` orchestrion integration (ports `FirebaseInstrumentation`).
4+
export const firebaseConfig: InstrumentationConfig[] = [];
5+
6+
export const firebaseChannels = {} as const;
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import type { InstrumentationConfig } from '@apm-js-collab/code-transformer';
2+
3+
// TODO: Stub for the `generic-pool` orchestrion integration (ports `@opentelemetry/instrumentation-generic-pool`).
4+
export const genericPoolConfig: InstrumentationConfig[] = [];
5+
6+
export const genericPoolChannels = {} as const;

packages/server-utils/src/orchestrion/config/index.ts

Lines changed: 48 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,65 @@
11
import type { InstrumentationConfig } from '@apm-js-collab/code-transformer';
22
import { uniq } from '@sentry/core';
3-
import { mysqlConfig } from './mysql';
4-
import { lruMemoizerConfig } from './lru-memoizer';
3+
import { amqplibConfig } from './amqplib';
4+
import { anthropicAiConfig } from './anthropic-ai';
5+
import { dataloaderConfig } from './dataloader';
6+
import { expressConfig } from './express';
7+
import { firebaseConfig } from './firebase';
8+
import { genericPoolConfig } from './generic-pool';
9+
import { googleGenAiConfig } from './google-genai';
10+
import { graphqlConfig } from './graphql';
11+
import { hapiConfig } from './hapi';
512
import { ioredisConfig } from './ioredis';
13+
import { kafkajsConfig } from './kafkajs';
14+
import { knexConfig } from './knex';
15+
import { langchainConfig } from './langchain';
16+
import { langgraphConfig } from './langgraph';
17+
import { lruMemoizerConfig } from './lru-memoizer';
18+
import { mongodbConfig } from './mongodb';
19+
import { mongooseConfig } from './mongoose';
20+
import { mysqlConfig } from './mysql';
21+
import { mysql2Config } from './mysql2';
622
import { openaiConfig } from './openai';
723
import { pgConfig } from './pg';
824
import { postgresJsConfig } from './postgres';
9-
import { anthropicAiConfig } from './anthropic-ai';
10-
import { googleGenAiConfig } from './google-genai';
11-
import { vercelAiConfig } from './vercel-ai';
12-
import { amqplibConfig } from './amqplib';
13-
import { hapiConfig } from './hapi';
25+
import { prismaConfig } from './prisma';
26+
import { reactRouterConfig } from './react-router';
1427
import { redisConfig } from './redis';
15-
import { expressConfig } from './express';
16-
import { graphqlConfig } from './graphql';
17-
import { kafkajsConfig } from './kafkajs';
28+
import { remixConfig } from './remix';
29+
import { tediousConfig } from './tedious';
30+
import { vercelAiConfig } from './vercel-ai';
1831

32+
// Kept sorted alphabetically by module so concurrent additions insert at different
33+
// points rather than all appending to the end (fewer merge conflicts).
1934
export const SENTRY_INSTRUMENTATIONS: InstrumentationConfig[] = [
20-
...mysqlConfig,
21-
...lruMemoizerConfig,
35+
...amqplibConfig,
36+
...anthropicAiConfig,
37+
...dataloaderConfig,
38+
...expressConfig,
39+
...firebaseConfig,
40+
...genericPoolConfig,
41+
...googleGenAiConfig,
42+
...graphqlConfig,
43+
...hapiConfig,
2244
...ioredisConfig,
45+
...kafkajsConfig,
46+
...knexConfig,
47+
...langchainConfig,
48+
...langgraphConfig,
49+
...lruMemoizerConfig,
50+
...mongodbConfig,
51+
...mongooseConfig,
52+
...mysqlConfig,
53+
...mysql2Config,
2354
...openaiConfig,
2455
...pgConfig,
2556
...postgresJsConfig,
26-
...anthropicAiConfig,
27-
...googleGenAiConfig,
28-
...vercelAiConfig,
29-
...hapiConfig,
30-
...amqplibConfig,
57+
...prismaConfig,
58+
...reactRouterConfig,
3159
...redisConfig,
32-
...expressConfig,
33-
...graphqlConfig,
34-
...kafkajsConfig,
60+
...remixConfig,
61+
...tediousConfig,
62+
...vercelAiConfig,
3563
];
3664

3765
/**
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import type { InstrumentationConfig } from '@apm-js-collab/code-transformer';
2+
3+
// TODO: Stub for the `knex` orchestrion integration (ports `@opentelemetry/instrumentation-knex`).
4+
export const knexConfig: InstrumentationConfig[] = [];
5+
6+
export const knexChannels = {} as const;
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import type { InstrumentationConfig } from '@apm-js-collab/code-transformer';
2+
3+
// TODO: Stub for the `langchain` orchestrion integration (ports `SentryLangChainInstrumentation`).
4+
export const langchainConfig: InstrumentationConfig[] = [];
5+
6+
export const langchainChannels = {} as const;
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import type { InstrumentationConfig } from '@apm-js-collab/code-transformer';
2+
3+
// TODO: Stub for the `langgraph` orchestrion integration (ports `SentryLangGraphInstrumentation`).
4+
export const langgraphConfig: InstrumentationConfig[] = [];
5+
6+
export const langgraphChannels = {} as const;
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import type { InstrumentationConfig } from '@apm-js-collab/code-transformer';
2+
3+
// TODO: Stub for the `mongodb` orchestrion integration (ports `@opentelemetry/instrumentation-mongodb`).
4+
export const mongodbConfig: InstrumentationConfig[] = [];
5+
6+
export const mongodbChannels = {} as const;
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import type { InstrumentationConfig } from '@apm-js-collab/code-transformer';
2+
3+
// TODO: Stub for the `mongoose` orchestrion integration (ports `@opentelemetry/instrumentation-mongoose`).
4+
export const mongooseConfig: InstrumentationConfig[] = [];
5+
6+
export const mongooseChannels = {} as const;

0 commit comments

Comments
 (0)