@sentry/node 8.0.0-alpha.2 → 8.0.0-alpha.3

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 (228) hide show
  1. package/README.md +14 -93
  2. package/cjs/index.js +3665 -77
  3. package/cjs/index.js.map +1 -1
  4. package/esm/index.js +3614 -31
  5. package/esm/index.js.map +1 -1
  6. package/esm/integrations/anr/worker-script.js +2 -2
  7. package/esm/package.json +1 -0
  8. package/package.json +21 -6
  9. package/types/index.d.ts +6 -5
  10. package/types/index.d.ts.map +1 -1
  11. package/types/integrations/anr/worker-script.d.ts +1 -1
  12. package/types/integrations/anr/worker-script.d.ts.map +1 -1
  13. package/types/integrations/http.d.ts +4 -0
  14. package/types/integrations/http.d.ts.map +1 -1
  15. package/types/integrations/tracing/fastify.d.ts +9 -0
  16. package/types/integrations/tracing/fastify.d.ts.map +1 -1
  17. package/types/integrations/tracing/prisma.d.ts.map +1 -1
  18. package/types/proxy/helpers.d.ts +2 -2
  19. package/types/proxy/helpers.d.ts.map +1 -1
  20. package/types/proxy/index.d.ts.map +1 -1
  21. package/types/sdk/hub.d.ts.map +1 -1
  22. package/types/sdk/init.d.ts.map +1 -1
  23. package/types/transports/http-module.d.ts +2 -2
  24. package/types/transports/http-module.d.ts.map +1 -1
  25. package/types/types.d.ts +3 -4
  26. package/types/types.d.ts.map +1 -1
  27. package/types-ts3.8/index.d.ts +6 -5
  28. package/types-ts3.8/integrations/anr/worker-script.d.ts +1 -1
  29. package/types-ts3.8/integrations/http.d.ts +4 -0
  30. package/types-ts3.8/integrations/tracing/fastify.d.ts +9 -0
  31. package/types-ts3.8/proxy/helpers.d.ts +2 -2
  32. package/types-ts3.8/transports/http-module.d.ts +2 -2
  33. package/types-ts3.8/types.d.ts +3 -4
  34. package/cjs/cron/common.js +0 -56
  35. package/cjs/cron/common.js.map +0 -1
  36. package/cjs/cron/cron.js +0 -102
  37. package/cjs/cron/cron.js.map +0 -1
  38. package/cjs/cron/index.js +0 -15
  39. package/cjs/cron/index.js.map +0 -1
  40. package/cjs/cron/node-cron.js +0 -61
  41. package/cjs/cron/node-cron.js.map +0 -1
  42. package/cjs/cron/node-schedule.js +0 -57
  43. package/cjs/cron/node-schedule.js.map +0 -1
  44. package/cjs/debug-build.js +0 -11
  45. package/cjs/debug-build.js.map +0 -1
  46. package/cjs/integrations/anr/index.js +0 -144
  47. package/cjs/integrations/anr/index.js.map +0 -1
  48. package/cjs/integrations/anr/worker-script.js +0 -2
  49. package/cjs/integrations/anr/worker-script.js.map +0 -1
  50. package/cjs/integrations/console.js +0 -40
  51. package/cjs/integrations/console.js.map +0 -1
  52. package/cjs/integrations/context.js +0 -435
  53. package/cjs/integrations/context.js.map +0 -1
  54. package/cjs/integrations/contextlines.js +0 -137
  55. package/cjs/integrations/contextlines.js.map +0 -1
  56. package/cjs/integrations/http.js +0 -137
  57. package/cjs/integrations/http.js.map +0 -1
  58. package/cjs/integrations/local-variables/common.js +0 -87
  59. package/cjs/integrations/local-variables/common.js.map +0 -1
  60. package/cjs/integrations/local-variables/index.js +0 -8
  61. package/cjs/integrations/local-variables/index.js.map +0 -1
  62. package/cjs/integrations/local-variables/local-variables-sync.js +0 -385
  63. package/cjs/integrations/local-variables/local-variables-sync.js.map +0 -1
  64. package/cjs/integrations/modules.js +0 -99
  65. package/cjs/integrations/modules.js.map +0 -1
  66. package/cjs/integrations/node-fetch.js +0 -82
  67. package/cjs/integrations/node-fetch.js.map +0 -1
  68. package/cjs/integrations/onuncaughtexception.js +0 -137
  69. package/cjs/integrations/onuncaughtexception.js.map +0 -1
  70. package/cjs/integrations/onunhandledrejection.js +0 -90
  71. package/cjs/integrations/onunhandledrejection.js.map +0 -1
  72. package/cjs/integrations/spotlight.js +0 -109
  73. package/cjs/integrations/spotlight.js.map +0 -1
  74. package/cjs/integrations/tracing/express.js +0 -103
  75. package/cjs/integrations/tracing/express.js.map +0 -1
  76. package/cjs/integrations/tracing/fastify.js +0 -33
  77. package/cjs/integrations/tracing/fastify.js.map +0 -1
  78. package/cjs/integrations/tracing/graphql.js +0 -34
  79. package/cjs/integrations/tracing/graphql.js.map +0 -1
  80. package/cjs/integrations/tracing/hapi/index.js +0 -81
  81. package/cjs/integrations/tracing/hapi/index.js.map +0 -1
  82. package/cjs/integrations/tracing/index.js +0 -37
  83. package/cjs/integrations/tracing/index.js.map +0 -1
  84. package/cjs/integrations/tracing/koa.js +0 -21
  85. package/cjs/integrations/tracing/koa.js.map +0 -1
  86. package/cjs/integrations/tracing/mongo.js +0 -33
  87. package/cjs/integrations/tracing/mongo.js.map +0 -1
  88. package/cjs/integrations/tracing/mongoose.js +0 -33
  89. package/cjs/integrations/tracing/mongoose.js.map +0 -1
  90. package/cjs/integrations/tracing/mysql.js +0 -26
  91. package/cjs/integrations/tracing/mysql.js.map +0 -1
  92. package/cjs/integrations/tracing/mysql2.js +0 -33
  93. package/cjs/integrations/tracing/mysql2.js.map +0 -1
  94. package/cjs/integrations/tracing/nest.js +0 -26
  95. package/cjs/integrations/tracing/nest.js.map +0 -1
  96. package/cjs/integrations/tracing/postgres.js +0 -34
  97. package/cjs/integrations/tracing/postgres.js.map +0 -1
  98. package/cjs/integrations/tracing/prisma.js +0 -33
  99. package/cjs/integrations/tracing/prisma.js.map +0 -1
  100. package/cjs/nodeVersion.js +0 -12
  101. package/cjs/nodeVersion.js.map +0 -1
  102. package/cjs/otel/contextManager.js +0 -16
  103. package/cjs/otel/contextManager.js.map +0 -1
  104. package/cjs/proxy/base.js +0 -126
  105. package/cjs/proxy/base.js.map +0 -1
  106. package/cjs/proxy/index.js +0 -209
  107. package/cjs/proxy/index.js.map +0 -1
  108. package/cjs/proxy/parse-proxy-response.js +0 -104
  109. package/cjs/proxy/parse-proxy-response.js.map +0 -1
  110. package/cjs/sdk/api.js +0 -74
  111. package/cjs/sdk/api.js.map +0 -1
  112. package/cjs/sdk/client.js +0 -57
  113. package/cjs/sdk/client.js.map +0 -1
  114. package/cjs/sdk/hub.js +0 -104
  115. package/cjs/sdk/hub.js.map +0 -1
  116. package/cjs/sdk/init.js +0 -252
  117. package/cjs/sdk/init.js.map +0 -1
  118. package/cjs/sdk/initOtel.js +0 -70
  119. package/cjs/sdk/initOtel.js.map +0 -1
  120. package/cjs/sdk/scope.js +0 -18
  121. package/cjs/sdk/scope.js.map +0 -1
  122. package/cjs/transports/http.js +0 -160
  123. package/cjs/transports/http.js.map +0 -1
  124. package/cjs/utils/addOriginToSpan.js +0 -11
  125. package/cjs/utils/addOriginToSpan.js.map +0 -1
  126. package/cjs/utils/errorhandling.js +0 -44
  127. package/cjs/utils/errorhandling.js.map +0 -1
  128. package/cjs/utils/getRequestUrl.js +0 -18
  129. package/cjs/utils/getRequestUrl.js.map +0 -1
  130. package/cjs/utils/module.js +0 -62
  131. package/cjs/utils/module.js.map +0 -1
  132. package/esm/cron/common.js +0 -54
  133. package/esm/cron/common.js.map +0 -1
  134. package/esm/cron/cron.js +0 -100
  135. package/esm/cron/cron.js.map +0 -1
  136. package/esm/cron/index.js +0 -13
  137. package/esm/cron/index.js.map +0 -1
  138. package/esm/cron/node-cron.js +0 -56
  139. package/esm/cron/node-cron.js.map +0 -1
  140. package/esm/cron/node-schedule.js +0 -55
  141. package/esm/cron/node-schedule.js.map +0 -1
  142. package/esm/debug-build.js +0 -9
  143. package/esm/debug-build.js.map +0 -1
  144. package/esm/integrations/anr/index.js +0 -138
  145. package/esm/integrations/anr/index.js.map +0 -1
  146. package/esm/integrations/anr/worker-script.js.map +0 -1
  147. package/esm/integrations/console.js +0 -38
  148. package/esm/integrations/console.js.map +0 -1
  149. package/esm/integrations/context.js +0 -427
  150. package/esm/integrations/context.js.map +0 -1
  151. package/esm/integrations/contextlines.js +0 -131
  152. package/esm/integrations/contextlines.js.map +0 -1
  153. package/esm/integrations/http.js +0 -132
  154. package/esm/integrations/http.js.map +0 -1
  155. package/esm/integrations/local-variables/common.js +0 -81
  156. package/esm/integrations/local-variables/common.js.map +0 -1
  157. package/esm/integrations/local-variables/index.js +0 -6
  158. package/esm/integrations/local-variables/index.js.map +0 -1
  159. package/esm/integrations/local-variables/local-variables-sync.js +0 -379
  160. package/esm/integrations/local-variables/local-variables-sync.js.map +0 -1
  161. package/esm/integrations/modules.js +0 -97
  162. package/esm/integrations/modules.js.map +0 -1
  163. package/esm/integrations/node-fetch.js +0 -80
  164. package/esm/integrations/node-fetch.js.map +0 -1
  165. package/esm/integrations/onuncaughtexception.js +0 -134
  166. package/esm/integrations/onuncaughtexception.js.map +0 -1
  167. package/esm/integrations/onunhandledrejection.js +0 -87
  168. package/esm/integrations/onunhandledrejection.js.map +0 -1
  169. package/esm/integrations/spotlight.js +0 -106
  170. package/esm/integrations/spotlight.js.map +0 -1
  171. package/esm/integrations/tracing/express.js +0 -96
  172. package/esm/integrations/tracing/express.js.map +0 -1
  173. package/esm/integrations/tracing/fastify.js +0 -31
  174. package/esm/integrations/tracing/fastify.js.map +0 -1
  175. package/esm/integrations/tracing/graphql.js +0 -32
  176. package/esm/integrations/tracing/graphql.js.map +0 -1
  177. package/esm/integrations/tracing/hapi/index.js +0 -77
  178. package/esm/integrations/tracing/hapi/index.js.map +0 -1
  179. package/esm/integrations/tracing/index.js +0 -35
  180. package/esm/integrations/tracing/index.js.map +0 -1
  181. package/esm/integrations/tracing/koa.js +0 -19
  182. package/esm/integrations/tracing/koa.js.map +0 -1
  183. package/esm/integrations/tracing/mongo.js +0 -31
  184. package/esm/integrations/tracing/mongo.js.map +0 -1
  185. package/esm/integrations/tracing/mongoose.js +0 -31
  186. package/esm/integrations/tracing/mongoose.js.map +0 -1
  187. package/esm/integrations/tracing/mysql.js +0 -24
  188. package/esm/integrations/tracing/mysql.js.map +0 -1
  189. package/esm/integrations/tracing/mysql2.js +0 -31
  190. package/esm/integrations/tracing/mysql2.js.map +0 -1
  191. package/esm/integrations/tracing/nest.js +0 -24
  192. package/esm/integrations/tracing/nest.js.map +0 -1
  193. package/esm/integrations/tracing/postgres.js +0 -32
  194. package/esm/integrations/tracing/postgres.js.map +0 -1
  195. package/esm/integrations/tracing/prisma.js +0 -31
  196. package/esm/integrations/tracing/prisma.js.map +0 -1
  197. package/esm/nodeVersion.js +0 -9
  198. package/esm/nodeVersion.js.map +0 -1
  199. package/esm/otel/contextManager.js +0 -14
  200. package/esm/otel/contextManager.js.map +0 -1
  201. package/esm/proxy/base.js +0 -121
  202. package/esm/proxy/base.js.map +0 -1
  203. package/esm/proxy/index.js +0 -203
  204. package/esm/proxy/index.js.map +0 -1
  205. package/esm/proxy/parse-proxy-response.js +0 -102
  206. package/esm/proxy/parse-proxy-response.js.map +0 -1
  207. package/esm/sdk/api.js +0 -69
  208. package/esm/sdk/api.js.map +0 -1
  209. package/esm/sdk/client.js +0 -52
  210. package/esm/sdk/client.js.map +0 -1
  211. package/esm/sdk/hub.js +0 -102
  212. package/esm/sdk/hub.js.map +0 -1
  213. package/esm/sdk/init.js +0 -249
  214. package/esm/sdk/init.js.map +0 -1
  215. package/esm/sdk/initOtel.js +0 -67
  216. package/esm/sdk/initOtel.js.map +0 -1
  217. package/esm/sdk/scope.js +0 -16
  218. package/esm/sdk/scope.js.map +0 -1
  219. package/esm/transports/http.js +0 -155
  220. package/esm/transports/http.js.map +0 -1
  221. package/esm/utils/addOriginToSpan.js +0 -9
  222. package/esm/utils/addOriginToSpan.js.map +0 -1
  223. package/esm/utils/errorhandling.js +0 -42
  224. package/esm/utils/errorhandling.js.map +0 -1
  225. package/esm/utils/getRequestUrl.js +0 -16
  226. package/esm/utils/getRequestUrl.js.map +0 -1
  227. package/esm/utils/module.js +0 -60
  228. package/esm/utils/module.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"http.js","sources":["../../../src/transports/http.ts"],"sourcesContent":["import * as http from 'http';\nimport * as https from 'https';\nimport { Readable } from 'stream';\nimport { createGzip } from 'zlib';\nimport { createTransport } from '@sentry/core';\nimport type {\n BaseTransportOptions,\n Transport,\n TransportMakeRequestResponse,\n TransportRequest,\n TransportRequestExecutor,\n} from '@sentry/types';\nimport { consoleSandbox } from '@sentry/utils';\nimport { HttpsProxyAgent } from '../proxy';\n\nimport type { HTTPModule } from './http-module';\n\nexport interface NodeTransportOptions extends BaseTransportOptions {\n /** Define custom headers */\n headers?: Record<string, string>;\n /** Set a proxy that should be used for outbound requests. */\n proxy?: string;\n /** HTTPS proxy CA certificates */\n caCerts?: string | Buffer | Array<string | Buffer>;\n /** Custom HTTP module. Defaults to the native 'http' and 'https' modules. */\n httpModule?: HTTPModule;\n /** Allow overriding connection keepAlive, defaults to false */\n keepAlive?: boolean;\n}\n\n// Estimated maximum size for reasonable standalone event\nconst GZIP_THRESHOLD = 1024 * 32;\n\n/**\n * Gets a stream from a Uint8Array or string\n * Readable.from is ideal but was added in node.js v12.3.0 and v10.17.0\n */\nfunction streamFromBody(body: Uint8Array | string): Readable {\n return new Readable({\n read() {\n this.push(body);\n this.push(null);\n },\n });\n}\n\n/**\n * Creates a Transport that uses native the native 'http' and 'https' modules to send events to Sentry.\n */\nexport function makeNodeTransport(options: NodeTransportOptions): Transport {\n let urlSegments: URL;\n\n try {\n urlSegments = new URL(options.url);\n } catch (e) {\n consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.warn(\n '[@sentry/node]: Invalid dsn or tunnel option, will not send any events. The tunnel option must be a full URL when used.',\n );\n });\n return createTransport(options, () => Promise.resolve({}));\n }\n\n const isHttps = urlSegments.protocol === 'https:';\n\n // Proxy prioritization: http => `options.proxy` | `process.env.http_proxy`\n // Proxy prioritization: https => `options.proxy` | `process.env.https_proxy` | `process.env.http_proxy`\n const proxy = applyNoProxyOption(\n urlSegments,\n options.proxy || (isHttps ? process.env.https_proxy : undefined) || process.env.http_proxy,\n );\n\n const nativeHttpModule = isHttps ? https : http;\n const keepAlive = options.keepAlive === undefined ? false : options.keepAlive;\n\n // TODO(v7): Evaluate if we can set keepAlive to true. This would involve testing for memory leaks in older node\n // versions(>= 8) as they had memory leaks when using it: #2555\n const agent = proxy\n ? (new HttpsProxyAgent(proxy) as http.Agent)\n : new nativeHttpModule.Agent({ keepAlive, maxSockets: 30, timeout: 2000 });\n\n const requestExecutor = createRequestExecutor(options, options.httpModule ?? nativeHttpModule, agent);\n return createTransport(options, requestExecutor);\n}\n\n/**\n * Honors the `no_proxy` env variable with the highest priority to allow for hosts exclusion.\n *\n * @param transportUrl The URL the transport intends to send events to.\n * @param proxy The client configured proxy.\n * @returns A proxy the transport should use.\n */\nfunction applyNoProxyOption(transportUrlSegments: URL, proxy: string | undefined): string | undefined {\n const { no_proxy } = process.env;\n\n const urlIsExemptFromProxy =\n no_proxy &&\n no_proxy\n .split(',')\n .some(\n exemption => transportUrlSegments.host.endsWith(exemption) || transportUrlSegments.hostname.endsWith(exemption),\n );\n\n if (urlIsExemptFromProxy) {\n return undefined;\n } else {\n return proxy;\n }\n}\n\n/**\n * Creates a RequestExecutor to be used with `createTransport`.\n */\nfunction createRequestExecutor(\n options: NodeTransportOptions,\n httpModule: HTTPModule,\n agent: http.Agent,\n): TransportRequestExecutor {\n const { hostname, pathname, port, protocol, search } = new URL(options.url);\n return function makeRequest(request: TransportRequest): Promise<TransportMakeRequestResponse> {\n return new Promise((resolve, reject) => {\n let body = streamFromBody(request.body);\n\n const headers: Record<string, string> = { ...options.headers };\n\n if (request.body.length > GZIP_THRESHOLD) {\n headers['content-encoding'] = 'gzip';\n body = body.pipe(createGzip());\n }\n\n const req = httpModule.request(\n {\n method: 'POST',\n agent,\n headers,\n hostname,\n path: `${pathname}${search}`,\n port,\n protocol,\n ca: options.caCerts,\n },\n res => {\n res.on('data', () => {\n // Drain socket\n });\n\n res.on('end', () => {\n // Drain socket\n });\n\n res.setEncoding('utf8');\n\n // \"Key-value pairs of header names and values. Header names are lower-cased.\"\n // https://nodejs.org/api/http.html#http_message_headers\n const retryAfterHeader = res.headers['retry-after'] ?? null;\n const rateLimitsHeader = res.headers['x-sentry-rate-limits'] ?? null;\n\n resolve({\n statusCode: res.statusCode,\n headers: {\n 'retry-after': retryAfterHeader,\n 'x-sentry-rate-limits': Array.isArray(rateLimitsHeader) ? rateLimitsHeader[0] : rateLimitsHeader,\n },\n });\n },\n );\n\n req.on('error', reject);\n body.pipe(req);\n });\n };\n}\n"],"names":[],"mappings":"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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;CACA;CACA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;CACA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;CACA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;CACA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAS,CAAkB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CA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CAAA,EAAA,CAAA,EAAA;YACA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;UACA,CAAA,CAAA;;UAEA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;UAEA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;UACA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;UACA,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;UACA,MAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;;UAEA,OAAA,CAAA;YACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACA,OAAA,EAAA;cACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;cACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACA,CAAA;UACA,CAAA,CAAA;QACA,CAAA;MACA,CAAA;;MAEA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;MACA,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACA,CAAA,CAAA;EACA,CAAA;AACA;;"}
@@ -1,9 +0,0 @@
1
- import { _INTERNAL } from '@sentry/opentelemetry';
2
-
3
- /** Adds an origin to an OTEL Span. */
4
- function addOriginToSpan(span, origin) {
5
- _INTERNAL.addOriginToSpan(span, origin);
6
- }
7
-
8
- export { addOriginToSpan };
9
- //# sourceMappingURL=addOriginToSpan.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"addOriginToSpan.js","sources":["../../../src/utils/addOriginToSpan.ts"],"sourcesContent":["import type { Span } from '@opentelemetry/api';\nimport { _INTERNAL } from '@sentry/opentelemetry';\nimport type { SpanOrigin } from '@sentry/types';\n\n/** Adds an origin to an OTEL Span. */\nexport function addOriginToSpan(span: Span, origin: SpanOrigin): void {\n _INTERNAL.addOriginToSpan(span, origin);\n}\n"],"names":[],"mappings":";;AAIA;AACO,SAAS,eAAe,CAAC,IAAI,EAAQ,MAAM,EAAoB;AACtE,EAAE,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AACzC;;;;"}
@@ -1,42 +0,0 @@
1
- import { getClient } from '@sentry/core';
2
- import { consoleSandbox, logger } from '@sentry/utils';
3
- import { DEBUG_BUILD } from '../debug-build.js';
4
-
5
- const DEFAULT_SHUTDOWN_TIMEOUT = 2000;
6
-
7
- /**
8
- * @hidden
9
- */
10
- function logAndExitProcess(error) {
11
- consoleSandbox(() => {
12
- // eslint-disable-next-line no-console
13
- console.error(error);
14
- });
15
-
16
- const client = getClient();
17
-
18
- if (client === undefined) {
19
- DEBUG_BUILD && logger.warn('No NodeClient was defined, we are exiting the process now.');
20
- global.process.exit(1);
21
- return;
22
- }
23
-
24
- const options = client.getOptions();
25
- const timeout =
26
- (options && options.shutdownTimeout && options.shutdownTimeout > 0 && options.shutdownTimeout) ||
27
- DEFAULT_SHUTDOWN_TIMEOUT;
28
- client.close(timeout).then(
29
- (result) => {
30
- if (!result) {
31
- DEBUG_BUILD && logger.warn('We reached the timeout for emptying the request buffer, still exiting now!');
32
- }
33
- global.process.exit(1);
34
- },
35
- error => {
36
- DEBUG_BUILD && logger.error(error);
37
- },
38
- );
39
- }
40
-
41
- export { logAndExitProcess };
42
- //# sourceMappingURL=errorhandling.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errorhandling.js","sources":["../../../src/utils/errorhandling.ts"],"sourcesContent":["import { getClient } from '@sentry/core';\nimport { consoleSandbox, logger } from '@sentry/utils';\nimport { DEBUG_BUILD } from '../debug-build';\nimport type { NodeClient } from '../sdk/client';\n\nconst DEFAULT_SHUTDOWN_TIMEOUT = 2000;\n\n/**\n * @hidden\n */\nexport function logAndExitProcess(error: Error): void {\n consoleSandbox(() => {\n // eslint-disable-next-line no-console\n console.error(error);\n });\n\n const client = getClient<NodeClient>();\n\n if (client === undefined) {\n DEBUG_BUILD && logger.warn('No NodeClient was defined, we are exiting the process now.');\n global.process.exit(1);\n return;\n }\n\n const options = client.getOptions();\n const timeout =\n (options && options.shutdownTimeout && options.shutdownTimeout > 0 && options.shutdownTimeout) ||\n DEFAULT_SHUTDOWN_TIMEOUT;\n client.close(timeout).then(\n (result: boolean) => {\n if (!result) {\n DEBUG_BUILD && logger.warn('We reached the timeout for emptying the request buffer, still exiting now!');\n }\n global.process.exit(1);\n },\n error => {\n DEBUG_BUILD && logger.error(error);\n },\n );\n}\n"],"names":[],"mappings":";;;;AAKA,MAAM,wBAAA,GAA2B,IAAI,CAAA;AACrC;AACA;AACA;AACA;AACO,SAAS,iBAAiB,CAAC,KAAK,EAAe;AACtD,EAAE,cAAc,CAAC,MAAM;AACvB;AACA,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;AACxB,GAAG,CAAC,CAAA;AACJ;AACA,EAAE,MAAM,MAAA,GAAS,SAAS,EAAc,CAAA;AACxC;AACA,EAAE,IAAI,MAAO,KAAI,SAAS,EAAE;AAC5B,IAAI,eAAe,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAA;AAC5F,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAC1B,IAAI,OAAM;AACV,GAAE;AACF;AACA,EAAE,MAAM,OAAQ,GAAE,MAAM,CAAC,UAAU,EAAE,CAAA;AACrC,EAAE,MAAM,OAAQ;AAChB,IAAI,CAAC,OAAQ,IAAG,OAAO,CAAC,mBAAmB,OAAO,CAAC,eAAA,GAAkB,CAAE,IAAG,OAAO,CAAC,eAAe;AACjG,IAAI,wBAAwB,CAAA;AAC5B,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI;AAC5B,IAAI,CAAC,MAAM,KAAc;AACzB,MAAM,IAAI,CAAC,MAAM,EAAE;AACnB,QAAQ,eAAe,MAAM,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAA;AAChH,OAAM;AACN,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAC5B,KAAK;AACL,IAAI,SAAS;AACb,MAAM,eAAe,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;AACxC,KAAK;AACL,GAAG,CAAA;AACH;;;;"}
@@ -1,16 +0,0 @@
1
- /** Build a full URL from request options. */
2
- function getRequestUrl(requestOptions) {
3
- const protocol = requestOptions.protocol || '';
4
- const hostname = requestOptions.hostname || requestOptions.host || '';
5
- // Don't log standard :80 (http) and :443 (https) ports to reduce the noise
6
- // Also don't add port if the hostname already includes a port
7
- const port =
8
- !requestOptions.port || requestOptions.port === 80 || requestOptions.port === 443 || /^(.*):(\d+)$/.test(hostname)
9
- ? ''
10
- : `:${requestOptions.port}`;
11
- const path = requestOptions.path ? requestOptions.path : '/';
12
- return `${protocol}//${hostname}${port}${path}`;
13
- }
14
-
15
- export { getRequestUrl };
16
- //# sourceMappingURL=getRequestUrl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getRequestUrl.js","sources":["../../../src/utils/getRequestUrl.ts"],"sourcesContent":["import type { RequestOptions } from 'http';\n\n/** Build a full URL from request options. */\nexport function getRequestUrl(requestOptions: RequestOptions): string {\n const protocol = requestOptions.protocol || '';\n const hostname = requestOptions.hostname || requestOptions.host || '';\n // Don't log standard :80 (http) and :443 (https) ports to reduce the noise\n // Also don't add port if the hostname already includes a port\n const port =\n !requestOptions.port || requestOptions.port === 80 || requestOptions.port === 443 || /^(.*):(\\d+)$/.test(hostname)\n ? ''\n : `:${requestOptions.port}`;\n const path = requestOptions.path ? requestOptions.path : '/';\n return `${protocol}//${hostname}${port}${path}`;\n}\n"],"names":[],"mappings":"AAEA;AACO,SAAS,aAAa,CAAC,cAAc,EAA0B;AACtE,EAAE,MAAM,QAAS,GAAE,cAAc,CAAC,QAAA,IAAY,EAAE,CAAA;AAChD,EAAE,MAAM,QAAS,GAAE,cAAc,CAAC,QAAS,IAAG,cAAc,CAAC,IAAK,IAAG,EAAE,CAAA;AACvE;AACA;AACA,EAAE,MAAM,IAAK;AACb,IAAI,CAAC,cAAc,CAAC,IAAA,IAAQ,cAAc,CAAC,SAAS,EAAA,IAAM,cAAc,CAAC,SAAS,GAAA,IAAO,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAA;AACrH,QAAQ,EAAA;AACR,QAAQ,CAAC,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,CAAA,CAAA;AACA,EAAA,MAAA,IAAA,GAAA,cAAA,CAAA,IAAA,GAAA,cAAA,CAAA,IAAA,GAAA,GAAA,CAAA;AACA,EAAA,OAAA,CAAA,EAAA,QAAA,CAAA,EAAA,EAAA,QAAA,CAAA,EAAA,IAAA,CAAA,EAAA,IAAA,CAAA,CAAA,CAAA;AACA;;;;"}
@@ -1,60 +0,0 @@
1
- import { posix, sep } from 'path';
2
- import { dirname } from '@sentry/utils';
3
-
4
- /** normalizes Windows paths */
5
- function normalizeWindowsPath(path) {
6
- return path
7
- .replace(/^[A-Z]:/, '') // remove Windows-style prefix
8
- .replace(/\\/g, '/'); // replace all `\` instances with `/`
9
- }
10
-
11
- /** Creates a function that gets the module name from a filename */
12
- function createGetModuleFromFilename(
13
- basePath = process.argv[1] ? dirname(process.argv[1]) : process.cwd(),
14
- isWindows = sep === '\\',
15
- ) {
16
- const normalizedBase = isWindows ? normalizeWindowsPath(basePath) : basePath;
17
-
18
- return (filename) => {
19
- if (!filename) {
20
- return;
21
- }
22
-
23
- const normalizedFilename = isWindows ? normalizeWindowsPath(filename) : filename;
24
-
25
- // eslint-disable-next-line prefer-const
26
- let { dir, base: file, ext } = posix.parse(normalizedFilename);
27
-
28
- if (ext === '.js' || ext === '.mjs' || ext === '.cjs') {
29
- file = file.slice(0, ext.length * -1);
30
- }
31
-
32
- if (!dir) {
33
- // No dirname whatsoever
34
- dir = '.';
35
- }
36
-
37
- const n = dir.lastIndexOf('/node_modules');
38
- if (n > -1) {
39
- return `${dir.slice(n + 14).replace(/\//g, '.')}:${file}`;
40
- }
41
-
42
- // Let's see if it's a part of the main module
43
- // To be a part of main module, it has to share the same base
44
- if (dir.startsWith(normalizedBase)) {
45
- let moduleName = dir.slice(normalizedBase.length + 1).replace(/\//g, '.');
46
-
47
- if (moduleName) {
48
- moduleName += ':';
49
- }
50
- moduleName += file;
51
-
52
- return moduleName;
53
- }
54
-
55
- return file;
56
- };
57
- }
58
-
59
- export { createGetModuleFromFilename };
60
- //# sourceMappingURL=module.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"module.js","sources":["../../../src/utils/module.ts"],"sourcesContent":["import { posix, sep } from 'path';\nimport { dirname } from '@sentry/utils';\n\n/** normalizes Windows paths */\nfunction normalizeWindowsPath(path: string): string {\n return path\n .replace(/^[A-Z]:/, '') // remove Windows-style prefix\n .replace(/\\\\/g, '/'); // replace all `\\` instances with `/`\n}\n\n/** Creates a function that gets the module name from a filename */\nexport function createGetModuleFromFilename(\n basePath: string = process.argv[1] ? dirname(process.argv[1]) : process.cwd(),\n isWindows: boolean = sep === '\\\\',\n): (filename: string | undefined) => string | undefined {\n const normalizedBase = isWindows ? normalizeWindowsPath(basePath) : basePath;\n\n return (filename: string | undefined) => {\n if (!filename) {\n return;\n }\n\n const normalizedFilename = isWindows ? normalizeWindowsPath(filename) : filename;\n\n // eslint-disable-next-line prefer-const\n let { dir, base: file, ext } = posix.parse(normalizedFilename);\n\n if (ext === '.js' || ext === '.mjs' || ext === '.cjs') {\n file = file.slice(0, ext.length * -1);\n }\n\n if (!dir) {\n // No dirname whatsoever\n dir = '.';\n }\n\n const n = dir.lastIndexOf('/node_modules');\n if (n > -1) {\n return `${dir.slice(n + 14).replace(/\\//g, '.')}:${file}`;\n }\n\n // Let's see if it's a part of the main module\n // To be a part of main module, it has to share the same base\n if (dir.startsWith(normalizedBase)) {\n let moduleName = dir.slice(normalizedBase.length + 1).replace(/\\//g, '.');\n\n if (moduleName) {\n moduleName += ':';\n }\n moduleName += file;\n\n return moduleName;\n }\n\n return file;\n };\n}\n"],"names":[],"mappings":";;;AAGA;AACA,SAAS,oBAAoB,CAAC,IAAI,EAAkB;AACpD,EAAE,OAAO,IAAA;AACT,KAAK,OAAO,CAAC,SAAS,EAAE,EAAE,CAAA;AAC1B,KAAK,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AACxB,CAAA;AACA;AACA;AACO,SAAS,2BAA2B;AAC3C,EAAE,QAAQ,GAAW,OAAO,CAAC,IAAI,CAAC,CAAC,CAAE,GAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,GAAI,OAAO,CAAC,GAAG,EAAE;AAC/E,EAAE,SAAS,GAAY,GAAA,KAAQ,IAAI;AACnC,EAAwD;AACxD,EAAE,MAAM,cAAe,GAAE,SAAU,GAAE,oBAAoB,CAAC,QAAQ,CAAE,GAAE,QAAQ,CAAA;AAC9E;AACA,EAAE,OAAO,CAAC,QAAQ,KAAyB;AAC3C,IAAI,IAAI,CAAC,QAAQ,EAAE;AACnB,MAAM,OAAM;AACZ,KAAI;AACJ;AACA,IAAI,MAAM,kBAAmB,GAAE,SAAU,GAAE,oBAAoB,CAAC,QAAQ,CAAE,GAAE,QAAQ,CAAA;AACpF;AACA;AACA,IAAI,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAI,EAAA,GAAI,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;AAClE;AACA,IAAI,IAAI,GAAI,KAAI,KAAM,IAAG,GAAI,KAAI,MAAO,IAAG,GAAI,KAAI,MAAM,EAAE;AAC3D,MAAM,IAAK,GAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,MAAA,GAAS,CAAC,CAAC,CAAC,CAAA;AAC3C,KAAI;AACJ;AACA,IAAI,IAAI,CAAC,GAAG,EAAE;AACd;AACA,MAAM,GAAA,GAAM,GAAG,CAAA;AACf,KAAI;AACJ;AACA,IAAI,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;AAC9C,IAAI,IAAI,CAAA,GAAI,CAAC,CAAC,EAAE;AAChB,MAAM,OAAO,CAAC,EAAA,GAAA,CAAA,KAAA,CAAA,CAAA,GAAA,EAAA,CAAA,CAAA,OAAA,CAAA,KAAA,EAAA,GAAA,CAAA,CAAA,CAAA,EAAA,IAAA,CAAA,CAAA,CAAA;AACA,KAAA;AACA;AACA;AACA;AACA,IAAA,IAAA,GAAA,CAAA,UAAA,CAAA,cAAA,CAAA,EAAA;AACA,MAAA,IAAA,UAAA,GAAA,GAAA,CAAA,KAAA,CAAA,cAAA,CAAA,MAAA,GAAA,CAAA,CAAA,CAAA,OAAA,CAAA,KAAA,EAAA,GAAA,CAAA,CAAA;AACA;AACA,MAAA,IAAA,UAAA,EAAA;AACA,QAAA,UAAA,IAAA,GAAA,CAAA;AACA,OAAA;AACA,MAAA,UAAA,IAAA,IAAA,CAAA;AACA;AACA,MAAA,OAAA,UAAA,CAAA;AACA,KAAA;AACA;AACA,IAAA,OAAA,IAAA,CAAA;AACA,GAAA,CAAA;AACA;;;;"}