@sentry/core 10.38.0 → 10.39.0-alpha.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.
Files changed (255) hide show
  1. package/build/cjs/attributes.js.map +1 -1
  2. package/build/cjs/client.js +22 -12
  3. package/build/cjs/client.js.map +1 -1
  4. package/build/cjs/envelope.js +41 -7
  5. package/build/cjs/envelope.js.map +1 -1
  6. package/build/cjs/index.js +52 -0
  7. package/build/cjs/index.js.map +1 -1
  8. package/build/cjs/integration.js +12 -0
  9. package/build/cjs/integration.js.map +1 -1
  10. package/build/cjs/integrations/eventFilters.js +1 -1
  11. package/build/cjs/integrations/eventFilters.js.map +1 -1
  12. package/build/cjs/integrations/mcp-server/correlation.js +54 -10
  13. package/build/cjs/integrations/mcp-server/correlation.js.map +1 -1
  14. package/build/cjs/integrations/mcp-server/sessionManagement.js +50 -16
  15. package/build/cjs/integrations/mcp-server/sessionManagement.js.map +1 -1
  16. package/build/cjs/integrations/requestdata.js +72 -6
  17. package/build/cjs/integrations/requestdata.js.map +1 -1
  18. package/build/cjs/integrations/spanStreaming.js +54 -0
  19. package/build/cjs/integrations/spanStreaming.js.map +1 -0
  20. package/build/cjs/metrics/public-api.js +3 -3
  21. package/build/cjs/metrics/public-api.js.map +1 -1
  22. package/build/cjs/scope.js +1 -1
  23. package/build/cjs/scope.js.map +1 -1
  24. package/build/cjs/semanticAttributes.js +84 -0
  25. package/build/cjs/semanticAttributes.js.map +1 -1
  26. package/build/cjs/spans/captureSpan.js +104 -0
  27. package/build/cjs/spans/captureSpan.js.map +1 -0
  28. package/build/cjs/spans/spanBuffer.js +121 -0
  29. package/build/cjs/spans/spanBuffer.js.map +1 -0
  30. package/build/cjs/spans/spanFirstUtils.js +186 -0
  31. package/build/cjs/spans/spanFirstUtils.js.map +1 -0
  32. package/build/cjs/tracing/ai/gen-ai-attributes.js +6 -0
  33. package/build/cjs/tracing/ai/gen-ai-attributes.js.map +1 -1
  34. package/build/cjs/tracing/openai/index.js +134 -51
  35. package/build/cjs/tracing/openai/index.js.map +1 -1
  36. package/build/cjs/tracing/sentrySpan.js +32 -0
  37. package/build/cjs/tracing/sentrySpan.js.map +1 -1
  38. package/build/cjs/tracing/trace.js +1 -0
  39. package/build/cjs/tracing/trace.js.map +1 -1
  40. package/build/cjs/tracing/vercel-ai/constants.js +4 -0
  41. package/build/cjs/tracing/vercel-ai/constants.js.map +1 -1
  42. package/build/cjs/tracing/vercel-ai/index.js +14 -0
  43. package/build/cjs/tracing/vercel-ai/index.js.map +1 -1
  44. package/build/cjs/tracing/vercel-ai/utils.js +71 -22
  45. package/build/cjs/tracing/vercel-ai/utils.js.map +1 -1
  46. package/build/cjs/transports/base.js +18 -2
  47. package/build/cjs/transports/base.js.map +1 -1
  48. package/build/cjs/transports/offline.js +16 -17
  49. package/build/cjs/transports/offline.js.map +1 -1
  50. package/build/cjs/utils/beforeSendSpan.js +36 -0
  51. package/build/cjs/utils/beforeSendSpan.js.map +1 -0
  52. package/build/cjs/utils/envToBool.js +32 -0
  53. package/build/cjs/utils/envToBool.js.map +1 -0
  54. package/build/cjs/utils/featureFlags.js +1 -0
  55. package/build/cjs/utils/featureFlags.js.map +1 -1
  56. package/build/cjs/utils/flushIfServerless.js.map +1 -1
  57. package/build/cjs/utils/hasSpanStreamingEnabled.js +21 -0
  58. package/build/cjs/utils/hasSpanStreamingEnabled.js.map +1 -0
  59. package/build/cjs/utils/prepareEvent.js +6 -1
  60. package/build/cjs/utils/prepareEvent.js.map +1 -1
  61. package/build/cjs/utils/promisebuffer.js +5 -3
  62. package/build/cjs/utils/promisebuffer.js.map +1 -1
  63. package/build/cjs/utils/scopeData.js +4 -0
  64. package/build/cjs/utils/scopeData.js.map +1 -1
  65. package/build/cjs/utils/sdkMetadata.js +7 -11
  66. package/build/cjs/utils/sdkMetadata.js.map +1 -1
  67. package/build/cjs/utils/should-ignore-span.js +31 -9
  68. package/build/cjs/utils/should-ignore-span.js.map +1 -1
  69. package/build/cjs/utils/spanUtils.js +90 -2
  70. package/build/cjs/utils/spanUtils.js.map +1 -1
  71. package/build/cjs/utils/timer.js +20 -0
  72. package/build/cjs/utils/timer.js.map +1 -0
  73. package/build/cjs/utils/tracePropagationTargets.js +38 -0
  74. package/build/cjs/utils/tracePropagationTargets.js.map +1 -0
  75. package/build/cjs/utils/version.js +1 -1
  76. package/build/cjs/utils/version.js.map +1 -1
  77. package/build/esm/attributes.js.map +1 -1
  78. package/build/esm/client.js +18 -8
  79. package/build/esm/client.js.map +1 -1
  80. package/build/esm/envelope.js +41 -8
  81. package/build/esm/envelope.js.map +1 -1
  82. package/build/esm/index.js +12 -3
  83. package/build/esm/index.js.map +1 -1
  84. package/build/esm/integration.js +12 -1
  85. package/build/esm/integration.js.map +1 -1
  86. package/build/esm/integrations/eventFilters.js +1 -1
  87. package/build/esm/integrations/eventFilters.js.map +1 -1
  88. package/build/esm/integrations/mcp-server/correlation.js +54 -10
  89. package/build/esm/integrations/mcp-server/correlation.js.map +1 -1
  90. package/build/esm/integrations/mcp-server/sessionManagement.js +50 -16
  91. package/build/esm/integrations/mcp-server/sessionManagement.js.map +1 -1
  92. package/build/esm/integrations/requestdata.js +72 -6
  93. package/build/esm/integrations/requestdata.js.map +1 -1
  94. package/build/esm/integrations/spanStreaming.js +52 -0
  95. package/build/esm/integrations/spanStreaming.js.map +1 -0
  96. package/build/esm/metrics/public-api.js +3 -3
  97. package/build/esm/metrics/public-api.js.map +1 -1
  98. package/build/esm/package.json +1 -1
  99. package/build/esm/scope.js +1 -1
  100. package/build/esm/scope.js.map +1 -1
  101. package/build/esm/semanticAttributes.js +57 -1
  102. package/build/esm/semanticAttributes.js.map +1 -1
  103. package/build/esm/spans/captureSpan.js +102 -0
  104. package/build/esm/spans/captureSpan.js.map +1 -0
  105. package/build/esm/spans/spanBuffer.js +119 -0
  106. package/build/esm/spans/spanBuffer.js.map +1 -0
  107. package/build/esm/spans/spanFirstUtils.js +182 -0
  108. package/build/esm/spans/spanFirstUtils.js.map +1 -0
  109. package/build/esm/tracing/ai/gen-ai-attributes.js +6 -1
  110. package/build/esm/tracing/ai/gen-ai-attributes.js.map +1 -1
  111. package/build/esm/tracing/openai/index.js +134 -51
  112. package/build/esm/tracing/openai/index.js.map +1 -1
  113. package/build/esm/tracing/sentrySpan.js +33 -1
  114. package/build/esm/tracing/sentrySpan.js.map +1 -1
  115. package/build/esm/tracing/trace.js +1 -0
  116. package/build/esm/tracing/trace.js.map +1 -1
  117. package/build/esm/tracing/vercel-ai/constants.js +4 -1
  118. package/build/esm/tracing/vercel-ai/constants.js.map +1 -1
  119. package/build/esm/tracing/vercel-ai/index.js +15 -1
  120. package/build/esm/tracing/vercel-ai/index.js.map +1 -1
  121. package/build/esm/tracing/vercel-ai/utils.js +73 -24
  122. package/build/esm/tracing/vercel-ai/utils.js.map +1 -1
  123. package/build/esm/transports/base.js +18 -2
  124. package/build/esm/transports/base.js.map +1 -1
  125. package/build/esm/transports/offline.js +16 -17
  126. package/build/esm/transports/offline.js.map +1 -1
  127. package/build/esm/utils/beforeSendSpan.js +33 -0
  128. package/build/esm/utils/beforeSendSpan.js.map +1 -0
  129. package/build/esm/utils/envToBool.js +28 -0
  130. package/build/esm/utils/envToBool.js.map +1 -0
  131. package/build/esm/utils/featureFlags.js +1 -0
  132. package/build/esm/utils/featureFlags.js.map +1 -1
  133. package/build/esm/utils/flushIfServerless.js.map +1 -1
  134. package/build/esm/utils/hasSpanStreamingEnabled.js +19 -0
  135. package/build/esm/utils/hasSpanStreamingEnabled.js.map +1 -0
  136. package/build/esm/utils/prepareEvent.js +6 -1
  137. package/build/esm/utils/prepareEvent.js.map +1 -1
  138. package/build/esm/utils/promisebuffer.js +5 -3
  139. package/build/esm/utils/promisebuffer.js.map +1 -1
  140. package/build/esm/utils/scopeData.js +4 -0
  141. package/build/esm/utils/scopeData.js.map +1 -1
  142. package/build/esm/utils/sdkMetadata.js +7 -11
  143. package/build/esm/utils/sdkMetadata.js.map +1 -1
  144. package/build/esm/utils/should-ignore-span.js +31 -9
  145. package/build/esm/utils/should-ignore-span.js.map +1 -1
  146. package/build/esm/utils/spanUtils.js +87 -3
  147. package/build/esm/utils/spanUtils.js.map +1 -1
  148. package/build/esm/utils/timer.js +18 -0
  149. package/build/esm/utils/timer.js.map +1 -0
  150. package/build/esm/utils/tracePropagationTargets.js +36 -0
  151. package/build/esm/utils/tracePropagationTargets.js.map +1 -0
  152. package/build/esm/utils/version.js +1 -1
  153. package/build/esm/utils/version.js.map +1 -1
  154. package/build/types/attributes.d.ts +1 -1
  155. package/build/types/attributes.d.ts.map +1 -1
  156. package/build/types/client.d.ts +40 -2
  157. package/build/types/client.d.ts.map +1 -1
  158. package/build/types/envelope.d.ts +6 -1
  159. package/build/types/envelope.d.ts.map +1 -1
  160. package/build/types/index.d.ts +13 -4
  161. package/build/types/index.d.ts.map +1 -1
  162. package/build/types/integration.d.ts +4 -0
  163. package/build/types/integration.d.ts.map +1 -1
  164. package/build/types/integrations/mcp-server/correlation.d.ts +6 -2
  165. package/build/types/integrations/mcp-server/correlation.d.ts.map +1 -1
  166. package/build/types/integrations/mcp-server/sessionManagement.d.ts +8 -2
  167. package/build/types/integrations/mcp-server/sessionManagement.d.ts.map +1 -1
  168. package/build/types/integrations/requestdata.d.ts.map +1 -1
  169. package/build/types/integrations/spanStreaming.d.ts +11 -0
  170. package/build/types/integrations/spanStreaming.d.ts.map +1 -0
  171. package/build/types/metrics/public-api.d.ts +3 -3
  172. package/build/types/semanticAttributes.d.ts +38 -0
  173. package/build/types/semanticAttributes.d.ts.map +1 -1
  174. package/build/types/spans/captureSpan.d.ts +10 -0
  175. package/build/types/spans/captureSpan.d.ts.map +1 -0
  176. package/build/types/spans/spanBuffer.d.ts +35 -0
  177. package/build/types/spans/spanBuffer.d.ts.map +1 -0
  178. package/build/types/spans/spanFirstUtils.d.ts +20 -0
  179. package/build/types/spans/spanFirstUtils.d.ts.map +1 -0
  180. package/build/types/tracing/ai/gen-ai-attributes.d.ts +4 -0
  181. package/build/types/tracing/ai/gen-ai-attributes.d.ts.map +1 -1
  182. package/build/types/tracing/openai/index.d.ts.map +1 -1
  183. package/build/types/tracing/sentrySpan.d.ts +10 -1
  184. package/build/types/tracing/sentrySpan.d.ts.map +1 -1
  185. package/build/types/tracing/vercel-ai/constants.d.ts +1 -0
  186. package/build/types/tracing/vercel-ai/constants.d.ts.map +1 -1
  187. package/build/types/tracing/vercel-ai/index.d.ts.map +1 -1
  188. package/build/types/tracing/vercel-ai/utils.d.ts +2 -2
  189. package/build/types/tracing/vercel-ai/utils.d.ts.map +1 -1
  190. package/build/types/transports/base.d.ts.map +1 -1
  191. package/build/types/transports/offline.d.ts.map +1 -1
  192. package/build/types/types-hoist/attributes.d.ts +19 -0
  193. package/build/types/types-hoist/attributes.d.ts.map +1 -0
  194. package/build/types/types-hoist/envelope.d.ts +22 -2
  195. package/build/types/types-hoist/envelope.d.ts.map +1 -1
  196. package/build/types/types-hoist/feedback/index.d.ts.map +1 -1
  197. package/build/types/types-hoist/integration.d.ts +7 -0
  198. package/build/types/types-hoist/integration.d.ts.map +1 -1
  199. package/build/types/types-hoist/link.d.ts +2 -2
  200. package/build/types/types-hoist/link.d.ts.map +1 -1
  201. package/build/types/types-hoist/options.d.ts +18 -2
  202. package/build/types/types-hoist/options.d.ts.map +1 -1
  203. package/build/types/types-hoist/span.d.ts +27 -0
  204. package/build/types/types-hoist/span.d.ts.map +1 -1
  205. package/build/types/utils/beforeSendSpan.d.ts +22 -0
  206. package/build/types/utils/beforeSendSpan.d.ts.map +1 -0
  207. package/build/types/utils/envToBool.d.ts +13 -0
  208. package/build/types/utils/envToBool.d.ts.map +1 -0
  209. package/build/types/utils/featureFlags.d.ts.map +1 -1
  210. package/build/types/utils/flushIfServerless.d.ts.map +1 -1
  211. package/build/types/utils/hasSpanStreamingEnabled.d.ts +9 -0
  212. package/build/types/utils/hasSpanStreamingEnabled.d.ts.map +1 -0
  213. package/build/types/utils/prepareEvent.d.ts.map +1 -1
  214. package/build/types/utils/promisebuffer.d.ts.map +1 -1
  215. package/build/types/utils/scopeData.d.ts.map +1 -1
  216. package/build/types/utils/sdkMetadata.d.ts.map +1 -1
  217. package/build/types/utils/should-ignore-span.d.ts +3 -3
  218. package/build/types/utils/should-ignore-span.d.ts.map +1 -1
  219. package/build/types/utils/spanUtils.d.ts +22 -2
  220. package/build/types/utils/spanUtils.d.ts.map +1 -1
  221. package/build/types/utils/timer.d.ts +11 -0
  222. package/build/types/utils/timer.d.ts.map +1 -0
  223. package/build/types/utils/tracePropagationTargets.d.ts +9 -0
  224. package/build/types/utils/tracePropagationTargets.d.ts.map +1 -0
  225. package/build/types-ts3.8/attributes.d.ts +1 -1
  226. package/build/types-ts3.8/client.d.ts +40 -2
  227. package/build/types-ts3.8/envelope.d.ts +6 -1
  228. package/build/types-ts3.8/index.d.ts +13 -4
  229. package/build/types-ts3.8/integration.d.ts +4 -0
  230. package/build/types-ts3.8/integrations/mcp-server/correlation.d.ts +6 -2
  231. package/build/types-ts3.8/integrations/mcp-server/sessionManagement.d.ts +8 -2
  232. package/build/types-ts3.8/integrations/spanStreaming.d.ts +11 -0
  233. package/build/types-ts3.8/metrics/public-api.d.ts +3 -3
  234. package/build/types-ts3.8/semanticAttributes.d.ts +38 -0
  235. package/build/types-ts3.8/spans/captureSpan.d.ts +10 -0
  236. package/build/types-ts3.8/spans/spanBuffer.d.ts +35 -0
  237. package/build/types-ts3.8/spans/spanFirstUtils.d.ts +20 -0
  238. package/build/types-ts3.8/tracing/ai/gen-ai-attributes.d.ts +4 -0
  239. package/build/types-ts3.8/tracing/sentrySpan.d.ts +10 -1
  240. package/build/types-ts3.8/tracing/vercel-ai/constants.d.ts +1 -0
  241. package/build/types-ts3.8/tracing/vercel-ai/utils.d.ts +2 -2
  242. package/build/types-ts3.8/types-hoist/attributes.d.ts +19 -0
  243. package/build/types-ts3.8/types-hoist/envelope.d.ts +22 -2
  244. package/build/types-ts3.8/types-hoist/integration.d.ts +7 -0
  245. package/build/types-ts3.8/types-hoist/link.d.ts +2 -2
  246. package/build/types-ts3.8/types-hoist/options.d.ts +18 -2
  247. package/build/types-ts3.8/types-hoist/span.d.ts +27 -0
  248. package/build/types-ts3.8/utils/beforeSendSpan.d.ts +22 -0
  249. package/build/types-ts3.8/utils/envToBool.d.ts +13 -0
  250. package/build/types-ts3.8/utils/hasSpanStreamingEnabled.d.ts +9 -0
  251. package/build/types-ts3.8/utils/should-ignore-span.d.ts +3 -3
  252. package/build/types-ts3.8/utils/spanUtils.d.ts +22 -2
  253. package/build/types-ts3.8/utils/timer.d.ts +11 -0
  254. package/build/types-ts3.8/utils/tracePropagationTargets.d.ts +9 -0
  255. package/package.json +1 -1
@@ -1,12 +1,12 @@
1
1
  import { ClientOptions } from '../types-hoist/options';
2
- import { SpanJSON } from '../types-hoist/span';
2
+ import { SpanJSON, SpanV2JSON } from '../types-hoist/span';
3
3
  /**
4
4
  * Check if a span should be ignored based on the ignoreSpans configuration.
5
5
  */
6
- export declare function shouldIgnoreSpan(span: Pick<SpanJSON, 'description' | 'op'>, ignoreSpans: Required<ClientOptions>['ignoreSpans']): boolean;
6
+ export declare function shouldIgnoreSpan(span: Pick<SpanJSON, 'description' | 'op'> | Pick<SpanV2JSON, 'name' | 'attributes'>, ignoreSpans: Required<ClientOptions>['ignoreSpans']): boolean;
7
7
  /**
8
8
  * Takes a list of spans, and a span that was dropped, and re-parents the child spans of the dropped span to the parent of the dropped span, if possible.
9
9
  * This mutates the spans array in place!
10
10
  */
11
- export declare function reparentChildSpans(spans: SpanJSON[], dropSpan: SpanJSON): void;
11
+ export declare function reparentChildSpans(spans: Pick<SpanV2JSON, 'parent_span_id' | 'span_id'>[], dropSpan: Pick<SpanV2JSON, 'parent_span_id' | 'span_id'>): void;
12
12
  //# sourceMappingURL=should-ignore-span.d.ts.map
@@ -1,6 +1,7 @@
1
+ import { Attributes } from '../attributes';
1
2
  import { TraceContext } from '../types-hoist/context';
2
3
  import { SpanLink, SpanLinkJSON } from '../types-hoist/link';
3
- import { Span, SpanAttributes, SpanJSON, SpanTimeInput } from '../types-hoist/span';
4
+ import { Span, SpanAttributes, SpanJSON, SpanTimeInput, SpanV2JSON } from '../types-hoist/span';
4
5
  import { SpanStatus } from '../types-hoist/spanStatus';
5
6
  export declare const TRACE_FLAG_NONE = 0;
6
7
  export declare const TRACE_FLAG_SAMPLED = 1;
@@ -28,6 +29,12 @@ export declare function spanToTraceparentHeader(span: Span): string;
28
29
  * If the links array is empty, it returns `undefined` so the empty value can be dropped before it's sent.
29
30
  */
30
31
  export declare function convertSpanLinksForEnvelope(links?: SpanLink[]): SpanLinkJSON[] | undefined;
32
+ /**
33
+ *
34
+ * @param links
35
+ * @returns
36
+ */
37
+ export declare function getV2SpanLinks(links?: SpanLink[]): SpanLinkJSON<Attributes>[] | undefined;
31
38
  /**
32
39
  * Convert a span time input into a timestamp in seconds.
33
40
  */
@@ -36,6 +43,11 @@ export declare function spanTimeInputToSeconds(input: SpanTimeInput | undefined)
36
43
  * Convert a span to a JSON representation.
37
44
  */
38
45
  export declare function spanToJSON(span: Span): SpanJSON;
46
+ /**
47
+ * Convert a span to a SpanV2JSON representation.
48
+ * @returns
49
+ */
50
+ export declare function spanToV2JSON(span: Span): SpanV2JSON;
39
51
  /** Exported only for tests. */
40
52
  export interface OpenTelemetrySdkTraceBaseSpan extends Span {
41
53
  attributes: SpanAttributes;
@@ -55,6 +67,10 @@ export interface OpenTelemetrySdkTraceBaseSpan extends Span {
55
67
  export declare function spanIsSampled(span: Span): boolean;
56
68
  /** Get the status message to use for a JSON representation of a span. */
57
69
  export declare function getStatusMessage(status: SpanStatus | undefined): string | undefined;
70
+ /**
71
+ * Convert the various statuses to the ones expected by Sentry ('ok' is default)
72
+ */
73
+ export declare function getV2StatusMessage(status: SpanStatus | undefined): 'ok' | 'error';
58
74
  declare const CHILD_SPANS_FIELD = "_sentryChildSpans";
59
75
  declare const ROOT_SPAN_FIELD = "_sentryRootSpan";
60
76
  type SpanWithPotentialChildren = Span & {
@@ -74,7 +90,11 @@ export declare function getSpanDescendants(span: SpanWithPotentialChildren): Spa
74
90
  /**
75
91
  * Returns the root span of a given span.
76
92
  */
77
- export declare function getRootSpan(span: SpanWithPotentialChildren): Span;
93
+ export declare const getRootSpan: typeof INTERNAL_getSegmentSpan;
94
+ /**
95
+ * Returns the segment span of a given span.
96
+ */
97
+ export declare function INTERNAL_getSegmentSpan(span: SpanWithPotentialChildren): Span;
78
98
  /**
79
99
  * Returns the currently active span.
80
100
  */
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Calls `unref` on a timer, if the method is available on @param timer.
3
+ *
4
+ * `unref()` is used to allow processes to exit immediately, even if the timer
5
+ * is still running and hasn't resolved yet.
6
+ *
7
+ * Use this in places where code can run on browser or server, since browsers
8
+ * do not support `unref`.
9
+ */
10
+ export declare function safeUnref(timer: ReturnType<typeof setTimeout>): ReturnType<typeof setTimeout>;
11
+ //# sourceMappingURL=timer.d.ts.map
@@ -0,0 +1,9 @@
1
+ import { CoreOptions as Options } from '../types-hoist/options';
2
+ import { LRUMap } from './lru';
3
+ /**
4
+ * Check if a given URL should be propagated to or not.
5
+ * If no url is defined, or no trace propagation targets are defined, this will always return `true`.
6
+ * You can also optionally provide a decision map, to cache decisions and avoid repeated regex lookups.
7
+ */
8
+ export declare function shouldPropagateTraceForUrl(url: string | undefined, tracePropagationTargets: Options['tracePropagationTargets'], decisionMap?: LRUMap<string, boolean>): boolean;
9
+ //# sourceMappingURL=tracePropagationTargets.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentry/core",
3
- "version": "10.38.0",
3
+ "version": "10.39.0-alpha.0",
4
4
  "description": "Base implementation for all Sentry JavaScript SDKs",
5
5
  "repository": "git://github.com/getsentry/sentry-javascript.git",
6
6
  "homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/core",