@sentry/core 10.53.0 → 10.54.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/browser.d.ts +4 -0
- package/build/cjs/api.js +10 -34
- package/build/cjs/api.js.map +1 -1
- package/build/cjs/asyncContext/index.js +0 -14
- package/build/cjs/asyncContext/index.js.map +1 -1
- package/build/cjs/asyncContext/stackStrategy.js +16 -47
- package/build/cjs/asyncContext/stackStrategy.js.map +1 -1
- package/build/cjs/attributes.js +17 -95
- package/build/cjs/attributes.js.map +1 -1
- package/build/cjs/breadcrumbs.js +2 -22
- package/build/cjs/breadcrumbs.js.map +1 -1
- package/build/cjs/browser.js +12 -3
- package/build/cjs/browser.js.map +1 -1
- package/build/cjs/carrier.js +5 -42
- package/build/cjs/carrier.js.map +1 -1
- package/build/cjs/checkin.js +5 -19
- package/build/cjs/checkin.js.map +1 -1
- package/build/cjs/client.js +216 -585
- package/build/cjs/client.js.map +1 -1
- package/build/cjs/constants.js +2 -2
- package/build/cjs/currentScopes.js +5 -86
- package/build/cjs/currentScopes.js.map +1 -1
- package/build/cjs/debug-build.js +0 -5
- package/build/cjs/debug-build.js.map +1 -1
- package/build/cjs/defaultScopes.js +2 -5
- package/build/cjs/defaultScopes.js.map +1 -1
- package/build/cjs/envelope.js +32 -103
- package/build/cjs/envelope.js.map +1 -1
- package/build/cjs/eventProcessors.js +4 -23
- package/build/cjs/eventProcessors.js.map +1 -1
- package/build/cjs/exports.js +21 -197
- package/build/cjs/exports.js.map +1 -1
- package/build/cjs/feedback.js +7 -19
- package/build/cjs/feedback.js.map +1 -1
- package/build/cjs/fetch.js +66 -201
- package/build/cjs/fetch.js.map +1 -1
- package/build/cjs/index.js +17 -3
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/instrument/console.js +9 -41
- package/build/cjs/instrument/console.js.map +1 -1
- package/build/cjs/instrument/fetch.js +47 -156
- package/build/cjs/instrument/fetch.js.map +1 -1
- package/build/cjs/instrument/globalError.js +4 -25
- package/build/cjs/instrument/globalError.js.map +1 -1
- package/build/cjs/instrument/globalUnhandledRejection.js +4 -21
- package/build/cjs/instrument/globalUnhandledRejection.js.map +1 -1
- package/build/cjs/instrument/handlers.js +9 -21
- package/build/cjs/instrument/handlers.js.map +1 -1
- package/build/cjs/integration.js +13 -77
- package/build/cjs/integration.js.map +1 -1
- package/build/cjs/integrations/captureconsole.js +16 -40
- package/build/cjs/integrations/captureconsole.js.map +1 -1
- package/build/cjs/integrations/consola.js +57 -163
- package/build/cjs/integrations/consola.js.map +1 -1
- package/build/cjs/integrations/console.js +11 -43
- package/build/cjs/integrations/console.js.map +1 -1
- package/build/cjs/integrations/conversationId.js +5 -22
- package/build/cjs/integrations/conversationId.js.map +1 -1
- package/build/cjs/integrations/dedupe.js +16 -74
- package/build/cjs/integrations/dedupe.js.map +1 -1
- package/build/cjs/integrations/eventFilters.js +63 -114
- package/build/cjs/integrations/eventFilters.js.map +1 -1
- package/build/cjs/integrations/express/index.js +30 -145
- package/build/cjs/integrations/express/index.js.map +1 -1
- package/build/cjs/integrations/express/patch-layer.js +20 -130
- package/build/cjs/integrations/express/patch-layer.js.map +1 -1
- package/build/cjs/integrations/express/request-layer-store.js +1 -3
- package/build/cjs/integrations/express/request-layer-store.js.map +1 -1
- package/build/cjs/integrations/express/set-sdk-processing-metadata.js +0 -2
- package/build/cjs/integrations/express/set-sdk-processing-metadata.js.map +1 -1
- package/build/cjs/integrations/express/types.js +6 -7
- package/build/cjs/integrations/express/types.js.map +1 -1
- package/build/cjs/integrations/express/utils.js +37 -145
- package/build/cjs/integrations/express/utils.js.map +1 -1
- package/build/cjs/integrations/extraerrordata.js +24 -69
- package/build/cjs/integrations/extraerrordata.js.map +1 -1
- package/build/cjs/integrations/featureFlags/featureFlagsIntegration.js +3 -29
- package/build/cjs/integrations/featureFlags/featureFlagsIntegration.js.map +1 -1
- package/build/cjs/integrations/featureFlags/growthbook.js +11 -40
- package/build/cjs/integrations/featureFlags/growthbook.js.map +1 -1
- package/build/cjs/integrations/functiontostring.js +6 -27
- package/build/cjs/integrations/functiontostring.js.map +1 -1
- package/build/cjs/integrations/http/add-outgoing-request-breadcrumb.js +10 -18
- package/build/cjs/integrations/http/add-outgoing-request-breadcrumb.js.map +1 -1
- package/build/cjs/integrations/http/client-patch.js +8 -70
- package/build/cjs/integrations/http/client-patch.js.map +1 -1
- package/build/cjs/integrations/http/client-subscriptions.js +22 -59
- package/build/cjs/integrations/http/client-subscriptions.js.map +1 -1
- package/build/cjs/integrations/http/constants.js +3 -3
- package/build/cjs/integrations/http/double-wrap-warning.js +10 -18
- package/build/cjs/integrations/http/double-wrap-warning.js.map +1 -1
- package/build/cjs/integrations/http/get-outgoing-span-data.js +30 -47
- package/build/cjs/integrations/http/get-outgoing-span-data.js.map +1 -1
- package/build/cjs/integrations/http/get-request-url.js +7 -24
- package/build/cjs/integrations/http/get-request-url.js.map +1 -1
- package/build/cjs/integrations/http/inject-trace-propagation-headers.js +14 -38
- package/build/cjs/integrations/http/inject-trace-propagation-headers.js.map +1 -1
- package/build/cjs/integrations/http/patch-request-to-capture-body.js +80 -0
- package/build/cjs/integrations/http/patch-request-to-capture-body.js.map +1 -0
- package/build/cjs/integrations/http/record-request-session.js +61 -0
- package/build/cjs/integrations/http/record-request-session.js.map +1 -0
- package/build/cjs/integrations/http/server-subscription.js +289 -0
- package/build/cjs/integrations/http/server-subscription.js.map +1 -0
- package/build/cjs/integrations/linkederrors.js +6 -11
- package/build/cjs/integrations/linkederrors.js.map +1 -1
- package/build/cjs/integrations/mcp-server/attributeExtraction.js +26 -69
- package/build/cjs/integrations/mcp-server/attributeExtraction.js.map +1 -1
- package/build/cjs/integrations/mcp-server/attributes.js +30 -138
- package/build/cjs/integrations/mcp-server/attributes.js.map +1 -1
- package/build/cjs/integrations/mcp-server/correlation.js +20 -91
- package/build/cjs/integrations/mcp-server/correlation.js.map +1 -1
- package/build/cjs/integrations/mcp-server/errorCapture.js +6 -25
- package/build/cjs/integrations/mcp-server/errorCapture.js.map +1 -1
- package/build/cjs/integrations/mcp-server/handlers.js +55 -169
- package/build/cjs/integrations/mcp-server/handlers.js.map +1 -1
- package/build/cjs/integrations/mcp-server/index.js +7 -60
- package/build/cjs/integrations/mcp-server/index.js.map +1 -1
- package/build/cjs/integrations/mcp-server/methodConfig.js +21 -59
- package/build/cjs/integrations/mcp-server/methodConfig.js.map +1 -1
- package/build/cjs/integrations/mcp-server/piiFiltering.js +5 -33
- package/build/cjs/integrations/mcp-server/piiFiltering.js.map +1 -1
- package/build/cjs/integrations/mcp-server/resultExtraction.js +20 -76
- package/build/cjs/integrations/mcp-server/resultExtraction.js.map +1 -1
- package/build/cjs/integrations/mcp-server/sessionExtraction.js +30 -121
- package/build/cjs/integrations/mcp-server/sessionExtraction.js.map +1 -1
- package/build/cjs/integrations/mcp-server/sessionManagement.js +2 -60
- package/build/cjs/integrations/mcp-server/sessionManagement.js.map +1 -1
- package/build/cjs/integrations/mcp-server/spans.js +20 -107
- package/build/cjs/integrations/mcp-server/spans.js.map +1 -1
- package/build/cjs/integrations/mcp-server/transport.js +26 -94
- package/build/cjs/integrations/mcp-server/transport.js.map +1 -1
- package/build/cjs/integrations/mcp-server/validation.js +6 -72
- package/build/cjs/integrations/mcp-server/validation.js.map +1 -1
- package/build/cjs/integrations/moduleMetadata.js +6 -20
- package/build/cjs/integrations/moduleMetadata.js.map +1 -1
- package/build/cjs/integrations/postgresjs.js +78 -287
- package/build/cjs/integrations/postgresjs.js.map +1 -1
- package/build/cjs/integrations/requestdata.js +30 -93
- package/build/cjs/integrations/requestdata.js.map +1 -1
- package/build/cjs/integrations/rewriteframes.js +14 -45
- package/build/cjs/integrations/rewriteframes.js.map +1 -1
- package/build/cjs/integrations/spanStreaming.js +9 -15
- package/build/cjs/integrations/spanStreaming.js.map +1 -1
- package/build/cjs/integrations/supabase.js +224 -333
- package/build/cjs/integrations/supabase.js.map +1 -1
- package/build/cjs/integrations/third-party-errors-filter.js +60 -85
- package/build/cjs/integrations/third-party-errors-filter.js.map +1 -1
- package/build/cjs/integrations/zoderrors.js +35 -111
- package/build/cjs/integrations/zoderrors.js.map +1 -1
- package/build/cjs/logs/console-integration.js +15 -50
- package/build/cjs/logs/console-integration.js.map +1 -1
- package/build/cjs/logs/constants.js +1 -6
- package/build/cjs/logs/constants.js.map +1 -1
- package/build/cjs/logs/envelope.js +10 -40
- package/build/cjs/logs/envelope.js.map +1 -1
- package/build/cjs/logs/internal.js +53 -125
- package/build/cjs/logs/internal.js.map +1 -1
- package/build/cjs/logs/public-api.js +13 -228
- package/build/cjs/logs/public-api.js.map +1 -1
- package/build/cjs/logs/utils.js +6 -47
- package/build/cjs/logs/utils.js.map +1 -1
- package/build/cjs/metadata.js +6 -51
- package/build/cjs/metadata.js.map +1 -1
- package/build/cjs/metrics/envelope.js +12 -45
- package/build/cjs/metrics/envelope.js.map +1 -1
- package/build/cjs/metrics/internal.js +31 -144
- package/build/cjs/metrics/internal.js.map +1 -1
- package/build/cjs/metrics/public-api.js +4 -109
- package/build/cjs/metrics/public-api.js.map +1 -1
- package/build/cjs/profiling.js +11 -41
- package/build/cjs/profiling.js.map +1 -1
- package/build/cjs/scope.js +73 -224
- package/build/cjs/scope.js.map +1 -1
- package/build/cjs/sdk.js +2 -21
- package/build/cjs/sdk.js.map +1 -1
- package/build/cjs/semanticAttributes.js +30 -116
- package/build/cjs/semanticAttributes.js.map +1 -1
- package/build/cjs/server-runtime-client.js +32 -87
- package/build/cjs/server-runtime-client.js.map +1 -1
- package/build/cjs/server.js +17 -3
- package/build/cjs/server.js.map +1 -1
- package/build/cjs/session.js +14 -67
- package/build/cjs/session.js.map +1 -1
- package/build/cjs/tracing/ai/gen-ai-attributes.js +45 -249
- package/build/cjs/tracing/ai/gen-ai-attributes.js.map +1 -1
- package/build/cjs/tracing/ai/mediaStripping.js +21 -116
- package/build/cjs/tracing/ai/mediaStripping.js.map +1 -1
- package/build/cjs/tracing/ai/messageTruncation.js +26 -212
- package/build/cjs/tracing/ai/messageTruncation.js.map +1 -1
- package/build/cjs/tracing/ai/utils.js +40 -180
- package/build/cjs/tracing/ai/utils.js.map +1 -1
- package/build/cjs/tracing/anthropic-ai/constants.js +9 -12
- package/build/cjs/tracing/anthropic-ai/constants.js.map +1 -1
- package/build/cjs/tracing/anthropic-ai/index.js +67 -172
- package/build/cjs/tracing/anthropic-ai/index.js.map +1 -1
- package/build/cjs/tracing/anthropic-ai/streaming.js +45 -149
- package/build/cjs/tracing/anthropic-ai/streaming.js.map +1 -1
- package/build/cjs/tracing/anthropic-ai/utils.js +17 -47
- package/build/cjs/tracing/anthropic-ai/utils.js.map +1 -1
- package/build/cjs/tracing/dynamicSamplingContext.js +18 -85
- package/build/cjs/tracing/dynamicSamplingContext.js.map +1 -1
- package/build/cjs/tracing/errors.js +2 -14
- package/build/cjs/tracing/errors.js.map +1 -1
- package/build/cjs/tracing/google-genai/constants.js +9 -16
- package/build/cjs/tracing/google-genai/constants.js.map +1 -1
- package/build/cjs/tracing/google-genai/index.js +79 -223
- package/build/cjs/tracing/google-genai/index.js.map +1 -1
- package/build/cjs/tracing/google-genai/streaming.js +11 -56
- package/build/cjs/tracing/google-genai/streaming.js.map +1 -1
- package/build/cjs/tracing/google-genai/utils.js +8 -13
- package/build/cjs/tracing/google-genai/utils.js.map +1 -1
- package/build/cjs/tracing/idleSpan.js +48 -174
- package/build/cjs/tracing/idleSpan.js.map +1 -1
- package/build/cjs/tracing/langchain/constants.js +8 -9
- package/build/cjs/tracing/langchain/constants.js.map +1 -1
- package/build/cjs/tracing/langchain/embeddings.js +31 -75
- package/build/cjs/tracing/langchain/embeddings.js.map +1 -1
- package/build/cjs/tracing/langchain/index.js +64 -161
- package/build/cjs/tracing/langchain/index.js.map +1 -1
- package/build/cjs/tracing/langchain/utils.js +101 -311
- package/build/cjs/tracing/langchain/utils.js.map +1 -1
- package/build/cjs/tracing/langgraph/constants.js +2 -2
- package/build/cjs/tracing/langgraph/index.js +57 -160
- package/build/cjs/tracing/langgraph/index.js.map +1 -1
- package/build/cjs/tracing/langgraph/utils.js +53 -170
- package/build/cjs/tracing/langgraph/utils.js.map +1 -1
- package/build/cjs/tracing/logSpans.js +10 -26
- package/build/cjs/tracing/logSpans.js.map +1 -1
- package/build/cjs/tracing/measurement.js +6 -18
- package/build/cjs/tracing/measurement.js.map +1 -1
- package/build/cjs/tracing/openai/constants.js +20 -24
- package/build/cjs/tracing/openai/constants.js.map +1 -1
- package/build/cjs/tracing/openai/index.js +52 -132
- package/build/cjs/tracing/openai/index.js.map +1 -1
- package/build/cjs/tracing/openai/streaming.js +24 -102
- package/build/cjs/tracing/openai/streaming.js.map +1 -1
- package/build/cjs/tracing/openai/utils.js +36 -107
- package/build/cjs/tracing/openai/utils.js.map +1 -1
- package/build/cjs/tracing/sampling.js +23 -63
- package/build/cjs/tracing/sampling.js.map +1 -1
- package/build/cjs/tracing/sentryNonRecordingSpan.js +15 -40
- package/build/cjs/tracing/sentryNonRecordingSpan.js.map +1 -1
- package/build/cjs/tracing/sentrySpan.js +66 -172
- package/build/cjs/tracing/sentrySpan.js.map +1 -1
- package/build/cjs/tracing/spans/beforeSendSpan.js +4 -32
- package/build/cjs/tracing/spans/beforeSendSpan.js.map +1 -1
- package/build/cjs/tracing/spans/captureSpan.js +63 -165
- package/build/cjs/tracing/spans/captureSpan.js.map +1 -1
- package/build/cjs/tracing/spans/envelope.js +12 -24
- package/build/cjs/tracing/spans/envelope.js.map +1 -1
- package/build/cjs/tracing/spans/estimateSize.js +0 -22
- package/build/cjs/tracing/spans/estimateSize.js.map +1 -1
- package/build/cjs/tracing/spans/extractGenAiSpans.js +11 -33
- package/build/cjs/tracing/spans/extractGenAiSpans.js.map +1 -1
- package/build/cjs/tracing/spans/hasSpanStreamingEnabled.js +1 -4
- package/build/cjs/tracing/spans/hasSpanStreamingEnabled.js.map +1 -1
- package/build/cjs/tracing/spans/scopeContextAttributes.js +58 -0
- package/build/cjs/tracing/spans/scopeContextAttributes.js.map +1 -0
- package/build/cjs/tracing/spans/spanBuffer.js +21 -71
- package/build/cjs/tracing/spans/spanBuffer.js.map +1 -1
- package/build/cjs/tracing/spans/spanJsonToStreamedSpan.js +4 -8
- package/build/cjs/tracing/spans/spanJsonToStreamedSpan.js.map +1 -1
- package/build/cjs/tracing/spanstatus.js +15 -32
- package/build/cjs/tracing/spanstatus.js.map +1 -1
- package/build/cjs/tracing/trace.js +95 -311
- package/build/cjs/tracing/trace.js.map +1 -1
- package/build/cjs/tracing/utils.js +4 -14
- package/build/cjs/tracing/utils.js.map +1 -1
- package/build/cjs/tracing/vercel-ai/constants.js +15 -26
- package/build/cjs/tracing/vercel-ai/constants.js.map +1 -1
- package/build/cjs/tracing/vercel-ai/index.js +84 -288
- package/build/cjs/tracing/vercel-ai/index.js.map +1 -1
- package/build/cjs/tracing/vercel-ai/utils.js +30 -128
- package/build/cjs/tracing/vercel-ai/utils.js.map +1 -1
- package/build/cjs/tracing/vercel-ai/vercel-ai-attributes.js +22 -229
- package/build/cjs/tracing/vercel-ai/vercel-ai-attributes.js.map +1 -1
- package/build/cjs/transports/base.js +32 -67
- package/build/cjs/transports/base.js.map +1 -1
- package/build/cjs/transports/multiplexed.js +38 -103
- package/build/cjs/transports/multiplexed.js.map +1 -1
- package/build/cjs/transports/offline.js +31 -72
- package/build/cjs/transports/offline.js.map +1 -1
- package/build/cjs/transports/userAgent.js +4 -13
- package/build/cjs/transports/userAgent.js.map +1 -1
- package/build/cjs/trpc.js +19 -39
- package/build/cjs/trpc.js.map +1 -1
- package/build/cjs/utils/aggregate-errors.js +18 -62
- package/build/cjs/utils/aggregate-errors.js.map +1 -1
- package/build/cjs/utils/ai/providerSkip.js +3 -50
- package/build/cjs/utils/ai/providerSkip.js.map +1 -1
- package/build/cjs/utils/anr.js +7 -36
- package/build/cjs/utils/anr.js.map +1 -1
- package/build/cjs/utils/baggage.js +37 -146
- package/build/cjs/utils/baggage.js.map +1 -1
- package/build/cjs/utils/breadcrumb-log-level.js +5 -9
- package/build/cjs/utils/breadcrumb-log-level.js.map +1 -1
- package/build/cjs/utils/browser.js +24 -86
- package/build/cjs/utils/browser.js.map +1 -1
- package/build/cjs/utils/chain-and-copy-promiselike.js +10 -27
- package/build/cjs/utils/chain-and-copy-promiselike.js.map +1 -1
- package/build/cjs/utils/clientreport.js +4 -13
- package/build/cjs/utils/clientreport.js.map +1 -1
- package/build/cjs/utils/cookie.js +6 -53
- package/build/cjs/utils/cookie.js.map +1 -1
- package/build/cjs/utils/data-collection/defaultPiiToCollectionOptions.js +28 -0
- package/build/cjs/utils/data-collection/defaultPiiToCollectionOptions.js.map +1 -0
- package/build/cjs/utils/data-collection/filterCookies.js +23 -0
- package/build/cjs/utils/data-collection/filterCookies.js.map +1 -0
- package/build/cjs/utils/data-collection/filterKeyValueData.js +43 -0
- package/build/cjs/utils/data-collection/filterKeyValueData.js.map +1 -0
- package/build/cjs/utils/data-collection/filterQueryParams.js +26 -0
- package/build/cjs/utils/data-collection/filterQueryParams.js.map +1 -0
- package/build/cjs/utils/data-collection/filtering-snippets.js +61 -0
- package/build/cjs/utils/data-collection/filtering-snippets.js.map +1 -0
- package/build/cjs/utils/data-collection/resolveDataCollectionOptions.js +37 -0
- package/build/cjs/utils/data-collection/resolveDataCollectionOptions.js.map +1 -0
- package/build/cjs/utils/debounce.js +5 -32
- package/build/cjs/utils/debounce.js.map +1 -1
- package/build/cjs/utils/debug-ids.js +4 -42
- package/build/cjs/utils/debug-ids.js.map +1 -1
- package/build/cjs/utils/debug-logger.js +23 -56
- package/build/cjs/utils/debug-logger.js.map +1 -1
- package/build/cjs/utils/dsn.js +18 -81
- package/build/cjs/utils/dsn.js.map +1 -1
- package/build/cjs/utils/env.js +3 -27
- package/build/cjs/utils/env.js.map +1 -1
- package/build/cjs/utils/envToBool.js +2 -15
- package/build/cjs/utils/envToBool.js.map +1 -1
- package/build/cjs/utils/envelope.js +39 -133
- package/build/cjs/utils/envelope.js.map +1 -1
- package/build/cjs/utils/error.js +3 -10
- package/build/cjs/utils/error.js.map +1 -1
- package/build/cjs/utils/eventUtils.js +0 -8
- package/build/cjs/utils/eventUtils.js.map +1 -1
- package/build/cjs/utils/eventbuilder.js +30 -114
- package/build/cjs/utils/eventbuilder.js.map +1 -1
- package/build/cjs/utils/exports.js +5 -24
- package/build/cjs/utils/exports.js.map +1 -1
- package/build/cjs/utils/featureFlags.js +10 -96
- package/build/cjs/utils/featureFlags.js.map +1 -1
- package/build/cjs/utils/flushIfServerless.js +14 -48
- package/build/cjs/utils/flushIfServerless.js.map +1 -1
- package/build/cjs/utils/get-default-export.js +1 -25
- package/build/cjs/utils/get-default-export.js.map +1 -1
- package/build/cjs/utils/handleCallbackErrors.js +10 -48
- package/build/cjs/utils/handleCallbackErrors.js.map +1 -1
- package/build/cjs/utils/hasSpansEnabled.js +4 -28
- package/build/cjs/utils/hasSpansEnabled.js.map +1 -1
- package/build/cjs/utils/ipAddress.js +7 -19
- package/build/cjs/utils/ipAddress.js.map +1 -1
- package/build/cjs/utils/is.js +18 -163
- package/build/cjs/utils/is.js.map +1 -1
- package/build/cjs/utils/isBrowser.js +3 -9
- package/build/cjs/utils/isBrowser.js.map +1 -1
- package/build/cjs/utils/isSentryRequestUrl.js +2 -19
- package/build/cjs/utils/isSentryRequestUrl.js.map +1 -1
- package/build/cjs/utils/lru.js +13 -24
- package/build/cjs/utils/lru.js.map +1 -1
- package/build/cjs/utils/merge.js +1 -17
- package/build/cjs/utils/merge.js.map +1 -1
- package/build/cjs/utils/meta.js +1 -24
- package/build/cjs/utils/meta.js.map +1 -1
- package/build/cjs/utils/misc.js +31 -134
- package/build/cjs/utils/misc.js.map +1 -1
- package/build/cjs/utils/node-stack-trace.js +22 -61
- package/build/cjs/utils/node-stack-trace.js.map +1 -1
- package/build/cjs/utils/node.js +3 -48
- package/build/cjs/utils/node.js.map +1 -1
- package/build/cjs/utils/normalizationHints.js +5 -18
- package/build/cjs/utils/normalizationHints.js.map +1 -1
- package/build/cjs/utils/normalize.js +39 -205
- package/build/cjs/utils/normalize.js.map +1 -1
- package/build/cjs/utils/object.js +33 -168
- package/build/cjs/utils/object.js.map +1 -1
- package/build/cjs/utils/parameterize.js +2 -21
- package/build/cjs/utils/parameterize.js.map +1 -1
- package/build/cjs/utils/parseSampleRate.js +4 -13
- package/build/cjs/utils/parseSampleRate.js.map +1 -1
- package/build/cjs/utils/path.js +28 -115
- package/build/cjs/utils/path.js.map +1 -1
- package/build/cjs/utils/prepareEvent.js +53 -191
- package/build/cjs/utils/prepareEvent.js.map +1 -1
- package/build/cjs/utils/promisebuffer.js +5 -47
- package/build/cjs/utils/promisebuffer.js.map +1 -1
- package/build/cjs/utils/propagationContext.js +0 -7
- package/build/cjs/utils/propagationContext.js.map +1 -1
- package/build/cjs/utils/randomSafeContext.js +3 -22
- package/build/cjs/utils/randomSafeContext.js.map +1 -1
- package/build/cjs/utils/ratelimit.js +13 -66
- package/build/cjs/utils/ratelimit.js.map +1 -1
- package/build/cjs/utils/request.js +62 -269
- package/build/cjs/utils/request.js.map +1 -1
- package/build/cjs/utils/scopeData.js +15 -79
- package/build/cjs/utils/scopeData.js.map +1 -1
- package/build/cjs/utils/sdkMetadata.js +5 -19
- package/build/cjs/utils/sdkMetadata.js.map +1 -1
- package/build/cjs/utils/severity.js +1 -9
- package/build/cjs/utils/severity.js.map +1 -1
- package/build/cjs/utils/should-ignore-span.js +6 -38
- package/build/cjs/utils/should-ignore-span.js.map +1 -1
- package/build/cjs/utils/spanOnScope.js +3 -14
- package/build/cjs/utils/spanOnScope.js.map +1 -1
- package/build/cjs/utils/spanUtils.js +42 -222
- package/build/cjs/utils/spanUtils.js.map +1 -1
- package/build/cjs/utils/stacktrace.js +19 -106
- package/build/cjs/utils/stacktrace.js.map +1 -1
- package/build/cjs/utils/string.js +7 -75
- package/build/cjs/utils/string.js.map +1 -1
- package/build/cjs/utils/supports.js +14 -99
- package/build/cjs/utils/supports.js.map +1 -1
- package/build/cjs/utils/syncpromise.js +19 -68
- package/build/cjs/utils/syncpromise.js.map +1 -1
- package/build/cjs/utils/time.js +7 -84
- package/build/cjs/utils/time.js.map +1 -1
- package/build/cjs/utils/timer.js +1 -10
- package/build/cjs/utils/timer.js.map +1 -1
- package/build/cjs/utils/timestampSequence.js +5 -21
- package/build/cjs/utils/timestampSequence.js.map +1 -1
- package/build/cjs/utils/trace-info.js +3 -10
- package/build/cjs/utils/trace-info.js.map +1 -1
- package/build/cjs/utils/traceData.js +4 -39
- package/build/cjs/utils/traceData.js.map +1 -1
- package/build/cjs/utils/tracePropagationTargets.js +4 -18
- package/build/cjs/utils/tracePropagationTargets.js.map +1 -1
- package/build/cjs/utils/tracing.js +32 -106
- package/build/cjs/utils/tracing.js.map +1 -1
- package/build/cjs/utils/transactionEvent.js +11 -19
- package/build/cjs/utils/transactionEvent.js.map +1 -1
- package/build/cjs/utils/tunnel.js +12 -33
- package/build/cjs/utils/tunnel.js.map +1 -1
- package/build/cjs/utils/url.js +42 -176
- package/build/cjs/utils/url.js.map +1 -1
- package/build/cjs/utils/vercelWaitUntil.js +4 -12
- package/build/cjs/utils/vercelWaitUntil.js.map +1 -1
- package/build/cjs/utils/version.js +1 -3
- package/build/cjs/utils/version.js.map +1 -1
- package/build/cjs/utils/weakRef.js +5 -36
- package/build/cjs/utils/weakRef.js.map +1 -1
- package/build/cjs/utils/worldwide.js +1 -4
- package/build/cjs/utils/worldwide.js.map +1 -1
- package/build/cjs/vendor/escapeStringForRegex.js +1 -32
- package/build/cjs/vendor/escapeStringForRegex.js.map +1 -1
- package/build/cjs/vendor/getIpAddress.js +19 -99
- package/build/cjs/vendor/getIpAddress.js.map +1 -1
- package/build/esm/api.js +10 -34
- package/build/esm/api.js.map +1 -1
- package/build/esm/asyncContext/index.js +0 -14
- package/build/esm/asyncContext/index.js.map +1 -1
- package/build/esm/asyncContext/stackStrategy.js +16 -47
- package/build/esm/asyncContext/stackStrategy.js.map +1 -1
- package/build/esm/attributes.js +17 -95
- package/build/esm/attributes.js.map +1 -1
- package/build/esm/breadcrumbs.js +2 -22
- package/build/esm/breadcrumbs.js.map +1 -1
- package/build/esm/browser.js +5 -1
- package/build/esm/browser.js.map +1 -1
- package/build/esm/carrier.js +5 -42
- package/build/esm/carrier.js.map +1 -1
- package/build/esm/checkin.js +5 -19
- package/build/esm/checkin.js.map +1 -1
- package/build/esm/client.js +216 -585
- package/build/esm/client.js.map +1 -1
- package/build/esm/constants.js +2 -2
- package/build/esm/currentScopes.js +5 -86
- package/build/esm/currentScopes.js.map +1 -1
- package/build/esm/debug-build.js +0 -5
- package/build/esm/debug-build.js.map +1 -1
- package/build/esm/defaultScopes.js +2 -5
- package/build/esm/defaultScopes.js.map +1 -1
- package/build/esm/envelope.js +32 -103
- package/build/esm/envelope.js.map +1 -1
- package/build/esm/eventProcessors.js +4 -23
- package/build/esm/eventProcessors.js.map +1 -1
- package/build/esm/exports.js +21 -197
- package/build/esm/exports.js.map +1 -1
- package/build/esm/feedback.js +7 -19
- package/build/esm/feedback.js.map +1 -1
- package/build/esm/fetch.js +66 -201
- package/build/esm/fetch.js.map +1 -1
- package/build/esm/index.js +7 -1
- package/build/esm/index.js.map +1 -1
- package/build/esm/instrument/console.js +9 -41
- package/build/esm/instrument/console.js.map +1 -1
- package/build/esm/instrument/fetch.js +47 -156
- package/build/esm/instrument/fetch.js.map +1 -1
- package/build/esm/instrument/globalError.js +4 -25
- package/build/esm/instrument/globalError.js.map +1 -1
- package/build/esm/instrument/globalUnhandledRejection.js +4 -21
- package/build/esm/instrument/globalUnhandledRejection.js.map +1 -1
- package/build/esm/instrument/handlers.js +9 -21
- package/build/esm/instrument/handlers.js.map +1 -1
- package/build/esm/integration.js +13 -77
- package/build/esm/integration.js.map +1 -1
- package/build/esm/integrations/captureconsole.js +16 -40
- package/build/esm/integrations/captureconsole.js.map +1 -1
- package/build/esm/integrations/consola.js +57 -163
- package/build/esm/integrations/consola.js.map +1 -1
- package/build/esm/integrations/console.js +11 -43
- package/build/esm/integrations/console.js.map +1 -1
- package/build/esm/integrations/conversationId.js +5 -22
- package/build/esm/integrations/conversationId.js.map +1 -1
- package/build/esm/integrations/dedupe.js +16 -74
- package/build/esm/integrations/dedupe.js.map +1 -1
- package/build/esm/integrations/eventFilters.js +63 -114
- package/build/esm/integrations/eventFilters.js.map +1 -1
- package/build/esm/integrations/express/index.js +30 -145
- package/build/esm/integrations/express/index.js.map +1 -1
- package/build/esm/integrations/express/patch-layer.js +20 -130
- package/build/esm/integrations/express/patch-layer.js.map +1 -1
- package/build/esm/integrations/express/request-layer-store.js +1 -3
- package/build/esm/integrations/express/request-layer-store.js.map +1 -1
- package/build/esm/integrations/express/set-sdk-processing-metadata.js +0 -2
- package/build/esm/integrations/express/set-sdk-processing-metadata.js.map +1 -1
- package/build/esm/integrations/express/types.js +6 -7
- package/build/esm/integrations/express/types.js.map +1 -1
- package/build/esm/integrations/express/utils.js +37 -145
- package/build/esm/integrations/express/utils.js.map +1 -1
- package/build/esm/integrations/extraerrordata.js +24 -69
- package/build/esm/integrations/extraerrordata.js.map +1 -1
- package/build/esm/integrations/featureFlags/featureFlagsIntegration.js +3 -29
- package/build/esm/integrations/featureFlags/featureFlagsIntegration.js.map +1 -1
- package/build/esm/integrations/featureFlags/growthbook.js +11 -40
- package/build/esm/integrations/featureFlags/growthbook.js.map +1 -1
- package/build/esm/integrations/functiontostring.js +6 -27
- package/build/esm/integrations/functiontostring.js.map +1 -1
- package/build/esm/integrations/http/add-outgoing-request-breadcrumb.js +10 -18
- package/build/esm/integrations/http/add-outgoing-request-breadcrumb.js.map +1 -1
- package/build/esm/integrations/http/client-patch.js +8 -70
- package/build/esm/integrations/http/client-patch.js.map +1 -1
- package/build/esm/integrations/http/client-subscriptions.js +22 -59
- package/build/esm/integrations/http/client-subscriptions.js.map +1 -1
- package/build/esm/integrations/http/constants.js +3 -3
- package/build/esm/integrations/http/double-wrap-warning.js +10 -18
- package/build/esm/integrations/http/double-wrap-warning.js.map +1 -1
- package/build/esm/integrations/http/get-outgoing-span-data.js +30 -47
- package/build/esm/integrations/http/get-outgoing-span-data.js.map +1 -1
- package/build/esm/integrations/http/get-request-url.js +7 -24
- package/build/esm/integrations/http/get-request-url.js.map +1 -1
- package/build/esm/integrations/http/inject-trace-propagation-headers.js +14 -38
- package/build/esm/integrations/http/inject-trace-propagation-headers.js.map +1 -1
- package/build/esm/integrations/http/patch-request-to-capture-body.js +78 -0
- package/build/esm/integrations/http/patch-request-to-capture-body.js.map +1 -0
- package/build/esm/integrations/http/record-request-session.js +59 -0
- package/build/esm/integrations/http/record-request-session.js.map +1 -0
- package/build/esm/integrations/http/server-subscription.js +285 -0
- package/build/esm/integrations/http/server-subscription.js.map +1 -0
- package/build/esm/integrations/linkederrors.js +6 -11
- package/build/esm/integrations/linkederrors.js.map +1 -1
- package/build/esm/integrations/mcp-server/attributeExtraction.js +26 -69
- package/build/esm/integrations/mcp-server/attributeExtraction.js.map +1 -1
- package/build/esm/integrations/mcp-server/attributes.js +30 -138
- package/build/esm/integrations/mcp-server/attributes.js.map +1 -1
- package/build/esm/integrations/mcp-server/correlation.js +20 -91
- package/build/esm/integrations/mcp-server/correlation.js.map +1 -1
- package/build/esm/integrations/mcp-server/errorCapture.js +6 -25
- package/build/esm/integrations/mcp-server/errorCapture.js.map +1 -1
- package/build/esm/integrations/mcp-server/handlers.js +55 -169
- package/build/esm/integrations/mcp-server/handlers.js.map +1 -1
- package/build/esm/integrations/mcp-server/index.js +7 -60
- package/build/esm/integrations/mcp-server/index.js.map +1 -1
- package/build/esm/integrations/mcp-server/methodConfig.js +21 -59
- package/build/esm/integrations/mcp-server/methodConfig.js.map +1 -1
- package/build/esm/integrations/mcp-server/piiFiltering.js +5 -33
- package/build/esm/integrations/mcp-server/piiFiltering.js.map +1 -1
- package/build/esm/integrations/mcp-server/resultExtraction.js +20 -76
- package/build/esm/integrations/mcp-server/resultExtraction.js.map +1 -1
- package/build/esm/integrations/mcp-server/sessionExtraction.js +30 -121
- package/build/esm/integrations/mcp-server/sessionExtraction.js.map +1 -1
- package/build/esm/integrations/mcp-server/sessionManagement.js +2 -60
- package/build/esm/integrations/mcp-server/sessionManagement.js.map +1 -1
- package/build/esm/integrations/mcp-server/spans.js +20 -107
- package/build/esm/integrations/mcp-server/spans.js.map +1 -1
- package/build/esm/integrations/mcp-server/transport.js +26 -94
- package/build/esm/integrations/mcp-server/transport.js.map +1 -1
- package/build/esm/integrations/mcp-server/validation.js +6 -72
- package/build/esm/integrations/mcp-server/validation.js.map +1 -1
- package/build/esm/integrations/moduleMetadata.js +6 -20
- package/build/esm/integrations/moduleMetadata.js.map +1 -1
- package/build/esm/integrations/postgresjs.js +78 -287
- package/build/esm/integrations/postgresjs.js.map +1 -1
- package/build/esm/integrations/requestdata.js +30 -93
- package/build/esm/integrations/requestdata.js.map +1 -1
- package/build/esm/integrations/rewriteframes.js +14 -45
- package/build/esm/integrations/rewriteframes.js.map +1 -1
- package/build/esm/integrations/spanStreaming.js +9 -15
- package/build/esm/integrations/spanStreaming.js.map +1 -1
- package/build/esm/integrations/supabase.js +224 -333
- package/build/esm/integrations/supabase.js.map +1 -1
- package/build/esm/integrations/third-party-errors-filter.js +60 -85
- package/build/esm/integrations/third-party-errors-filter.js.map +1 -1
- package/build/esm/integrations/zoderrors.js +35 -111
- package/build/esm/integrations/zoderrors.js.map +1 -1
- package/build/esm/logs/console-integration.js +15 -50
- package/build/esm/logs/console-integration.js.map +1 -1
- package/build/esm/logs/constants.js +1 -6
- package/build/esm/logs/constants.js.map +1 -1
- package/build/esm/logs/envelope.js +10 -40
- package/build/esm/logs/envelope.js.map +1 -1
- package/build/esm/logs/internal.js +53 -126
- package/build/esm/logs/internal.js.map +1 -1
- package/build/esm/logs/public-api.js +13 -228
- package/build/esm/logs/public-api.js.map +1 -1
- package/build/esm/logs/utils.js +6 -47
- package/build/esm/logs/utils.js.map +1 -1
- package/build/esm/metadata.js +6 -51
- package/build/esm/metadata.js.map +1 -1
- package/build/esm/metrics/envelope.js +12 -45
- package/build/esm/metrics/envelope.js.map +1 -1
- package/build/esm/metrics/internal.js +31 -144
- package/build/esm/metrics/internal.js.map +1 -1
- package/build/esm/metrics/public-api.js +4 -109
- package/build/esm/metrics/public-api.js.map +1 -1
- package/build/esm/package.json +1 -1
- package/build/esm/profiling.js +11 -41
- package/build/esm/profiling.js.map +1 -1
- package/build/esm/scope.js +73 -224
- package/build/esm/scope.js.map +1 -1
- package/build/esm/sdk.js +2 -21
- package/build/esm/sdk.js.map +1 -1
- package/build/esm/semanticAttributes.js +31 -118
- package/build/esm/semanticAttributes.js.map +1 -1
- package/build/esm/server-runtime-client.js +32 -87
- package/build/esm/server-runtime-client.js.map +1 -1
- package/build/esm/server.js +7 -1
- package/build/esm/server.js.map +1 -1
- package/build/esm/session.js +14 -67
- package/build/esm/session.js.map +1 -1
- package/build/esm/tracing/ai/gen-ai-attributes.js +45 -249
- package/build/esm/tracing/ai/gen-ai-attributes.js.map +1 -1
- package/build/esm/tracing/ai/mediaStripping.js +21 -116
- package/build/esm/tracing/ai/mediaStripping.js.map +1 -1
- package/build/esm/tracing/ai/messageTruncation.js +26 -212
- package/build/esm/tracing/ai/messageTruncation.js.map +1 -1
- package/build/esm/tracing/ai/utils.js +40 -180
- package/build/esm/tracing/ai/utils.js.map +1 -1
- package/build/esm/tracing/anthropic-ai/constants.js +9 -12
- package/build/esm/tracing/anthropic-ai/constants.js.map +1 -1
- package/build/esm/tracing/anthropic-ai/index.js +67 -172
- package/build/esm/tracing/anthropic-ai/index.js.map +1 -1
- package/build/esm/tracing/anthropic-ai/streaming.js +45 -149
- package/build/esm/tracing/anthropic-ai/streaming.js.map +1 -1
- package/build/esm/tracing/anthropic-ai/utils.js +17 -47
- package/build/esm/tracing/anthropic-ai/utils.js.map +1 -1
- package/build/esm/tracing/dynamicSamplingContext.js +18 -85
- package/build/esm/tracing/dynamicSamplingContext.js.map +1 -1
- package/build/esm/tracing/errors.js +2 -14
- package/build/esm/tracing/errors.js.map +1 -1
- package/build/esm/tracing/google-genai/constants.js +9 -16
- package/build/esm/tracing/google-genai/constants.js.map +1 -1
- package/build/esm/tracing/google-genai/index.js +79 -223
- package/build/esm/tracing/google-genai/index.js.map +1 -1
- package/build/esm/tracing/google-genai/streaming.js +11 -56
- package/build/esm/tracing/google-genai/streaming.js.map +1 -1
- package/build/esm/tracing/google-genai/utils.js +8 -13
- package/build/esm/tracing/google-genai/utils.js.map +1 -1
- package/build/esm/tracing/idleSpan.js +48 -174
- package/build/esm/tracing/idleSpan.js.map +1 -1
- package/build/esm/tracing/langchain/constants.js +8 -9
- package/build/esm/tracing/langchain/constants.js.map +1 -1
- package/build/esm/tracing/langchain/embeddings.js +31 -75
- package/build/esm/tracing/langchain/embeddings.js.map +1 -1
- package/build/esm/tracing/langchain/index.js +64 -161
- package/build/esm/tracing/langchain/index.js.map +1 -1
- package/build/esm/tracing/langchain/utils.js +101 -312
- package/build/esm/tracing/langchain/utils.js.map +1 -1
- package/build/esm/tracing/langgraph/constants.js +2 -2
- package/build/esm/tracing/langgraph/index.js +59 -162
- package/build/esm/tracing/langgraph/index.js.map +1 -1
- package/build/esm/tracing/langgraph/utils.js +54 -170
- package/build/esm/tracing/langgraph/utils.js.map +1 -1
- package/build/esm/tracing/logSpans.js +10 -26
- package/build/esm/tracing/logSpans.js.map +1 -1
- package/build/esm/tracing/measurement.js +6 -18
- package/build/esm/tracing/measurement.js.map +1 -1
- package/build/esm/tracing/openai/constants.js +20 -24
- package/build/esm/tracing/openai/constants.js.map +1 -1
- package/build/esm/tracing/openai/index.js +52 -132
- package/build/esm/tracing/openai/index.js.map +1 -1
- package/build/esm/tracing/openai/streaming.js +24 -102
- package/build/esm/tracing/openai/streaming.js.map +1 -1
- package/build/esm/tracing/openai/utils.js +36 -107
- package/build/esm/tracing/openai/utils.js.map +1 -1
- package/build/esm/tracing/sampling.js +23 -63
- package/build/esm/tracing/sampling.js.map +1 -1
- package/build/esm/tracing/sentryNonRecordingSpan.js +15 -40
- package/build/esm/tracing/sentryNonRecordingSpan.js.map +1 -1
- package/build/esm/tracing/sentrySpan.js +66 -172
- package/build/esm/tracing/sentrySpan.js.map +1 -1
- package/build/esm/tracing/spans/beforeSendSpan.js +4 -32
- package/build/esm/tracing/spans/beforeSendSpan.js.map +1 -1
- package/build/esm/tracing/spans/captureSpan.js +64 -166
- package/build/esm/tracing/spans/captureSpan.js.map +1 -1
- package/build/esm/tracing/spans/envelope.js +12 -24
- package/build/esm/tracing/spans/envelope.js.map +1 -1
- package/build/esm/tracing/spans/estimateSize.js +0 -22
- package/build/esm/tracing/spans/estimateSize.js.map +1 -1
- package/build/esm/tracing/spans/extractGenAiSpans.js +11 -33
- package/build/esm/tracing/spans/extractGenAiSpans.js.map +1 -1
- package/build/esm/tracing/spans/hasSpanStreamingEnabled.js +1 -4
- package/build/esm/tracing/spans/hasSpanStreamingEnabled.js.map +1 -1
- package/build/esm/tracing/spans/scopeContextAttributes.js +56 -0
- package/build/esm/tracing/spans/scopeContextAttributes.js.map +1 -0
- package/build/esm/tracing/spans/spanBuffer.js +21 -71
- package/build/esm/tracing/spans/spanBuffer.js.map +1 -1
- package/build/esm/tracing/spans/spanJsonToStreamedSpan.js +4 -8
- package/build/esm/tracing/spans/spanJsonToStreamedSpan.js.map +1 -1
- package/build/esm/tracing/spanstatus.js +15 -32
- package/build/esm/tracing/spanstatus.js.map +1 -1
- package/build/esm/tracing/trace.js +95 -311
- package/build/esm/tracing/trace.js.map +1 -1
- package/build/esm/tracing/utils.js +4 -14
- package/build/esm/tracing/utils.js.map +1 -1
- package/build/esm/tracing/vercel-ai/constants.js +15 -26
- package/build/esm/tracing/vercel-ai/constants.js.map +1 -1
- package/build/esm/tracing/vercel-ai/index.js +84 -288
- package/build/esm/tracing/vercel-ai/index.js.map +1 -1
- package/build/esm/tracing/vercel-ai/utils.js +30 -128
- package/build/esm/tracing/vercel-ai/utils.js.map +1 -1
- package/build/esm/tracing/vercel-ai/vercel-ai-attributes.js +22 -229
- package/build/esm/tracing/vercel-ai/vercel-ai-attributes.js.map +1 -1
- package/build/esm/transports/base.js +32 -67
- package/build/esm/transports/base.js.map +1 -1
- package/build/esm/transports/multiplexed.js +38 -103
- package/build/esm/transports/multiplexed.js.map +1 -1
- package/build/esm/transports/offline.js +31 -72
- package/build/esm/transports/offline.js.map +1 -1
- package/build/esm/transports/userAgent.js +4 -13
- package/build/esm/transports/userAgent.js.map +1 -1
- package/build/esm/trpc.js +19 -39
- package/build/esm/trpc.js.map +1 -1
- package/build/esm/utils/aggregate-errors.js +18 -62
- package/build/esm/utils/aggregate-errors.js.map +1 -1
- package/build/esm/utils/ai/providerSkip.js +3 -50
- package/build/esm/utils/ai/providerSkip.js.map +1 -1
- package/build/esm/utils/anr.js +7 -36
- package/build/esm/utils/anr.js.map +1 -1
- package/build/esm/utils/baggage.js +37 -146
- package/build/esm/utils/baggage.js.map +1 -1
- package/build/esm/utils/breadcrumb-log-level.js +5 -9
- package/build/esm/utils/breadcrumb-log-level.js.map +1 -1
- package/build/esm/utils/browser.js +24 -86
- package/build/esm/utils/browser.js.map +1 -1
- package/build/esm/utils/chain-and-copy-promiselike.js +10 -27
- package/build/esm/utils/chain-and-copy-promiselike.js.map +1 -1
- package/build/esm/utils/clientreport.js +4 -13
- package/build/esm/utils/clientreport.js.map +1 -1
- package/build/esm/utils/cookie.js +6 -53
- package/build/esm/utils/cookie.js.map +1 -1
- package/build/esm/utils/data-collection/defaultPiiToCollectionOptions.js +26 -0
- package/build/esm/utils/data-collection/defaultPiiToCollectionOptions.js.map +1 -0
- package/build/esm/utils/data-collection/filterCookies.js +21 -0
- package/build/esm/utils/data-collection/filterCookies.js.map +1 -0
- package/build/esm/utils/data-collection/filterKeyValueData.js +41 -0
- package/build/esm/utils/data-collection/filterKeyValueData.js.map +1 -0
- package/build/esm/utils/data-collection/filterQueryParams.js +24 -0
- package/build/esm/utils/data-collection/filterQueryParams.js.map +1 -0
- package/build/esm/utils/data-collection/filtering-snippets.js +56 -0
- package/build/esm/utils/data-collection/filtering-snippets.js.map +1 -0
- package/build/esm/utils/data-collection/resolveDataCollectionOptions.js +35 -0
- package/build/esm/utils/data-collection/resolveDataCollectionOptions.js.map +1 -0
- package/build/esm/utils/debounce.js +5 -32
- package/build/esm/utils/debounce.js.map +1 -1
- package/build/esm/utils/debug-ids.js +4 -42
- package/build/esm/utils/debug-ids.js.map +1 -1
- package/build/esm/utils/debug-logger.js +23 -56
- package/build/esm/utils/debug-logger.js.map +1 -1
- package/build/esm/utils/dsn.js +18 -81
- package/build/esm/utils/dsn.js.map +1 -1
- package/build/esm/utils/env.js +3 -27
- package/build/esm/utils/env.js.map +1 -1
- package/build/esm/utils/envToBool.js +2 -15
- package/build/esm/utils/envToBool.js.map +1 -1
- package/build/esm/utils/envelope.js +39 -133
- package/build/esm/utils/envelope.js.map +1 -1
- package/build/esm/utils/error.js +3 -10
- package/build/esm/utils/error.js.map +1 -1
- package/build/esm/utils/eventUtils.js +0 -8
- package/build/esm/utils/eventUtils.js.map +1 -1
- package/build/esm/utils/eventbuilder.js +30 -114
- package/build/esm/utils/eventbuilder.js.map +1 -1
- package/build/esm/utils/exports.js +5 -24
- package/build/esm/utils/exports.js.map +1 -1
- package/build/esm/utils/featureFlags.js +10 -96
- package/build/esm/utils/featureFlags.js.map +1 -1
- package/build/esm/utils/flushIfServerless.js +14 -48
- package/build/esm/utils/flushIfServerless.js.map +1 -1
- package/build/esm/utils/get-default-export.js +1 -25
- package/build/esm/utils/get-default-export.js.map +1 -1
- package/build/esm/utils/handleCallbackErrors.js +10 -48
- package/build/esm/utils/handleCallbackErrors.js.map +1 -1
- package/build/esm/utils/hasSpansEnabled.js +4 -28
- package/build/esm/utils/hasSpansEnabled.js.map +1 -1
- package/build/esm/utils/ipAddress.js +7 -19
- package/build/esm/utils/ipAddress.js.map +1 -1
- package/build/esm/utils/is.js +18 -163
- package/build/esm/utils/is.js.map +1 -1
- package/build/esm/utils/isBrowser.js +3 -9
- package/build/esm/utils/isBrowser.js.map +1 -1
- package/build/esm/utils/isSentryRequestUrl.js +2 -19
- package/build/esm/utils/isSentryRequestUrl.js.map +1 -1
- package/build/esm/utils/lru.js +13 -24
- package/build/esm/utils/lru.js.map +1 -1
- package/build/esm/utils/merge.js +1 -17
- package/build/esm/utils/merge.js.map +1 -1
- package/build/esm/utils/meta.js +1 -24
- package/build/esm/utils/meta.js.map +1 -1
- package/build/esm/utils/misc.js +31 -134
- package/build/esm/utils/misc.js.map +1 -1
- package/build/esm/utils/node-stack-trace.js +22 -61
- package/build/esm/utils/node-stack-trace.js.map +1 -1
- package/build/esm/utils/node.js +3 -48
- package/build/esm/utils/node.js.map +1 -1
- package/build/esm/utils/normalizationHints.js +5 -18
- package/build/esm/utils/normalizationHints.js.map +1 -1
- package/build/esm/utils/normalize.js +39 -205
- package/build/esm/utils/normalize.js.map +1 -1
- package/build/esm/utils/object.js +33 -168
- package/build/esm/utils/object.js.map +1 -1
- package/build/esm/utils/parameterize.js +2 -21
- package/build/esm/utils/parameterize.js.map +1 -1
- package/build/esm/utils/parseSampleRate.js +4 -13
- package/build/esm/utils/parseSampleRate.js.map +1 -1
- package/build/esm/utils/path.js +28 -115
- package/build/esm/utils/path.js.map +1 -1
- package/build/esm/utils/prepareEvent.js +53 -191
- package/build/esm/utils/prepareEvent.js.map +1 -1
- package/build/esm/utils/promisebuffer.js +5 -47
- package/build/esm/utils/promisebuffer.js.map +1 -1
- package/build/esm/utils/propagationContext.js +0 -7
- package/build/esm/utils/propagationContext.js.map +1 -1
- package/build/esm/utils/randomSafeContext.js +3 -22
- package/build/esm/utils/randomSafeContext.js.map +1 -1
- package/build/esm/utils/ratelimit.js +13 -66
- package/build/esm/utils/ratelimit.js.map +1 -1
- package/build/esm/utils/request.js +62 -269
- package/build/esm/utils/request.js.map +1 -1
- package/build/esm/utils/scopeData.js +15 -79
- package/build/esm/utils/scopeData.js.map +1 -1
- package/build/esm/utils/sdkMetadata.js +5 -19
- package/build/esm/utils/sdkMetadata.js.map +1 -1
- package/build/esm/utils/severity.js +1 -9
- package/build/esm/utils/severity.js.map +1 -1
- package/build/esm/utils/should-ignore-span.js +6 -38
- package/build/esm/utils/should-ignore-span.js.map +1 -1
- package/build/esm/utils/spanOnScope.js +3 -14
- package/build/esm/utils/spanOnScope.js.map +1 -1
- package/build/esm/utils/spanUtils.js +42 -222
- package/build/esm/utils/spanUtils.js.map +1 -1
- package/build/esm/utils/stacktrace.js +19 -106
- package/build/esm/utils/stacktrace.js.map +1 -1
- package/build/esm/utils/string.js +7 -75
- package/build/esm/utils/string.js.map +1 -1
- package/build/esm/utils/supports.js +14 -99
- package/build/esm/utils/supports.js.map +1 -1
- package/build/esm/utils/syncpromise.js +19 -68
- package/build/esm/utils/syncpromise.js.map +1 -1
- package/build/esm/utils/time.js +7 -84
- package/build/esm/utils/time.js.map +1 -1
- package/build/esm/utils/timer.js +1 -10
- package/build/esm/utils/timer.js.map +1 -1
- package/build/esm/utils/timestampSequence.js +5 -21
- package/build/esm/utils/timestampSequence.js.map +1 -1
- package/build/esm/utils/trace-info.js +3 -10
- package/build/esm/utils/trace-info.js.map +1 -1
- package/build/esm/utils/traceData.js +4 -39
- package/build/esm/utils/traceData.js.map +1 -1
- package/build/esm/utils/tracePropagationTargets.js +4 -18
- package/build/esm/utils/tracePropagationTargets.js.map +1 -1
- package/build/esm/utils/tracing.js +32 -106
- package/build/esm/utils/tracing.js.map +1 -1
- package/build/esm/utils/transactionEvent.js +11 -19
- package/build/esm/utils/transactionEvent.js.map +1 -1
- package/build/esm/utils/tunnel.js +12 -33
- package/build/esm/utils/tunnel.js.map +1 -1
- package/build/esm/utils/url.js +42 -176
- package/build/esm/utils/url.js.map +1 -1
- package/build/esm/utils/vercelWaitUntil.js +4 -12
- package/build/esm/utils/vercelWaitUntil.js.map +1 -1
- package/build/esm/utils/version.js +1 -3
- package/build/esm/utils/version.js.map +1 -1
- package/build/esm/utils/weakRef.js +5 -36
- package/build/esm/utils/weakRef.js.map +1 -1
- package/build/esm/utils/worldwide.js +1 -4
- package/build/esm/utils/worldwide.js.map +1 -1
- package/build/esm/vendor/escapeStringForRegex.js +1 -32
- package/build/esm/vendor/escapeStringForRegex.js.map +1 -1
- package/build/esm/vendor/getIpAddress.js +19 -99
- package/build/esm/vendor/getIpAddress.js.map +1 -1
- package/build/types/api.d.ts +2 -2
- package/build/types/api.d.ts.map +1 -1
- package/build/types/attributes.d.ts +5 -8
- package/build/types/attributes.d.ts.map +1 -1
- package/build/types/breadcrumbs.d.ts +1 -1
- package/build/types/breadcrumbs.d.ts.map +1 -1
- package/build/types/browser-exports.d.ts +3 -3
- package/build/types/browser-exports.d.ts.map +1 -1
- package/build/types/carrier.d.ts +2 -2
- package/build/types/carrier.d.ts.map +1 -1
- package/build/types/checkin.d.ts +4 -4
- package/build/types/checkin.d.ts.map +1 -1
- package/build/types/client.d.ts +32 -22
- package/build/types/client.d.ts.map +1 -1
- package/build/types/currentScopes.d.ts +1 -1
- package/build/types/currentScopes.d.ts.map +1 -1
- package/build/types/envelope.d.ts +7 -7
- package/build/types/envelope.d.ts.map +1 -1
- package/build/types/eventProcessors.d.ts +2 -2
- package/build/types/eventProcessors.d.ts.map +1 -1
- package/build/types/exports.d.ts +8 -8
- package/build/types/exports.d.ts.map +1 -1
- package/build/types/feedback.d.ts +2 -2
- package/build/types/feedback.d.ts.map +1 -1
- package/build/types/fetch.d.ts +3 -3
- package/build/types/fetch.d.ts.map +1 -1
- package/build/types/instrument/console.d.ts +1 -1
- package/build/types/instrument/console.d.ts.map +1 -1
- package/build/types/instrument/fetch.d.ts +1 -1
- package/build/types/instrument/fetch.d.ts.map +1 -1
- package/build/types/instrument/globalError.d.ts +1 -1
- package/build/types/instrument/globalError.d.ts.map +1 -1
- package/build/types/instrument/globalUnhandledRejection.d.ts +1 -1
- package/build/types/instrument/globalUnhandledRejection.d.ts.map +1 -1
- package/build/types/integration.d.ts +2 -2
- package/build/types/integration.d.ts.map +1 -1
- package/build/types/integrations/consola.d.ts +1 -1
- package/build/types/integrations/consola.d.ts.map +1 -1
- package/build/types/integrations/console.d.ts +1 -1
- package/build/types/integrations/console.d.ts.map +1 -1
- package/build/types/integrations/dedupe.d.ts +1 -1
- package/build/types/integrations/dedupe.d.ts.map +1 -1
- package/build/types/integrations/express/types.d.ts +2 -2
- package/build/types/integrations/express/types.d.ts.map +1 -1
- package/build/types/integrations/express/utils.d.ts +1 -1
- package/build/types/integrations/express/utils.d.ts.map +1 -1
- package/build/types/integrations/featureFlags/featureFlagsIntegration.d.ts +1 -1
- package/build/types/integrations/featureFlags/featureFlagsIntegration.d.ts.map +1 -1
- package/build/types/integrations/featureFlags/growthbook.d.ts +1 -1
- package/build/types/integrations/featureFlags/growthbook.d.ts.map +1 -1
- package/build/types/integrations/http/double-wrap-warning.d.ts +1 -1
- package/build/types/integrations/http/double-wrap-warning.d.ts.map +1 -1
- package/build/types/integrations/http/get-outgoing-span-data.d.ts +2 -2
- package/build/types/integrations/http/get-outgoing-span-data.d.ts.map +1 -1
- package/build/types/integrations/http/patch-request-to-capture-body.d.ts +12 -0
- package/build/types/integrations/http/patch-request-to-capture-body.d.ts.map +1 -0
- package/build/types/integrations/http/record-request-session.d.ts +18 -0
- package/build/types/integrations/http/record-request-session.d.ts.map +1 -0
- package/build/types/integrations/http/server-subscription.d.ts +26 -0
- package/build/types/integrations/http/server-subscription.d.ts.map +1 -0
- package/build/types/integrations/http/types.d.ts +12 -6
- package/build/types/integrations/http/types.d.ts.map +1 -1
- package/build/types/integrations/mcp-server/correlation.d.ts +1 -1
- package/build/types/integrations/mcp-server/correlation.d.ts.map +1 -1
- package/build/types/integrations/mcp-server/piiFiltering.d.ts +1 -1
- package/build/types/integrations/mcp-server/piiFiltering.d.ts.map +1 -1
- package/build/types/integrations/mcp-server/types.d.ts +1 -1
- package/build/types/integrations/mcp-server/types.d.ts.map +1 -1
- package/build/types/integrations/postgresjs.d.ts +1 -1
- package/build/types/integrations/postgresjs.d.ts.map +1 -1
- package/build/types/integrations/rewriteframes.d.ts +1 -1
- package/build/types/integrations/rewriteframes.d.ts.map +1 -1
- package/build/types/integrations/supabase.d.ts +14 -3
- package/build/types/integrations/supabase.d.ts.map +1 -1
- package/build/types/integrations/third-party-errors-filter.d.ts.map +1 -1
- package/build/types/integrations/zoderrors.d.ts +1 -1
- package/build/types/integrations/zoderrors.d.ts.map +1 -1
- package/build/types/logs/console-integration.d.ts +1 -1
- package/build/types/logs/console-integration.d.ts.map +1 -1
- package/build/types/logs/constants.d.ts +1 -1
- package/build/types/logs/constants.d.ts.map +1 -1
- package/build/types/logs/envelope.d.ts +4 -4
- package/build/types/logs/envelope.d.ts.map +1 -1
- package/build/types/logs/internal.d.ts +16 -1
- package/build/types/logs/internal.d.ts.map +1 -1
- package/build/types/logs/public-api.d.ts +2 -2
- package/build/types/logs/public-api.d.ts.map +1 -1
- package/build/types/metadata.d.ts +2 -2
- package/build/types/metadata.d.ts.map +1 -1
- package/build/types/metrics/envelope.d.ts +4 -4
- package/build/types/metrics/envelope.d.ts.map +1 -1
- package/build/types/metrics/internal.d.ts +1 -1
- package/build/types/metrics/internal.d.ts.map +1 -1
- package/build/types/metrics/public-api.d.ts +1 -1
- package/build/types/metrics/public-api.d.ts.map +1 -1
- package/build/types/profiling.d.ts +1 -1
- package/build/types/profiling.d.ts.map +1 -1
- package/build/types/report-dialog.d.ts +1 -1
- package/build/types/report-dialog.d.ts.map +1 -1
- package/build/types/scope.d.ts +14 -14
- package/build/types/scope.d.ts.map +1 -1
- package/build/types/sdk.d.ts +1 -1
- package/build/types/sdk.d.ts.map +1 -1
- package/build/types/semanticAttributes.d.ts +6 -4
- package/build/types/semanticAttributes.d.ts.map +1 -1
- package/build/types/server-exports.d.ts +3 -1
- package/build/types/server-exports.d.ts.map +1 -1
- package/build/types/server-runtime-client.d.ts +6 -6
- package/build/types/server-runtime-client.d.ts.map +1 -1
- package/build/types/session.d.ts +1 -1
- package/build/types/session.d.ts.map +1 -1
- package/build/types/shared-exports.d.ts +58 -53
- package/build/types/shared-exports.d.ts.map +1 -1
- package/build/types/tracing/ai/utils.d.ts +1 -1
- package/build/types/tracing/ai/utils.d.ts.map +1 -1
- package/build/types/tracing/anthropic-ai/streaming.d.ts +1 -1
- package/build/types/tracing/anthropic-ai/streaming.d.ts.map +1 -1
- package/build/types/tracing/anthropic-ai/utils.d.ts +2 -2
- package/build/types/tracing/anthropic-ai/utils.d.ts.map +1 -1
- package/build/types/tracing/dynamicSamplingContext.d.ts +2 -2
- package/build/types/tracing/dynamicSamplingContext.d.ts.map +1 -1
- package/build/types/tracing/google-genai/streaming.d.ts +1 -1
- package/build/types/tracing/google-genai/streaming.d.ts.map +1 -1
- package/build/types/tracing/idleSpan.d.ts +2 -2
- package/build/types/tracing/idleSpan.d.ts.map +1 -1
- package/build/types/tracing/langchain/utils.d.ts +6 -1
- package/build/types/tracing/langchain/utils.d.ts.map +1 -1
- package/build/types/tracing/langgraph/index.d.ts.map +1 -1
- package/build/types/tracing/langgraph/utils.d.ts +1 -3
- package/build/types/tracing/langgraph/utils.d.ts.map +1 -1
- package/build/types/tracing/logSpans.d.ts +1 -1
- package/build/types/tracing/logSpans.d.ts.map +1 -1
- package/build/types/tracing/measurement.d.ts +2 -2
- package/build/types/tracing/measurement.d.ts.map +1 -1
- package/build/types/tracing/openai/streaming.d.ts +1 -1
- package/build/types/tracing/openai/streaming.d.ts.map +1 -1
- package/build/types/tracing/openai/utils.d.ts +1 -1
- package/build/types/tracing/openai/utils.d.ts.map +1 -1
- package/build/types/tracing/sampling.d.ts +2 -2
- package/build/types/tracing/sampling.d.ts.map +1 -1
- package/build/types/tracing/sentryNonRecordingSpan.d.ts +3 -3
- package/build/types/tracing/sentryNonRecordingSpan.d.ts.map +1 -1
- package/build/types/tracing/sentrySpan.d.ts +4 -4
- package/build/types/tracing/sentrySpan.d.ts.map +1 -1
- package/build/types/tracing/spans/beforeSendSpan.d.ts +3 -3
- package/build/types/tracing/spans/beforeSendSpan.d.ts.map +1 -1
- package/build/types/tracing/spans/captureSpan.d.ts +1 -1
- package/build/types/tracing/spans/captureSpan.d.ts.map +1 -1
- package/build/types/tracing/spans/envelope.d.ts +2 -2
- package/build/types/tracing/spans/envelope.d.ts.map +1 -1
- package/build/types/tracing/spans/estimateSize.d.ts +1 -1
- package/build/types/tracing/spans/estimateSize.d.ts.map +1 -1
- package/build/types/tracing/spans/extractGenAiSpans.d.ts +2 -2
- package/build/types/tracing/spans/extractGenAiSpans.d.ts.map +1 -1
- package/build/types/tracing/spans/scopeContextAttributes.d.ts +9 -0
- package/build/types/tracing/spans/scopeContextAttributes.d.ts.map +1 -0
- package/build/types/tracing/spans/spanJsonToStreamedSpan.d.ts +1 -1
- package/build/types/tracing/spans/spanJsonToStreamedSpan.d.ts.map +1 -1
- package/build/types/tracing/spanstatus.d.ts +2 -2
- package/build/types/tracing/spanstatus.d.ts.map +1 -1
- package/build/types/tracing/trace.d.ts +2 -2
- package/build/types/tracing/trace.d.ts.map +1 -1
- package/build/types/tracing/utils.d.ts +1 -1
- package/build/types/tracing/utils.d.ts.map +1 -1
- package/build/types/tracing/vercel-ai/utils.d.ts +2 -2
- package/build/types/tracing/vercel-ai/utils.d.ts.map +1 -1
- package/build/types/transports/base.d.ts +1 -1
- package/build/types/transports/base.d.ts.map +1 -1
- package/build/types/transports/multiplexed.d.ts +3 -3
- package/build/types/transports/multiplexed.d.ts.map +1 -1
- package/build/types/transports/offline.d.ts +2 -2
- package/build/types/transports/offline.d.ts.map +1 -1
- package/build/types/transports/userAgent.d.ts +1 -1
- package/build/types/transports/userAgent.d.ts.map +1 -1
- package/build/types/trpc.d.ts.map +1 -1
- package/build/types/types/attachment.d.ts.map +1 -0
- package/build/types/types/breadcrumb.d.ts.map +1 -0
- package/build/types/types/browseroptions.d.ts.map +1 -0
- package/build/types/types/checkin.d.ts.map +1 -0
- package/build/types/types/clientreport.d.ts.map +1 -0
- package/build/types/types/context.d.ts.map +1 -0
- package/build/types/types/csp.d.ts.map +1 -0
- package/build/types/types/datacategory.d.ts.map +1 -0
- package/build/types/types/datacollection.d.ts +75 -0
- package/build/types/types/datacollection.d.ts.map +1 -0
- package/build/types/types/debugMeta.d.ts.map +1 -0
- package/build/types/types/dsn.d.ts.map +1 -0
- package/build/types/types/envelope.d.ts.map +1 -0
- package/build/types/types/error.d.ts.map +1 -0
- package/build/types/types/event.d.ts.map +1 -0
- package/build/types/types/eventprocessor.d.ts.map +1 -0
- package/build/types/types/exception.d.ts.map +1 -0
- package/build/types/types/extra.d.ts.map +1 -0
- package/build/types/types/feedback/config.d.ts.map +1 -0
- package/build/types/types/feedback/form.d.ts.map +1 -0
- package/build/types/types/feedback/index.d.ts.map +1 -0
- package/build/types/types/feedback/sendFeedback.d.ts.map +1 -0
- package/build/types/types/feedback/theme.d.ts.map +1 -0
- package/build/types/types/instrument.d.ts.map +1 -0
- package/build/types/types/integration.d.ts.map +1 -0
- package/build/types/types/link.d.ts.map +1 -0
- package/build/types/types/log.d.ts.map +1 -0
- package/build/types/types/measurement.d.ts.map +1 -0
- package/build/types/types/mechanism.d.ts.map +1 -0
- package/build/types/types/metric.d.ts.map +1 -0
- package/build/types/types/misc.d.ts.map +1 -0
- package/build/types/types/opentelemetry.d.ts.map +1 -0
- package/build/types/{types-hoist → types}/options.d.ts +17 -0
- package/build/types/types/options.d.ts.map +1 -0
- package/build/types/types/package.d.ts.map +1 -0
- package/build/types/types/parameterize.d.ts.map +1 -0
- package/build/types/types/polymorphics.d.ts.map +1 -0
- package/build/types/types/profiling.d.ts.map +1 -0
- package/build/types/types/replay.d.ts.map +1 -0
- package/build/types/types/request.d.ts.map +1 -0
- package/build/types/types/runtime.d.ts.map +1 -0
- package/build/types/{types-hoist → types}/samplingcontext.d.ts +1 -1
- package/build/types/types/samplingcontext.d.ts.map +1 -0
- package/build/types/types/sdkinfo.d.ts.map +1 -0
- package/build/types/types/sdkmetadata.d.ts.map +1 -0
- package/build/types/types/session.d.ts.map +1 -0
- package/build/types/types/severity.d.ts.map +1 -0
- package/build/types/types/span.d.ts.map +1 -0
- package/build/types/types/spanStatus.d.ts.map +1 -0
- package/build/types/types/stackframe.d.ts.map +1 -0
- package/build/types/types/stacktrace.d.ts.map +1 -0
- package/build/types/{types-hoist → types}/startSpanOptions.d.ts +13 -0
- package/build/types/types/startSpanOptions.d.ts.map +1 -0
- package/build/types/types/thread.d.ts.map +1 -0
- package/build/types/types/timedEvent.d.ts.map +1 -0
- package/build/types/types/tracing.d.ts.map +1 -0
- package/build/types/types/transaction.d.ts.map +1 -0
- package/build/types/types/transport.d.ts.map +1 -0
- package/build/types/types/user.d.ts.map +1 -0
- package/build/types/types/view-hierarchy.d.ts.map +1 -0
- package/build/types/types/vue.d.ts.map +1 -0
- package/build/types/types/webfetchapi.d.ts.map +1 -0
- package/build/types/types/wrappedfunction.d.ts.map +1 -0
- package/build/types/utils/aggregate-errors.d.ts +3 -3
- package/build/types/utils/aggregate-errors.d.ts.map +1 -1
- package/build/types/utils/anr.d.ts +1 -1
- package/build/types/utils/anr.d.ts.map +1 -1
- package/build/types/utils/baggage.d.ts +1 -1
- package/build/types/utils/baggage.d.ts.map +1 -1
- package/build/types/utils/breadcrumb-log-level.d.ts +1 -1
- package/build/types/utils/breadcrumb-log-level.d.ts.map +1 -1
- package/build/types/utils/clientreport.d.ts +2 -2
- package/build/types/utils/clientreport.d.ts.map +1 -1
- package/build/types/utils/data-collection/defaultPiiToCollectionOptions.d.ts +6 -0
- package/build/types/utils/data-collection/defaultPiiToCollectionOptions.d.ts.map +1 -0
- package/build/types/utils/data-collection/filterCookies.d.ts +9 -0
- package/build/types/utils/data-collection/filterCookies.d.ts.map +1 -0
- package/build/types/utils/data-collection/filterKeyValueData.d.ts +11 -0
- package/build/types/utils/data-collection/filterKeyValueData.d.ts.map +1 -0
- package/build/types/utils/data-collection/filterQueryParams.d.ts +9 -0
- package/build/types/utils/data-collection/filterQueryParams.d.ts.map +1 -0
- package/build/types/utils/data-collection/filtering-snippets.d.ts +14 -0
- package/build/types/utils/data-collection/filtering-snippets.d.ts.map +1 -0
- package/build/types/utils/data-collection/resolveDataCollectionOptions.d.ts +14 -0
- package/build/types/utils/data-collection/resolveDataCollectionOptions.d.ts.map +1 -0
- package/build/types/utils/debug-ids.d.ts +2 -2
- package/build/types/utils/debug-ids.d.ts.map +1 -1
- package/build/types/utils/debug-logger.d.ts +1 -1
- package/build/types/utils/debug-logger.d.ts.map +1 -1
- package/build/types/utils/dsn.d.ts +1 -1
- package/build/types/utils/dsn.d.ts.map +1 -1
- package/build/types/utils/env.d.ts.map +1 -1
- package/build/types/utils/envelope.d.ts +8 -8
- package/build/types/utils/envelope.d.ts.map +1 -1
- package/build/types/utils/error.d.ts +1 -1
- package/build/types/utils/error.d.ts.map +1 -1
- package/build/types/utils/eventUtils.d.ts +1 -1
- package/build/types/utils/eventUtils.d.ts.map +1 -1
- package/build/types/utils/eventbuilder.d.ts +6 -6
- package/build/types/utils/eventbuilder.d.ts.map +1 -1
- package/build/types/utils/featureFlags.d.ts +1 -1
- package/build/types/utils/featureFlags.d.ts.map +1 -1
- package/build/types/utils/hasSpansEnabled.d.ts +1 -1
- package/build/types/utils/hasSpansEnabled.d.ts.map +1 -1
- package/build/types/utils/ipAddress.d.ts +2 -2
- package/build/types/utils/ipAddress.d.ts.map +1 -1
- package/build/types/utils/is.d.ts +4 -4
- package/build/types/utils/is.d.ts.map +1 -1
- package/build/types/utils/meta.d.ts +1 -1
- package/build/types/utils/meta.d.ts.map +1 -1
- package/build/types/utils/misc.d.ts +3 -3
- package/build/types/utils/misc.d.ts.map +1 -1
- package/build/types/utils/node-stack-trace.d.ts +1 -1
- package/build/types/utils/node-stack-trace.d.ts.map +1 -1
- package/build/types/utils/object.d.ts +1 -1
- package/build/types/utils/object.d.ts.map +1 -1
- package/build/types/utils/parameterize.d.ts +1 -1
- package/build/types/utils/parameterize.d.ts.map +1 -1
- package/build/types/utils/prepareEvent.d.ts +3 -3
- package/build/types/utils/prepareEvent.d.ts.map +1 -1
- package/build/types/utils/ratelimit.d.ts +2 -2
- package/build/types/utils/ratelimit.d.ts.map +1 -1
- package/build/types/utils/request.d.ts +3 -3
- package/build/types/utils/request.d.ts.map +1 -1
- package/build/types/utils/scopeData.d.ts +1 -1
- package/build/types/utils/scopeData.d.ts.map +1 -1
- package/build/types/utils/sdkMetadata.d.ts +1 -1
- package/build/types/utils/sdkMetadata.d.ts.map +1 -1
- package/build/types/utils/severity.d.ts +1 -1
- package/build/types/utils/severity.d.ts.map +1 -1
- package/build/types/utils/should-ignore-span.d.ts +2 -2
- package/build/types/utils/should-ignore-span.d.ts.map +1 -1
- package/build/types/utils/spanOnScope.d.ts +1 -1
- package/build/types/utils/spanOnScope.d.ts.map +1 -1
- package/build/types/utils/spanUtils.d.ts +4 -4
- package/build/types/utils/spanUtils.d.ts.map +1 -1
- package/build/types/utils/stacktrace.d.ts +4 -4
- package/build/types/utils/stacktrace.d.ts.map +1 -1
- package/build/types/utils/trace-info.d.ts +2 -2
- package/build/types/utils/trace-info.d.ts.map +1 -1
- package/build/types/utils/traceData.d.ts +2 -2
- package/build/types/utils/traceData.d.ts.map +1 -1
- package/build/types/utils/tracePropagationTargets.d.ts +1 -1
- package/build/types/utils/tracePropagationTargets.d.ts.map +1 -1
- package/build/types/utils/tracing.d.ts +2 -2
- package/build/types/utils/tracing.d.ts.map +1 -1
- package/build/types/utils/transactionEvent.d.ts +2 -2
- package/build/types/utils/transactionEvent.d.ts.map +1 -1
- package/build/types/utils/url.d.ts +1 -1
- package/build/types/utils/url.d.ts.map +1 -1
- package/build/types/utils/worldwide.d.ts +1 -0
- package/build/types/utils/worldwide.d.ts.map +1 -1
- package/build/types-ts3.8/api.d.ts +2 -2
- package/build/types-ts3.8/attributes.d.ts +5 -8
- package/build/types-ts3.8/breadcrumbs.d.ts +1 -1
- package/build/types-ts3.8/browser-exports.d.ts +3 -3
- package/build/types-ts3.8/carrier.d.ts +2 -2
- package/build/types-ts3.8/checkin.d.ts +4 -4
- package/build/types-ts3.8/client.d.ts +32 -22
- package/build/types-ts3.8/currentScopes.d.ts +1 -1
- package/build/types-ts3.8/envelope.d.ts +7 -7
- package/build/types-ts3.8/eventProcessors.d.ts +2 -2
- package/build/types-ts3.8/exports.d.ts +8 -8
- package/build/types-ts3.8/feedback.d.ts +2 -2
- package/build/types-ts3.8/fetch.d.ts +3 -3
- package/build/types-ts3.8/instrument/console.d.ts +1 -1
- package/build/types-ts3.8/instrument/fetch.d.ts +1 -1
- package/build/types-ts3.8/instrument/globalError.d.ts +1 -1
- package/build/types-ts3.8/instrument/globalUnhandledRejection.d.ts +1 -1
- package/build/types-ts3.8/integration.d.ts +2 -2
- package/build/types-ts3.8/integrations/consola.d.ts +1 -1
- package/build/types-ts3.8/integrations/console.d.ts +1 -1
- package/build/types-ts3.8/integrations/dedupe.d.ts +1 -1
- package/build/types-ts3.8/integrations/express/types.d.ts +2 -2
- package/build/types-ts3.8/integrations/express/utils.d.ts +1 -1
- package/build/types-ts3.8/integrations/featureFlags/featureFlagsIntegration.d.ts +1 -1
- package/build/types-ts3.8/integrations/featureFlags/growthbook.d.ts +1 -1
- package/build/types-ts3.8/integrations/http/double-wrap-warning.d.ts +1 -1
- package/build/types-ts3.8/integrations/http/get-outgoing-span-data.d.ts +2 -2
- package/build/types-ts3.8/integrations/http/patch-request-to-capture-body.d.ts +12 -0
- package/build/types-ts3.8/integrations/http/record-request-session.d.ts +18 -0
- package/build/types-ts3.8/integrations/http/server-subscription.d.ts +26 -0
- package/build/types-ts3.8/integrations/http/types.d.ts +12 -6
- package/build/types-ts3.8/integrations/mcp-server/correlation.d.ts +1 -1
- package/build/types-ts3.8/integrations/mcp-server/piiFiltering.d.ts +1 -1
- package/build/types-ts3.8/integrations/mcp-server/types.d.ts +1 -1
- package/build/types-ts3.8/integrations/postgresjs.d.ts +1 -1
- package/build/types-ts3.8/integrations/rewriteframes.d.ts +1 -1
- package/build/types-ts3.8/integrations/supabase.d.ts +14 -3
- package/build/types-ts3.8/integrations/zoderrors.d.ts +1 -1
- package/build/types-ts3.8/logs/console-integration.d.ts +1 -1
- package/build/types-ts3.8/logs/constants.d.ts +1 -1
- package/build/types-ts3.8/logs/envelope.d.ts +4 -4
- package/build/types-ts3.8/logs/internal.d.ts +16 -1
- package/build/types-ts3.8/logs/public-api.d.ts +2 -2
- package/build/types-ts3.8/metadata.d.ts +2 -2
- package/build/types-ts3.8/metrics/envelope.d.ts +4 -4
- package/build/types-ts3.8/metrics/internal.d.ts +1 -1
- package/build/types-ts3.8/metrics/public-api.d.ts +1 -1
- package/build/types-ts3.8/profiling.d.ts +1 -1
- package/build/types-ts3.8/report-dialog.d.ts +1 -1
- package/build/types-ts3.8/scope.d.ts +14 -14
- package/build/types-ts3.8/sdk.d.ts +1 -1
- package/build/types-ts3.8/semanticAttributes.d.ts +6 -4
- package/build/types-ts3.8/server-exports.d.ts +3 -1
- package/build/types-ts3.8/server-runtime-client.d.ts +6 -6
- package/build/types-ts3.8/session.d.ts +1 -1
- package/build/types-ts3.8/shared-exports.d.ts +58 -53
- package/build/types-ts3.8/tracing/ai/utils.d.ts +1 -1
- package/build/types-ts3.8/tracing/anthropic-ai/streaming.d.ts +1 -1
- package/build/types-ts3.8/tracing/anthropic-ai/utils.d.ts +2 -2
- package/build/types-ts3.8/tracing/dynamicSamplingContext.d.ts +2 -2
- package/build/types-ts3.8/tracing/google-genai/streaming.d.ts +1 -1
- package/build/types-ts3.8/tracing/idleSpan.d.ts +2 -2
- package/build/types-ts3.8/tracing/langchain/utils.d.ts +6 -1
- package/build/types-ts3.8/tracing/langgraph/utils.d.ts +1 -3
- package/build/types-ts3.8/tracing/logSpans.d.ts +1 -1
- package/build/types-ts3.8/tracing/measurement.d.ts +2 -2
- package/build/types-ts3.8/tracing/openai/streaming.d.ts +1 -1
- package/build/types-ts3.8/tracing/openai/utils.d.ts +1 -1
- package/build/types-ts3.8/tracing/sampling.d.ts +2 -2
- package/build/types-ts3.8/tracing/sentryNonRecordingSpan.d.ts +3 -3
- package/build/types-ts3.8/tracing/sentrySpan.d.ts +4 -4
- package/build/types-ts3.8/tracing/spans/beforeSendSpan.d.ts +3 -3
- package/build/types-ts3.8/tracing/spans/captureSpan.d.ts +1 -1
- package/build/types-ts3.8/tracing/spans/envelope.d.ts +2 -2
- package/build/types-ts3.8/tracing/spans/estimateSize.d.ts +1 -1
- package/build/types-ts3.8/tracing/spans/extractGenAiSpans.d.ts +2 -2
- package/build/types-ts3.8/tracing/spans/scopeContextAttributes.d.ts +9 -0
- package/build/types-ts3.8/tracing/spans/spanJsonToStreamedSpan.d.ts +1 -1
- package/build/types-ts3.8/tracing/spanstatus.d.ts +2 -2
- package/build/types-ts3.8/tracing/trace.d.ts +2 -2
- package/build/types-ts3.8/tracing/utils.d.ts +1 -1
- package/build/types-ts3.8/tracing/vercel-ai/utils.d.ts +2 -2
- package/build/types-ts3.8/transports/base.d.ts +1 -1
- package/build/types-ts3.8/transports/multiplexed.d.ts +3 -3
- package/build/types-ts3.8/transports/offline.d.ts +2 -2
- package/build/types-ts3.8/transports/userAgent.d.ts +1 -1
- package/build/types-ts3.8/types/datacollection.d.ts +75 -0
- package/build/types-ts3.8/{types-hoist → types}/options.d.ts +17 -0
- package/build/types-ts3.8/{types-hoist → types}/samplingcontext.d.ts +1 -1
- package/build/types-ts3.8/{types-hoist → types}/startSpanOptions.d.ts +13 -0
- package/build/types-ts3.8/utils/aggregate-errors.d.ts +3 -3
- package/build/types-ts3.8/utils/anr.d.ts +1 -1
- package/build/types-ts3.8/utils/baggage.d.ts +1 -1
- package/build/types-ts3.8/utils/breadcrumb-log-level.d.ts +1 -1
- package/build/types-ts3.8/utils/clientreport.d.ts +2 -2
- package/build/types-ts3.8/utils/data-collection/defaultPiiToCollectionOptions.d.ts +6 -0
- package/build/types-ts3.8/utils/data-collection/filterCookies.d.ts +9 -0
- package/build/types-ts3.8/utils/data-collection/filterKeyValueData.d.ts +11 -0
- package/build/types-ts3.8/utils/data-collection/filterQueryParams.d.ts +9 -0
- package/build/types-ts3.8/utils/data-collection/filtering-snippets.d.ts +14 -0
- package/build/types-ts3.8/utils/data-collection/resolveDataCollectionOptions.d.ts +14 -0
- package/build/types-ts3.8/utils/debug-ids.d.ts +2 -2
- package/build/types-ts3.8/utils/debug-logger.d.ts +1 -1
- package/build/types-ts3.8/utils/dsn.d.ts +1 -1
- package/build/types-ts3.8/utils/envelope.d.ts +8 -8
- package/build/types-ts3.8/utils/error.d.ts +1 -1
- package/build/types-ts3.8/utils/eventUtils.d.ts +1 -1
- package/build/types-ts3.8/utils/eventbuilder.d.ts +6 -6
- package/build/types-ts3.8/utils/featureFlags.d.ts +1 -1
- package/build/types-ts3.8/utils/hasSpansEnabled.d.ts +1 -1
- package/build/types-ts3.8/utils/ipAddress.d.ts +2 -2
- package/build/types-ts3.8/utils/is.d.ts +4 -4
- package/build/types-ts3.8/utils/meta.d.ts +1 -1
- package/build/types-ts3.8/utils/misc.d.ts +3 -3
- package/build/types-ts3.8/utils/node-stack-trace.d.ts +1 -1
- package/build/types-ts3.8/utils/object.d.ts +1 -1
- package/build/types-ts3.8/utils/parameterize.d.ts +1 -1
- package/build/types-ts3.8/utils/prepareEvent.d.ts +3 -3
- package/build/types-ts3.8/utils/ratelimit.d.ts +2 -2
- package/build/types-ts3.8/utils/request.d.ts +3 -3
- package/build/types-ts3.8/utils/scopeData.d.ts +1 -1
- package/build/types-ts3.8/utils/sdkMetadata.d.ts +1 -1
- package/build/types-ts3.8/utils/severity.d.ts +1 -1
- package/build/types-ts3.8/utils/should-ignore-span.d.ts +2 -2
- package/build/types-ts3.8/utils/spanOnScope.d.ts +1 -1
- package/build/types-ts3.8/utils/spanUtils.d.ts +4 -4
- package/build/types-ts3.8/utils/stacktrace.d.ts +4 -4
- package/build/types-ts3.8/utils/trace-info.d.ts +2 -2
- package/build/types-ts3.8/utils/traceData.d.ts +2 -2
- package/build/types-ts3.8/utils/tracePropagationTargets.d.ts +1 -1
- package/build/types-ts3.8/utils/tracing.d.ts +2 -2
- package/build/types-ts3.8/utils/transactionEvent.d.ts +2 -2
- package/build/types-ts3.8/utils/url.d.ts +1 -1
- package/build/types-ts3.8/utils/worldwide.d.ts +1 -0
- package/package.json +10 -2
- package/server.d.ts +4 -0
- package/build/types/types-hoist/attachment.d.ts.map +0 -1
- package/build/types/types-hoist/breadcrumb.d.ts.map +0 -1
- package/build/types/types-hoist/browseroptions.d.ts.map +0 -1
- package/build/types/types-hoist/checkin.d.ts.map +0 -1
- package/build/types/types-hoist/clientreport.d.ts.map +0 -1
- package/build/types/types-hoist/context.d.ts.map +0 -1
- package/build/types/types-hoist/csp.d.ts.map +0 -1
- package/build/types/types-hoist/datacategory.d.ts.map +0 -1
- package/build/types/types-hoist/debugMeta.d.ts.map +0 -1
- package/build/types/types-hoist/dsn.d.ts.map +0 -1
- package/build/types/types-hoist/envelope.d.ts.map +0 -1
- package/build/types/types-hoist/error.d.ts.map +0 -1
- package/build/types/types-hoist/event.d.ts.map +0 -1
- package/build/types/types-hoist/eventprocessor.d.ts.map +0 -1
- package/build/types/types-hoist/exception.d.ts.map +0 -1
- package/build/types/types-hoist/extra.d.ts.map +0 -1
- package/build/types/types-hoist/feedback/config.d.ts.map +0 -1
- package/build/types/types-hoist/feedback/form.d.ts.map +0 -1
- package/build/types/types-hoist/feedback/index.d.ts.map +0 -1
- package/build/types/types-hoist/feedback/sendFeedback.d.ts.map +0 -1
- package/build/types/types-hoist/feedback/theme.d.ts.map +0 -1
- package/build/types/types-hoist/instrument.d.ts.map +0 -1
- package/build/types/types-hoist/integration.d.ts.map +0 -1
- package/build/types/types-hoist/link.d.ts.map +0 -1
- package/build/types/types-hoist/log.d.ts.map +0 -1
- package/build/types/types-hoist/measurement.d.ts.map +0 -1
- package/build/types/types-hoist/mechanism.d.ts.map +0 -1
- package/build/types/types-hoist/metric.d.ts.map +0 -1
- package/build/types/types-hoist/misc.d.ts.map +0 -1
- package/build/types/types-hoist/opentelemetry.d.ts.map +0 -1
- package/build/types/types-hoist/options.d.ts.map +0 -1
- package/build/types/types-hoist/package.d.ts.map +0 -1
- package/build/types/types-hoist/parameterize.d.ts.map +0 -1
- package/build/types/types-hoist/polymorphics.d.ts.map +0 -1
- package/build/types/types-hoist/profiling.d.ts.map +0 -1
- package/build/types/types-hoist/replay.d.ts.map +0 -1
- package/build/types/types-hoist/request.d.ts.map +0 -1
- package/build/types/types-hoist/runtime.d.ts.map +0 -1
- package/build/types/types-hoist/samplingcontext.d.ts.map +0 -1
- package/build/types/types-hoist/sdkinfo.d.ts.map +0 -1
- package/build/types/types-hoist/sdkmetadata.d.ts.map +0 -1
- package/build/types/types-hoist/session.d.ts.map +0 -1
- package/build/types/types-hoist/severity.d.ts.map +0 -1
- package/build/types/types-hoist/span.d.ts.map +0 -1
- package/build/types/types-hoist/spanStatus.d.ts.map +0 -1
- package/build/types/types-hoist/stackframe.d.ts.map +0 -1
- package/build/types/types-hoist/stacktrace.d.ts.map +0 -1
- package/build/types/types-hoist/startSpanOptions.d.ts.map +0 -1
- package/build/types/types-hoist/thread.d.ts.map +0 -1
- package/build/types/types-hoist/timedEvent.d.ts.map +0 -1
- package/build/types/types-hoist/tracing.d.ts.map +0 -1
- package/build/types/types-hoist/transaction.d.ts.map +0 -1
- package/build/types/types-hoist/transport.d.ts.map +0 -1
- package/build/types/types-hoist/user.d.ts.map +0 -1
- package/build/types/types-hoist/view-hierarchy.d.ts.map +0 -1
- package/build/types/types-hoist/vue.d.ts.map +0 -1
- package/build/types/types-hoist/webfetchapi.d.ts.map +0 -1
- package/build/types/types-hoist/wrappedfunction.d.ts.map +0 -1
- /package/build/types/{types-hoist → types}/attachment.d.ts +0 -0
- /package/build/types/{types-hoist → types}/breadcrumb.d.ts +0 -0
- /package/build/types/{types-hoist → types}/browseroptions.d.ts +0 -0
- /package/build/types/{types-hoist → types}/checkin.d.ts +0 -0
- /package/build/types/{types-hoist → types}/clientreport.d.ts +0 -0
- /package/build/types/{types-hoist → types}/context.d.ts +0 -0
- /package/build/types/{types-hoist → types}/csp.d.ts +0 -0
- /package/build/types/{types-hoist → types}/datacategory.d.ts +0 -0
- /package/build/types/{types-hoist → types}/debugMeta.d.ts +0 -0
- /package/build/types/{types-hoist → types}/dsn.d.ts +0 -0
- /package/build/types/{types-hoist → types}/envelope.d.ts +0 -0
- /package/build/types/{types-hoist → types}/error.d.ts +0 -0
- /package/build/types/{types-hoist → types}/event.d.ts +0 -0
- /package/build/types/{types-hoist → types}/eventprocessor.d.ts +0 -0
- /package/build/types/{types-hoist → types}/exception.d.ts +0 -0
- /package/build/types/{types-hoist → types}/extra.d.ts +0 -0
- /package/build/types/{types-hoist → types}/feedback/config.d.ts +0 -0
- /package/build/types/{types-hoist → types}/feedback/form.d.ts +0 -0
- /package/build/types/{types-hoist → types}/feedback/index.d.ts +0 -0
- /package/build/types/{types-hoist → types}/feedback/sendFeedback.d.ts +0 -0
- /package/build/types/{types-hoist → types}/feedback/theme.d.ts +0 -0
- /package/build/types/{types-hoist → types}/instrument.d.ts +0 -0
- /package/build/types/{types-hoist → types}/integration.d.ts +0 -0
- /package/build/types/{types-hoist → types}/link.d.ts +0 -0
- /package/build/types/{types-hoist → types}/log.d.ts +0 -0
- /package/build/types/{types-hoist → types}/measurement.d.ts +0 -0
- /package/build/types/{types-hoist → types}/mechanism.d.ts +0 -0
- /package/build/types/{types-hoist → types}/metric.d.ts +0 -0
- /package/build/types/{types-hoist → types}/misc.d.ts +0 -0
- /package/build/types/{types-hoist → types}/opentelemetry.d.ts +0 -0
- /package/build/types/{types-hoist → types}/package.d.ts +0 -0
- /package/build/types/{types-hoist → types}/parameterize.d.ts +0 -0
- /package/build/types/{types-hoist → types}/polymorphics.d.ts +0 -0
- /package/build/types/{types-hoist → types}/profiling.d.ts +0 -0
- /package/build/types/{types-hoist → types}/replay.d.ts +0 -0
- /package/build/types/{types-hoist → types}/request.d.ts +0 -0
- /package/build/types/{types-hoist → types}/runtime.d.ts +0 -0
- /package/build/types/{types-hoist → types}/sdkinfo.d.ts +0 -0
- /package/build/types/{types-hoist → types}/sdkmetadata.d.ts +0 -0
- /package/build/types/{types-hoist → types}/session.d.ts +0 -0
- /package/build/types/{types-hoist → types}/severity.d.ts +0 -0
- /package/build/types/{types-hoist → types}/span.d.ts +0 -0
- /package/build/types/{types-hoist → types}/spanStatus.d.ts +0 -0
- /package/build/types/{types-hoist → types}/stackframe.d.ts +0 -0
- /package/build/types/{types-hoist → types}/stacktrace.d.ts +0 -0
- /package/build/types/{types-hoist → types}/thread.d.ts +0 -0
- /package/build/types/{types-hoist → types}/timedEvent.d.ts +0 -0
- /package/build/types/{types-hoist → types}/tracing.d.ts +0 -0
- /package/build/types/{types-hoist → types}/transaction.d.ts +0 -0
- /package/build/types/{types-hoist → types}/transport.d.ts +0 -0
- /package/build/types/{types-hoist → types}/user.d.ts +0 -0
- /package/build/types/{types-hoist → types}/view-hierarchy.d.ts +0 -0
- /package/build/types/{types-hoist → types}/vue.d.ts +0 -0
- /package/build/types/{types-hoist → types}/webfetchapi.d.ts +0 -0
- /package/build/types/{types-hoist → types}/wrappedfunction.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/attachment.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/breadcrumb.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/browseroptions.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/checkin.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/clientreport.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/context.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/csp.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/datacategory.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/debugMeta.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/dsn.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/envelope.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/error.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/event.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/eventprocessor.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/exception.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/extra.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/feedback/config.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/feedback/form.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/feedback/index.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/feedback/sendFeedback.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/feedback/theme.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/instrument.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/integration.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/link.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/log.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/measurement.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/mechanism.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/metric.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/misc.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/opentelemetry.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/package.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/parameterize.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/polymorphics.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/profiling.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/replay.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/request.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/runtime.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/sdkinfo.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/sdkmetadata.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/session.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/severity.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/span.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/spanStatus.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/stackframe.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/stacktrace.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/thread.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/timedEvent.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/tracing.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/transaction.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/transport.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/user.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/view-hierarchy.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/vue.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/webfetchapi.d.ts +0 -0
- /package/build/types-ts3.8/{types-hoist → types}/wrappedfunction.d.ts +0 -0
|
@@ -2,45 +2,25 @@ import { MCP_PROTOCOL_VERSION_ATTRIBUTE, CLIENT_PORT_ATTRIBUTE, CLIENT_ADDRESS_A
|
|
|
2
2
|
import { getProtocolVersionForTransport, getClientInfoForTransport, getSessionDataForTransport } from './sessionManagement.js';
|
|
3
3
|
import { isValidContentItem } from './validation.js';
|
|
4
4
|
|
|
5
|
-
/**
|
|
6
|
-
* Session and party info extraction functions for MCP server instrumentation
|
|
7
|
-
*
|
|
8
|
-
* Handles extraction of client/server info and session data from MCP messages.
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Extracts and validates PartyInfo from an unknown object
|
|
14
|
-
* @param obj - Unknown object that might contain party info
|
|
15
|
-
* @returns Validated PartyInfo object with only string properties
|
|
16
|
-
*/
|
|
17
5
|
function extractPartyInfo(obj) {
|
|
18
6
|
const partyInfo = {};
|
|
19
|
-
|
|
20
7
|
if (isValidContentItem(obj)) {
|
|
21
|
-
if (typeof obj.name ===
|
|
8
|
+
if (typeof obj.name === "string") {
|
|
22
9
|
partyInfo.name = obj.name;
|
|
23
10
|
}
|
|
24
|
-
if (typeof obj.title ===
|
|
11
|
+
if (typeof obj.title === "string") {
|
|
25
12
|
partyInfo.title = obj.title;
|
|
26
13
|
}
|
|
27
|
-
if (typeof obj.version ===
|
|
14
|
+
if (typeof obj.version === "string") {
|
|
28
15
|
partyInfo.version = obj.version;
|
|
29
16
|
}
|
|
30
17
|
}
|
|
31
|
-
|
|
32
18
|
return partyInfo;
|
|
33
19
|
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Extracts session data from "initialize" requests
|
|
37
|
-
* @param request - JSON-RPC "initialize" request containing client info and protocol version
|
|
38
|
-
* @returns Session data extracted from request parameters including protocol version and client info
|
|
39
|
-
*/
|
|
40
20
|
function extractSessionDataFromInitializeRequest(request) {
|
|
41
21
|
const sessionData = {};
|
|
42
22
|
if (isValidContentItem(request.params)) {
|
|
43
|
-
if (typeof request.params.protocolVersion ===
|
|
23
|
+
if (typeof request.params.protocolVersion === "string") {
|
|
44
24
|
sessionData.protocolVersion = request.params.protocolVersion;
|
|
45
25
|
}
|
|
46
26
|
if (request.params.clientInfo) {
|
|
@@ -49,16 +29,10 @@ function extractSessionDataFromInitializeRequest(request) {
|
|
|
49
29
|
}
|
|
50
30
|
return sessionData;
|
|
51
31
|
}
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* Extracts session data from "initialize" response
|
|
55
|
-
* @param result - "initialize" response result containing server info and protocol version
|
|
56
|
-
* @returns Partial session data extracted from response including protocol version and server info
|
|
57
|
-
*/
|
|
58
32
|
function extractSessionDataFromInitializeResponse(result) {
|
|
59
33
|
const sessionData = {};
|
|
60
34
|
if (isValidContentItem(result)) {
|
|
61
|
-
if (typeof result.protocolVersion ===
|
|
35
|
+
if (typeof result.protocolVersion === "string") {
|
|
62
36
|
sessionData.protocolVersion = result.protocolVersion;
|
|
63
37
|
}
|
|
64
38
|
if (result.serverInfo) {
|
|
@@ -67,59 +41,36 @@ function extractSessionDataFromInitializeResponse(result) {
|
|
|
67
41
|
}
|
|
68
42
|
return sessionData;
|
|
69
43
|
}
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Build client attributes from stored client info
|
|
73
|
-
* @param transport - MCP transport instance
|
|
74
|
-
* @returns Client attributes for span instrumentation
|
|
75
|
-
*/
|
|
76
44
|
function getClientAttributes(transport) {
|
|
77
45
|
const clientInfo = getClientInfoForTransport(transport);
|
|
78
46
|
const attributes = {};
|
|
79
|
-
|
|
80
47
|
if (clientInfo?.name) {
|
|
81
|
-
attributes[
|
|
48
|
+
attributes["mcp.client.name"] = clientInfo.name;
|
|
82
49
|
}
|
|
83
50
|
if (clientInfo?.title) {
|
|
84
|
-
attributes[
|
|
51
|
+
attributes["mcp.client.title"] = clientInfo.title;
|
|
85
52
|
}
|
|
86
53
|
if (clientInfo?.version) {
|
|
87
|
-
attributes[
|
|
54
|
+
attributes["mcp.client.version"] = clientInfo.version;
|
|
88
55
|
}
|
|
89
|
-
|
|
90
56
|
return attributes;
|
|
91
57
|
}
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* Build client attributes from PartyInfo directly
|
|
95
|
-
* @param clientInfo - Client party info
|
|
96
|
-
* @returns Client attributes for span instrumentation
|
|
97
|
-
*/
|
|
98
58
|
function buildClientAttributesFromInfo(clientInfo) {
|
|
99
59
|
const attributes = {};
|
|
100
|
-
|
|
101
60
|
if (clientInfo?.name) {
|
|
102
|
-
attributes[
|
|
61
|
+
attributes["mcp.client.name"] = clientInfo.name;
|
|
103
62
|
}
|
|
104
63
|
if (clientInfo?.title) {
|
|
105
|
-
attributes[
|
|
64
|
+
attributes["mcp.client.title"] = clientInfo.title;
|
|
106
65
|
}
|
|
107
66
|
if (clientInfo?.version) {
|
|
108
|
-
attributes[
|
|
67
|
+
attributes["mcp.client.version"] = clientInfo.version;
|
|
109
68
|
}
|
|
110
|
-
|
|
111
69
|
return attributes;
|
|
112
70
|
}
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* Build server attributes from stored server info
|
|
116
|
-
* @param transport - MCP transport instance
|
|
117
|
-
* @returns Server attributes for span instrumentation
|
|
118
|
-
*/
|
|
119
71
|
function getServerAttributes(transport) {
|
|
120
72
|
const serverInfo = getSessionDataForTransport(transport)?.serverInfo;
|
|
121
73
|
const attributes = {};
|
|
122
|
-
|
|
123
74
|
if (serverInfo?.name) {
|
|
124
75
|
attributes[MCP_SERVER_NAME_ATTRIBUTE] = serverInfo.name;
|
|
125
76
|
}
|
|
@@ -129,18 +80,10 @@ function getServerAttributes(transport) {
|
|
|
129
80
|
if (serverInfo?.version) {
|
|
130
81
|
attributes[MCP_SERVER_VERSION_ATTRIBUTE] = serverInfo.version;
|
|
131
82
|
}
|
|
132
|
-
|
|
133
83
|
return attributes;
|
|
134
84
|
}
|
|
135
|
-
|
|
136
|
-
/**
|
|
137
|
-
* Build server attributes from PartyInfo directly
|
|
138
|
-
* @param serverInfo - Server party info
|
|
139
|
-
* @returns Server attributes for span instrumentation
|
|
140
|
-
*/
|
|
141
85
|
function buildServerAttributesFromInfo(serverInfo) {
|
|
142
86
|
const attributes = {};
|
|
143
|
-
|
|
144
87
|
if (serverInfo?.name) {
|
|
145
88
|
attributes[MCP_SERVER_NAME_ATTRIBUTE] = serverInfo.name;
|
|
146
89
|
}
|
|
@@ -150,83 +93,49 @@ function buildServerAttributesFromInfo(serverInfo) {
|
|
|
150
93
|
if (serverInfo?.version) {
|
|
151
94
|
attributes[MCP_SERVER_VERSION_ATTRIBUTE] = serverInfo.version;
|
|
152
95
|
}
|
|
153
|
-
|
|
154
96
|
return attributes;
|
|
155
97
|
}
|
|
156
|
-
|
|
157
|
-
/**
|
|
158
|
-
* Extracts client connection info from extra handler data
|
|
159
|
-
* @param extra - Extra handler data containing connection info
|
|
160
|
-
* @returns Client address and port information
|
|
161
|
-
*/
|
|
162
|
-
function extractClientInfo(extra)
|
|
163
|
-
|
|
164
|
-
{
|
|
98
|
+
function extractClientInfo(extra) {
|
|
165
99
|
return {
|
|
166
|
-
address:
|
|
167
|
-
|
|
168
|
-
extra?.clientAddress ||
|
|
169
|
-
extra?.request?.ip ||
|
|
170
|
-
extra?.request?.connection?.remoteAddress,
|
|
171
|
-
port: extra?.requestInfo?.remotePort || extra?.clientPort || extra?.request?.connection?.remotePort,
|
|
100
|
+
address: extra?.requestInfo?.remoteAddress || extra?.clientAddress || extra?.request?.ip || extra?.request?.connection?.remoteAddress,
|
|
101
|
+
port: extra?.requestInfo?.remotePort || extra?.clientPort || extra?.request?.connection?.remotePort
|
|
172
102
|
};
|
|
173
103
|
}
|
|
174
|
-
|
|
175
|
-
/**
|
|
176
|
-
* Extracts transport types based on transport constructor name
|
|
177
|
-
* @param transport - MCP transport instance
|
|
178
|
-
* @returns Transport type mapping for span attributes
|
|
179
|
-
*/
|
|
180
104
|
function getTransportTypes(transport) {
|
|
181
105
|
if (!transport?.constructor) {
|
|
182
|
-
return { mcpTransport:
|
|
106
|
+
return { mcpTransport: "unknown", networkTransport: "unknown" };
|
|
183
107
|
}
|
|
184
|
-
const transportName = typeof transport.constructor?.name ===
|
|
185
|
-
let networkTransport =
|
|
186
|
-
|
|
108
|
+
const transportName = typeof transport.constructor?.name === "string" ? transport.constructor.name : "unknown";
|
|
109
|
+
let networkTransport = "unknown";
|
|
187
110
|
const lowerTransportName = transportName.toLowerCase();
|
|
188
|
-
if (lowerTransportName.includes(
|
|
189
|
-
networkTransport =
|
|
190
|
-
} else if (lowerTransportName.includes(
|
|
191
|
-
networkTransport =
|
|
111
|
+
if (lowerTransportName.includes("stdio")) {
|
|
112
|
+
networkTransport = "pipe";
|
|
113
|
+
} else if (lowerTransportName.includes("http") || lowerTransportName.includes("sse")) {
|
|
114
|
+
networkTransport = "tcp";
|
|
192
115
|
}
|
|
193
|
-
|
|
194
116
|
return {
|
|
195
117
|
mcpTransport: transportName,
|
|
196
|
-
networkTransport
|
|
118
|
+
networkTransport
|
|
197
119
|
};
|
|
198
120
|
}
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
* Build transport and network attributes
|
|
202
|
-
* @param transport - MCP transport instance
|
|
203
|
-
* @param extra - Optional extra handler data
|
|
204
|
-
* @returns Transport attributes for span instrumentation
|
|
205
|
-
* @note sessionId may be undefined during initial setup - session should be established by client during initialize flow
|
|
206
|
-
*/
|
|
207
|
-
function buildTransportAttributes(
|
|
208
|
-
transport,
|
|
209
|
-
extra,
|
|
210
|
-
) {
|
|
211
|
-
const sessionId = transport && 'sessionId' in transport ? transport.sessionId : undefined;
|
|
121
|
+
function buildTransportAttributes(transport, extra) {
|
|
122
|
+
const sessionId = transport && "sessionId" in transport ? transport.sessionId : void 0;
|
|
212
123
|
const clientInfo = extra ? extractClientInfo(extra) : {};
|
|
213
124
|
const { mcpTransport, networkTransport } = getTransportTypes(transport);
|
|
214
125
|
const clientAttributes = getClientAttributes(transport);
|
|
215
126
|
const serverAttributes = getServerAttributes(transport);
|
|
216
127
|
const protocolVersion = getProtocolVersionForTransport(transport);
|
|
217
|
-
|
|
218
128
|
const attributes = {
|
|
219
|
-
...
|
|
220
|
-
...
|
|
221
|
-
...
|
|
129
|
+
...sessionId && { [MCP_SESSION_ID_ATTRIBUTE]: sessionId },
|
|
130
|
+
...clientInfo.address && { [CLIENT_ADDRESS_ATTRIBUTE]: clientInfo.address },
|
|
131
|
+
...clientInfo.port && { [CLIENT_PORT_ATTRIBUTE]: clientInfo.port },
|
|
222
132
|
[MCP_TRANSPORT_ATTRIBUTE]: mcpTransport,
|
|
223
133
|
[NETWORK_TRANSPORT_ATTRIBUTE]: networkTransport,
|
|
224
|
-
[NETWORK_PROTOCOL_VERSION_ATTRIBUTE]:
|
|
225
|
-
...
|
|
134
|
+
[NETWORK_PROTOCOL_VERSION_ATTRIBUTE]: "2.0",
|
|
135
|
+
...protocolVersion && { [MCP_PROTOCOL_VERSION_ATTRIBUTE]: protocolVersion },
|
|
226
136
|
...clientAttributes,
|
|
227
|
-
...serverAttributes
|
|
137
|
+
...serverAttributes
|
|
228
138
|
};
|
|
229
|
-
|
|
230
139
|
return attributes;
|
|
231
140
|
}
|
|
232
141
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionExtraction.js","sources":["../../../../src/integrations/mcp-server/sessionExtraction.ts"],"sourcesContent":["/**\n * Session and party info extraction functions for MCP server instrumentation\n *\n * Handles extraction of client/server info and session data from MCP messages.\n */\n\nimport {\n CLIENT_ADDRESS_ATTRIBUTE,\n CLIENT_PORT_ATTRIBUTE,\n MCP_PROTOCOL_VERSION_ATTRIBUTE,\n MCP_SERVER_NAME_ATTRIBUTE,\n MCP_SERVER_TITLE_ATTRIBUTE,\n MCP_SERVER_VERSION_ATTRIBUTE,\n MCP_SESSION_ID_ATTRIBUTE,\n MCP_TRANSPORT_ATTRIBUTE,\n NETWORK_PROTOCOL_VERSION_ATTRIBUTE,\n NETWORK_TRANSPORT_ATTRIBUTE,\n} from './attributes';\nimport {\n getClientInfoForTransport,\n getProtocolVersionForTransport,\n getSessionDataForTransport,\n} from './sessionManagement';\nimport type { ExtraHandlerData, JsonRpcRequest, MCPTransport, PartyInfo, SessionData } from './types';\nimport { isValidContentItem } from './validation';\n\n/**\n * Extracts and validates PartyInfo from an unknown object\n * @param obj - Unknown object that might contain party info\n * @returns Validated PartyInfo object with only string properties\n */\nfunction extractPartyInfo(obj: unknown): PartyInfo {\n const partyInfo: PartyInfo = {};\n\n if (isValidContentItem(obj)) {\n if (typeof obj.name === 'string') {\n partyInfo.name = obj.name;\n }\n if (typeof obj.title === 'string') {\n partyInfo.title = obj.title;\n }\n if (typeof obj.version === 'string') {\n partyInfo.version = obj.version;\n }\n }\n\n return partyInfo;\n}\n\n/**\n * Extracts session data from \"initialize\" requests\n * @param request - JSON-RPC \"initialize\" request containing client info and protocol version\n * @returns Session data extracted from request parameters including protocol version and client info\n */\nexport function extractSessionDataFromInitializeRequest(request: JsonRpcRequest): SessionData {\n const sessionData: SessionData = {};\n if (isValidContentItem(request.params)) {\n if (typeof request.params.protocolVersion === 'string') {\n sessionData.protocolVersion = request.params.protocolVersion;\n }\n if (request.params.clientInfo) {\n sessionData.clientInfo = extractPartyInfo(request.params.clientInfo);\n }\n }\n return sessionData;\n}\n\n/**\n * Extracts session data from \"initialize\" response\n * @param result - \"initialize\" response result containing server info and protocol version\n * @returns Partial session data extracted from response including protocol version and server info\n */\nexport function extractSessionDataFromInitializeResponse(result: unknown): Partial<SessionData> {\n const sessionData: Partial<SessionData> = {};\n if (isValidContentItem(result)) {\n if (typeof result.protocolVersion === 'string') {\n sessionData.protocolVersion = result.protocolVersion;\n }\n if (result.serverInfo) {\n sessionData.serverInfo = extractPartyInfo(result.serverInfo);\n }\n }\n return sessionData;\n}\n\n/**\n * Build client attributes from stored client info\n * @param transport - MCP transport instance\n * @returns Client attributes for span instrumentation\n */\nexport function getClientAttributes(transport: MCPTransport): Record<string, string> {\n const clientInfo = getClientInfoForTransport(transport);\n const attributes: Record<string, string> = {};\n\n if (clientInfo?.name) {\n attributes['mcp.client.name'] = clientInfo.name;\n }\n if (clientInfo?.title) {\n attributes['mcp.client.title'] = clientInfo.title;\n }\n if (clientInfo?.version) {\n attributes['mcp.client.version'] = clientInfo.version;\n }\n\n return attributes;\n}\n\n/**\n * Build client attributes from PartyInfo directly\n * @param clientInfo - Client party info\n * @returns Client attributes for span instrumentation\n */\nexport function buildClientAttributesFromInfo(clientInfo?: PartyInfo): Record<string, string> {\n const attributes: Record<string, string> = {};\n\n if (clientInfo?.name) {\n attributes['mcp.client.name'] = clientInfo.name;\n }\n if (clientInfo?.title) {\n attributes['mcp.client.title'] = clientInfo.title;\n }\n if (clientInfo?.version) {\n attributes['mcp.client.version'] = clientInfo.version;\n }\n\n return attributes;\n}\n\n/**\n * Build server attributes from stored server info\n * @param transport - MCP transport instance\n * @returns Server attributes for span instrumentation\n */\nexport function getServerAttributes(transport: MCPTransport): Record<string, string> {\n const serverInfo = getSessionDataForTransport(transport)?.serverInfo;\n const attributes: Record<string, string> = {};\n\n if (serverInfo?.name) {\n attributes[MCP_SERVER_NAME_ATTRIBUTE] = serverInfo.name;\n }\n if (serverInfo?.title) {\n attributes[MCP_SERVER_TITLE_ATTRIBUTE] = serverInfo.title;\n }\n if (serverInfo?.version) {\n attributes[MCP_SERVER_VERSION_ATTRIBUTE] = serverInfo.version;\n }\n\n return attributes;\n}\n\n/**\n * Build server attributes from PartyInfo directly\n * @param serverInfo - Server party info\n * @returns Server attributes for span instrumentation\n */\nexport function buildServerAttributesFromInfo(serverInfo?: PartyInfo): Record<string, string> {\n const attributes: Record<string, string> = {};\n\n if (serverInfo?.name) {\n attributes[MCP_SERVER_NAME_ATTRIBUTE] = serverInfo.name;\n }\n if (serverInfo?.title) {\n attributes[MCP_SERVER_TITLE_ATTRIBUTE] = serverInfo.title;\n }\n if (serverInfo?.version) {\n attributes[MCP_SERVER_VERSION_ATTRIBUTE] = serverInfo.version;\n }\n\n return attributes;\n}\n\n/**\n * Extracts client connection info from extra handler data\n * @param extra - Extra handler data containing connection info\n * @returns Client address and port information\n */\nexport function extractClientInfo(extra: ExtraHandlerData): {\n address?: string;\n port?: number;\n} {\n return {\n address:\n extra?.requestInfo?.remoteAddress ||\n extra?.clientAddress ||\n extra?.request?.ip ||\n extra?.request?.connection?.remoteAddress,\n port: extra?.requestInfo?.remotePort || extra?.clientPort || extra?.request?.connection?.remotePort,\n };\n}\n\n/**\n * Extracts transport types based on transport constructor name\n * @param transport - MCP transport instance\n * @returns Transport type mapping for span attributes\n */\nexport function getTransportTypes(transport: MCPTransport): { mcpTransport: string; networkTransport: string } {\n if (!transport?.constructor) {\n return { mcpTransport: 'unknown', networkTransport: 'unknown' };\n }\n const transportName = typeof transport.constructor?.name === 'string' ? transport.constructor.name : 'unknown';\n let networkTransport = 'unknown';\n\n const lowerTransportName = transportName.toLowerCase();\n if (lowerTransportName.includes('stdio')) {\n networkTransport = 'pipe';\n } else if (lowerTransportName.includes('http') || lowerTransportName.includes('sse')) {\n networkTransport = 'tcp';\n }\n\n return {\n mcpTransport: transportName,\n networkTransport,\n };\n}\n\n/**\n * Build transport and network attributes\n * @param transport - MCP transport instance\n * @param extra - Optional extra handler data\n * @returns Transport attributes for span instrumentation\n * @note sessionId may be undefined during initial setup - session should be established by client during initialize flow\n */\nexport function buildTransportAttributes(\n transport: MCPTransport,\n extra?: ExtraHandlerData,\n): Record<string, string | number> {\n const sessionId = transport && 'sessionId' in transport ? transport.sessionId : undefined;\n const clientInfo = extra ? extractClientInfo(extra) : {};\n const { mcpTransport, networkTransport } = getTransportTypes(transport);\n const clientAttributes = getClientAttributes(transport);\n const serverAttributes = getServerAttributes(transport);\n const protocolVersion = getProtocolVersionForTransport(transport);\n\n const attributes = {\n ...(sessionId && { [MCP_SESSION_ID_ATTRIBUTE]: sessionId }),\n ...(clientInfo.address && { [CLIENT_ADDRESS_ATTRIBUTE]: clientInfo.address }),\n ...(clientInfo.port && { [CLIENT_PORT_ATTRIBUTE]: clientInfo.port }),\n [MCP_TRANSPORT_ATTRIBUTE]: mcpTransport,\n [NETWORK_TRANSPORT_ATTRIBUTE]: networkTransport,\n [NETWORK_PROTOCOL_VERSION_ATTRIBUTE]: '2.0',\n ...(protocolVersion && { [MCP_PROTOCOL_VERSION_ATTRIBUTE]: protocolVersion }),\n ...clientAttributes,\n ...serverAttributes,\n };\n\n return attributes;\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sessionExtraction.js","sources":["../../../../src/integrations/mcp-server/sessionExtraction.ts"],"sourcesContent":["/**\n * Session and party info extraction functions for MCP server instrumentation\n *\n * Handles extraction of client/server info and session data from MCP messages.\n */\n\nimport {\n CLIENT_ADDRESS_ATTRIBUTE,\n CLIENT_PORT_ATTRIBUTE,\n MCP_PROTOCOL_VERSION_ATTRIBUTE,\n MCP_SERVER_NAME_ATTRIBUTE,\n MCP_SERVER_TITLE_ATTRIBUTE,\n MCP_SERVER_VERSION_ATTRIBUTE,\n MCP_SESSION_ID_ATTRIBUTE,\n MCP_TRANSPORT_ATTRIBUTE,\n NETWORK_PROTOCOL_VERSION_ATTRIBUTE,\n NETWORK_TRANSPORT_ATTRIBUTE,\n} from './attributes';\nimport {\n getClientInfoForTransport,\n getProtocolVersionForTransport,\n getSessionDataForTransport,\n} from './sessionManagement';\nimport type { ExtraHandlerData, JsonRpcRequest, MCPTransport, PartyInfo, SessionData } from './types';\nimport { isValidContentItem } from './validation';\n\n/**\n * Extracts and validates PartyInfo from an unknown object\n * @param obj - Unknown object that might contain party info\n * @returns Validated PartyInfo object with only string properties\n */\nfunction extractPartyInfo(obj: unknown): PartyInfo {\n const partyInfo: PartyInfo = {};\n\n if (isValidContentItem(obj)) {\n if (typeof obj.name === 'string') {\n partyInfo.name = obj.name;\n }\n if (typeof obj.title === 'string') {\n partyInfo.title = obj.title;\n }\n if (typeof obj.version === 'string') {\n partyInfo.version = obj.version;\n }\n }\n\n return partyInfo;\n}\n\n/**\n * Extracts session data from \"initialize\" requests\n * @param request - JSON-RPC \"initialize\" request containing client info and protocol version\n * @returns Session data extracted from request parameters including protocol version and client info\n */\nexport function extractSessionDataFromInitializeRequest(request: JsonRpcRequest): SessionData {\n const sessionData: SessionData = {};\n if (isValidContentItem(request.params)) {\n if (typeof request.params.protocolVersion === 'string') {\n sessionData.protocolVersion = request.params.protocolVersion;\n }\n if (request.params.clientInfo) {\n sessionData.clientInfo = extractPartyInfo(request.params.clientInfo);\n }\n }\n return sessionData;\n}\n\n/**\n * Extracts session data from \"initialize\" response\n * @param result - \"initialize\" response result containing server info and protocol version\n * @returns Partial session data extracted from response including protocol version and server info\n */\nexport function extractSessionDataFromInitializeResponse(result: unknown): Partial<SessionData> {\n const sessionData: Partial<SessionData> = {};\n if (isValidContentItem(result)) {\n if (typeof result.protocolVersion === 'string') {\n sessionData.protocolVersion = result.protocolVersion;\n }\n if (result.serverInfo) {\n sessionData.serverInfo = extractPartyInfo(result.serverInfo);\n }\n }\n return sessionData;\n}\n\n/**\n * Build client attributes from stored client info\n * @param transport - MCP transport instance\n * @returns Client attributes for span instrumentation\n */\nexport function getClientAttributes(transport: MCPTransport): Record<string, string> {\n const clientInfo = getClientInfoForTransport(transport);\n const attributes: Record<string, string> = {};\n\n if (clientInfo?.name) {\n attributes['mcp.client.name'] = clientInfo.name;\n }\n if (clientInfo?.title) {\n attributes['mcp.client.title'] = clientInfo.title;\n }\n if (clientInfo?.version) {\n attributes['mcp.client.version'] = clientInfo.version;\n }\n\n return attributes;\n}\n\n/**\n * Build client attributes from PartyInfo directly\n * @param clientInfo - Client party info\n * @returns Client attributes for span instrumentation\n */\nexport function buildClientAttributesFromInfo(clientInfo?: PartyInfo): Record<string, string> {\n const attributes: Record<string, string> = {};\n\n if (clientInfo?.name) {\n attributes['mcp.client.name'] = clientInfo.name;\n }\n if (clientInfo?.title) {\n attributes['mcp.client.title'] = clientInfo.title;\n }\n if (clientInfo?.version) {\n attributes['mcp.client.version'] = clientInfo.version;\n }\n\n return attributes;\n}\n\n/**\n * Build server attributes from stored server info\n * @param transport - MCP transport instance\n * @returns Server attributes for span instrumentation\n */\nexport function getServerAttributes(transport: MCPTransport): Record<string, string> {\n const serverInfo = getSessionDataForTransport(transport)?.serverInfo;\n const attributes: Record<string, string> = {};\n\n if (serverInfo?.name) {\n attributes[MCP_SERVER_NAME_ATTRIBUTE] = serverInfo.name;\n }\n if (serverInfo?.title) {\n attributes[MCP_SERVER_TITLE_ATTRIBUTE] = serverInfo.title;\n }\n if (serverInfo?.version) {\n attributes[MCP_SERVER_VERSION_ATTRIBUTE] = serverInfo.version;\n }\n\n return attributes;\n}\n\n/**\n * Build server attributes from PartyInfo directly\n * @param serverInfo - Server party info\n * @returns Server attributes for span instrumentation\n */\nexport function buildServerAttributesFromInfo(serverInfo?: PartyInfo): Record<string, string> {\n const attributes: Record<string, string> = {};\n\n if (serverInfo?.name) {\n attributes[MCP_SERVER_NAME_ATTRIBUTE] = serverInfo.name;\n }\n if (serverInfo?.title) {\n attributes[MCP_SERVER_TITLE_ATTRIBUTE] = serverInfo.title;\n }\n if (serverInfo?.version) {\n attributes[MCP_SERVER_VERSION_ATTRIBUTE] = serverInfo.version;\n }\n\n return attributes;\n}\n\n/**\n * Extracts client connection info from extra handler data\n * @param extra - Extra handler data containing connection info\n * @returns Client address and port information\n */\nexport function extractClientInfo(extra: ExtraHandlerData): {\n address?: string;\n port?: number;\n} {\n return {\n address:\n extra?.requestInfo?.remoteAddress ||\n extra?.clientAddress ||\n extra?.request?.ip ||\n extra?.request?.connection?.remoteAddress,\n port: extra?.requestInfo?.remotePort || extra?.clientPort || extra?.request?.connection?.remotePort,\n };\n}\n\n/**\n * Extracts transport types based on transport constructor name\n * @param transport - MCP transport instance\n * @returns Transport type mapping for span attributes\n */\nexport function getTransportTypes(transport: MCPTransport): { mcpTransport: string; networkTransport: string } {\n if (!transport?.constructor) {\n return { mcpTransport: 'unknown', networkTransport: 'unknown' };\n }\n const transportName = typeof transport.constructor?.name === 'string' ? transport.constructor.name : 'unknown';\n let networkTransport = 'unknown';\n\n const lowerTransportName = transportName.toLowerCase();\n if (lowerTransportName.includes('stdio')) {\n networkTransport = 'pipe';\n } else if (lowerTransportName.includes('http') || lowerTransportName.includes('sse')) {\n networkTransport = 'tcp';\n }\n\n return {\n mcpTransport: transportName,\n networkTransport,\n };\n}\n\n/**\n * Build transport and network attributes\n * @param transport - MCP transport instance\n * @param extra - Optional extra handler data\n * @returns Transport attributes for span instrumentation\n * @note sessionId may be undefined during initial setup - session should be established by client during initialize flow\n */\nexport function buildTransportAttributes(\n transport: MCPTransport,\n extra?: ExtraHandlerData,\n): Record<string, string | number> {\n const sessionId = transport && 'sessionId' in transport ? transport.sessionId : undefined;\n const clientInfo = extra ? extractClientInfo(extra) : {};\n const { mcpTransport, networkTransport } = getTransportTypes(transport);\n const clientAttributes = getClientAttributes(transport);\n const serverAttributes = getServerAttributes(transport);\n const protocolVersion = getProtocolVersionForTransport(transport);\n\n const attributes = {\n ...(sessionId && { [MCP_SESSION_ID_ATTRIBUTE]: sessionId }),\n ...(clientInfo.address && { [CLIENT_ADDRESS_ATTRIBUTE]: clientInfo.address }),\n ...(clientInfo.port && { [CLIENT_PORT_ATTRIBUTE]: clientInfo.port }),\n [MCP_TRANSPORT_ATTRIBUTE]: mcpTransport,\n [NETWORK_TRANSPORT_ATTRIBUTE]: networkTransport,\n [NETWORK_PROTOCOL_VERSION_ATTRIBUTE]: '2.0',\n ...(protocolVersion && { [MCP_PROTOCOL_VERSION_ATTRIBUTE]: protocolVersion }),\n ...clientAttributes,\n ...serverAttributes,\n };\n\n return attributes;\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* @internal Using sessionId as key handles wrapper transport patterns
|
|
4
|
-
*/
|
|
5
|
-
const sessionToSessionData = new Map();
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Transport-scoped data storage fallback for stateless transports (no sessionId)
|
|
9
|
-
* @internal WeakMap allows automatic cleanup when transport is garbage collected
|
|
10
|
-
*/
|
|
11
|
-
const statelessSessionData = new WeakMap();
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Gets session data for a transport, checking sessionId first then fallback
|
|
15
|
-
* @internal
|
|
16
|
-
*/
|
|
1
|
+
const sessionToSessionData = /* @__PURE__ */ new Map();
|
|
2
|
+
const statelessSessionData = /* @__PURE__ */ new WeakMap();
|
|
17
3
|
function getSessionData(transport) {
|
|
18
4
|
const sessionId = transport.sessionId;
|
|
19
5
|
if (sessionId) {
|
|
@@ -21,11 +7,6 @@ function getSessionData(transport) {
|
|
|
21
7
|
}
|
|
22
8
|
return statelessSessionData.get(transport);
|
|
23
9
|
}
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Sets session data for a transport, using sessionId when available
|
|
27
|
-
* @internal
|
|
28
|
-
*/
|
|
29
10
|
function setSessionData(transport, data) {
|
|
30
11
|
const sessionId = transport.sessionId;
|
|
31
12
|
if (sessionId) {
|
|
@@ -34,66 +15,27 @@ function setSessionData(transport, data) {
|
|
|
34
15
|
statelessSessionData.set(transport, data);
|
|
35
16
|
}
|
|
36
17
|
}
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* Stores session data for a transport
|
|
40
|
-
* @param transport - MCP transport instance
|
|
41
|
-
* @param sessionData - Session data to store
|
|
42
|
-
*/
|
|
43
18
|
function storeSessionDataForTransport(transport, sessionData) {
|
|
44
|
-
// For stateful transports, always store (sessionId is the key)
|
|
45
|
-
// For stateless transports, also store (transport instance is the key)
|
|
46
19
|
setSessionData(transport, sessionData);
|
|
47
20
|
}
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Updates session data for a transport (merges with existing data)
|
|
51
|
-
* @param transport - MCP transport instance
|
|
52
|
-
* @param partialSessionData - Partial session data to merge with existing data
|
|
53
|
-
*/
|
|
54
21
|
function updateSessionDataForTransport(transport, partialSessionData) {
|
|
55
22
|
const existingData = getSessionData(transport) || {};
|
|
56
23
|
setSessionData(transport, { ...existingData, ...partialSessionData });
|
|
57
24
|
}
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Retrieves client information for a transport
|
|
61
|
-
* @param transport - MCP transport instance
|
|
62
|
-
* @returns Client information if available
|
|
63
|
-
*/
|
|
64
25
|
function getClientInfoForTransport(transport) {
|
|
65
26
|
return getSessionData(transport)?.clientInfo;
|
|
66
27
|
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Retrieves protocol version for a transport
|
|
70
|
-
* @param transport - MCP transport instance
|
|
71
|
-
* @returns Protocol version if available
|
|
72
|
-
*/
|
|
73
28
|
function getProtocolVersionForTransport(transport) {
|
|
74
29
|
return getSessionData(transport)?.protocolVersion;
|
|
75
30
|
}
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* Retrieves full session data for a transport
|
|
79
|
-
* @param transport - MCP transport instance
|
|
80
|
-
* @returns Complete session data if available
|
|
81
|
-
*/
|
|
82
31
|
function getSessionDataForTransport(transport) {
|
|
83
32
|
return getSessionData(transport);
|
|
84
33
|
}
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
* Cleans up session data for a specific transport (when that transport closes)
|
|
88
|
-
* @param transport - MCP transport instance
|
|
89
|
-
*/
|
|
90
34
|
function cleanupSessionDataForTransport(transport) {
|
|
91
35
|
const sessionId = transport.sessionId;
|
|
92
36
|
if (sessionId) {
|
|
93
37
|
sessionToSessionData.delete(sessionId);
|
|
94
38
|
}
|
|
95
|
-
// Note: WeakMap entries are automatically cleaned up when transport is GC'd
|
|
96
|
-
// No explicit delete needed for statelessSessionData
|
|
97
39
|
}
|
|
98
40
|
|
|
99
41
|
export { cleanupSessionDataForTransport, getClientInfoForTransport, getProtocolVersionForTransport, getSessionDataForTransport, storeSessionDataForTransport, updateSessionDataForTransport };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionManagement.js","sources":["../../../../src/integrations/mcp-server/sessionManagement.ts"],"sourcesContent":["/**\n * Session data management for MCP server instrumentation\n *\n * Uses sessionId as the primary key for stateful transports. This handles the wrapper\n * transport pattern (e.g., NodeStreamableHTTPServerTransport wrapping WebStandardStreamableHTTPServerTransport)\n * where different methods may receive different `this` values but share the same sessionId.\n *\n * Falls back to WeakMap by transport instance for stateless transports (no sessionId).\n */\n\nimport type { MCPTransport, PartyInfo, SessionData } from './types';\n\n/**\n * Session-scoped data storage for stateful transports (with sessionId)\n * @internal Using sessionId as key handles wrapper transport patterns\n */\nconst sessionToSessionData = new Map<string, SessionData>();\n\n/**\n * Transport-scoped data storage fallback for stateless transports (no sessionId)\n * @internal WeakMap allows automatic cleanup when transport is garbage collected\n */\nconst statelessSessionData = new WeakMap<MCPTransport, SessionData>();\n\n/**\n * Gets session data for a transport, checking sessionId first then fallback\n * @internal\n */\nfunction getSessionData(transport: MCPTransport): SessionData | undefined {\n const sessionId = transport.sessionId;\n if (sessionId) {\n return sessionToSessionData.get(sessionId);\n }\n return statelessSessionData.get(transport);\n}\n\n/**\n * Sets session data for a transport, using sessionId when available\n * @internal\n */\nfunction setSessionData(transport: MCPTransport, data: SessionData): void {\n const sessionId = transport.sessionId;\n if (sessionId) {\n sessionToSessionData.set(sessionId, data);\n } else {\n statelessSessionData.set(transport, data);\n }\n}\n\n/**\n * Stores session data for a transport\n * @param transport - MCP transport instance\n * @param sessionData - Session data to store\n */\nexport function storeSessionDataForTransport(transport: MCPTransport, sessionData: SessionData): void {\n // For stateful transports, always store (sessionId is the key)\n // For stateless transports, also store (transport instance is the key)\n setSessionData(transport, sessionData);\n}\n\n/**\n * Updates session data for a transport (merges with existing data)\n * @param transport - MCP transport instance\n * @param partialSessionData - Partial session data to merge with existing data\n */\nexport function updateSessionDataForTransport(transport: MCPTransport, partialSessionData: Partial<SessionData>): void {\n const existingData = getSessionData(transport) || {};\n setSessionData(transport, { ...existingData, ...partialSessionData });\n}\n\n/**\n * Retrieves client information for a transport\n * @param transport - MCP transport instance\n * @returns Client information if available\n */\nexport function getClientInfoForTransport(transport: MCPTransport): PartyInfo | undefined {\n return getSessionData(transport)?.clientInfo;\n}\n\n/**\n * Retrieves protocol version for a transport\n * @param transport - MCP transport instance\n * @returns Protocol version if available\n */\nexport function getProtocolVersionForTransport(transport: MCPTransport): string | undefined {\n return getSessionData(transport)?.protocolVersion;\n}\n\n/**\n * Retrieves full session data for a transport\n * @param transport - MCP transport instance\n * @returns Complete session data if available\n */\nexport function getSessionDataForTransport(transport: MCPTransport): SessionData | undefined {\n return getSessionData(transport);\n}\n\n/**\n * Cleans up session data for a specific transport (when that transport closes)\n * @param transport - MCP transport instance\n */\nexport function cleanupSessionDataForTransport(transport: MCPTransport): void {\n const sessionId = transport.sessionId;\n if (sessionId) {\n sessionToSessionData.delete(sessionId);\n }\n // Note: WeakMap entries are automatically cleaned up when transport is GC'd\n // No explicit delete needed for statelessSessionData\n}\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sessionManagement.js","sources":["../../../../src/integrations/mcp-server/sessionManagement.ts"],"sourcesContent":["/**\n * Session data management for MCP server instrumentation\n *\n * Uses sessionId as the primary key for stateful transports. This handles the wrapper\n * transport pattern (e.g., NodeStreamableHTTPServerTransport wrapping WebStandardStreamableHTTPServerTransport)\n * where different methods may receive different `this` values but share the same sessionId.\n *\n * Falls back to WeakMap by transport instance for stateless transports (no sessionId).\n */\n\nimport type { MCPTransport, PartyInfo, SessionData } from './types';\n\n/**\n * Session-scoped data storage for stateful transports (with sessionId)\n * @internal Using sessionId as key handles wrapper transport patterns\n */\nconst sessionToSessionData = new Map<string, SessionData>();\n\n/**\n * Transport-scoped data storage fallback for stateless transports (no sessionId)\n * @internal WeakMap allows automatic cleanup when transport is garbage collected\n */\nconst statelessSessionData = new WeakMap<MCPTransport, SessionData>();\n\n/**\n * Gets session data for a transport, checking sessionId first then fallback\n * @internal\n */\nfunction getSessionData(transport: MCPTransport): SessionData | undefined {\n const sessionId = transport.sessionId;\n if (sessionId) {\n return sessionToSessionData.get(sessionId);\n }\n return statelessSessionData.get(transport);\n}\n\n/**\n * Sets session data for a transport, using sessionId when available\n * @internal\n */\nfunction setSessionData(transport: MCPTransport, data: SessionData): void {\n const sessionId = transport.sessionId;\n if (sessionId) {\n sessionToSessionData.set(sessionId, data);\n } else {\n statelessSessionData.set(transport, data);\n }\n}\n\n/**\n * Stores session data for a transport\n * @param transport - MCP transport instance\n * @param sessionData - Session data to store\n */\nexport function storeSessionDataForTransport(transport: MCPTransport, sessionData: SessionData): void {\n // For stateful transports, always store (sessionId is the key)\n // For stateless transports, also store (transport instance is the key)\n setSessionData(transport, sessionData);\n}\n\n/**\n * Updates session data for a transport (merges with existing data)\n * @param transport - MCP transport instance\n * @param partialSessionData - Partial session data to merge with existing data\n */\nexport function updateSessionDataForTransport(transport: MCPTransport, partialSessionData: Partial<SessionData>): void {\n const existingData = getSessionData(transport) || {};\n setSessionData(transport, { ...existingData, ...partialSessionData });\n}\n\n/**\n * Retrieves client information for a transport\n * @param transport - MCP transport instance\n * @returns Client information if available\n */\nexport function getClientInfoForTransport(transport: MCPTransport): PartyInfo | undefined {\n return getSessionData(transport)?.clientInfo;\n}\n\n/**\n * Retrieves protocol version for a transport\n * @param transport - MCP transport instance\n * @returns Protocol version if available\n */\nexport function getProtocolVersionForTransport(transport: MCPTransport): string | undefined {\n return getSessionData(transport)?.protocolVersion;\n}\n\n/**\n * Retrieves full session data for a transport\n * @param transport - MCP transport instance\n * @returns Complete session data if available\n */\nexport function getSessionDataForTransport(transport: MCPTransport): SessionData | undefined {\n return getSessionData(transport);\n}\n\n/**\n * Cleans up session data for a specific transport (when that transport closes)\n * @param transport - MCP transport instance\n */\nexport function cleanupSessionDataForTransport(transport: MCPTransport): void {\n const sessionId = transport.sessionId;\n if (sessionId) {\n sessionToSessionData.delete(sessionId);\n }\n // Note: WeakMap entries are automatically cleaned up when transport is GC'd\n // No explicit delete needed for statelessSessionData\n}\n"],"names":[],"mappings":"AAgBA,MAAM,oBAAA,uBAA2B,GAAA,EAAyB;AAM1D,MAAM,oBAAA,uBAA2B,OAAA,EAAmC;AAMpE,SAAS,eAAe,SAAA,EAAkD;AACxE,EAAA,MAAM,YAAY,SAAA,CAAU,SAAA;AAC5B,EAAA,IAAI,SAAA,EAAW;AACb,IAAA,OAAO,oBAAA,CAAqB,IAAI,SAAS,CAAA;AAAA,EAC3C;AACA,EAAA,OAAO,oBAAA,CAAqB,IAAI,SAAS,CAAA;AAC3C;AAMA,SAAS,cAAA,CAAe,WAAyB,IAAA,EAAyB;AACxE,EAAA,MAAM,YAAY,SAAA,CAAU,SAAA;AAC5B,EAAA,IAAI,SAAA,EAAW;AACb,IAAA,oBAAA,CAAqB,GAAA,CAAI,WAAW,IAAI,CAAA;AAAA,EAC1C,CAAA,MAAO;AACL,IAAA,oBAAA,CAAqB,GAAA,CAAI,WAAW,IAAI,CAAA;AAAA,EAC1C;AACF;AAOO,SAAS,4BAAA,CAA6B,WAAyB,WAAA,EAAgC;AAGpG,EAAA,cAAA,CAAe,WAAW,WAAW,CAAA;AACvC;AAOO,SAAS,6BAAA,CAA8B,WAAyB,kBAAA,EAAgD;AACrH,EAAA,MAAM,YAAA,GAAe,cAAA,CAAe,SAAS,CAAA,IAAK,EAAC;AACnD,EAAA,cAAA,CAAe,WAAW,EAAE,GAAG,YAAA,EAAc,GAAG,oBAAoB,CAAA;AACtE;AAOO,SAAS,0BAA0B,SAAA,EAAgD;AACxF,EAAA,OAAO,cAAA,CAAe,SAAS,CAAA,EAAG,UAAA;AACpC;AAOO,SAAS,+BAA+B,SAAA,EAA6C;AAC1F,EAAA,OAAO,cAAA,CAAe,SAAS,CAAA,EAAG,eAAA;AACpC;AAOO,SAAS,2BAA2B,SAAA,EAAkD;AAC3F,EAAA,OAAO,eAAe,SAAS,CAAA;AACjC;AAMO,SAAS,+BAA+B,SAAA,EAA+B;AAC5E,EAAA,MAAM,YAAY,SAAA,CAAU,SAAA;AAC5B,EAAA,IAAI,SAAA,EAAW;AACb,IAAA,oBAAA,CAAqB,OAAO,SAAS,CAAA;AAAA,EACvC;AAGF;;;;"}
|
|
@@ -7,186 +7,99 @@ import { extractTargetInfo } from './methodConfig.js';
|
|
|
7
7
|
import { filterMcpPiiFromSpanData } from './piiFiltering.js';
|
|
8
8
|
import { buildTransportAttributes } from './sessionExtraction.js';
|
|
9
9
|
|
|
10
|
-
/**
|
|
11
|
-
* Span creation and management functions for MCP server instrumentation
|
|
12
|
-
*
|
|
13
|
-
* Provides unified span creation following OpenTelemetry MCP semantic conventions and our opinitionated take on MCP.
|
|
14
|
-
* Handles both request and notification spans with attribute extraction.
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Creates a span name based on the method and target
|
|
20
|
-
* @internal
|
|
21
|
-
* @param method - MCP method name
|
|
22
|
-
* @param target - Optional target identifier
|
|
23
|
-
* @returns Formatted span name
|
|
24
|
-
*/
|
|
25
10
|
function createSpanName(method, target) {
|
|
26
11
|
return target ? `${method} ${target}` : method;
|
|
27
12
|
}
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Build Sentry-specific attributes based on span type
|
|
31
|
-
* @internal
|
|
32
|
-
* @param type - Span type configuration
|
|
33
|
-
* @returns Sentry-specific attributes
|
|
34
|
-
*/
|
|
35
13
|
function buildSentryAttributes(type) {
|
|
36
14
|
let op;
|
|
37
15
|
let origin;
|
|
38
|
-
|
|
39
16
|
switch (type) {
|
|
40
|
-
case
|
|
17
|
+
case "request":
|
|
41
18
|
op = MCP_SERVER_OP_VALUE;
|
|
42
19
|
origin = MCP_FUNCTION_ORIGIN_VALUE;
|
|
43
20
|
break;
|
|
44
|
-
case
|
|
21
|
+
case "notification-incoming":
|
|
45
22
|
op = MCP_NOTIFICATION_CLIENT_TO_SERVER_OP_VALUE;
|
|
46
23
|
origin = MCP_NOTIFICATION_ORIGIN_VALUE;
|
|
47
24
|
break;
|
|
48
|
-
case
|
|
25
|
+
case "notification-outgoing":
|
|
49
26
|
op = MCP_NOTIFICATION_SERVER_TO_CLIENT_OP_VALUE;
|
|
50
27
|
origin = MCP_NOTIFICATION_ORIGIN_VALUE;
|
|
51
28
|
break;
|
|
52
29
|
}
|
|
53
|
-
|
|
54
30
|
return {
|
|
55
31
|
[SEMANTIC_ATTRIBUTE_SENTRY_OP]: op,
|
|
56
32
|
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: origin,
|
|
57
|
-
[SEMANTIC_ATTRIBUTE_SENTRY_SOURCE]: MCP_ROUTE_SOURCE_VALUE
|
|
33
|
+
[SEMANTIC_ATTRIBUTE_SENTRY_SOURCE]: MCP_ROUTE_SOURCE_VALUE
|
|
58
34
|
};
|
|
59
35
|
}
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* Unified builder for creating MCP spans
|
|
63
|
-
* @internal
|
|
64
|
-
* @param config - Span configuration
|
|
65
|
-
* @returns Created span
|
|
66
|
-
*/
|
|
67
36
|
function createMcpSpan(config) {
|
|
68
37
|
const { type, message, transport, extra, callback, options } = config;
|
|
69
38
|
const { method } = message;
|
|
70
39
|
const params = message.params;
|
|
71
|
-
|
|
72
|
-
// Determine span name based on type and OTEL conventions
|
|
73
40
|
let spanName;
|
|
74
|
-
if (type ===
|
|
41
|
+
if (type === "request") {
|
|
75
42
|
const targetInfo = extractTargetInfo(method, params || {});
|
|
76
43
|
spanName = createSpanName(method, targetInfo.target);
|
|
77
44
|
} else {
|
|
78
|
-
// For notifications, use method name directly per OpenTelemetry conventions
|
|
79
45
|
spanName = method;
|
|
80
46
|
}
|
|
81
|
-
|
|
82
47
|
const rawAttributes = {
|
|
83
48
|
...buildTransportAttributes(transport, extra),
|
|
84
49
|
[MCP_METHOD_NAME_ATTRIBUTE]: method,
|
|
85
50
|
...buildTypeSpecificAttributes(type, message, params, options?.recordInputs),
|
|
86
|
-
...buildSentryAttributes(type)
|
|
51
|
+
...buildSentryAttributes(type)
|
|
87
52
|
};
|
|
88
|
-
|
|
89
53
|
const client = getClient();
|
|
90
54
|
const sendDefaultPii = Boolean(client?.getOptions().sendDefaultPii);
|
|
91
|
-
const attributes = filterMcpPiiFromSpanData(rawAttributes, sendDefaultPii)
|
|
92
|
-
|
|
55
|
+
const attributes = filterMcpPiiFromSpanData(rawAttributes, sendDefaultPii);
|
|
93
56
|
return startSpan(
|
|
94
57
|
{
|
|
95
58
|
name: spanName,
|
|
96
59
|
forceTransaction: true,
|
|
97
|
-
attributes
|
|
60
|
+
attributes
|
|
98
61
|
},
|
|
99
|
-
callback
|
|
62
|
+
callback
|
|
100
63
|
);
|
|
101
64
|
}
|
|
102
|
-
|
|
103
|
-
/**
|
|
104
|
-
* Creates a span for incoming MCP notifications
|
|
105
|
-
* @param jsonRpcMessage - Notification message
|
|
106
|
-
* @param transport - MCP transport instance
|
|
107
|
-
* @param extra - Extra handler data
|
|
108
|
-
* @param options - Resolved MCP options
|
|
109
|
-
* @param callback - Span execution callback
|
|
110
|
-
* @returns Span execution result
|
|
111
|
-
*/
|
|
112
|
-
function createMcpNotificationSpan(
|
|
113
|
-
jsonRpcMessage,
|
|
114
|
-
transport,
|
|
115
|
-
extra,
|
|
116
|
-
options,
|
|
117
|
-
callback,
|
|
118
|
-
) {
|
|
65
|
+
function createMcpNotificationSpan(jsonRpcMessage, transport, extra, options, callback) {
|
|
119
66
|
return createMcpSpan({
|
|
120
|
-
type:
|
|
67
|
+
type: "notification-incoming",
|
|
121
68
|
message: jsonRpcMessage,
|
|
122
69
|
transport,
|
|
123
70
|
extra,
|
|
124
71
|
callback,
|
|
125
|
-
options
|
|
72
|
+
options
|
|
126
73
|
});
|
|
127
74
|
}
|
|
128
|
-
|
|
129
|
-
/**
|
|
130
|
-
* Creates a span for outgoing MCP notifications
|
|
131
|
-
* @param jsonRpcMessage - Notification message
|
|
132
|
-
* @param transport - MCP transport instance
|
|
133
|
-
* @param options - Resolved MCP options
|
|
134
|
-
* @param callback - Span execution callback
|
|
135
|
-
* @returns Span execution result
|
|
136
|
-
*/
|
|
137
|
-
function createMcpOutgoingNotificationSpan(
|
|
138
|
-
jsonRpcMessage,
|
|
139
|
-
transport,
|
|
140
|
-
options,
|
|
141
|
-
callback,
|
|
142
|
-
) {
|
|
75
|
+
function createMcpOutgoingNotificationSpan(jsonRpcMessage, transport, options, callback) {
|
|
143
76
|
return createMcpSpan({
|
|
144
|
-
type:
|
|
77
|
+
type: "notification-outgoing",
|
|
145
78
|
message: jsonRpcMessage,
|
|
146
79
|
transport,
|
|
147
80
|
options,
|
|
148
|
-
callback
|
|
81
|
+
callback
|
|
149
82
|
});
|
|
150
83
|
}
|
|
151
|
-
|
|
152
|
-
/**
|
|
153
|
-
* Builds span configuration for MCP server requests
|
|
154
|
-
* @param jsonRpcMessage - Request message
|
|
155
|
-
* @param transport - MCP transport instance
|
|
156
|
-
* @param extra - Optional extra handler data
|
|
157
|
-
* @param options - Resolved MCP options
|
|
158
|
-
* @returns Span configuration object
|
|
159
|
-
*/
|
|
160
|
-
function buildMcpServerSpanConfig(
|
|
161
|
-
jsonRpcMessage,
|
|
162
|
-
transport,
|
|
163
|
-
extra,
|
|
164
|
-
options,
|
|
165
|
-
)
|
|
166
|
-
|
|
167
|
-
{
|
|
84
|
+
function buildMcpServerSpanConfig(jsonRpcMessage, transport, extra, options) {
|
|
168
85
|
const { method } = jsonRpcMessage;
|
|
169
86
|
const params = jsonRpcMessage.params;
|
|
170
|
-
|
|
171
87
|
const targetInfo = extractTargetInfo(method, params || {});
|
|
172
88
|
const spanName = createSpanName(method, targetInfo.target);
|
|
173
|
-
|
|
174
89
|
const rawAttributes = {
|
|
175
90
|
...buildTransportAttributes(transport, extra),
|
|
176
91
|
[MCP_METHOD_NAME_ATTRIBUTE]: method,
|
|
177
|
-
...buildTypeSpecificAttributes(
|
|
178
|
-
...buildSentryAttributes(
|
|
92
|
+
...buildTypeSpecificAttributes("request", jsonRpcMessage, params, options?.recordInputs),
|
|
93
|
+
...buildSentryAttributes("request")
|
|
179
94
|
};
|
|
180
|
-
|
|
181
95
|
const client = getClient();
|
|
182
96
|
const sendDefaultPii = Boolean(client?.getOptions().sendDefaultPii);
|
|
183
|
-
const attributes = filterMcpPiiFromSpanData(rawAttributes, sendDefaultPii)
|
|
184
|
-
|
|
97
|
+
const attributes = filterMcpPiiFromSpanData(rawAttributes, sendDefaultPii);
|
|
185
98
|
return {
|
|
186
99
|
name: spanName,
|
|
187
100
|
op: MCP_SERVER_OP_VALUE,
|
|
188
101
|
forceTransaction: true,
|
|
189
|
-
attributes
|
|
102
|
+
attributes
|
|
190
103
|
};
|
|
191
104
|
}
|
|
192
105
|
|