autotel 3.6.0 → 4.0.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 (617) hide show
  1. package/dist/attribute-redacting-processor-DtTS9xxh.d.cts +175 -0
  2. package/dist/attribute-redacting-processor-DtTS9xxh.d.cts.map +1 -0
  3. package/dist/attribute-redacting-processor-DtTS9xxh.d.ts +175 -0
  4. package/dist/attribute-redacting-processor-DtTS9xxh.d.ts.map +1 -0
  5. package/dist/attribute-redacting-processor.cjs +374 -33
  6. package/dist/attribute-redacting-processor.cjs.map +1 -1
  7. package/dist/attribute-redacting-processor.d.cts +2 -207
  8. package/dist/attribute-redacting-processor.d.ts +2 -207
  9. package/dist/attribute-redacting-processor.js +368 -2
  10. package/dist/attribute-redacting-processor.js.map +1 -1
  11. package/dist/attributes-CmYpdqCN.js +591 -0
  12. package/dist/attributes-CmYpdqCN.js.map +1 -0
  13. package/dist/attributes-PZ5doLgw.cjs +704 -0
  14. package/dist/attributes-PZ5doLgw.cjs.map +1 -0
  15. package/dist/attributes.cjs +21 -85
  16. package/dist/attributes.d.cts +2 -20
  17. package/dist/attributes.d.ts +2 -20
  18. package/dist/attributes.js +3 -5
  19. package/dist/auto.cjs +50 -28
  20. package/dist/auto.cjs.map +1 -1
  21. package/dist/auto.d.cts +1 -2
  22. package/dist/auto.d.ts +1 -2
  23. package/dist/auto.js +49 -23
  24. package/dist/auto.js.map +1 -1
  25. package/dist/business-baggage.cjs +357 -13
  26. package/dist/business-baggage.cjs.map +1 -1
  27. package/dist/business-baggage.d.cts +106 -139
  28. package/dist/business-baggage.d.cts.map +1 -0
  29. package/dist/business-baggage.d.ts +106 -139
  30. package/dist/business-baggage.d.ts.map +1 -0
  31. package/dist/business-baggage.js +357 -2
  32. package/dist/business-baggage.js.map +1 -1
  33. package/dist/canonical-log-line-processor--RlFDHhm.cjs +377 -0
  34. package/dist/canonical-log-line-processor--RlFDHhm.cjs.map +1 -0
  35. package/dist/canonical-log-line-processor-BcRuAdRk.d.ts +147 -0
  36. package/dist/canonical-log-line-processor-BcRuAdRk.d.ts.map +1 -0
  37. package/dist/canonical-log-line-processor-DbBQT5vY.js +366 -0
  38. package/dist/canonical-log-line-processor-DbBQT5vY.js.map +1 -0
  39. package/dist/canonical-log-line-processor-xvjMgtpF.d.cts +147 -0
  40. package/dist/canonical-log-line-processor-xvjMgtpF.d.cts.map +1 -0
  41. package/dist/config.cjs +118 -22
  42. package/dist/config.cjs.map +1 -1
  43. package/dist/config.d.cts +33 -45
  44. package/dist/config.d.cts.map +1 -0
  45. package/dist/config.d.ts +33 -45
  46. package/dist/config.d.ts.map +1 -0
  47. package/dist/config.js +116 -3
  48. package/dist/config.js.map +1 -1
  49. package/dist/correlated-events-Bzh5y-UB.js +28 -0
  50. package/dist/correlated-events-Bzh5y-UB.js.map +1 -0
  51. package/dist/correlated-events-kSwLo3mi.cjs +34 -0
  52. package/dist/correlated-events-kSwLo3mi.cjs.map +1 -0
  53. package/dist/correlation-id.cjs +11 -54
  54. package/dist/correlation-id.d.cts +6 -5
  55. package/dist/correlation-id.d.cts.map +1 -0
  56. package/dist/correlation-id.d.ts +6 -5
  57. package/dist/correlation-id.d.ts.map +1 -0
  58. package/dist/correlation-id.js +3 -17
  59. package/dist/db.cjs +244 -209
  60. package/dist/db.cjs.map +1 -1
  61. package/dist/db.d.cts +28 -26
  62. package/dist/db.d.cts.map +1 -0
  63. package/dist/db.d.ts +28 -26
  64. package/dist/db.d.ts.map +1 -0
  65. package/dist/db.js +243 -207
  66. package/dist/db.js.map +1 -1
  67. package/dist/decorators.cjs +39 -66
  68. package/dist/decorators.cjs.map +1 -1
  69. package/dist/decorators.d.cts +10 -37
  70. package/dist/decorators.d.cts.map +1 -0
  71. package/dist/decorators.d.ts +10 -37
  72. package/dist/decorators.d.ts.map +1 -0
  73. package/dist/decorators.js +38 -64
  74. package/dist/decorators.js.map +1 -1
  75. package/dist/define-event-CreknLm3.d.ts +25 -0
  76. package/dist/define-event-CreknLm3.d.ts.map +1 -0
  77. package/dist/define-event-HZRizPwz.d.cts +25 -0
  78. package/dist/define-event-HZRizPwz.d.cts.map +1 -0
  79. package/dist/drain-pipeline.cjs +111 -9
  80. package/dist/drain-pipeline.cjs.map +1 -1
  81. package/dist/drain-pipeline.d.cts +27 -32
  82. package/dist/drain-pipeline.d.cts.map +1 -0
  83. package/dist/drain-pipeline.d.ts +27 -32
  84. package/dist/drain-pipeline.d.ts.map +1 -0
  85. package/dist/drain-pipeline.js +111 -2
  86. package/dist/drain-pipeline.js.map +1 -1
  87. package/dist/enrichers.cjs +59 -66
  88. package/dist/enrichers.cjs.map +1 -1
  89. package/dist/enrichers.d.cts +15 -13
  90. package/dist/enrichers.d.cts.map +1 -0
  91. package/dist/enrichers.d.ts +15 -13
  92. package/dist/enrichers.d.ts.map +1 -0
  93. package/dist/enrichers.js +58 -65
  94. package/dist/enrichers.js.map +1 -1
  95. package/dist/event-Dlqr4ZNL.cjs +778 -0
  96. package/dist/event-Dlqr4ZNL.cjs.map +1 -0
  97. package/dist/event-_58ryBjh.js +761 -0
  98. package/dist/event-_58ryBjh.js.map +1 -0
  99. package/dist/event-subscriber-D1XLkPzi.d.cts +223 -0
  100. package/dist/event-subscriber-D1XLkPzi.d.cts.map +1 -0
  101. package/dist/event-subscriber-D1XLkPzi.d.ts +223 -0
  102. package/dist/event-subscriber-D1XLkPzi.d.ts.map +1 -0
  103. package/dist/event-subscriber.cjs +0 -6
  104. package/dist/event-subscriber.d.cts +2 -221
  105. package/dist/event-subscriber.d.ts +2 -221
  106. package/dist/event-subscriber.js +1 -3
  107. package/dist/event-testing-BqRnI0z4.d.cts +106 -0
  108. package/dist/event-testing-BqRnI0z4.d.cts.map +1 -0
  109. package/dist/event-testing-CfFs3to2.d.ts +106 -0
  110. package/dist/event-testing-CfFs3to2.d.ts.map +1 -0
  111. package/dist/event-testing.cjs +93 -17
  112. package/dist/event-testing.cjs.map +1 -1
  113. package/dist/event-testing.d.cts +2 -110
  114. package/dist/event-testing.d.ts +2 -110
  115. package/dist/event-testing.js +91 -2
  116. package/dist/event-testing.js.map +1 -1
  117. package/dist/event.cjs +5 -37
  118. package/dist/event.d.cts +295 -340
  119. package/dist/event.d.cts.map +1 -0
  120. package/dist/event.d.ts +295 -340
  121. package/dist/event.d.ts.map +1 -0
  122. package/dist/event.js +3 -21
  123. package/dist/exporters.cjs +12 -16
  124. package/dist/exporters.d.cts +86 -111
  125. package/dist/exporters.d.cts.map +1 -0
  126. package/dist/exporters.d.ts +86 -111
  127. package/dist/exporters.d.ts.map +1 -0
  128. package/dist/exporters.js +4 -4
  129. package/dist/filtering-span-processor-B8R8B7Uk.d.cts +59 -0
  130. package/dist/filtering-span-processor-B8R8B7Uk.d.cts.map +1 -0
  131. package/dist/filtering-span-processor-B8R8B7Uk.d.ts +59 -0
  132. package/dist/filtering-span-processor-B8R8B7Uk.d.ts.map +1 -0
  133. package/dist/filtering-span-processor.cjs +49 -9
  134. package/dist/filtering-span-processor.cjs.map +1 -1
  135. package/dist/filtering-span-processor.d.cts +2 -80
  136. package/dist/filtering-span-processor.d.ts +2 -80
  137. package/dist/filtering-span-processor.js +49 -2
  138. package/dist/filtering-span-processor.js.map +1 -1
  139. package/dist/functional-BGkT8J-h.js +1265 -0
  140. package/dist/functional-BGkT8J-h.js.map +1 -0
  141. package/dist/functional-C4CzoVrX.cjs +1312 -0
  142. package/dist/functional-C4CzoVrX.cjs.map +1 -0
  143. package/dist/functional.cjs +11 -57
  144. package/dist/functional.d.cts +96 -97
  145. package/dist/functional.d.cts.map +1 -0
  146. package/dist/functional.d.ts +96 -97
  147. package/dist/functional.d.ts.map +1 -0
  148. package/dist/functional.js +3 -20
  149. package/dist/http.cjs +276 -176
  150. package/dist/http.cjs.map +1 -1
  151. package/dist/http.d.cts +17 -37
  152. package/dist/http.d.cts.map +1 -0
  153. package/dist/http.d.ts +17 -37
  154. package/dist/http.d.ts.map +1 -0
  155. package/dist/http.js +275 -174
  156. package/dist/http.js.map +1 -1
  157. package/dist/index-Ck06vlW2.d.ts +678 -0
  158. package/dist/index-Ck06vlW2.d.ts.map +1 -0
  159. package/dist/index-eKuioqT1.d.cts +678 -0
  160. package/dist/index-eKuioqT1.d.cts.map +1 -0
  161. package/dist/index.cjs +751 -1218
  162. package/dist/index.cjs.map +1 -1
  163. package/dist/index.d.cts +341 -659
  164. package/dist/index.d.cts.map +1 -0
  165. package/dist/index.d.ts +341 -659
  166. package/dist/index.d.ts.map +1 -0
  167. package/dist/index.js +606 -737
  168. package/dist/index.js.map +1 -1
  169. package/dist/init-CNp-ee80.d.cts +1157 -0
  170. package/dist/init-CNp-ee80.d.cts.map +1 -0
  171. package/dist/init-Ch6t7MNI.js +1015 -0
  172. package/dist/init-Ch6t7MNI.js.map +1 -0
  173. package/dist/init-DJQOdVlN.d.ts +1157 -0
  174. package/dist/init-DJQOdVlN.d.ts.map +1 -0
  175. package/dist/init-DvapOXCc.cjs +1092 -0
  176. package/dist/init-DvapOXCc.cjs.map +1 -0
  177. package/dist/instrumentation.cjs +159 -185
  178. package/dist/instrumentation.cjs.map +1 -1
  179. package/dist/instrumentation.d.cts +42 -40
  180. package/dist/instrumentation.d.cts.map +1 -0
  181. package/dist/instrumentation.d.ts +42 -40
  182. package/dist/instrumentation.d.ts.map +1 -0
  183. package/dist/instrumentation.js +158 -183
  184. package/dist/instrumentation.js.map +1 -1
  185. package/dist/logger-BauSUhUv.d.cts +313 -0
  186. package/dist/logger-BauSUhUv.d.cts.map +1 -0
  187. package/dist/logger-BauSUhUv.d.ts +313 -0
  188. package/dist/logger-BauSUhUv.d.ts.map +1 -0
  189. package/dist/logger.cjs +225 -25
  190. package/dist/logger.cjs.map +1 -1
  191. package/dist/logger.d.cts +2 -348
  192. package/dist/logger.d.ts +2 -348
  193. package/dist/logger.js +204 -4
  194. package/dist/logger.js.map +1 -1
  195. package/dist/messaging-adapters.cjs +292 -187
  196. package/dist/messaging-adapters.cjs.map +1 -1
  197. package/dist/messaging-adapters.d.cts +28 -66
  198. package/dist/messaging-adapters.d.cts.map +1 -0
  199. package/dist/messaging-adapters.d.ts +28 -66
  200. package/dist/messaging-adapters.d.ts.map +1 -0
  201. package/dist/messaging-adapters.js +291 -185
  202. package/dist/messaging-adapters.js.map +1 -1
  203. package/dist/messaging-testing.cjs +306 -372
  204. package/dist/messaging-testing.cjs.map +1 -1
  205. package/dist/messaging-testing.d.cts +194 -223
  206. package/dist/messaging-testing.d.cts.map +1 -0
  207. package/dist/messaging-testing.d.ts +194 -223
  208. package/dist/messaging-testing.d.ts.map +1 -0
  209. package/dist/messaging-testing.js +305 -371
  210. package/dist/messaging-testing.js.map +1 -1
  211. package/dist/messaging.cjs +757 -36
  212. package/dist/messaging.cjs.map +1 -1
  213. package/dist/messaging.d.cts +603 -644
  214. package/dist/messaging.d.cts.map +1 -0
  215. package/dist/messaging.d.ts +603 -644
  216. package/dist/messaging.d.ts.map +1 -0
  217. package/dist/messaging.js +756 -21
  218. package/dist/messaging.js.map +1 -1
  219. package/dist/metric-helpers.cjs +27 -27
  220. package/dist/metric-helpers.cjs.map +1 -1
  221. package/dist/metric-helpers.d.cts +4 -2
  222. package/dist/metric-helpers.d.cts.map +1 -0
  223. package/dist/metric-helpers.d.ts +4 -2
  224. package/dist/metric-helpers.d.ts.map +1 -0
  225. package/dist/metric-helpers.js +24 -4
  226. package/dist/metric-helpers.js.map +1 -1
  227. package/dist/metric-testing-DXdK3-Q3.d.ts +106 -0
  228. package/dist/metric-testing-DXdK3-Q3.d.ts.map +1 -0
  229. package/dist/metric-testing-MxvzChDp.d.cts +106 -0
  230. package/dist/metric-testing-MxvzChDp.d.cts.map +1 -0
  231. package/dist/metric-testing.cjs +93 -17
  232. package/dist/metric-testing.cjs.map +1 -1
  233. package/dist/metric-testing.d.cts +2 -110
  234. package/dist/metric-testing.d.ts +2 -110
  235. package/dist/metric-testing.js +91 -2
  236. package/dist/metric-testing.js.map +1 -1
  237. package/dist/metric.cjs +306 -22
  238. package/dist/metric.cjs.map +1 -1
  239. package/dist/metric.d.cts +170 -198
  240. package/dist/metric.d.cts.map +1 -0
  241. package/dist/metric.d.ts +170 -198
  242. package/dist/metric.d.ts.map +1 -0
  243. package/dist/metric.js +277 -7
  244. package/dist/metric.js.map +1 -1
  245. package/dist/node-require-DF5QBX6z.cjs +99 -0
  246. package/dist/node-require-DF5QBX6z.cjs.map +1 -0
  247. package/dist/node-require-Db1oDpLj.js +88 -0
  248. package/dist/node-require-Db1oDpLj.js.map +1 -0
  249. package/dist/operation-context-C-2hmmtP.js +59 -0
  250. package/dist/operation-context-C-2hmmtP.js.map +1 -0
  251. package/dist/operation-context-n4_obUwq.cjs +70 -0
  252. package/dist/operation-context-n4_obUwq.cjs.map +1 -0
  253. package/dist/parse-error.cjs +55 -9
  254. package/dist/parse-error.cjs.map +1 -1
  255. package/dist/parse-error.d.cts +12 -10
  256. package/dist/parse-error.d.cts.map +1 -0
  257. package/dist/parse-error.d.ts +12 -10
  258. package/dist/parse-error.d.ts.map +1 -0
  259. package/dist/parse-error.js +55 -2
  260. package/dist/parse-error.js.map +1 -1
  261. package/dist/pretty-console-exporter-CMzlrRNg.cjs +232 -0
  262. package/dist/pretty-console-exporter-CMzlrRNg.cjs.map +1 -0
  263. package/dist/pretty-console-exporter-DqKl_q9z.js +227 -0
  264. package/dist/pretty-console-exporter-DqKl_q9z.js.map +1 -0
  265. package/dist/processors.cjs +13 -17
  266. package/dist/processors.d.cts +3 -171
  267. package/dist/processors.d.ts +3 -171
  268. package/dist/processors.js +4 -4
  269. package/dist/register.cjs +35 -6
  270. package/dist/register.cjs.map +1 -1
  271. package/dist/register.d.cts +1 -2
  272. package/dist/register.d.ts +1 -2
  273. package/dist/register.js +36 -3
  274. package/dist/register.js.map +1 -1
  275. package/dist/registry-DVSmWg6Y.js +175 -0
  276. package/dist/registry-DVSmWg6Y.js.map +1 -0
  277. package/dist/registry-DYgvb62e.cjs +319 -0
  278. package/dist/registry-DYgvb62e.cjs.map +1 -0
  279. package/dist/sampling-CR0Va1VB.d.ts +351 -0
  280. package/dist/sampling-CR0Va1VB.d.ts.map +1 -0
  281. package/dist/sampling-DfYhDJij.d.cts +351 -0
  282. package/dist/sampling-DfYhDJij.d.cts.map +1 -0
  283. package/dist/sampling.cjs +452 -60
  284. package/dist/sampling.cjs.map +1 -1
  285. package/dist/sampling.d.cts +2 -379
  286. package/dist/sampling.d.ts +2 -379
  287. package/dist/sampling.js +441 -5
  288. package/dist/sampling.js.map +1 -1
  289. package/dist/security-schema.cjs +65 -46
  290. package/dist/security-schema.cjs.map +1 -1
  291. package/dist/security-schema.d.cts +23 -26
  292. package/dist/security-schema.d.cts.map +1 -0
  293. package/dist/security-schema.d.ts +23 -26
  294. package/dist/security-schema.d.ts.map +1 -0
  295. package/dist/security-schema.js +64 -45
  296. package/dist/security-schema.js.map +1 -1
  297. package/dist/semantic-conventions-FhSxv-bK.d.cts +32 -0
  298. package/dist/semantic-conventions-FhSxv-bK.d.cts.map +1 -0
  299. package/dist/semantic-conventions-FhSxv-bK.d.ts +32 -0
  300. package/dist/semantic-conventions-FhSxv-bK.d.ts.map +1 -0
  301. package/dist/semantic-conventions.cjs +15 -26
  302. package/dist/semantic-conventions.cjs.map +1 -1
  303. package/dist/semantic-conventions.d.cts +2 -29
  304. package/dist/semantic-conventions.d.ts +2 -29
  305. package/dist/semantic-conventions.js +12 -3
  306. package/dist/semantic-conventions.js.map +1 -1
  307. package/dist/semantic-helpers.cjs +327 -39
  308. package/dist/semantic-helpers.cjs.map +1 -1
  309. package/dist/semantic-helpers.d.cts +30 -150
  310. package/dist/semantic-helpers.d.cts.map +1 -0
  311. package/dist/semantic-helpers.d.ts +30 -150
  312. package/dist/semantic-helpers.d.ts.map +1 -0
  313. package/dist/semantic-helpers.js +326 -20
  314. package/dist/semantic-helpers.js.map +1 -1
  315. package/dist/span-name-normalizer-8ZOGJuwv.d.cts +70 -0
  316. package/dist/span-name-normalizer-8ZOGJuwv.d.cts.map +1 -0
  317. package/dist/span-name-normalizer-8ZOGJuwv.d.ts +70 -0
  318. package/dist/span-name-normalizer-8ZOGJuwv.d.ts.map +1 -0
  319. package/dist/span-name-normalizer.cjs +95 -17
  320. package/dist/span-name-normalizer.cjs.map +1 -1
  321. package/dist/span-name-normalizer.d.cts +2 -94
  322. package/dist/span-name-normalizer.d.ts +2 -94
  323. package/dist/span-name-normalizer.js +93 -2
  324. package/dist/span-name-normalizer.js.map +1 -1
  325. package/dist/stable-hash-BNTMrmdB.cjs +28 -0
  326. package/dist/stable-hash-BNTMrmdB.cjs.map +1 -0
  327. package/dist/stable-hash-Cg5cT34Q.js +23 -0
  328. package/dist/stable-hash-Cg5cT34Q.js.map +1 -0
  329. package/dist/structured-error-9--cxBay.js +143 -0
  330. package/dist/structured-error-9--cxBay.js.map +1 -0
  331. package/dist/structured-error-CHg7DoIQ.cjs +178 -0
  332. package/dist/structured-error-CHg7DoIQ.cjs.map +1 -0
  333. package/dist/tail-sampling-processor.cjs +26 -13
  334. package/dist/tail-sampling-processor.cjs.map +1 -1
  335. package/dist/tail-sampling-processor.d.cts +11 -23
  336. package/dist/tail-sampling-processor.d.cts.map +1 -0
  337. package/dist/tail-sampling-processor.d.ts +11 -23
  338. package/dist/tail-sampling-processor.d.ts.map +1 -0
  339. package/dist/tail-sampling-processor.js +27 -6
  340. package/dist/tail-sampling-processor.js.map +1 -1
  341. package/dist/test-span-collector.cjs +70 -72
  342. package/dist/test-span-collector.cjs.map +1 -1
  343. package/dist/test-span-collector.d.cts +25 -43
  344. package/dist/test-span-collector.d.cts.map +1 -0
  345. package/dist/test-span-collector.d.ts +25 -43
  346. package/dist/test-span-collector.d.ts.map +1 -0
  347. package/dist/test-span-collector.js +69 -70
  348. package/dist/test-span-collector.js.map +1 -1
  349. package/dist/testing.cjs +389 -278
  350. package/dist/testing.cjs.map +1 -1
  351. package/dist/testing.d.cts +39 -62
  352. package/dist/testing.d.cts.map +1 -0
  353. package/dist/testing.d.ts +39 -62
  354. package/dist/testing.d.ts.map +1 -0
  355. package/dist/testing.js +386 -265
  356. package/dist/testing.js.map +1 -1
  357. package/dist/trace-context-Cijqoi6e.d.cts +212 -0
  358. package/dist/trace-context-Cijqoi6e.d.cts.map +1 -0
  359. package/dist/trace-context-Cijqoi6e.d.ts +212 -0
  360. package/dist/trace-context-Cijqoi6e.d.ts.map +1 -0
  361. package/dist/trace-helpers.cjs +634 -54
  362. package/dist/trace-helpers.cjs.map +1 -1
  363. package/dist/trace-helpers.d.cts +17 -49
  364. package/dist/trace-helpers.d.cts.map +1 -0
  365. package/dist/trace-helpers.d.ts +17 -49
  366. package/dist/trace-helpers.d.ts.map +1 -0
  367. package/dist/trace-helpers.js +624 -3
  368. package/dist/trace-helpers.js.map +1 -1
  369. package/dist/tracer-provider.cjs +227 -16
  370. package/dist/tracer-provider.cjs.map +1 -1
  371. package/dist/tracer-provider.d.cts +5 -4
  372. package/dist/tracer-provider.d.cts.map +1 -0
  373. package/dist/tracer-provider.d.ts +5 -4
  374. package/dist/tracer-provider.d.ts.map +1 -0
  375. package/dist/tracer-provider.js +227 -2
  376. package/dist/tracer-provider.js.map +1 -1
  377. package/dist/track-3HY4NGV-.cjs +1212 -0
  378. package/dist/track-3HY4NGV-.cjs.map +1 -0
  379. package/dist/track-nsKVy-pj.js +1111 -0
  380. package/dist/track-nsKVy-pj.js.map +1 -0
  381. package/dist/validate.cjs +178 -115
  382. package/dist/validate.cjs.map +1 -1
  383. package/dist/validate.d.cts +40 -64
  384. package/dist/validate.d.cts.map +1 -0
  385. package/dist/validate.d.ts +40 -64
  386. package/dist/validate.d.ts.map +1 -0
  387. package/dist/validate.js +177 -113
  388. package/dist/validate.js.map +1 -1
  389. package/dist/validation-attributes.cjs +42 -17
  390. package/dist/validation-attributes.cjs.map +1 -1
  391. package/dist/validation-attributes.d.cts +13 -20
  392. package/dist/validation-attributes.d.cts.map +1 -0
  393. package/dist/validation-attributes.d.ts +13 -20
  394. package/dist/validation-attributes.d.ts.map +1 -0
  395. package/dist/validation-attributes.js +40 -2
  396. package/dist/validation-attributes.js.map +1 -1
  397. package/dist/webhook.cjs +286 -256
  398. package/dist/webhook.cjs.map +1 -1
  399. package/dist/webhook.d.cts +157 -192
  400. package/dist/webhook.d.cts.map +1 -0
  401. package/dist/webhook.d.ts +157 -192
  402. package/dist/webhook.d.ts.map +1 -0
  403. package/dist/webhook.js +285 -254
  404. package/dist/webhook.js.map +1 -1
  405. package/dist/workflow-distributed.cjs +498 -412
  406. package/dist/workflow-distributed.cjs.map +1 -1
  407. package/dist/workflow-distributed.d.cts +163 -173
  408. package/dist/workflow-distributed.d.cts.map +1 -0
  409. package/dist/workflow-distributed.d.ts +163 -173
  410. package/dist/workflow-distributed.d.ts.map +1 -0
  411. package/dist/workflow-distributed.js +497 -410
  412. package/dist/workflow-distributed.js.map +1 -1
  413. package/dist/workflow.cjs +405 -40
  414. package/dist/workflow.cjs.map +1 -1
  415. package/dist/workflow.d.cts +78 -131
  416. package/dist/workflow.d.cts.map +1 -0
  417. package/dist/workflow.d.ts +78 -131
  418. package/dist/workflow.d.ts.map +1 -0
  419. package/dist/workflow.js +403 -21
  420. package/dist/workflow.js.map +1 -1
  421. package/dist/yaml-config-B3dQ82GR.cjs +272 -0
  422. package/dist/yaml-config-B3dQ82GR.cjs.map +1 -0
  423. package/dist/yaml-config.cjs +5 -24
  424. package/dist/yaml-config.d.cts +30 -64
  425. package/dist/yaml-config.d.cts.map +1 -0
  426. package/dist/yaml-config.d.ts +30 -64
  427. package/dist/yaml-config.d.ts.map +1 -0
  428. package/dist/yaml-config.js +226 -7
  429. package/dist/yaml-config.js.map +1 -1
  430. package/package.json +4 -4
  431. package/skills/analyze-traces/SKILL.md +14 -12
  432. package/skills/review-otel-patterns/SKILL.md +4 -2
  433. package/skills/tune-sampling/SKILL.md +8 -3
  434. package/src/attributes/builders.ts +2 -20
  435. package/src/attributes/index.ts +0 -1
  436. package/src/attributes/registry.ts +2 -9
  437. package/src/attributes/types.ts +0 -8
  438. package/src/index.ts +7 -41
  439. package/src/request-logger.test.ts +53 -1
  440. package/src/request-logger.ts +58 -0
  441. package/src/semantic-helpers.test.ts +2 -87
  442. package/src/semantic-helpers.ts +0 -146
  443. package/src/validate.test.ts +3 -1
  444. package/src/validate.ts +9 -3
  445. package/dist/attributes.cjs.map +0 -1
  446. package/dist/attributes.js.map +0 -1
  447. package/dist/chunk-2ZKEORFN.cjs +0 -14
  448. package/dist/chunk-2ZKEORFN.cjs.map +0 -1
  449. package/dist/chunk-3QXBFGKP.js +0 -344
  450. package/dist/chunk-3QXBFGKP.js.map +0 -1
  451. package/dist/chunk-454CH4OV.js +0 -744
  452. package/dist/chunk-454CH4OV.js.map +0 -1
  453. package/dist/chunk-4A53YIAX.js +0 -180
  454. package/dist/chunk-4A53YIAX.js.map +0 -1
  455. package/dist/chunk-4IFSYQVX.js +0 -337
  456. package/dist/chunk-4IFSYQVX.js.map +0 -1
  457. package/dist/chunk-4P6ZOARG.cjs +0 -33
  458. package/dist/chunk-4P6ZOARG.cjs.map +0 -1
  459. package/dist/chunk-55ER2KD5.js +0 -228
  460. package/dist/chunk-55ER2KD5.js.map +0 -1
  461. package/dist/chunk-5ZN622AO.js +0 -73
  462. package/dist/chunk-5ZN622AO.js.map +0 -1
  463. package/dist/chunk-66YJ66GG.js +0 -1021
  464. package/dist/chunk-66YJ66GG.js.map +0 -1
  465. package/dist/chunk-6S5RUKU3.cjs +0 -347
  466. package/dist/chunk-6S5RUKU3.cjs.map +0 -1
  467. package/dist/chunk-6UQRVUN3.js +0 -222
  468. package/dist/chunk-6UQRVUN3.js.map +0 -1
  469. package/dist/chunk-7552UTQW.js +0 -11
  470. package/dist/chunk-7552UTQW.js.map +0 -1
  471. package/dist/chunk-7EQ4G4SI.cjs +0 -146
  472. package/dist/chunk-7EQ4G4SI.cjs.map +0 -1
  473. package/dist/chunk-7SAWIN74.js +0 -285
  474. package/dist/chunk-7SAWIN74.js.map +0 -1
  475. package/dist/chunk-A4E5AQFK.js +0 -30
  476. package/dist/chunk-A4E5AQFK.js.map +0 -1
  477. package/dist/chunk-ALPYR2GC.js +0 -1061
  478. package/dist/chunk-ALPYR2GC.js.map +0 -1
  479. package/dist/chunk-B7SWBE4P.cjs +0 -799
  480. package/dist/chunk-B7SWBE4P.cjs.map +0 -1
  481. package/dist/chunk-BZHG5IZ4.js +0 -73
  482. package/dist/chunk-BZHG5IZ4.js.map +0 -1
  483. package/dist/chunk-CEAQK2QY.cjs +0 -32
  484. package/dist/chunk-CEAQK2QY.cjs.map +0 -1
  485. package/dist/chunk-CMHVQR6P.js +0 -170
  486. package/dist/chunk-CMHVQR6P.js.map +0 -1
  487. package/dist/chunk-CU6IDACR.cjs +0 -224
  488. package/dist/chunk-CU6IDACR.cjs.map +0 -1
  489. package/dist/chunk-D4TM63S3.js +0 -795
  490. package/dist/chunk-D4TM63S3.js.map +0 -1
  491. package/dist/chunk-DCEDJQGG.js +0 -28
  492. package/dist/chunk-DCEDJQGG.js.map +0 -1
  493. package/dist/chunk-DPSA4QLA.js +0 -344
  494. package/dist/chunk-DPSA4QLA.js.map +0 -1
  495. package/dist/chunk-E6TERL5O.cjs +0 -23
  496. package/dist/chunk-E6TERL5O.cjs.map +0 -1
  497. package/dist/chunk-EE6CPXKH.cjs +0 -164
  498. package/dist/chunk-EE6CPXKH.cjs.map +0 -1
  499. package/dist/chunk-EOFB7XCL.cjs +0 -837
  500. package/dist/chunk-EOFB7XCL.cjs.map +0 -1
  501. package/dist/chunk-ESLWRGAG.cjs +0 -92
  502. package/dist/chunk-ESLWRGAG.cjs.map +0 -1
  503. package/dist/chunk-ESMHTKLJ.cjs +0 -206
  504. package/dist/chunk-ESMHTKLJ.cjs.map +0 -1
  505. package/dist/chunk-FMTHVSYY.cjs +0 -1039
  506. package/dist/chunk-FMTHVSYY.cjs.map +0 -1
  507. package/dist/chunk-FU6R566Y.cjs +0 -236
  508. package/dist/chunk-FU6R566Y.cjs.map +0 -1
  509. package/dist/chunk-GYR5K654.js +0 -91
  510. package/dist/chunk-GYR5K654.js.map +0 -1
  511. package/dist/chunk-HA2WBOGQ.js +0 -57
  512. package/dist/chunk-HA2WBOGQ.js.map +0 -1
  513. package/dist/chunk-HT5JQKN2.js +0 -118
  514. package/dist/chunk-HT5JQKN2.js.map +0 -1
  515. package/dist/chunk-INJD3G4K.cjs +0 -340
  516. package/dist/chunk-INJD3G4K.cjs.map +0 -1
  517. package/dist/chunk-IOYFAFHJ.cjs +0 -95
  518. package/dist/chunk-IOYFAFHJ.cjs.map +0 -1
  519. package/dist/chunk-J5QENANM.js +0 -87
  520. package/dist/chunk-J5QENANM.js.map +0 -1
  521. package/dist/chunk-J7VGRIAJ.js +0 -64
  522. package/dist/chunk-J7VGRIAJ.js.map +0 -1
  523. package/dist/chunk-KFOHQK7X.js +0 -144
  524. package/dist/chunk-KFOHQK7X.js.map +0 -1
  525. package/dist/chunk-KIL5CUN6.js +0 -31
  526. package/dist/chunk-KIL5CUN6.js.map +0 -1
  527. package/dist/chunk-KYXZS3EA.cjs +0 -100
  528. package/dist/chunk-KYXZS3EA.cjs.map +0 -1
  529. package/dist/chunk-LITNXTTT.js +0 -3
  530. package/dist/chunk-LITNXTTT.js.map +0 -1
  531. package/dist/chunk-LVIPBYFE.js +0 -157
  532. package/dist/chunk-LVIPBYFE.js.map +0 -1
  533. package/dist/chunk-M3LFHHTN.cjs +0 -764
  534. package/dist/chunk-M3LFHHTN.cjs.map +0 -1
  535. package/dist/chunk-N25JDZSC.js +0 -95
  536. package/dist/chunk-N25JDZSC.js.map +0 -1
  537. package/dist/chunk-NEIB3TLD.cjs +0 -360
  538. package/dist/chunk-NEIB3TLD.cjs.map +0 -1
  539. package/dist/chunk-NENU7E6V.cjs +0 -344
  540. package/dist/chunk-NENU7E6V.cjs.map +0 -1
  541. package/dist/chunk-NVAI5CCN.cjs +0 -39
  542. package/dist/chunk-NVAI5CCN.cjs.map +0 -1
  543. package/dist/chunk-NZ72VDNY.cjs +0 -4
  544. package/dist/chunk-NZ72VDNY.cjs.map +0 -1
  545. package/dist/chunk-OPPXYVEZ.cjs +0 -131
  546. package/dist/chunk-OPPXYVEZ.cjs.map +0 -1
  547. package/dist/chunk-Q4EULJQY.js +0 -35
  548. package/dist/chunk-Q4EULJQY.js.map +0 -1
  549. package/dist/chunk-QF7ARNUM.js +0 -339
  550. package/dist/chunk-QF7ARNUM.js.map +0 -1
  551. package/dist/chunk-QWW3E3JM.cjs +0 -178
  552. package/dist/chunk-QWW3E3JM.cjs.map +0 -1
  553. package/dist/chunk-R7QYGZUP.cjs +0 -1075
  554. package/dist/chunk-R7QYGZUP.cjs.map +0 -1
  555. package/dist/chunk-RUPKBKUF.js +0 -352
  556. package/dist/chunk-RUPKBKUF.js.map +0 -1
  557. package/dist/chunk-SEO6NAQT.js +0 -14
  558. package/dist/chunk-SEO6NAQT.js.map +0 -1
  559. package/dist/chunk-T4B5LB6E.cjs +0 -66
  560. package/dist/chunk-T4B5LB6E.cjs.map +0 -1
  561. package/dist/chunk-T5WRA76K.cjs +0 -32
  562. package/dist/chunk-T5WRA76K.cjs.map +0 -1
  563. package/dist/chunk-T7JO2TCP.js +0 -1233
  564. package/dist/chunk-T7JO2TCP.js.map +0 -1
  565. package/dist/chunk-TC5ZPWM4.cjs +0 -289
  566. package/dist/chunk-TC5ZPWM4.cjs.map +0 -1
  567. package/dist/chunk-TQ5UWA7S.js +0 -26
  568. package/dist/chunk-TQ5UWA7S.js.map +0 -1
  569. package/dist/chunk-UIKYE2QZ.js +0 -833
  570. package/dist/chunk-UIKYE2QZ.js.map +0 -1
  571. package/dist/chunk-UNPLAVE7.js +0 -21
  572. package/dist/chunk-UNPLAVE7.js.map +0 -1
  573. package/dist/chunk-UY3UYPBZ.cjs +0 -77
  574. package/dist/chunk-UY3UYPBZ.cjs.map +0 -1
  575. package/dist/chunk-V7UBMJAB.cjs +0 -1242
  576. package/dist/chunk-V7UBMJAB.cjs.map +0 -1
  577. package/dist/chunk-VH77IPJN.cjs +0 -358
  578. package/dist/chunk-VH77IPJN.cjs.map +0 -1
  579. package/dist/chunk-VQTCQKHQ.cjs +0 -17
  580. package/dist/chunk-VQTCQKHQ.cjs.map +0 -1
  581. package/dist/chunk-WGWSHJ2N.js +0 -38
  582. package/dist/chunk-WGWSHJ2N.js.map +0 -1
  583. package/dist/chunk-WJH6IYU2.cjs +0 -32
  584. package/dist/chunk-WJH6IYU2.cjs.map +0 -1
  585. package/dist/chunk-YREV3LGG.cjs +0 -61
  586. package/dist/chunk-YREV3LGG.cjs.map +0 -1
  587. package/dist/chunk-YTXEZ4SD.cjs +0 -77
  588. package/dist/chunk-YTXEZ4SD.cjs.map +0 -1
  589. package/dist/chunk-ZNMBW67B.cjs +0 -40
  590. package/dist/chunk-ZNMBW67B.cjs.map +0 -1
  591. package/dist/correlation-id.cjs.map +0 -1
  592. package/dist/correlation-id.js.map +0 -1
  593. package/dist/define-event-BL6Li7CM.d.ts +0 -23
  594. package/dist/define-event-ClP3T1Jx.d.cts +0 -23
  595. package/dist/event-subscriber.cjs.map +0 -1
  596. package/dist/event-subscriber.js.map +0 -1
  597. package/dist/event.cjs.map +0 -1
  598. package/dist/event.js.map +0 -1
  599. package/dist/exporters.cjs.map +0 -1
  600. package/dist/exporters.js.map +0 -1
  601. package/dist/functional.cjs.map +0 -1
  602. package/dist/functional.js.map +0 -1
  603. package/dist/init-DIowiiCh.d.ts +0 -1167
  604. package/dist/init-j-A1zI16.d.cts +0 -1167
  605. package/dist/processors.cjs.map +0 -1
  606. package/dist/processors.js.map +0 -1
  607. package/dist/trace-context-DbGKd1Rn.d.cts +0 -213
  608. package/dist/trace-context-DbGKd1Rn.d.ts +0 -213
  609. package/dist/utils-BahBCFtJ.d.cts +0 -712
  610. package/dist/utils-CLKwaUlG.d.ts +0 -712
  611. package/dist/yaml-config.cjs.map +0 -1
  612. package/src/gen-ai-cost.test.ts +0 -81
  613. package/src/gen-ai-cost.ts +0 -145
  614. package/src/gen-ai-events.test.ts +0 -135
  615. package/src/gen-ai-events.ts +0 -208
  616. package/src/gen-ai-metrics.test.ts +0 -96
  617. package/src/gen-ai-metrics.ts +0 -128
@@ -1,1242 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkOPPXYVEZ_cjs = require('./chunk-OPPXYVEZ.cjs');
4
- var chunkVQTCQKHQ_cjs = require('./chunk-VQTCQKHQ.cjs');
5
- var chunkFMTHVSYY_cjs = require('./chunk-FMTHVSYY.cjs');
6
- var chunkR7QYGZUP_cjs = require('./chunk-R7QYGZUP.cjs');
7
- var chunkVH77IPJN_cjs = require('./chunk-VH77IPJN.cjs');
8
- var chunkESLWRGAG_cjs = require('./chunk-ESLWRGAG.cjs');
9
- var api = require('@opentelemetry/api');
10
- var fs = require('fs');
11
- var url = require('url');
12
-
13
- var inferenceCache = /* @__PURE__ */ new Map();
14
- var MAX_CACHE_SIZE = 50;
15
- function captureStackTrace() {
16
- const originalStackTraceLimit = Error.stackTraceLimit;
17
- Error.stackTraceLimit = 10;
18
- const err = new Error("Stack trace capture");
19
- const stack = err.stack || "";
20
- Error.stackTraceLimit = originalStackTraceLimit;
21
- return stack;
22
- }
23
- function parseCallLocation(stack) {
24
- const lines = stack.split("\n");
25
- let skippedExternalFrame = false;
26
- for (const line of lines) {
27
- if (line.includes("variable-name-inference.ts") || line.includes("variable-name-inference.js") || line.includes("functional.ts") || line.includes("functional.js")) {
28
- continue;
29
- }
30
- const match = line.match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/) || line.match(/^.*?([^:]+):(\d+):(\d+)/);
31
- if (match) {
32
- let filePath = match[1].trim();
33
- if (filePath.startsWith("file://")) {
34
- try {
35
- filePath = url.fileURLToPath(filePath);
36
- } catch {
37
- continue;
38
- }
39
- }
40
- if (!skippedExternalFrame) {
41
- skippedExternalFrame = true;
42
- continue;
43
- }
44
- return {
45
- file: filePath,
46
- line: Number.parseInt(match[2], 10),
47
- column: Number.parseInt(match[3], 10)
48
- };
49
- }
50
- }
51
- return void 0;
52
- }
53
- function readSourceLine(filePath, lineNumber) {
54
- try {
55
- if (typeof fs.readFileSync !== "function") {
56
- return void 0;
57
- }
58
- const content = fs.readFileSync(filePath, "utf8");
59
- const lines = content.split("\n");
60
- return lines[lineNumber - 1];
61
- } catch {
62
- return void 0;
63
- }
64
- }
65
- function extractVariableName(sourceLine) {
66
- const trimmed = sourceLine.trim();
67
- const patterns = [
68
- // export const varName = anyFunction(
69
- /export\s+const\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(/,
70
- // const varName = anyFunction(
71
- /const\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(/,
72
- // export let varName = anyFunction(
73
- /export\s+let\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(/,
74
- // let varName = anyFunction(
75
- /let\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(/,
76
- // export var varName = anyFunction(
77
- /export\s+var\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(/,
78
- // var varName = anyFunction(
79
- /var\s+([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*[a-zA-Z_$][a-zA-Z0-9_$]*\s*\(/
80
- ];
81
- for (const pattern of patterns) {
82
- const match = trimmed.match(pattern);
83
- if (match && match[1]) {
84
- return match[1];
85
- }
86
- }
87
- return void 0;
88
- }
89
- function cacheInference(key, value) {
90
- if (inferenceCache.size >= MAX_CACHE_SIZE) {
91
- const firstKey = inferenceCache.keys().next().value;
92
- if (firstKey) {
93
- inferenceCache.delete(firstKey);
94
- }
95
- }
96
- inferenceCache.set(key, value);
97
- }
98
- function inferVariableNameFromCallStack() {
99
- try {
100
- const stack = captureStackTrace();
101
- const callLocation = parseCallLocation(stack);
102
- if (!callLocation) {
103
- return void 0;
104
- }
105
- const cacheKey = `${callLocation.file}:${callLocation.line}`;
106
- if (inferenceCache.has(cacheKey)) {
107
- return inferenceCache.get(cacheKey);
108
- }
109
- const sourceLine = readSourceLine(callLocation.file, callLocation.line);
110
- if (!sourceLine) {
111
- return void 0;
112
- }
113
- const variableName = extractVariableName(sourceLine);
114
- cacheInference(cacheKey, variableName);
115
- return variableName;
116
- } catch {
117
- return void 0;
118
- }
119
- }
120
-
121
- // src/functional.ts
122
- var FACTORY_NAME_HINTS = /* @__PURE__ */ new Set([
123
- "ctx",
124
- "_ctx",
125
- "context",
126
- "tracecontext",
127
- "tracectx"
128
- ]);
129
- var TRACE_FACTORY_SET = /* @__PURE__ */ new WeakSet();
130
- var SINGLE_LINE_COMMENT_REGEX = /\/\/.*$/gm;
131
- var MULTI_LINE_COMMENT_REGEX = /\/\*[\s\S]*?\*\//gm;
132
- var PARAM_TOKEN_SANITIZE_REGEX = new RegExp(String.raw`[{}\[\]\s]`, "g");
133
- function markAsTraceFactory(fn) {
134
- TRACE_FACTORY_SET.add(fn);
135
- }
136
- function hasFactoryMark(fn) {
137
- return TRACE_FACTORY_SET.has(fn);
138
- }
139
- function sanitizeParameterToken(token) {
140
- const [firstToken] = token.split("=");
141
- return (firstToken ?? "").replaceAll(PARAM_TOKEN_SANITIZE_REGEX, "").trim();
142
- }
143
- function getFirstParameterToken(fn) {
144
- let source = Function.prototype.toString.call(fn);
145
- source = source.replaceAll(MULTI_LINE_COMMENT_REGEX, "").replaceAll(SINGLE_LINE_COMMENT_REGEX, "").trim();
146
- const arrowMatch = source.match(
147
- /^(?:async\s*)?(?:\(([^)]*)\)|([^=()]+))\s*=>/
148
- );
149
- if (arrowMatch) {
150
- const params = (arrowMatch[1] ?? arrowMatch[2] ?? "").split(",");
151
- const first = params[0]?.trim();
152
- if (first) {
153
- return sanitizeParameterToken(first);
154
- }
155
- return null;
156
- }
157
- const functionMatch = source.match(/^[^(]*\(([^)]*)\)/);
158
- if (functionMatch) {
159
- const params = functionMatch[1]?.split(",");
160
- const first = params?.[0]?.trim();
161
- if (first) {
162
- return sanitizeParameterToken(first);
163
- }
164
- }
165
- return null;
166
- }
167
- var IMMEDIATE_EXECUTION_SYMBOL = /* @__PURE__ */ Symbol.for("autotel.immediate-execution");
168
- function hasImmediateExecutionMark(fn) {
169
- return typeof fn === "function" && fn[IMMEDIATE_EXECUTION_SYMBOL] === true;
170
- }
171
- function markAsImmediate(fn) {
172
- if (typeof fn === "function") {
173
- fn[IMMEDIATE_EXECUTION_SYMBOL] = true;
174
- }
175
- return fn;
176
- }
177
- function looksLikeTraceFactory(fn) {
178
- if (hasFactoryMark(fn)) {
179
- return true;
180
- }
181
- if (hasImmediateExecutionMark(fn)) {
182
- return true;
183
- }
184
- if (fn.length === 0) {
185
- if (!isAsyncFunction(fn)) {
186
- try {
187
- const result = fn();
188
- return typeof result === "function";
189
- } catch {
190
- return false;
191
- }
192
- }
193
- return false;
194
- }
195
- const firstParam = getFirstParameterToken(fn);
196
- if (!firstParam) {
197
- return false;
198
- }
199
- const normalized = firstParam.toLowerCase();
200
- if (FACTORY_NAME_HINTS.has(normalized) || normalized.startsWith("ctx") || normalized.startsWith("_ctx") || normalized.startsWith("trace") || normalized.endsWith("ctx") || // Match baseCtx, spanCtx, etc.
201
- normalized.includes("context")) {
202
- return true;
203
- }
204
- return false;
205
- }
206
- function isFactoryReturningFunction(fnWithCtx) {
207
- if (isAsyncFunction(fnWithCtx)) {
208
- return false;
209
- }
210
- try {
211
- const result = fnWithCtx(createDummyCtx());
212
- return typeof result === "function";
213
- } catch {
214
- return false;
215
- }
216
- }
217
- function isTraceFactoryFunction(fn) {
218
- if (typeof fn !== "function") {
219
- return false;
220
- }
221
- if (hasFactoryMark(fn)) {
222
- return true;
223
- }
224
- if (looksLikeTraceFactory(fn)) {
225
- markAsTraceFactory(fn);
226
- return true;
227
- }
228
- return false;
229
- }
230
- function ensureTraceFactory(fnOrFactory) {
231
- if (isTraceFactoryFunction(fnOrFactory)) {
232
- return fnOrFactory;
233
- }
234
- const plainFn = fnOrFactory;
235
- const factory = (ctx2) => {
236
- return plainFn;
237
- };
238
- markAsTraceFactory(factory);
239
- return factory;
240
- }
241
- function wrapFactoryWithTracing(fnOrFactory, options, variableName) {
242
- const factory = ensureTraceFactory(fnOrFactory);
243
- const sampleFn = factory(createDummyCtx());
244
- const innerFunctionName = inferFunctionName(
245
- sampleFn
246
- );
247
- const callStackVariableName = innerFunctionName ? void 0 : inferVariableNameFromCallStack();
248
- const factoryName = inferFunctionName(factory);
249
- const effectiveVariableName = variableName || innerFunctionName || callStackVariableName || factoryName;
250
- const useAsyncWrapper = isAsyncFunction(sampleFn);
251
- if (useAsyncWrapper) {
252
- return wrapWithTracing(
253
- factory,
254
- options,
255
- effectiveVariableName
256
- );
257
- }
258
- return wrapWithTracingSync(
259
- factory,
260
- options,
261
- effectiveVariableName
262
- );
263
- }
264
- var MAX_ERROR_MESSAGE_LENGTH = 500;
265
- function createDummyCtx() {
266
- return {
267
- traceId: "",
268
- spanId: "",
269
- correlationId: "",
270
- setAttribute: () => {
271
- },
272
- setAttributes: () => {
273
- },
274
- setStatus: () => {
275
- },
276
- recordException: () => {
277
- },
278
- addEvent: () => {
279
- },
280
- addLink: () => {
281
- },
282
- addLinks: () => {
283
- },
284
- updateName: () => {
285
- },
286
- isRecording: () => false,
287
- getBaggage: () => {
288
- },
289
- setBaggage: () => "",
290
- deleteBaggage: () => {
291
- },
292
- getAllBaggage: () => /* @__PURE__ */ new Map()
293
- };
294
- }
295
- var AUTOTEL_INPUT_ATTR = "autotel.input";
296
- var AUTOTEL_OUTPUT_ATTR = "autotel.output";
297
- var CAPTURE_MAX_CHARS = 4096;
298
- function serializeCapture(value) {
299
- if (value === void 0) return void 0;
300
- try {
301
- const json = typeof value === "string" ? value : JSON.stringify(value);
302
- if (json === void 0) return void 0;
303
- return json.length > CAPTURE_MAX_CHARS ? `${json.slice(0, CAPTURE_MAX_CHARS)}\u2026[truncated]` : json;
304
- } catch {
305
- return void 0;
306
- }
307
- }
308
- function captureInputAttrs(args, enabled) {
309
- if (!enabled) return {};
310
- const s = serializeCapture(args.length === 1 ? args[0] : args);
311
- return s === void 0 ? {} : { [AUTOTEL_INPUT_ATTR]: s };
312
- }
313
- function captureOutputAttrs(result, enabled) {
314
- if (!enabled) return {};
315
- const s = serializeCapture(result);
316
- return s === void 0 ? {} : { [AUTOTEL_OUTPUT_ATTR]: s };
317
- }
318
- function isAsyncFunction(fn) {
319
- return typeof fn === "function" && fn.constructor?.name === "AsyncFunction";
320
- }
321
- var INSTRUMENTED_SYMBOL = /* @__PURE__ */ Symbol.for("autotel.functional.instrumented");
322
- function hasInstrumentationFlag(value) {
323
- return (typeof value === "function" || typeof value === "object") && value !== null && Boolean(value[INSTRUMENTED_SYMBOL]);
324
- }
325
- function truncateErrorMessage(message) {
326
- if (message.length <= MAX_ERROR_MESSAGE_LENGTH) {
327
- return message;
328
- }
329
- return `${message.slice(0, MAX_ERROR_MESSAGE_LENGTH)}... (truncated)`;
330
- }
331
- function inferFunctionName(fn) {
332
- const displayName = fn.displayName;
333
- if (displayName) {
334
- return displayName;
335
- }
336
- if (fn.name && fn.name !== "anonymous" && fn.name !== "") {
337
- return fn.name;
338
- }
339
- const source = Function.prototype.toString.call(fn);
340
- const match = source.match(/function\s+([^(\s]+)/);
341
- if (match && match[1] && match[1] !== "anonymous") {
342
- return match[1];
343
- }
344
- return void 0;
345
- }
346
- function getSpanName(options, fn, variableName) {
347
- if (options.name) {
348
- return options.name;
349
- }
350
- let fnName = variableName || inferFunctionName(fn);
351
- fnName = fnName || "anonymous";
352
- if (options.serviceName) {
353
- return `${options.serviceName}.${fnName}`;
354
- }
355
- if (fnName && fnName !== "anonymous") {
356
- return fnName;
357
- }
358
- return "unknown";
359
- }
360
- function shouldSkip(key, fn, skip) {
361
- if (key.startsWith("_")) {
362
- return true;
363
- }
364
- if (!skip || skip.length === 0) {
365
- return false;
366
- }
367
- for (const rule of skip) {
368
- if (typeof rule === "string" && key === rule) {
369
- return true;
370
- } else if (rule instanceof RegExp && rule.test(key)) {
371
- return true;
372
- } else if (typeof rule === "function" && rule(key, fn)) {
373
- return true;
374
- }
375
- }
376
- return false;
377
- }
378
- function getCtxValue() {
379
- const activeSpan = api.trace.getActiveSpan();
380
- if (!activeSpan) return null;
381
- return chunkFMTHVSYY_cjs.createTraceContext(activeSpan);
382
- }
383
- var ctx = new Proxy(
384
- {},
385
- {
386
- get(_target, prop) {
387
- const ctxValue = getCtxValue();
388
- if (!ctxValue) {
389
- return;
390
- }
391
- return ctxValue[prop];
392
- },
393
- has(_target, prop) {
394
- const ctxValue = getCtxValue();
395
- if (!ctxValue) {
396
- return false;
397
- }
398
- return prop in ctxValue;
399
- },
400
- ownKeys() {
401
- const ctxValue = getCtxValue();
402
- if (!ctxValue) {
403
- return [];
404
- }
405
- return Object.keys(ctxValue);
406
- },
407
- getOwnPropertyDescriptor(_target, prop) {
408
- const ctxValue = getCtxValue();
409
- if (!ctxValue) {
410
- return;
411
- }
412
- return Object.getOwnPropertyDescriptor(ctxValue, prop);
413
- }
414
- }
415
- );
416
- function wrapWithTracing(fnFactory, options, variableName) {
417
- if (hasInstrumentationFlag(fnFactory)) ;
418
- const config = chunkESLWRGAG_cjs.getConfig();
419
- const tracer = config.tracer;
420
- const meter = config.meter;
421
- const sampler = options.sampler || new chunkVH77IPJN_cjs.AlwaysSampler();
422
- const tempFn = fnFactory(createDummyCtx());
423
- const spanName = getSpanName(options, tempFn, variableName);
424
- const callCounter = options.withMetrics ? meter.createCounter(`${spanName}.calls`, {
425
- description: `Call count for ${spanName}`,
426
- unit: "1"
427
- }) : void 0;
428
- const durationHistogram = options.withMetrics ? meter.createHistogram(`${spanName}.duration`, {
429
- description: `Duration for ${spanName}`,
430
- unit: "ms"
431
- }) : void 0;
432
- const wrappedFunction = async function wrappedFunction2(...args) {
433
- const samplingContext = {
434
- operationName: spanName,
435
- args,
436
- metadata: {}
437
- };
438
- const shouldSample = sampler.shouldSample(samplingContext);
439
- const needsTailSampling = "needsTailSampling" in sampler && typeof sampler.needsTailSampling === "function" ? sampler.needsTailSampling() : false;
440
- if (!shouldSample && !needsTailSampling) {
441
- const fn = fnFactory(createDummyCtx());
442
- return await fn.call(this, ...args);
443
- }
444
- const startTime = performance.now();
445
- const isRootSpan = options.startNewRoot || api.trace.getActiveSpan() === void 0;
446
- const shouldAutoFlush = options.flushOnRootSpanEnd ?? chunkR7QYGZUP_cjs.getConfig()?.flushOnRootSpanEnd ?? true;
447
- const shouldAutoFlushSpans = chunkR7QYGZUP_cjs.getConfig()?.forceFlushOnShutdown ?? false;
448
- const flushIfNeeded = async () => {
449
- if (!shouldAutoFlush || !isRootSpan) return;
450
- try {
451
- const queue = chunkFMTHVSYY_cjs.getEventQueue();
452
- if (queue && queue.size() > 0) {
453
- await queue.flush();
454
- }
455
- if (shouldAutoFlushSpans) {
456
- const sdk = chunkR7QYGZUP_cjs.getSdk();
457
- if (sdk) {
458
- try {
459
- const sdkAny = sdk;
460
- if (typeof sdkAny.getTracerProvider === "function") {
461
- const tracerProvider = sdkAny.getTracerProvider();
462
- if (tracerProvider && typeof tracerProvider.forceFlush === "function") {
463
- await tracerProvider.forceFlush();
464
- }
465
- }
466
- } catch {
467
- }
468
- }
469
- }
470
- } catch (error) {
471
- const initConfig = chunkR7QYGZUP_cjs.getConfig();
472
- const logger = initConfig?.logger;
473
- if (logger?.error) {
474
- logger.error(
475
- {
476
- err: error instanceof Error ? error : void 0
477
- },
478
- `[autotel] Auto-flush failed${error instanceof Error ? "" : `: ${String(error)}`}`
479
- );
480
- }
481
- }
482
- };
483
- const spanOptions = {};
484
- if (options.startNewRoot) {
485
- spanOptions.root = true;
486
- }
487
- if (options.spanKind !== void 0) {
488
- spanOptions.kind = options.spanKind;
489
- }
490
- const parentContext = chunkFMTHVSYY_cjs.getActiveContextWithBaggage();
491
- return tracer.startActiveSpan(
492
- spanName,
493
- spanOptions,
494
- parentContext,
495
- async (span2) => {
496
- return chunkVQTCQKHQ_cjs.runInOperationContext(spanName, async () => {
497
- let shouldKeepSpan = true;
498
- chunkOPPXYVEZ_cjs.setSpanName(span2, spanName);
499
- const initialContext = api.context.active();
500
- const contextStorage = chunkFMTHVSYY_cjs.getContextStorage();
501
- if (!contextStorage.getStore()) {
502
- chunkFMTHVSYY_cjs.enterOrRun(contextStorage, initialContext);
503
- }
504
- const ctxValue = chunkFMTHVSYY_cjs.createTraceContext(span2);
505
- const fn = fnFactory(ctxValue);
506
- const argsAttributes = {
507
- ...captureInputAttrs(args, options.captureInput),
508
- ...options.attributesFromArgs ? options.attributesFromArgs(args) : {}
509
- };
510
- const handleTailSampling = (success, duration, error) => {
511
- if (needsTailSampling && "shouldKeepTrace" in sampler && typeof sampler.shouldKeepTrace === "function") {
512
- shouldKeepSpan = sampler.shouldKeepTrace(samplingContext, {
513
- success,
514
- duration,
515
- error
516
- });
517
- span2.setAttribute(chunkVH77IPJN_cjs.AUTOTEL_SAMPLING_TAIL_KEEP, shouldKeepSpan);
518
- span2.setAttribute(chunkVH77IPJN_cjs.AUTOTEL_SAMPLING_TAIL_EVALUATED, true);
519
- }
520
- };
521
- const onSuccess = async (result) => {
522
- const duration = performance.now() - startTime;
523
- callCounter?.add(1, {
524
- operation: spanName,
525
- status: "success"
526
- });
527
- durationHistogram?.record(duration, {
528
- operation: spanName,
529
- status: "success"
530
- });
531
- const resultAttributes = {
532
- ...captureOutputAttrs(result, options.captureOutput),
533
- ...options.attributesFromResult ? options.attributesFromResult(result) : {}
534
- };
535
- span2.setStatus({ code: api.SpanStatusCode.OK });
536
- span2.setAttributes({
537
- ...argsAttributes,
538
- ...resultAttributes,
539
- "operation.name": spanName,
540
- "code.function": spanName,
541
- "operation.duration": duration,
542
- "operation.success": true
543
- });
544
- handleTailSampling(true, duration);
545
- span2.end();
546
- await flushIfNeeded();
547
- return result;
548
- };
549
- const onError = async (error) => {
550
- const duration = performance.now() - startTime;
551
- callCounter?.add(1, {
552
- operation: spanName,
553
- status: "error"
554
- });
555
- durationHistogram?.record(duration, {
556
- operation: spanName,
557
- status: "error"
558
- });
559
- const errorMessage = error instanceof Error ? error.message : "Unknown error";
560
- const truncatedMessage = truncateErrorMessage(errorMessage);
561
- span2.setStatus({
562
- code: api.SpanStatusCode.ERROR,
563
- message: truncatedMessage
564
- });
565
- span2.setAttributes({
566
- ...argsAttributes,
567
- "operation.name": spanName,
568
- "code.function": spanName,
569
- "operation.duration": duration,
570
- "operation.success": false,
571
- error: true,
572
- "exception.type": error instanceof Error ? error.constructor.name : "Error",
573
- "exception.message": truncatedMessage
574
- });
575
- if (error instanceof Error && error.stack) {
576
- span2.setAttribute(
577
- "exception.stack",
578
- error.stack.slice(0, MAX_ERROR_MESSAGE_LENGTH)
579
- );
580
- }
581
- span2.recordException(
582
- error instanceof Error ? error : new Error(String(error))
583
- );
584
- handleTailSampling(false, duration, error);
585
- span2.end();
586
- await flushIfNeeded();
587
- throw error;
588
- };
589
- try {
590
- callCounter?.add(1, {
591
- operation: spanName,
592
- status: "started"
593
- });
594
- const executeWithContext = async () => {
595
- const currentContext = chunkFMTHVSYY_cjs.getActiveContextWithBaggage();
596
- return api.context.with(currentContext, async () => {
597
- return fn.call(this, ...args);
598
- });
599
- };
600
- const result = await executeWithContext();
601
- return await onSuccess(result);
602
- } catch (error) {
603
- await onError(error);
604
- throw error;
605
- }
606
- });
607
- }
608
- );
609
- };
610
- wrappedFunction[INSTRUMENTED_SYMBOL] = true;
611
- Object.defineProperty(wrappedFunction, "name", {
612
- value: tempFn.name || "trace",
613
- configurable: true
614
- });
615
- return wrappedFunction;
616
- }
617
- function wrapWithTracingSync(fnFactory, options, variableName) {
618
- if (hasInstrumentationFlag(fnFactory)) ;
619
- const config = chunkESLWRGAG_cjs.getConfig();
620
- const tracer = config.tracer;
621
- const meter = config.meter;
622
- const sampler = options.sampler || new chunkVH77IPJN_cjs.AlwaysSampler();
623
- const tempFn = fnFactory(createDummyCtx());
624
- const spanName = getSpanName(options, tempFn, variableName);
625
- const callCounter = options.withMetrics ? meter.createCounter(`${spanName}.calls`, {
626
- description: `Call count for ${spanName}`,
627
- unit: "1"
628
- }) : void 0;
629
- const durationHistogram = options.withMetrics ? meter.createHistogram(`${spanName}.duration`, {
630
- description: `Duration for ${spanName}`,
631
- unit: "ms"
632
- }) : void 0;
633
- function wrappedFunction(...args) {
634
- const samplingContext = {
635
- operationName: spanName,
636
- args,
637
- metadata: {}
638
- };
639
- const shouldSample = sampler.shouldSample(samplingContext);
640
- const needsTailSampling = "needsTailSampling" in sampler && typeof sampler.needsTailSampling === "function" ? sampler.needsTailSampling() : false;
641
- if (!shouldSample && !needsTailSampling) {
642
- const fn = fnFactory(createDummyCtx());
643
- return fn.call(this, ...args);
644
- }
645
- const startTime = performance.now();
646
- const isRootSpan = options.startNewRoot || api.trace.getActiveSpan() === void 0;
647
- const shouldAutoFlush = options.flushOnRootSpanEnd ?? chunkR7QYGZUP_cjs.getConfig()?.flushOnRootSpanEnd ?? true;
648
- const shouldAutoFlushSpans = chunkR7QYGZUP_cjs.getConfig()?.forceFlushOnShutdown ?? false;
649
- const flushIfNeeded = () => {
650
- if (!shouldAutoFlush || !isRootSpan) return;
651
- const queue = chunkFMTHVSYY_cjs.getEventQueue();
652
- if (queue && queue.size() > 0) {
653
- void queue.flush().catch((error) => {
654
- const initConfig = chunkR7QYGZUP_cjs.getConfig();
655
- const logger = initConfig?.logger;
656
- if (logger?.error) {
657
- logger.error(
658
- {
659
- err: error instanceof Error ? error : void 0
660
- },
661
- `[autotel] Auto-flush failed${error instanceof Error ? "" : `: ${String(error)}`}`
662
- );
663
- }
664
- });
665
- }
666
- if (shouldAutoFlushSpans) {
667
- const sdk = chunkR7QYGZUP_cjs.getSdk();
668
- if (sdk) {
669
- try {
670
- const sdkAny = sdk;
671
- if (typeof sdkAny.getTracerProvider === "function") {
672
- const tracerProvider = sdkAny.getTracerProvider();
673
- if (tracerProvider && typeof tracerProvider.forceFlush === "function") {
674
- void tracerProvider.forceFlush().catch((error) => {
675
- const initConfig = chunkR7QYGZUP_cjs.getConfig();
676
- const logger = initConfig?.logger;
677
- if (logger?.error) {
678
- logger.error(
679
- {
680
- err: error instanceof Error ? error : void 0
681
- },
682
- `[autotel] Span flush failed${error instanceof Error ? "" : `: ${String(error)}`}`
683
- );
684
- }
685
- });
686
- }
687
- }
688
- } catch {
689
- }
690
- }
691
- }
692
- };
693
- const spanOptions = {};
694
- if (options.startNewRoot) {
695
- spanOptions.root = true;
696
- }
697
- if (options.spanKind !== void 0) {
698
- spanOptions.kind = options.spanKind;
699
- }
700
- const parentContext = chunkFMTHVSYY_cjs.getActiveContextWithBaggage();
701
- return tracer.startActiveSpan(
702
- spanName,
703
- spanOptions,
704
- parentContext,
705
- (span2) => {
706
- return chunkVQTCQKHQ_cjs.runInOperationContext(spanName, () => {
707
- let shouldKeepSpan = true;
708
- chunkOPPXYVEZ_cjs.setSpanName(span2, spanName);
709
- const ctxValue = chunkFMTHVSYY_cjs.createTraceContext(span2);
710
- const fn = fnFactory(ctxValue);
711
- const argsAttributes = {
712
- ...captureInputAttrs(args, options.captureInput),
713
- ...options.attributesFromArgs ? options.attributesFromArgs(args) : {}
714
- };
715
- const handleTailSampling = (success, duration, error) => {
716
- if (needsTailSampling && "shouldKeepTrace" in sampler && typeof sampler.shouldKeepTrace === "function") {
717
- shouldKeepSpan = sampler.shouldKeepTrace(samplingContext, {
718
- success,
719
- duration,
720
- error
721
- });
722
- span2.setAttribute(chunkVH77IPJN_cjs.AUTOTEL_SAMPLING_TAIL_KEEP, shouldKeepSpan);
723
- span2.setAttribute(chunkVH77IPJN_cjs.AUTOTEL_SAMPLING_TAIL_EVALUATED, true);
724
- }
725
- };
726
- const onSuccess = (result) => {
727
- const duration = performance.now() - startTime;
728
- callCounter?.add(1, {
729
- operation: spanName,
730
- status: "success"
731
- });
732
- durationHistogram?.record(duration, {
733
- operation: spanName,
734
- status: "success"
735
- });
736
- const resultAttributes = {
737
- ...captureOutputAttrs(result, options.captureOutput),
738
- ...options.attributesFromResult ? options.attributesFromResult(result) : {}
739
- };
740
- span2.setStatus({ code: api.SpanStatusCode.OK });
741
- span2.setAttributes({
742
- ...argsAttributes,
743
- ...resultAttributes,
744
- "operation.name": spanName,
745
- "code.function": spanName,
746
- "operation.duration": duration,
747
- "operation.success": true
748
- });
749
- handleTailSampling(true, duration);
750
- span2.end();
751
- void flushIfNeeded();
752
- return result;
753
- };
754
- const onError = (error) => {
755
- const duration = performance.now() - startTime;
756
- callCounter?.add(1, {
757
- operation: spanName,
758
- status: "error"
759
- });
760
- durationHistogram?.record(duration, {
761
- operation: spanName,
762
- status: "error"
763
- });
764
- const errorMessage = error instanceof Error ? error.message : "Unknown error";
765
- const truncatedMessage = truncateErrorMessage(errorMessage);
766
- span2.setStatus({
767
- code: api.SpanStatusCode.ERROR,
768
- message: truncatedMessage
769
- });
770
- span2.setAttributes({
771
- ...argsAttributes,
772
- "operation.name": spanName,
773
- "code.function": spanName,
774
- "operation.duration": duration,
775
- "operation.success": false,
776
- error: true,
777
- "exception.type": error instanceof Error ? error.constructor.name : "Error",
778
- "exception.message": truncatedMessage
779
- });
780
- span2.recordException(
781
- error instanceof Error ? error : new Error(String(error))
782
- );
783
- handleTailSampling(false, duration, error);
784
- span2.end();
785
- void flushIfNeeded();
786
- throw error;
787
- };
788
- try {
789
- callCounter?.add(1, {
790
- operation: spanName,
791
- status: "started"
792
- });
793
- const result = fn.call(this, ...args);
794
- if (result instanceof Promise) {
795
- return result.then(onSuccess, onError);
796
- }
797
- return onSuccess(result);
798
- } catch (error) {
799
- return onError(error);
800
- }
801
- });
802
- }
803
- );
804
- }
805
- wrappedFunction[INSTRUMENTED_SYMBOL] = true;
806
- Object.defineProperty(wrappedFunction, "name", {
807
- value: tempFn.name || "trace",
808
- configurable: true
809
- });
810
- return wrappedFunction;
811
- }
812
- function executeImmediately(fn, options) {
813
- const config = chunkESLWRGAG_cjs.getConfig();
814
- const tracer = config.tracer;
815
- const meter = config.meter;
816
- const sampler = options.sampler || new chunkVH77IPJN_cjs.AlwaysSampler();
817
- const spanName = options.name || "anonymous";
818
- const samplingContext = {
819
- operationName: spanName,
820
- args: [],
821
- metadata: {}
822
- };
823
- const shouldSample = sampler.shouldSample(samplingContext);
824
- const needsTailSampling = "needsTailSampling" in sampler && typeof sampler.needsTailSampling === "function" ? sampler.needsTailSampling() : false;
825
- if (!shouldSample && !needsTailSampling) {
826
- return fn(createDummyCtx());
827
- }
828
- const startTime = performance.now();
829
- const isRootSpan = options.startNewRoot || api.trace.getActiveSpan() === void 0;
830
- const shouldAutoFlush = options.flushOnRootSpanEnd ?? chunkR7QYGZUP_cjs.getConfig()?.flushOnRootSpanEnd ?? true;
831
- const shouldAutoFlushSpans = chunkR7QYGZUP_cjs.getConfig()?.forceFlushOnShutdown ?? false;
832
- const callCounter = options.withMetrics ? meter.createCounter(`${spanName}.calls`, {
833
- description: `Call count for ${spanName}`,
834
- unit: "1"
835
- }) : void 0;
836
- const durationHistogram = options.withMetrics ? meter.createHistogram(`${spanName}.duration`, {
837
- description: `Duration for ${spanName}`,
838
- unit: "ms"
839
- }) : void 0;
840
- const flushIfNeeded = async () => {
841
- if (!shouldAutoFlush || !isRootSpan) return;
842
- try {
843
- const queue = chunkFMTHVSYY_cjs.getEventQueue();
844
- if (queue && queue.size() > 0) {
845
- await queue.flush();
846
- }
847
- if (shouldAutoFlushSpans) {
848
- const sdk = chunkR7QYGZUP_cjs.getSdk();
849
- if (sdk) {
850
- try {
851
- const sdkAny = sdk;
852
- if (typeof sdkAny.getTracerProvider === "function") {
853
- const tracerProvider = sdkAny.getTracerProvider();
854
- if (tracerProvider && typeof tracerProvider.forceFlush === "function") {
855
- await tracerProvider.forceFlush();
856
- }
857
- }
858
- } catch {
859
- }
860
- }
861
- }
862
- } catch (error) {
863
- const initConfig = chunkR7QYGZUP_cjs.getConfig();
864
- const logger = initConfig?.logger;
865
- if (logger?.error) {
866
- logger.error(
867
- {
868
- err: error instanceof Error ? error : void 0
869
- },
870
- `[autotel] Auto-flush failed${error instanceof Error ? "" : `: ${String(error)}`}`
871
- );
872
- }
873
- }
874
- };
875
- const spanOptions = {};
876
- if (options.startNewRoot) {
877
- spanOptions.root = true;
878
- }
879
- if (options.spanKind !== void 0) {
880
- spanOptions.kind = options.spanKind;
881
- }
882
- const parentContext = chunkFMTHVSYY_cjs.getActiveContextWithBaggage();
883
- return tracer.startActiveSpan(
884
- spanName,
885
- spanOptions,
886
- parentContext,
887
- (span2) => {
888
- return chunkVQTCQKHQ_cjs.runInOperationContext(spanName, () => {
889
- let shouldKeepSpan = true;
890
- chunkOPPXYVEZ_cjs.setSpanName(span2, spanName);
891
- const ctxValue = chunkFMTHVSYY_cjs.createTraceContext(span2);
892
- const handleTailSampling = (success, duration, error) => {
893
- if (needsTailSampling && "shouldKeepTrace" in sampler && typeof sampler.shouldKeepTrace === "function") {
894
- shouldKeepSpan = sampler.shouldKeepTrace(samplingContext, {
895
- success,
896
- duration,
897
- error
898
- });
899
- span2.setAttribute(chunkVH77IPJN_cjs.AUTOTEL_SAMPLING_TAIL_KEEP, shouldKeepSpan);
900
- span2.setAttribute(chunkVH77IPJN_cjs.AUTOTEL_SAMPLING_TAIL_EVALUATED, true);
901
- }
902
- };
903
- const onSuccessSync = (result) => {
904
- const duration = performance.now() - startTime;
905
- callCounter?.add(1, {
906
- operation: spanName,
907
- status: "success"
908
- });
909
- durationHistogram?.record(duration, {
910
- operation: spanName,
911
- status: "success"
912
- });
913
- span2.setStatus({ code: api.SpanStatusCode.OK });
914
- span2.setAttributes({
915
- "operation.name": spanName,
916
- "code.function": spanName,
917
- "operation.duration": duration,
918
- "operation.success": true
919
- });
920
- handleTailSampling(true, duration);
921
- span2.end();
922
- void flushIfNeeded();
923
- return result;
924
- };
925
- const onErrorSync = (error) => {
926
- const duration = performance.now() - startTime;
927
- callCounter?.add(1, {
928
- operation: spanName,
929
- status: "error"
930
- });
931
- durationHistogram?.record(duration, {
932
- operation: spanName,
933
- status: "error"
934
- });
935
- const errorMessage = error instanceof Error ? error.message : "Unknown error";
936
- const truncatedMessage = truncateErrorMessage(errorMessage);
937
- span2.setStatus({
938
- code: api.SpanStatusCode.ERROR,
939
- message: truncatedMessage
940
- });
941
- span2.setAttributes({
942
- "operation.name": spanName,
943
- "code.function": spanName,
944
- "operation.duration": duration,
945
- "operation.success": false,
946
- error: true,
947
- "exception.type": error instanceof Error ? error.constructor.name : "Error",
948
- "exception.message": truncatedMessage
949
- });
950
- if (error instanceof Error && error.stack) {
951
- span2.setAttribute(
952
- "exception.stack",
953
- error.stack.slice(0, MAX_ERROR_MESSAGE_LENGTH)
954
- );
955
- }
956
- span2.recordException(
957
- error instanceof Error ? error : new Error(String(error))
958
- );
959
- handleTailSampling(false, duration, error);
960
- span2.end();
961
- void flushIfNeeded();
962
- throw error;
963
- };
964
- const onSuccessAsync = async (result) => {
965
- const duration = performance.now() - startTime;
966
- callCounter?.add(1, {
967
- operation: spanName,
968
- status: "success"
969
- });
970
- durationHistogram?.record(duration, {
971
- operation: spanName,
972
- status: "success"
973
- });
974
- span2.setStatus({ code: api.SpanStatusCode.OK });
975
- span2.setAttributes({
976
- "operation.name": spanName,
977
- "code.function": spanName,
978
- "operation.duration": duration,
979
- "operation.success": true
980
- });
981
- handleTailSampling(true, duration);
982
- span2.end();
983
- await flushIfNeeded();
984
- return result;
985
- };
986
- const onErrorAsync = async (error) => {
987
- const duration = performance.now() - startTime;
988
- callCounter?.add(1, {
989
- operation: spanName,
990
- status: "error"
991
- });
992
- durationHistogram?.record(duration, {
993
- operation: spanName,
994
- status: "error"
995
- });
996
- const errorMessage = error instanceof Error ? error.message : "Unknown error";
997
- const truncatedMessage = truncateErrorMessage(errorMessage);
998
- span2.setStatus({
999
- code: api.SpanStatusCode.ERROR,
1000
- message: truncatedMessage
1001
- });
1002
- span2.setAttributes({
1003
- "operation.name": spanName,
1004
- "code.function": spanName,
1005
- "operation.duration": duration,
1006
- "operation.success": false,
1007
- error: true,
1008
- "exception.type": error instanceof Error ? error.constructor.name : "Error",
1009
- "exception.message": truncatedMessage
1010
- });
1011
- if (error instanceof Error && error.stack) {
1012
- span2.setAttribute(
1013
- "exception.stack",
1014
- error.stack.slice(0, MAX_ERROR_MESSAGE_LENGTH)
1015
- );
1016
- }
1017
- span2.recordException(
1018
- error instanceof Error ? error : new Error(String(error))
1019
- );
1020
- handleTailSampling(false, duration, error);
1021
- span2.end();
1022
- await flushIfNeeded();
1023
- throw error;
1024
- };
1025
- try {
1026
- callCounter?.add(1, {
1027
- operation: spanName,
1028
- status: "started"
1029
- });
1030
- const result = fn(ctxValue);
1031
- if (result instanceof Promise) {
1032
- return result.then(onSuccessAsync, onErrorAsync);
1033
- }
1034
- return onSuccessSync(result);
1035
- } catch (error) {
1036
- return onErrorSync(error);
1037
- }
1038
- });
1039
- }
1040
- );
1041
- }
1042
- function trace(fnOrNameOrOptions, maybeFn) {
1043
- if (typeof fnOrNameOrOptions === "function") {
1044
- if (looksLikeTraceFactory(fnOrNameOrOptions) && !isFactoryReturningFunction(
1045
- fnOrNameOrOptions
1046
- )) {
1047
- return executeImmediately(
1048
- fnOrNameOrOptions,
1049
- {}
1050
- );
1051
- }
1052
- return wrapFactoryWithTracing(
1053
- fnOrNameOrOptions,
1054
- {}
1055
- );
1056
- }
1057
- if (typeof fnOrNameOrOptions === "string") {
1058
- if (!maybeFn) {
1059
- throw new Error("trace(name, fn): fn is required");
1060
- }
1061
- if (looksLikeTraceFactory(maybeFn) && !isFactoryReturningFunction(maybeFn)) {
1062
- return executeImmediately(
1063
- maybeFn,
1064
- { name: fnOrNameOrOptions }
1065
- );
1066
- }
1067
- return wrapFactoryWithTracing(
1068
- maybeFn,
1069
- { name: fnOrNameOrOptions }
1070
- );
1071
- }
1072
- if (!maybeFn) {
1073
- throw new Error("trace(options, fn): fn is required");
1074
- }
1075
- if (looksLikeTraceFactory(maybeFn) && !isFactoryReturningFunction(maybeFn)) {
1076
- return executeImmediately(
1077
- maybeFn,
1078
- fnOrNameOrOptions
1079
- );
1080
- }
1081
- return wrapFactoryWithTracing(
1082
- maybeFn,
1083
- fnOrNameOrOptions
1084
- );
1085
- }
1086
- function withTracing(options = {}) {
1087
- return (fnFactory) => wrapFactoryWithTracing(fnFactory, options);
1088
- }
1089
- function instrument(options) {
1090
- const { functions, ...tracingOptions } = options;
1091
- const instrumented = {};
1092
- for (const key of Object.keys(functions)) {
1093
- const typedKey = key;
1094
- const fn = functions[typedKey];
1095
- if (!fn || typeof fn !== "function") {
1096
- instrumented[typedKey] = fn;
1097
- continue;
1098
- }
1099
- if (shouldSkip(key, fn, tracingOptions.skip)) {
1100
- instrumented[typedKey] = fn;
1101
- continue;
1102
- }
1103
- const fnOptions = {
1104
- ...tracingOptions,
1105
- ...tracingOptions.overrides?.[key],
1106
- // If no explicit name, use key as function name
1107
- name: tracingOptions.overrides?.[key]?.name
1108
- };
1109
- const boundFn = fn.bind(functions);
1110
- const fnFactory = (ctx2) => {
1111
- return boundFn;
1112
- };
1113
- instrumented[typedKey] = wrapFactoryWithTracing(
1114
- fnFactory,
1115
- fnOptions,
1116
- key
1117
- );
1118
- }
1119
- return instrumented;
1120
- }
1121
- function span(nameOrOptions, fn) {
1122
- const options = typeof nameOrOptions === "string" ? { name: nameOrOptions } : nameOrOptions;
1123
- const config = chunkESLWRGAG_cjs.getConfig();
1124
- const tracer = config.tracer;
1125
- const { name, attributes } = options;
1126
- const executeSpan = (span2) => {
1127
- return chunkVQTCQKHQ_cjs.runInOperationContext(name, () => {
1128
- try {
1129
- if (attributes) {
1130
- for (const [key, value] of Object.entries(attributes)) {
1131
- span2.setAttribute(key, value);
1132
- }
1133
- }
1134
- const result2 = fn(span2);
1135
- if (result2 instanceof Promise) {
1136
- return result2.then((resolved) => {
1137
- span2.setStatus({ code: api.SpanStatusCode.OK });
1138
- span2.end();
1139
- return resolved;
1140
- }).catch((error) => {
1141
- const errorMessage = error instanceof Error ? error.message.slice(0, MAX_ERROR_MESSAGE_LENGTH) : String(error).slice(0, MAX_ERROR_MESSAGE_LENGTH);
1142
- span2.setAttribute("error.message", errorMessage);
1143
- span2.setStatus({
1144
- code: api.SpanStatusCode.ERROR,
1145
- message: errorMessage
1146
- });
1147
- span2.recordException(
1148
- error instanceof Error ? error : new Error(String(error))
1149
- );
1150
- span2.end();
1151
- throw error;
1152
- });
1153
- } else {
1154
- span2.setStatus({ code: api.SpanStatusCode.OK });
1155
- span2.end();
1156
- return result2;
1157
- }
1158
- } catch (error) {
1159
- const errorMessage = error instanceof Error ? error.message.slice(0, MAX_ERROR_MESSAGE_LENGTH) : String(error).slice(0, MAX_ERROR_MESSAGE_LENGTH);
1160
- span2.setAttribute("error.message", errorMessage);
1161
- span2.setStatus({
1162
- code: api.SpanStatusCode.ERROR,
1163
- message: errorMessage
1164
- });
1165
- span2.recordException(
1166
- error instanceof Error ? error : new Error(String(error))
1167
- );
1168
- span2.end();
1169
- throw error;
1170
- }
1171
- });
1172
- };
1173
- const parentContext = chunkFMTHVSYY_cjs.getActiveContextWithBaggage();
1174
- const result = tracer.startActiveSpan(name, {}, parentContext, executeSpan);
1175
- if (result instanceof Promise) {
1176
- return result;
1177
- }
1178
- return result;
1179
- }
1180
- async function withNewContext(options) {
1181
- const { fn } = options;
1182
- const config = chunkESLWRGAG_cjs.getConfig();
1183
- const tracer = config.tracer;
1184
- return tracer.startActiveSpan("root", { root: true }, async (span2) => {
1185
- try {
1186
- const result = await fn();
1187
- span2.setStatus({ code: api.SpanStatusCode.OK });
1188
- return result;
1189
- } catch (error) {
1190
- span2.recordException(
1191
- error instanceof Error ? error : new Error(String(error))
1192
- );
1193
- span2.setStatus({ code: api.SpanStatusCode.ERROR });
1194
- throw error;
1195
- } finally {
1196
- span2.end();
1197
- }
1198
- });
1199
- }
1200
- function withBaggage(options) {
1201
- const { baggage: baggageEntries, fn } = options;
1202
- const currentContext = api.context.active();
1203
- let updatedBaggage = api.propagation.getBaggage(currentContext) ?? api.propagation.createBaggage();
1204
- for (const [key, value] of Object.entries(baggageEntries)) {
1205
- updatedBaggage = updatedBaggage.setEntry(key, { value });
1206
- }
1207
- const newContext = api.propagation.setBaggage(currentContext, updatedBaggage);
1208
- const ctxStorage = chunkFMTHVSYY_cjs.getContextStorage();
1209
- const previousStored = ctxStorage.getStore();
1210
- const baggageEnrichedStored = previousStored ? { value: api.propagation.setBaggage(previousStored.value, updatedBaggage) } : { value: newContext };
1211
- const result = previousStored ? ctxStorage.run(baggageEnrichedStored, () => api.context.with(newContext, fn)) : api.context.with(newContext, fn);
1212
- if (result instanceof Promise) {
1213
- return result.then(
1214
- (value) => {
1215
- if (previousStored) {
1216
- return ctxStorage.run(previousStored, () => value);
1217
- }
1218
- return value;
1219
- },
1220
- (error) => {
1221
- if (previousStored) {
1222
- return ctxStorage.run(previousStored, () => {
1223
- throw error;
1224
- });
1225
- }
1226
- throw error;
1227
- }
1228
- );
1229
- }
1230
- return result;
1231
- }
1232
-
1233
- exports.ctx = ctx;
1234
- exports.instrument = instrument;
1235
- exports.markAsImmediate = markAsImmediate;
1236
- exports.span = span;
1237
- exports.trace = trace;
1238
- exports.withBaggage = withBaggage;
1239
- exports.withNewContext = withNewContext;
1240
- exports.withTracing = withTracing;
1241
- //# sourceMappingURL=chunk-V7UBMJAB.cjs.map
1242
- //# sourceMappingURL=chunk-V7UBMJAB.cjs.map