Skip to content

Commit 5310112

Browse files
authored
feat!: Bump to OpenTelemetry v2 (#16872)
This PR * bumps all OpenTelemetry packages to v2 and equivalent (i.e. `0.202.0` for experimental and latest versions for all instrumentations). * removes our vendored express v5 instrumentation in favor of the OpenTelemetry instrumentation * adds polyfills for node utils to vercel-edge * removes the `@sentry/opentelemetry` OpenTelemetry v2 test dev-package as this is now covered by the package itself **Note**: Once this PR is merged, the `develop` branch officially becomes the `v10` branch and any releases for v9 have to happen on the `v9` branch.
1 parent d7766e9 commit 5310112

File tree

96 files changed

+521
-8000
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+521
-8000
lines changed

.size-limit.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,14 +217,23 @@ module.exports = [
217217
gzip: true,
218218
limit: '41 KB',
219219
},
220+
// Node-Core SDK (ESM)
221+
{
222+
name: '@sentry/node-core',
223+
path: 'packages/node-core/build/esm/index.js',
224+
import: createImport('init'),
225+
ignore: [...builtinModules, ...nodePrefixedBuiltinModules],
226+
gzip: true,
227+
limit: '116 KB',
228+
},
220229
// Node SDK (ESM)
221230
{
222231
name: '@sentry/node',
223232
path: 'packages/node/build/esm/index.js',
224233
import: createImport('init'),
225234
ignore: [...builtinModules, ...nodePrefixedBuiltinModules],
226235
gzip: true,
227-
limit: '170 KB',
236+
limit: '144 KB',
228237
},
229238
{
230239
name: '@sentry/node - without tracing',

dev-packages/e2e-tests/test-applications/node-core-express-otel-v2/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@
1616
"@opentelemetry/api": "^1.9.0",
1717
"@opentelemetry/context-async-hooks": "^2.0.0",
1818
"@opentelemetry/core": "^2.0.0",
19-
"@opentelemetry/instrumentation": "^0.202.0",
20-
"@opentelemetry/instrumentation-http": "^0.202.0",
19+
"@opentelemetry/instrumentation": "^0.203.0",
20+
"@opentelemetry/instrumentation-http": "^0.203.0",
2121
"@opentelemetry/resources": "^2.0.0",
2222
"@opentelemetry/sdk-trace-node": "^2.0.0",
23-
"@opentelemetry/semantic-conventions": "^1.30.0",
23+
"@opentelemetry/semantic-conventions": "^1.34.0",
2424
"@types/express": "^4.17.21",
2525
"@types/node": "^18.19.1",
2626
"express": "^4.21.2",

dev-packages/e2e-tests/test-applications/node-express-cjs-preload/tests/server.test.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@ test('Should record a transaction for route with parameters', async ({ request }
6565
data: {
6666
'express.name': 'query',
6767
'express.type': 'middleware',
68-
'http.route': '/',
6968
'sentry.origin': 'auto.http.otel.express',
7069
'sentry.op': 'middleware.express',
7170
},
@@ -84,7 +83,6 @@ test('Should record a transaction for route with parameters', async ({ request }
8483
data: {
8584
'express.name': 'expressInit',
8685
'express.type': 'middleware',
87-
'http.route': '/',
8886
'sentry.origin': 'auto.http.otel.express',
8987
'sentry.op': 'middleware.express',
9088
},

dev-packages/e2e-tests/test-applications/node-express-esm-loader/tests/server.test.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@ test('Should record a transaction for route with parameters', async ({ request }
6565
data: {
6666
'express.name': 'query',
6767
'express.type': 'middleware',
68-
'http.route': '/',
6968
'sentry.origin': 'auto.http.otel.express',
7069
'sentry.op': 'middleware.express',
7170
},
@@ -84,7 +83,6 @@ test('Should record a transaction for route with parameters', async ({ request }
8483
data: {
8584
'express.name': 'expressInit',
8685
'express.type': 'middleware',
87-
'http.route': '/',
8886
'sentry.origin': 'auto.http.otel.express',
8987
'sentry.op': 'middleware.express',
9088
},

dev-packages/e2e-tests/test-applications/node-express-esm-preload/tests/server.test.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@ test('Should record a transaction for route with parameters', async ({ request }
6565
data: {
6666
'express.name': 'query',
6767
'express.type': 'middleware',
68-
'http.route': '/',
6968
'sentry.origin': 'auto.http.otel.express',
7069
'sentry.op': 'middleware.express',
7170
},
@@ -84,7 +83,6 @@ test('Should record a transaction for route with parameters', async ({ request }
8483
data: {
8584
'express.name': 'expressInit',
8685
'express.type': 'middleware',
87-
'http.route': '/',
8886
'sentry.origin': 'auto.http.otel.express',
8987
'sentry.op': 'middleware.express',
9088
},

dev-packages/e2e-tests/test-applications/node-express/tests/transactions.test.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,6 @@ test('Sends an API route transaction', async ({ baseURL }) => {
6666
data: {
6767
'sentry.origin': 'auto.http.otel.express',
6868
'sentry.op': 'middleware.express',
69-
'http.route': '/',
7069
'express.name': 'query',
7170
'express.type': 'middleware',
7271
},
@@ -85,7 +84,6 @@ test('Sends an API route transaction', async ({ baseURL }) => {
8584
data: {
8685
'sentry.origin': 'auto.http.otel.express',
8786
'sentry.op': 'middleware.express',
88-
'http.route': '/',
8987
'express.name': 'expressInit',
9088
'express.type': 'middleware',
9189
},
@@ -144,7 +142,6 @@ test('Sends an API route transaction for an errored route', async ({ baseURL })
144142
data: {
145143
'sentry.origin': 'auto.http.otel.express',
146144
'sentry.op': 'middleware.express',
147-
'http.route': '/',
148145
'express.name': 'query',
149146
'express.type': 'middleware',
150147
},
@@ -163,7 +160,6 @@ test('Sends an API route transaction for an errored route', async ({ baseURL })
163160
data: {
164161
'sentry.origin': 'auto.http.otel.express',
165162
'sentry.op': 'middleware.express',
166-
'http.route': '/',
167163
'express.name': 'expressInit',
168164
'express.type': 'middleware',
169165
},
@@ -192,8 +188,9 @@ test('Sends an API route transaction for an errored route', async ({ baseURL })
192188
parent_span_id: expect.stringMatching(/[a-f0-9]{16}/),
193189
span_id: expect.stringMatching(/[a-f0-9]{16}/),
194190
start_timestamp: expect.any(Number),
195-
status: 'ok',
191+
status: 'unknown_error',
196192
timestamp: expect.any(Number),
197193
trace_id: expect.stringMatching(/[a-f0-9]{32}/),
194+
measurements: {},
198195
});
199196
});

dev-packages/e2e-tests/test-applications/node-otel-custom-sampler/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
},
1313
"dependencies": {
1414
"@opentelemetry/api": "^1.9.0",
15-
"@opentelemetry/sdk-trace-node": "^1.25.1",
15+
"@opentelemetry/sdk-trace-node": "^2.0.0",
1616
"@sentry/node": "latest || *",
1717
"@sentry/opentelemetry": "latest || *",
1818
"@types/express": "4.17.17",

dev-packages/e2e-tests/test-applications/node-otel-custom-sampler/src/instrument.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,9 @@ Sentry.init({
1919

2020
const provider = new NodeTracerProvider({
2121
sampler: new CustomSampler(),
22+
spanProcessors: [new SentrySpanProcessor()],
2223
});
2324

24-
provider.addSpanProcessor(new SentrySpanProcessor());
25-
2625
provider.register({
2726
propagator: new SentryPropagator(),
2827
contextManager: new Sentry.SentryContextManager(),

dev-packages/e2e-tests/test-applications/node-otel-custom-sampler/tests/sampling.test.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ test('Sends a sampled API route transaction', async ({ baseURL }) => {
5050
data: {
5151
'sentry.origin': 'auto.http.otel.express',
5252
'sentry.op': 'middleware.express',
53-
'http.route': '/',
5453
'express.name': 'query',
5554
'express.type': 'middleware',
5655
},
@@ -69,7 +68,6 @@ test('Sends a sampled API route transaction', async ({ baseURL }) => {
6968
data: {
7069
'sentry.origin': 'auto.http.otel.express',
7170
'sentry.op': 'middleware.express',
72-
'http.route': '/',
7371
'express.name': 'expressInit',
7472
'express.type': 'middleware',
7573
},

dev-packages/e2e-tests/test-applications/node-otel-sdk-node/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
"test:assert": "pnpm test"
1212
},
1313
"dependencies": {
14-
"@opentelemetry/sdk-node": "0.52.1",
15-
"@opentelemetry/exporter-trace-otlp-http": "0.52.1",
14+
"@opentelemetry/sdk-node": "0.203.0",
15+
"@opentelemetry/exporter-trace-otlp-http": "0.203.0",
1616
"@sentry/node": "latest || *",
1717
"@types/express": "4.17.17",
1818
"@types/node": "^18.19.1",

0 commit comments

Comments
 (0)