ref(node): use replaceExports core utility for openai/anthropic client patching #45318
Annotations
10 errors and 6 warnings
|
Run integration tests:
dev-packages/node-integration-tests/utils/assertions.ts#L35
AssertionError: expected { contexts: { …(8) }, …(14) } to match object { event_id: Any<String>, …(5) }
(92 matching properties omitted from actual)
- Expected
+ Received
@@ -1,57 +1,94 @@
{
"event_id": Any<String>,
- "spans": ArrayContaining [
- ObjectContaining {
+ "spans": [
+ {
"data": {
- "gen_ai.embeddings.input": "Embedding test!",
- "gen_ai.operation.name": "embeddings",
- "gen_ai.request.dimensions": 1536,
- "gen_ai.request.encoding_format": "float",
- "gen_ai.request.model": "text-embedding-3-small",
- "gen_ai.response.model": "text-embedding-3-small",
- "gen_ai.system": "openai",
- "gen_ai.usage.input_tokens": 10,
- "gen_ai.usage.total_tokens": 10,
- "sentry.op": "gen_ai.embeddings",
- "sentry.origin": "auto.ai.openai",
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 39749,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 39749,
+ "url": "http://localhost:39749/openai/embeddings",
+ "url.full": "http://localhost:39749/openai/embeddings",
+ "url.path": "/openai/embeddings",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
},
- "description": "embeddings text-embedding-3-small",
- "op": "gen_ai.embeddings",
- "origin": "auto.ai.openai",
+ "description": "POST http://localhost:39749/openai/embeddings",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "fe7379dd6db59f64",
+ "span_id": "85dc1480a2e4e756",
+ "start_timestamp": 1775216641.09,
"status": "ok",
+ "timestamp": 1775216641.1432102,
+ "trace_id": "eb0670f165ab55c6a389f05aa706bac2",
},
- ObjectContaining {
+ {
"data": {
- "gen_ai.embeddings.input": "Error embedding test!",
- "gen_ai.operation.name": "embeddings",
- "gen_ai.request.model": "error-model",
- "gen_ai.system": "openai",
- "sentry.op": "gen_ai.embeddings",
- "sentry.origin": "auto.ai.openai",
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 404,
+ "network.peer.address": "::1",
+ "network.peer.port": 39749,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 39749,
+ "url": "http://localhost:39749/openai/embeddings",
+ "url.full": "http://localhost:39749/openai/embeddings",
+ "url.path": "/openai/embeddings",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
},
- "description": "embeddings error-model",
- "op": "gen_ai.embeddings",
- "origin": "auto.ai.openai",
- "status": "internal_error",
+ "description": "POST http://localhost:39749/openai/embeddings",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "fe7379dd6db59f64",
+ "span_id": "49fa970d25425e9d",
+ "start_timestamp": 1775216641.15,
+ "status": "not_found",
+ "timestamp": 1775216641.1640205,
+ "trace_id": "eb0670f165ab55c6a389f05aa706bac2",
},
- ObjectContaining {
+ {
"data": {
- "gen_ai.embeddings.input": "[\"First input text\",\"Second input text\",\"Third input text\"]",
- "gen_ai.operation.name": "embeddings",
- "gen_ai.request.model": "text-embedding-3-small",
- "gen_ai.response.model": "text-embedding-3-small",
- "gen_ai.system": "openai",
- "ge
|
|
Run integration tests:
dev-packages/node-integration-tests/utils/assertions.ts#L35
AssertionError: expected { contexts: { …(8) }, …(14) } to match object { event_id: Any<String>, …(5) }
(92 matching properties omitted from actual)
- Expected
+ Received
@@ -1,38 +1,94 @@
{
"event_id": Any<String>,
- "spans": ArrayContaining [
- ObjectContaining {
+ "spans": [
+ {
"data": {
- "gen_ai.operation.name": "embeddings",
- "gen_ai.request.dimensions": 1536,
- "gen_ai.request.encoding_format": "float",
- "gen_ai.request.model": "text-embedding-3-small",
- "gen_ai.response.model": "text-embedding-3-small",
- "gen_ai.system": "openai",
- "gen_ai.usage.input_tokens": 10,
- "gen_ai.usage.total_tokens": 10,
- "sentry.op": "gen_ai.embeddings",
- "sentry.origin": "auto.ai.openai",
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 39055,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 39055,
+ "url": "http://localhost:39055/openai/embeddings",
+ "url.full": "http://localhost:39055/openai/embeddings",
+ "url.path": "/openai/embeddings",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
},
- "description": "embeddings text-embedding-3-small",
- "op": "gen_ai.embeddings",
- "origin": "auto.ai.openai",
+ "description": "POST http://localhost:39055/openai/embeddings",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "63f96fb5e57cfebd",
+ "span_id": "cf9e2aac9ab52019",
+ "start_timestamp": 1775216639.356,
"status": "ok",
+ "timestamp": 1775216639.413373,
+ "trace_id": "db1f04bb30fb801da426649f7f0523d7",
},
- ObjectContaining {
+ {
"data": {
- "gen_ai.operation.name": "embeddings",
- "gen_ai.request.model": "error-model",
- "gen_ai.system": "openai",
- "sentry.op": "gen_ai.embeddings",
- "sentry.origin": "auto.ai.openai",
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 404,
+ "network.peer.address": "::1",
+ "network.peer.port": 39055,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 39055,
+ "url": "http://localhost:39055/openai/embeddings",
+ "url.full": "http://localhost:39055/openai/embeddings",
+ "url.path": "/openai/embeddings",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
},
- "description": "embeddings error-model",
- "op": "gen_ai.embeddings",
- "origin": "auto.ai.openai",
- "status": "internal_error",
+ "description": "POST http://localhost:39055/openai/embeddings",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "63f96fb5e57cfebd",
+ "span_id": "3c2cb3f38668563c",
+ "start_timestamp": 1775216639.418,
+ "status": "not_found",
+ "timestamp": 1775216639.4326913,
+ "trace_id": "db1f04bb30fb801da426649f7f0523d7",
+ },
+ {
+ "data": {
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 39055,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 39055,
+ "url": "http://localhost:39055/openai/embedd
|
|
Run integration tests:
dev-packages/node-integration-tests/utils/assertions.ts#L35
AssertionError: expected { contexts: { …(8) }, …(14) } to match object { event_id: Any<String>, …(5) }
(92 matching properties omitted from actual)
- Expected
+ Received
@@ -1,20 +1,297 @@
{
"event_id": Any<String>,
- "spans": ArrayContaining [
- ObjectContaining {
- "data": ObjectContaining {
- "gen_ai.input.messages": Any<String>,
- "gen_ai.response.text": Any<String>,
+ "spans": [
+ {
+ "data": {
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 35675,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 35675,
+ "url": "http://localhost:35675/openai/chat/completions",
+ "url.full": "http://localhost:35675/openai/chat/completions",
+ "url.path": "/openai/chat/completions",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
+ },
+ "description": "POST http://localhost:35675/openai/chat/completions",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "566fa56a2c43c863",
+ "span_id": "a78d0478dceded37",
+ "start_timestamp": 1775216634.754,
+ "status": "ok",
+ "timestamp": 1775216634.7969525,
+ "trace_id": "367c8e98778cbadba5f405c86c99f77d",
+ },
+ {
+ "data": {
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 35675,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 35675,
+ "url": "http://localhost:35675/openai/responses",
+ "url.full": "http://localhost:35675/openai/responses",
+ "url.path": "/openai/responses",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
+ },
+ "description": "POST http://localhost:35675/openai/responses",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "566fa56a2c43c863",
+ "span_id": "7b302bc737ad7c4e",
+ "start_timestamp": 1775216634.801,
+ "status": "ok",
+ "timestamp": 1775216634.8116236,
+ "trace_id": "367c8e98778cbadba5f405c86c99f77d",
+ },
+ {
+ "data": {
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 500,
+ "network.peer.address": "::1",
+ "network.peer.port": 35675,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 35675,
+ "url": "http://localhost:35675/openai/chat/completions",
+ "url.full": "http://localhost:35675/openai/chat/completions",
+ "url.path": "/openai/chat/completions",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
+ },
+ "description": "POST http://localhost:35675/openai/chat/completions",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "566fa56a2c43c863",
+ "span_id": "4f02e0e0399435a8",
+ "start_timestamp": 1775216634.814,
+ "status": "internal_error",
+ "timestamp": 1775216634.821607,
+ "trace_id": "367c8e98778cbadba5f405c86c99f77d",
+ },
+ {
+ "data": {
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 500,
+ "network.peer.addre
|
|
Run integration tests:
dev-packages/node-integration-tests/utils/assertions.ts#L35
AssertionError: expected { contexts: { …(8) }, …(14) } to match object { event_id: Any<String>, …(5) }
(92 matching properties omitted from actual)
- Expected
+ Received
@@ -1,134 +1,297 @@
{
"event_id": Any<String>,
- "spans": ArrayContaining [
- ObjectContaining {
+ "spans": [
+ {
"data": {
- "gen_ai.input.messages": "[{\"role\":\"user\",\"content\":\"What is the capital of France?\"}]",
- "gen_ai.operation.name": "chat",
- "gen_ai.request.model": "gpt-3.5-turbo",
- "gen_ai.request.temperature": 0.7,
- "gen_ai.response.finish_reasons": "[\"stop\"]",
- "gen_ai.response.id": "chatcmpl-mock123",
- "gen_ai.response.model": "gpt-3.5-turbo",
- "gen_ai.response.text": "[\"Hello from OpenAI mock!\"]",
- "gen_ai.system": "openai",
- "gen_ai.system_instructions": "[{\"type\":\"text\",\"content\":\"You are a helpful assistant.\"}]",
- "gen_ai.usage.input_tokens": 10,
- "gen_ai.usage.output_tokens": 15,
- "gen_ai.usage.total_tokens": 25,
- "sentry.op": "gen_ai.chat",
- "sentry.origin": "auto.ai.openai",
- "sentry.sdk_meta.gen_ai.input.messages.original_length": 1,
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 35601,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 35601,
+ "url": "http://localhost:35601/openai/chat/completions",
+ "url.full": "http://localhost:35601/openai/chat/completions",
+ "url.path": "/openai/chat/completions",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
},
- "description": "chat gpt-3.5-turbo",
- "op": "gen_ai.chat",
- "origin": "auto.ai.openai",
+ "description": "POST http://localhost:35601/openai/chat/completions",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "286d9ff6aa2d9ce6",
+ "span_id": "117cdba2a28ed7b6",
+ "start_timestamp": 1775216627.644,
"status": "ok",
+ "timestamp": 1775216627.7010925,
+ "trace_id": "031fd702dc8762ebec145a67c4b829e8",
},
- ObjectContaining {
+ {
"data": {
- "gen_ai.input.messages": "Translate this to French: Hello",
- "gen_ai.operation.name": "chat",
- "gen_ai.request.model": "gpt-3.5-turbo",
- "gen_ai.response.finish_reasons": "[\"completed\"]",
- "gen_ai.response.id": "resp_mock456",
- "gen_ai.response.model": "gpt-3.5-turbo",
- "gen_ai.response.text": "Response to: Translate this to French: Hello",
- "gen_ai.system": "openai",
- "gen_ai.usage.input_tokens": 5,
- "gen_ai.usage.output_tokens": 8,
- "gen_ai.usage.total_tokens": 13,
- "sentry.op": "gen_ai.chat",
- "sentry.origin": "auto.ai.openai",
- "sentry.sdk_meta.gen_ai.input.messages.original_length": 1,
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 35601,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 35601,
+ "url": "http://localhost:35601/openai/responses",
+ "url.full": "http://localhost:35601/openai/responses",
+ "url.path": "/openai/responses",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
},
- "description": "chat gpt-3.5-turbo",
- "op": "gen_ai.chat",
- "origin": "auto.ai.openai",
+ "description":
|
|
Run integration tests:
dev-packages/node-integration-tests/utils/assertions.ts#L35
AssertionError: expected { contexts: { …(8) }, …(14) } to match object { event_id: Any<String>, …(5) }
(92 matching properties omitted from actual)
- Expected
+ Received
@@ -1,116 +1,297 @@
{
"event_id": Any<String>,
- "spans": ArrayContaining [
- ObjectContaining {
+ "spans": [
+ {
"data": {
- "gen_ai.operation.name": "chat",
- "gen_ai.request.model": "gpt-3.5-turbo",
- "gen_ai.request.temperature": 0.7,
- "gen_ai.response.finish_reasons": "[\"stop\"]",
- "gen_ai.response.id": "chatcmpl-mock123",
- "gen_ai.response.model": "gpt-3.5-turbo",
- "gen_ai.system": "openai",
- "gen_ai.usage.input_tokens": 10,
- "gen_ai.usage.output_tokens": 15,
- "gen_ai.usage.total_tokens": 25,
- "sentry.op": "gen_ai.chat",
- "sentry.origin": "auto.ai.openai",
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 35053,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 35053,
+ "url": "http://localhost:35053/openai/chat/completions",
+ "url.full": "http://localhost:35053/openai/chat/completions",
+ "url.path": "/openai/chat/completions",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
},
- "description": "chat gpt-3.5-turbo",
- "op": "gen_ai.chat",
- "origin": "auto.ai.openai",
+ "description": "POST http://localhost:35053/openai/chat/completions",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "e85fdad8134f4622",
+ "span_id": "854b7218f4ee5131",
+ "start_timestamp": 1775216620.125,
"status": "ok",
+ "timestamp": 1775216620.1779182,
+ "trace_id": "2a8959a32289f636cb2abf8669105f01",
},
- ObjectContaining {
+ {
"data": {
- "gen_ai.operation.name": "chat",
- "gen_ai.request.model": "gpt-3.5-turbo",
- "gen_ai.response.finish_reasons": "[\"completed\"]",
- "gen_ai.response.id": "resp_mock456",
- "gen_ai.response.model": "gpt-3.5-turbo",
- "gen_ai.system": "openai",
- "gen_ai.usage.input_tokens": 5,
- "gen_ai.usage.output_tokens": 8,
- "gen_ai.usage.total_tokens": 13,
- "sentry.op": "gen_ai.chat",
- "sentry.origin": "auto.ai.openai",
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 35053,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 35053,
+ "url": "http://localhost:35053/openai/responses",
+ "url.full": "http://localhost:35053/openai/responses",
+ "url.path": "/openai/responses",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "OpenAI/JS 5.18.1",
},
- "description": "chat gpt-3.5-turbo",
- "op": "gen_ai.chat",
- "origin": "auto.ai.openai",
+ "description": "POST http://localhost:35053/openai/responses",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "e85fdad8134f4622",
+ "span_id": "f3e85e8140ba4fe6",
+ "start_timestamp": 1775216620.184,
"status": "ok",
+ "timestamp": 1775216620.1940703,
+ "trace_id": "2a8959a32289f636cb2abf8669105f01",
},
- ObjectContaining {
+ {
"data": {
- "gen_ai.operation.name": "chat",
- "gen_ai.request.model": "error-model",
- "gen_ai.system": "openai",
- "se
|
|
Run integration tests:
dev-packages/node-integration-tests/utils/assertions.ts#L35
AssertionError: expected { contexts: { …(8) }, …(14) } to match object { event_id: Any<String>, …(5) }
(92 matching properties omitted from actual)
- Expected
+ Received
@@ -1,12 +1,36 @@
{
"event_id": Any<String>,
- "spans": ArrayContaining [
- ObjectContaining {
- "data": ObjectContaining {
- "gen_ai.system_instructions": "[{\"type\":\"text\",\"content\":\"You are a helpful assistant\"}]",
+ "spans": [
+ {
+ "data": {
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 45643,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 45643,
+ "url": "http://localhost:45643/anthropic/v1/messages",
+ "url.full": "http://localhost:45643/anthropic/v1/messages",
+ "url.path": "/anthropic/v1/messages",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "Anthropic/JS 0.63.0",
},
+ "description": "POST http://localhost:45643/anthropic/v1/messages",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "0e4635d8816089a2",
+ "span_id": "94b72c838740c991",
+ "start_timestamp": 1775216649.204,
+ "status": "ok",
+ "timestamp": 1775216649.2586935,
+ "trace_id": "16740532d451e2866df3055f2fbfb92c",
},
],
"start_timestamp": Anything,
"timestamp": Anything,
"transaction": "main",
❯ assertSentryTransaction utils/assertions.ts:35:18
❯ expectTransactionEvent utils/runner.ts:748:5
❯ newEnvelope utils/runner.ts:514:15
❯ tryParseEnvelopeFromStdoutLine utils/runner.ts:633:15
❯ Socket.<anonymous> utils/runner.ts:651:15
|
|
Run integration tests:
dev-packages/node-integration-tests/utils/runner.ts#L503
Error: Expected envelope item type 'event' but got 'transaction'.
Item: [{"type":"transaction"},{"contexts":{"trace":{"span_id":"921f7d880c13931f","trace_id":"0492c535188d8020726f4adce987e106","data":{"sentry.source":"custom","sentry.sample_rate":1,"sentry.op":"function","sentry.origin":"manual"},"origin":"manual","op":"function","status":"ok"},"otel":{"resource":{"service.name":"node","service.namespace":"sentry","service.version":"10.47.0","telemetry.sdk.language":"nodejs","telemetry.sdk.name":"opentelemetry","telemetry.sdk.version":"2.6.1"}},"runtime":{"name":"node","version":"v24.14.0"},"app":{"app_start_time":"2026-04-03T11:43:58.380Z","app_memory":124637184,"free_memory":14648373248},"os":{"kernel_version":"6.17.0-1008-azure","name":"Ubuntu Linux","version":"24.04"},"device":{"boot_time":"2026-04-03T11:41:52.441Z","arch":"x64","memory_size":16766443520,"free_memory":14648373248,"processor_count":4,"cpu_description":"AMD EPYC 7763 64-Core Processor","processor_frequency":0},"culture":{"locale":"en-US","timezone":"UTC"},"cloud_resource":{}},"spans":[{"span_id":"e27278e64f54208b","trace_id":"0492c535188d8020726f4adce987e106","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"POST","http.request.method_original":"POST","url.full":"http://localhost:44705/anthropic/v1/messages","url.path":"/anthropic/v1/messages","url.query":"","url.scheme":"http","server.address":"localhost","server.port":44705,"user_agent.original":"Anthropic/JS 0.63.0","network.peer.address":"::1","network.peer.port":44705,"http.response.status_code":200,"url":"http://localhost:44705/anthropic/v1/messages","otel.kind":"CLIENT"},"description":"POST http://localhost:44705/anthropic/v1/messages","parent_span_id":"921f7d880c13931f","start_timestamp":1775216638.948,"timestamp":1775216638.9971511,"status":"ok","op":"http.client","origin":"auto.http.otel.node_fetch"},{"span_id":"0619f6faa4b687ee","trace_id":"0492c535188d8020726f4adce987e106","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"POST","http.request.method_original":"POST","url.full":"http://localhost:44705/anthropic/v1/messages","url.path":"/anthropic/v1/messages","url.query":"","url.scheme":"http","server.address":"localhost","server.port":44705,"user_agent.original":"Anthropic/JS 0.63.0","network.peer.address":"::1","network.peer.port":44705,"http.response.status_code":404,"url":"http://localhost:44705/anthropic/v1/messages","otel.kind":"CLIENT"},"description":"POST http://localhost:44705/anthropic/v1/messages","parent_span_id":"921f7d880c13931f","start_timestamp":1775216639.002,"timestamp":1775216639.0169098,"status":"not_found","op":"http.client","origin":"auto.http.otel.node_fetch"},{"span_id":"ba30a848e6c4b7c2","trace_id":"0492c535188d8020726f4adce987e106","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"POST","http.request.method_original":"POST","url.full":"http://localhost:44705/anthropic/v1/messages/count_tokens","url.path":"/anthropic/v1/messages/count_tokens","url.query":"","url.scheme":"http","server.address":"localhost","server.port":44705,"user_agent.original":"Anthropic/JS 0.63.0","network.peer.address":"::1","network.peer.port":44705,"http.response.status_code":200,"url":"http://localhost:44705/anthropic/v1/messages/count_tokens","otel.kind":"CLIENT"},"description":"POST http://localhost:44705/anthropic/v1/messages/count_tokens","parent_span_id":"921f7d880c13931f","start_timestamp":1775216639.02,"timestamp":1775216639.0351083,"status":"ok","op":"http.client","origin":"auto.http.otel.node_fetch"},{"span_id":"d53236039fc911aa","trace_id":"0492c535188d8020726f4adce987e106","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"GET","http.request.method_original":"GET","url.full":"http://localhost:44705/anthropic/v1/models/claude-3-haiku-20240307","url.path":"/anthropic/v1/models/claude-3-haiku-20240307","url.query":"","url.scheme":"http","server.address":"localhost","server.port":44705,
|
|
Run integration tests:
dev-packages/node-integration-tests/utils/runner.ts#L503
Error: Expected envelope item type 'event' but got 'transaction'.
Item: [{"type":"transaction"},{"contexts":{"trace":{"span_id":"5cec5eb32b58729a","trace_id":"992505dd5e96fdd97d823774432facc0","data":{"sentry.source":"custom","sentry.sample_rate":1,"sentry.op":"function","sentry.origin":"manual"},"origin":"manual","op":"function","status":"ok"},"otel":{"resource":{"service.name":"node","service.namespace":"sentry","service.version":"10.47.0","telemetry.sdk.language":"nodejs","telemetry.sdk.name":"opentelemetry","telemetry.sdk.version":"2.6.1"}},"runtime":{"name":"node","version":"v24.14.0"},"app":{"app_start_time":"2026-04-03T11:43:56.668Z","app_memory":124309504,"free_memory":14611652608},"os":{"kernel_version":"6.17.0-1008-azure","name":"Ubuntu Linux","version":"24.04"},"device":{"boot_time":"2026-04-03T11:41:52.441Z","arch":"x64","memory_size":16766443520,"free_memory":14611652608,"processor_count":4,"cpu_description":"AMD EPYC 7763 64-Core Processor","processor_frequency":0},"culture":{"locale":"en-US","timezone":"UTC"},"cloud_resource":{}},"spans":[{"span_id":"9f8bbb22ce9ff760","trace_id":"992505dd5e96fdd97d823774432facc0","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"POST","http.request.method_original":"POST","url.full":"http://localhost:45087/anthropic/v1/messages","url.path":"/anthropic/v1/messages","url.query":"","url.scheme":"http","server.address":"localhost","server.port":45087,"user_agent.original":"Anthropic/JS 0.63.0","network.peer.address":"::1","network.peer.port":45087,"http.response.status_code":200,"url":"http://localhost:45087/anthropic/v1/messages","otel.kind":"CLIENT"},"description":"POST http://localhost:45087/anthropic/v1/messages","parent_span_id":"5cec5eb32b58729a","start_timestamp":1775216637.1,"timestamp":1775216637.1395066,"status":"ok","op":"http.client","origin":"auto.http.otel.node_fetch"},{"span_id":"fda3d26c3a264ec4","trace_id":"992505dd5e96fdd97d823774432facc0","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"POST","http.request.method_original":"POST","url.full":"http://localhost:45087/anthropic/v1/messages","url.path":"/anthropic/v1/messages","url.query":"","url.scheme":"http","server.address":"localhost","server.port":45087,"user_agent.original":"Anthropic/JS 0.63.0","network.peer.address":"::1","network.peer.port":45087,"http.response.status_code":404,"url":"http://localhost:45087/anthropic/v1/messages","otel.kind":"CLIENT"},"description":"POST http://localhost:45087/anthropic/v1/messages","parent_span_id":"5cec5eb32b58729a","start_timestamp":1775216637.143,"timestamp":1775216637.1534228,"status":"not_found","op":"http.client","origin":"auto.http.otel.node_fetch"},{"span_id":"6d9deff44ed02335","trace_id":"992505dd5e96fdd97d823774432facc0","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"POST","http.request.method_original":"POST","url.full":"http://localhost:45087/anthropic/v1/messages/count_tokens","url.path":"/anthropic/v1/messages/count_tokens","url.query":"","url.scheme":"http","server.address":"localhost","server.port":45087,"user_agent.original":"Anthropic/JS 0.63.0","network.peer.address":"::1","network.peer.port":45087,"http.response.status_code":200,"url":"http://localhost:45087/anthropic/v1/messages/count_tokens","otel.kind":"CLIENT"},"description":"POST http://localhost:45087/anthropic/v1/messages/count_tokens","parent_span_id":"5cec5eb32b58729a","start_timestamp":1775216637.156,"timestamp":1775216637.166849,"status":"ok","op":"http.client","origin":"auto.http.otel.node_fetch"},{"span_id":"a64171ed134dc114","trace_id":"992505dd5e96fdd97d823774432facc0","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"GET","http.request.method_original":"GET","url.full":"http://localhost:45087/anthropic/v1/models/claude-3-haiku-20240307","url.path":"/anthropic/v1/models/claude-3-haiku-20240307","url.query":"","url.scheme":"http","server.address":"localhost","server.port":45087,"u
|
|
Run integration tests:
dev-packages/node-integration-tests/utils/runner.ts#L503
Error: Expected envelope item type 'event' but got 'transaction'.
Item: [{"type":"transaction"},{"contexts":{"trace":{"span_id":"84a4ab6786d55d02","trace_id":"2bc60c539ac7da6f45fef5e992047a9a","data":{"sentry.source":"custom","sentry.sample_rate":1,"sentry.op":"function","sentry.origin":"manual"},"origin":"manual","op":"function","status":"ok"},"otel":{"resource":{"service.name":"node","service.namespace":"sentry","service.version":"10.47.0","telemetry.sdk.language":"nodejs","telemetry.sdk.name":"opentelemetry","telemetry.sdk.version":"2.6.1"}},"runtime":{"name":"node","version":"v24.14.0"},"app":{"app_start_time":"2026-04-03T11:43:55.051Z","app_memory":124014592,"free_memory":14561804288},"os":{"kernel_version":"6.17.0-1008-azure","name":"Ubuntu Linux","version":"24.04"},"device":{"boot_time":"2026-04-03T11:41:52.447Z","arch":"x64","memory_size":16766443520,"free_memory":14561804288,"processor_count":4,"cpu_description":"AMD EPYC 7763 64-Core Processor","processor_frequency":0},"culture":{"locale":"en-US","timezone":"UTC"},"cloud_resource":{}},"spans":[{"span_id":"d0bd0824c03d6ea7","trace_id":"2bc60c539ac7da6f45fef5e992047a9a","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"POST","http.request.method_original":"POST","url.full":"http://localhost:41055/anthropic/v1/messages","url.path":"/anthropic/v1/messages","url.query":"","url.scheme":"http","server.address":"localhost","server.port":41055,"user_agent.original":"Anthropic/JS 0.63.0","network.peer.address":"::1","network.peer.port":41055,"http.response.status_code":200,"url":"http://localhost:41055/anthropic/v1/messages","otel.kind":"CLIENT"},"description":"POST http://localhost:41055/anthropic/v1/messages","parent_span_id":"84a4ab6786d55d02","start_timestamp":1775216635.49,"timestamp":1775216635.531422,"status":"ok","op":"http.client","origin":"auto.http.otel.node_fetch"},{"span_id":"bc75de1375711f3b","trace_id":"2bc60c539ac7da6f45fef5e992047a9a","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"POST","http.request.method_original":"POST","url.full":"http://localhost:41055/anthropic/v1/messages","url.path":"/anthropic/v1/messages","url.query":"","url.scheme":"http","server.address":"localhost","server.port":41055,"user_agent.original":"Anthropic/JS 0.63.0","network.peer.address":"::1","network.peer.port":41055,"http.response.status_code":404,"url":"http://localhost:41055/anthropic/v1/messages","otel.kind":"CLIENT"},"description":"POST http://localhost:41055/anthropic/v1/messages","parent_span_id":"84a4ab6786d55d02","start_timestamp":1775216635.535,"timestamp":1775216635.5416074,"status":"not_found","op":"http.client","origin":"auto.http.otel.node_fetch"},{"span_id":"5275066d4f22db14","trace_id":"2bc60c539ac7da6f45fef5e992047a9a","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"POST","http.request.method_original":"POST","url.full":"http://localhost:41055/anthropic/v1/messages/count_tokens","url.path":"/anthropic/v1/messages/count_tokens","url.query":"","url.scheme":"http","server.address":"localhost","server.port":41055,"user_agent.original":"Anthropic/JS 0.63.0","network.peer.address":"::1","network.peer.port":41055,"http.response.status_code":200,"url":"http://localhost:41055/anthropic/v1/messages/count_tokens","otel.kind":"CLIENT"},"description":"POST http://localhost:41055/anthropic/v1/messages/count_tokens","parent_span_id":"84a4ab6786d55d02","start_timestamp":1775216635.544,"timestamp":1775216635.5787709,"status":"ok","op":"http.client","origin":"auto.http.otel.node_fetch"},{"span_id":"dd09dcc2beea39d6","trace_id":"2bc60c539ac7da6f45fef5e992047a9a","data":{"sentry.origin":"auto.http.otel.node_fetch","sentry.op":"http.client","http.request.method":"GET","http.request.method_original":"GET","url.full":"http://localhost:41055/anthropic/v1/models/claude-3-haiku-20240307","url.path":"/anthropic/v1/models/claude-3-haiku-20240307","url.query":"","url.scheme":"http","server.address":"localhost","server.port":41055,"
|
|
Run integration tests:
dev-packages/node-integration-tests/utils/assertions.ts#L35
AssertionError: expected { contexts: { …(8) }, …(14) } to match object { event_id: Any<String>, …(5) }
(92 matching properties omitted from actual)
- Expected
+ Received
@@ -1,37 +1,94 @@
{
"event_id": Any<String>,
- "spans": ArrayContaining [
- ObjectContaining {
- "data": ObjectContaining {
- "gen_ai.operation.name": "chat",
- "gen_ai.request.model": "claude-3-haiku-20240307",
- "gen_ai.response.id": "msg_withresponse",
+ "spans": [
+ {
+ "data": {
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 45869,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 45869,
+ "url": "http://localhost:45869/anthropic/v1/messages",
+ "url.full": "http://localhost:45869/anthropic/v1/messages",
+ "url.path": "/anthropic/v1/messages",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "Anthropic/JS 0.63.0",
},
- "description": "chat claude-3-haiku-20240307",
- "op": "gen_ai.chat",
+ "description": "POST http://localhost:45869/anthropic/v1/messages",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "cc8361e83644b3b9",
+ "span_id": "bd44e8b03f1553bd",
+ "start_timestamp": 1775216633.675,
"status": "ok",
+ "timestamp": 1775216633.7281442,
+ "trace_id": "f4a39a1c1ab581b0a77e4892bbe7880c",
},
- ObjectContaining {
- "data": ObjectContaining {
- "gen_ai.operation.name": "chat",
- "gen_ai.request.model": "claude-3-haiku-20240307",
- "gen_ai.response.id": "msg_withresponse",
+ {
+ "data": {
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 45869,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 45869,
+ "url": "http://localhost:45869/anthropic/v1/messages",
+ "url.full": "http://localhost:45869/anthropic/v1/messages",
+ "url.path": "/anthropic/v1/messages",
+ "url.query": "",
+ "url.scheme": "http",
+ "user_agent.original": "Anthropic/JS 0.63.0",
},
- "description": "chat claude-3-haiku-20240307",
- "op": "gen_ai.chat",
+ "description": "POST http://localhost:45869/anthropic/v1/messages",
+ "op": "http.client",
+ "origin": "auto.http.otel.node_fetch",
+ "parent_span_id": "cc8361e83644b3b9",
+ "span_id": "b6e2976c76006e3e",
+ "start_timestamp": 1775216633.732,
"status": "ok",
+ "timestamp": 1775216633.7415428,
+ "trace_id": "f4a39a1c1ab581b0a77e4892bbe7880c",
},
- ObjectContaining {
- "data": ObjectContaining {
- "gen_ai.operation.name": "chat",
- "gen_ai.request.model": "claude-3-haiku-20240307",
- "gen_ai.response.id": "msg_stream_withresponse",
+ {
+ "data": {
+ "http.request.method": "POST",
+ "http.request.method_original": "POST",
+ "http.response.status_code": 200,
+ "network.peer.address": "::1",
+ "network.peer.port": 45869,
+ "otel.kind": "CLIENT",
+ "sentry.op": "http.client",
+ "sentry.origin": "auto.http.otel.node_fetch",
+ "server.address": "localhost",
+ "server.port": 45869,
+ "url": "http://localhost:45869/anthropic/v1/messages",
+ "url.full": "http://localhost:45869/anthropic/v1/messages",
+ "url.path": "/anthropic/v1/messages",
+ "url.query": "",
+ "url.scheme": "http"
|
|
Complete job
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache/restore@v4, actions/download-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Parse and Upload Coverage
Supported formats: clover, cobertura, jacoco, lcov, istanbul, go, codecov
|
|
Parse and Upload Coverage
No coverage files found
|
|
Parse and Upload Coverage
Please ensure your test framework is generating JUnit XML output.
|
|
Parse and Upload Coverage
No JUnit XML files found matching pattern: dev-packages/node-integration-tests/**/*.junit.xml
|
|
Parse and Upload Coverage
No files found matching pattern: dev-packages/node-integration-tests/**/*.junit.xml
|
Loading