@sentry/node 10.58.0 → 10.60.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 (561) hide show
  1. package/build/cjs/index.js +3 -0
  2. package/build/cjs/index.js.map +1 -1
  3. package/build/cjs/integrations/fs/index.js +3 -84
  4. package/build/cjs/integrations/fs/index.js.map +1 -1
  5. package/build/cjs/integrations/fs/vendored/constants.js.map +1 -1
  6. package/build/cjs/integrations/fs/vendored/instrumentation.js +145 -175
  7. package/build/cjs/integrations/fs/vendored/instrumentation.js.map +1 -1
  8. package/build/cjs/integrations/fs/vendored/utils.js.map +1 -1
  9. package/build/cjs/integrations/node-fetch/index.js +7 -8
  10. package/build/cjs/integrations/node-fetch/index.js.map +1 -1
  11. package/build/cjs/integrations/node-fetch/vendored/semconv.js +28 -0
  12. package/build/cjs/integrations/node-fetch/vendored/semconv.js.map +1 -0
  13. package/build/cjs/integrations/node-fetch/vendored/undici.js +91 -127
  14. package/build/cjs/integrations/node-fetch/vendored/undici.js.map +1 -1
  15. package/build/cjs/integrations/tracing/amqplib/vendored/amqplib.js.map +1 -1
  16. package/build/cjs/integrations/tracing/amqplib/vendored/semconv-obsolete.js.map +1 -1
  17. package/build/cjs/integrations/tracing/amqplib/vendored/semconv.js.map +1 -1
  18. package/build/cjs/integrations/tracing/amqplib/vendored/types.js.map +1 -1
  19. package/build/cjs/integrations/tracing/amqplib/vendored/utils.js.map +1 -1
  20. package/build/cjs/integrations/tracing/connect/index.js +0 -21
  21. package/build/cjs/integrations/tracing/connect/index.js.map +1 -1
  22. package/build/cjs/integrations/tracing/connect/vendored/enums/AttributeNames.js +0 -6
  23. package/build/cjs/integrations/tracing/connect/vendored/enums/AttributeNames.js.map +1 -1
  24. package/build/cjs/integrations/tracing/connect/vendored/instrumentation.js +33 -42
  25. package/build/cjs/integrations/tracing/connect/vendored/instrumentation.js.map +1 -1
  26. package/build/cjs/integrations/tracing/connect/vendored/internal-types.js.map +1 -1
  27. package/build/cjs/integrations/tracing/connect/vendored/utils.js +3 -2
  28. package/build/cjs/integrations/tracing/connect/vendored/utils.js.map +1 -1
  29. package/build/cjs/integrations/tracing/dataloader/vendored/instrumentation.js.map +1 -1
  30. package/build/cjs/integrations/tracing/fastify/v3/instrumentation.js +1 -1
  31. package/build/cjs/integrations/tracing/fastify/v3/instrumentation.js.map +1 -1
  32. package/build/cjs/integrations/tracing/fastify/vendored/instrumentation.js.map +1 -1
  33. package/build/cjs/integrations/tracing/genericPool/index.js +1 -15
  34. package/build/cjs/integrations/tracing/genericPool/index.js.map +1 -1
  35. package/build/cjs/integrations/tracing/genericPool/vendored/instrumentation.js +30 -18
  36. package/build/cjs/integrations/tracing/genericPool/vendored/instrumentation.js.map +1 -1
  37. package/build/cjs/integrations/tracing/graphql/index.js +1 -51
  38. package/build/cjs/integrations/tracing/graphql/index.js.map +1 -1
  39. package/build/cjs/integrations/tracing/graphql/vendored/enum.js.map +1 -1
  40. package/build/cjs/integrations/tracing/graphql/vendored/enums/AttributeNames.js +0 -2
  41. package/build/cjs/integrations/tracing/graphql/vendored/enums/AttributeNames.js.map +1 -1
  42. package/build/cjs/integrations/tracing/graphql/vendored/instrumentation.js +67 -57
  43. package/build/cjs/integrations/tracing/graphql/vendored/instrumentation.js.map +1 -1
  44. package/build/cjs/integrations/tracing/graphql/vendored/internal-types.js.map +1 -1
  45. package/build/cjs/integrations/tracing/graphql/vendored/symbols.js.map +1 -1
  46. package/build/cjs/integrations/tracing/graphql/vendored/utils.js +28 -62
  47. package/build/cjs/integrations/tracing/graphql/vendored/utils.js.map +1 -1
  48. package/build/cjs/integrations/tracing/hapi/index.js +0 -17
  49. package/build/cjs/integrations/tracing/hapi/index.js.map +1 -1
  50. package/build/cjs/integrations/tracing/hapi/vendored/enums/AttributeNames.js.map +1 -1
  51. package/build/cjs/integrations/tracing/hapi/vendored/instrumentation.js +28 -45
  52. package/build/cjs/integrations/tracing/hapi/vendored/instrumentation.js.map +1 -1
  53. package/build/cjs/integrations/tracing/hapi/vendored/internal-types.js.map +1 -1
  54. package/build/cjs/integrations/tracing/hapi/vendored/semconv.js.map +1 -1
  55. package/build/cjs/integrations/tracing/hapi/vendored/utils.js +4 -9
  56. package/build/cjs/integrations/tracing/hapi/vendored/utils.js.map +1 -1
  57. package/build/cjs/integrations/tracing/index.js +1 -0
  58. package/build/cjs/integrations/tracing/index.js.map +1 -1
  59. package/build/cjs/integrations/tracing/kafka/index.js +1 -11
  60. package/build/cjs/integrations/tracing/kafka/index.js.map +1 -1
  61. package/build/cjs/integrations/tracing/kafka/vendored/instrumentation.js +45 -247
  62. package/build/cjs/integrations/tracing/kafka/vendored/instrumentation.js.map +1 -1
  63. package/build/cjs/integrations/tracing/kafka/vendored/semconv.js +4 -8
  64. package/build/cjs/integrations/tracing/kafka/vendored/semconv.js.map +1 -1
  65. package/build/cjs/integrations/tracing/kafka/vendored/utils.js +113 -0
  66. package/build/cjs/integrations/tracing/kafka/vendored/utils.js.map +1 -0
  67. package/build/cjs/integrations/tracing/knex/index.js +2 -17
  68. package/build/cjs/integrations/tracing/knex/index.js.map +1 -1
  69. package/build/cjs/integrations/tracing/knex/vendored/instrumentation.js +65 -93
  70. package/build/cjs/integrations/tracing/knex/vendored/instrumentation.js.map +1 -1
  71. package/build/cjs/integrations/tracing/knex/vendored/semconv.js +2 -0
  72. package/build/cjs/integrations/tracing/knex/vendored/semconv.js.map +1 -1
  73. package/build/cjs/integrations/tracing/knex/vendored/utils.js +2 -15
  74. package/build/cjs/integrations/tracing/knex/vendored/utils.js.map +1 -1
  75. package/build/cjs/integrations/tracing/koa/index.js +1 -24
  76. package/build/cjs/integrations/tracing/koa/index.js.map +1 -1
  77. package/build/cjs/integrations/tracing/koa/vendored/enums/AttributeNames.js.map +1 -1
  78. package/build/cjs/integrations/tracing/koa/vendored/instrumentation.js +29 -41
  79. package/build/cjs/integrations/tracing/koa/vendored/instrumentation.js.map +1 -1
  80. package/build/cjs/integrations/tracing/koa/vendored/internal-types.js.map +1 -1
  81. package/build/cjs/integrations/tracing/koa/vendored/types.js.map +1 -1
  82. package/build/cjs/integrations/tracing/koa/vendored/utils.js.map +1 -1
  83. package/build/cjs/integrations/tracing/lrumemoizer/vendored/instrumentation.js.map +1 -1
  84. package/build/cjs/integrations/tracing/mongo/index.js +1 -42
  85. package/build/cjs/integrations/tracing/mongo/index.js.map +1 -1
  86. package/build/cjs/integrations/tracing/mongo/vendored/instrumentation.js +12 -562
  87. package/build/cjs/integrations/tracing/mongo/vendored/instrumentation.js.map +1 -1
  88. package/build/cjs/integrations/tracing/mongo/vendored/internal-types.js.map +1 -1
  89. package/build/cjs/integrations/tracing/mongo/vendored/patches.js +151 -0
  90. package/build/cjs/integrations/tracing/mongo/vendored/patches.js.map +1 -0
  91. package/build/cjs/integrations/tracing/mongo/vendored/semconv.js +0 -4
  92. package/build/cjs/integrations/tracing/mongo/vendored/semconv.js.map +1 -1
  93. package/build/cjs/integrations/tracing/mongo/vendored/utils.js +153 -0
  94. package/build/cjs/integrations/tracing/mongo/vendored/utils.js.map +1 -0
  95. package/build/cjs/integrations/tracing/mongoose/index.js +1 -8
  96. package/build/cjs/integrations/tracing/mongoose/index.js.map +1 -1
  97. package/build/cjs/integrations/tracing/mongoose/vendored/mongoose.js +56 -203
  98. package/build/cjs/integrations/tracing/mongoose/vendored/mongoose.js.map +1 -1
  99. package/build/cjs/integrations/tracing/mongoose/vendored/semconv.js +0 -4
  100. package/build/cjs/integrations/tracing/mongoose/vendored/semconv.js.map +1 -1
  101. package/build/cjs/integrations/tracing/mongoose/vendored/utils.js +19 -49
  102. package/build/cjs/integrations/tracing/mongoose/vendored/utils.js.map +1 -1
  103. package/build/cjs/integrations/tracing/mysql/vendored/AttributeNames.js.map +1 -1
  104. package/build/cjs/integrations/tracing/mysql/vendored/instrumentation.js.map +1 -1
  105. package/build/cjs/integrations/tracing/mysql/vendored/semconv.js.map +1 -1
  106. package/build/cjs/integrations/tracing/mysql/vendored/utils.js.map +1 -1
  107. package/build/cjs/integrations/tracing/mysql2/index.js +1 -8
  108. package/build/cjs/integrations/tracing/mysql2/index.js.map +1 -1
  109. package/build/cjs/integrations/tracing/mysql2/vendored/instrumentation.js +21 -59
  110. package/build/cjs/integrations/tracing/mysql2/vendored/instrumentation.js.map +1 -1
  111. package/build/cjs/integrations/tracing/mysql2/vendored/semconv.js.map +1 -1
  112. package/build/cjs/integrations/tracing/mysql2/vendored/utils.js +14 -33
  113. package/build/cjs/integrations/tracing/mysql2/vendored/utils.js.map +1 -1
  114. package/build/cjs/integrations/tracing/postgres/index.js +0 -4
  115. package/build/cjs/integrations/tracing/postgres/index.js.map +1 -1
  116. package/build/cjs/integrations/tracing/postgres/vendored/enums/AttributeNames.js +0 -1
  117. package/build/cjs/integrations/tracing/postgres/vendored/enums/AttributeNames.js.map +1 -1
  118. package/build/cjs/integrations/tracing/postgres/vendored/enums/SpanNames.js.map +1 -1
  119. package/build/cjs/integrations/tracing/postgres/vendored/instrumentation.js +51 -261
  120. package/build/cjs/integrations/tracing/postgres/vendored/instrumentation.js.map +1 -1
  121. package/build/cjs/integrations/tracing/postgres/vendored/semconv.js +0 -12
  122. package/build/cjs/integrations/tracing/postgres/vendored/semconv.js.map +1 -1
  123. package/build/cjs/integrations/tracing/postgres/vendored/utils.js +43 -167
  124. package/build/cjs/integrations/tracing/postgres/vendored/utils.js.map +1 -1
  125. package/build/cjs/integrations/tracing/prisma/vendored/active-tracing-helper.js.map +1 -1
  126. package/build/cjs/integrations/tracing/prisma/vendored/constants.js.map +1 -1
  127. package/build/cjs/integrations/tracing/prisma/vendored/global.js.map +1 -1
  128. package/build/cjs/integrations/tracing/prisma/vendored/instrumentation.js.map +1 -1
  129. package/build/cjs/integrations/tracing/redis/index.js.map +1 -1
  130. package/build/cjs/integrations/tracing/redis/vendored/ioredis-instrumentation.js +89 -160
  131. package/build/cjs/integrations/tracing/redis/vendored/ioredis-instrumentation.js.map +1 -1
  132. package/build/cjs/integrations/tracing/redis/vendored/redis-common.js.map +1 -1
  133. package/build/cjs/integrations/tracing/redis/vendored/redis-instrumentation.js +92 -231
  134. package/build/cjs/integrations/tracing/redis/vendored/redis-instrumentation.js.map +1 -1
  135. package/build/cjs/integrations/tracing/redis/vendored/semconv.js +0 -2
  136. package/build/cjs/integrations/tracing/redis/vendored/semconv.js.map +1 -1
  137. package/build/cjs/integrations/tracing/tedious/index.js +1 -25
  138. package/build/cjs/integrations/tracing/tedious/index.js.map +1 -1
  139. package/build/cjs/integrations/tracing/tedious/vendored/instrumentation.js +25 -76
  140. package/build/cjs/integrations/tracing/tedious/vendored/instrumentation.js.map +1 -1
  141. package/build/cjs/integrations/tracing/tedious/vendored/semconv.js.map +1 -1
  142. package/build/cjs/integrations/tracing/tedious/vendored/utils.js.map +1 -1
  143. package/build/cjs/sdk/diagnosticsChannelInjection.js +21 -0
  144. package/build/cjs/sdk/diagnosticsChannelInjection.js.map +1 -0
  145. package/build/cjs/sdk/experimentalUseDiagnosticsChannelInjection.js +19 -0
  146. package/build/cjs/sdk/experimentalUseDiagnosticsChannelInjection.js.map +1 -0
  147. package/build/cjs/sdk/index.js +17 -1
  148. package/build/cjs/sdk/index.js.map +1 -1
  149. package/build/cjs/sdk/initOtel.js +2 -1
  150. package/build/cjs/sdk/initOtel.js.map +1 -1
  151. package/build/esm/index.js +2 -1
  152. package/build/esm/index.js.map +1 -1
  153. package/build/esm/integrations/fs/index.js +4 -85
  154. package/build/esm/integrations/fs/index.js.map +1 -1
  155. package/build/esm/integrations/fs/vendored/constants.js.map +1 -1
  156. package/build/esm/integrations/fs/vendored/instrumentation.js +147 -177
  157. package/build/esm/integrations/fs/vendored/instrumentation.js.map +1 -1
  158. package/build/esm/integrations/fs/vendored/utils.js.map +1 -1
  159. package/build/esm/integrations/node-fetch/index.js +8 -9
  160. package/build/esm/integrations/node-fetch/index.js.map +1 -1
  161. package/build/esm/integrations/node-fetch/vendored/semconv.js +15 -0
  162. package/build/esm/integrations/node-fetch/vendored/semconv.js.map +1 -0
  163. package/build/esm/integrations/node-fetch/vendored/undici.js +80 -116
  164. package/build/esm/integrations/node-fetch/vendored/undici.js.map +1 -1
  165. package/build/esm/integrations/tracing/amqplib/vendored/amqplib.js.map +1 -1
  166. package/build/esm/integrations/tracing/amqplib/vendored/semconv-obsolete.js.map +1 -1
  167. package/build/esm/integrations/tracing/amqplib/vendored/semconv.js.map +1 -1
  168. package/build/esm/integrations/tracing/amqplib/vendored/types.js.map +1 -1
  169. package/build/esm/integrations/tracing/amqplib/vendored/utils.js.map +1 -1
  170. package/build/esm/integrations/tracing/connect/index.js +1 -22
  171. package/build/esm/integrations/tracing/connect/index.js.map +1 -1
  172. package/build/esm/integrations/tracing/connect/vendored/enums/AttributeNames.js +1 -6
  173. package/build/esm/integrations/tracing/connect/vendored/enums/AttributeNames.js.map +1 -1
  174. package/build/esm/integrations/tracing/connect/vendored/instrumentation.js +36 -44
  175. package/build/esm/integrations/tracing/connect/vendored/instrumentation.js.map +1 -1
  176. package/build/esm/integrations/tracing/connect/vendored/internal-types.js.map +1 -1
  177. package/build/esm/integrations/tracing/connect/vendored/utils.js +3 -2
  178. package/build/esm/integrations/tracing/connect/vendored/utils.js.map +1 -1
  179. package/build/esm/integrations/tracing/dataloader/vendored/instrumentation.js.map +1 -1
  180. package/build/esm/integrations/tracing/fastify/v3/instrumentation.js +1 -1
  181. package/build/esm/integrations/tracing/fastify/v3/instrumentation.js.map +1 -1
  182. package/build/esm/integrations/tracing/fastify/vendored/instrumentation.js.map +1 -1
  183. package/build/esm/integrations/tracing/genericPool/index.js +3 -17
  184. package/build/esm/integrations/tracing/genericPool/index.js.map +1 -1
  185. package/build/esm/integrations/tracing/genericPool/vendored/instrumentation.js +31 -19
  186. package/build/esm/integrations/tracing/genericPool/vendored/instrumentation.js.map +1 -1
  187. package/build/esm/integrations/tracing/graphql/index.js +3 -53
  188. package/build/esm/integrations/tracing/graphql/index.js.map +1 -1
  189. package/build/esm/integrations/tracing/graphql/vendored/enum.js.map +1 -1
  190. package/build/esm/integrations/tracing/graphql/vendored/enums/AttributeNames.js +0 -2
  191. package/build/esm/integrations/tracing/graphql/vendored/enums/AttributeNames.js.map +1 -1
  192. package/build/esm/integrations/tracing/graphql/vendored/instrumentation.js +69 -59
  193. package/build/esm/integrations/tracing/graphql/vendored/instrumentation.js.map +1 -1
  194. package/build/esm/integrations/tracing/graphql/vendored/internal-types.js.map +1 -1
  195. package/build/esm/integrations/tracing/graphql/vendored/symbols.js.map +1 -1
  196. package/build/esm/integrations/tracing/graphql/vendored/utils.js +29 -62
  197. package/build/esm/integrations/tracing/graphql/vendored/utils.js.map +1 -1
  198. package/build/esm/integrations/tracing/hapi/index.js +1 -18
  199. package/build/esm/integrations/tracing/hapi/index.js.map +1 -1
  200. package/build/esm/integrations/tracing/hapi/vendored/enums/AttributeNames.js.map +1 -1
  201. package/build/esm/integrations/tracing/hapi/vendored/instrumentation.js +30 -47
  202. package/build/esm/integrations/tracing/hapi/vendored/instrumentation.js.map +1 -1
  203. package/build/esm/integrations/tracing/hapi/vendored/internal-types.js.map +1 -1
  204. package/build/esm/integrations/tracing/hapi/vendored/semconv.js.map +1 -1
  205. package/build/esm/integrations/tracing/hapi/vendored/utils.js +5 -10
  206. package/build/esm/integrations/tracing/hapi/vendored/utils.js.map +1 -1
  207. package/build/esm/integrations/tracing/index.js +1 -0
  208. package/build/esm/integrations/tracing/index.js.map +1 -1
  209. package/build/esm/integrations/tracing/kafka/index.js +2 -12
  210. package/build/esm/integrations/tracing/kafka/index.js.map +1 -1
  211. package/build/esm/integrations/tracing/kafka/vendored/instrumentation.js +47 -249
  212. package/build/esm/integrations/tracing/kafka/vendored/instrumentation.js.map +1 -1
  213. package/build/esm/integrations/tracing/kafka/vendored/semconv.js +3 -5
  214. package/build/esm/integrations/tracing/kafka/vendored/semconv.js.map +1 -1
  215. package/build/esm/integrations/tracing/kafka/vendored/utils.js +107 -0
  216. package/build/esm/integrations/tracing/kafka/vendored/utils.js.map +1 -0
  217. package/build/esm/integrations/tracing/knex/index.js +4 -19
  218. package/build/esm/integrations/tracing/knex/index.js.map +1 -1
  219. package/build/esm/integrations/tracing/knex/vendored/instrumentation.js +66 -94
  220. package/build/esm/integrations/tracing/knex/vendored/instrumentation.js.map +1 -1
  221. package/build/esm/integrations/tracing/knex/vendored/semconv.js +2 -1
  222. package/build/esm/integrations/tracing/knex/vendored/semconv.js.map +1 -1
  223. package/build/esm/integrations/tracing/knex/vendored/utils.js +3 -15
  224. package/build/esm/integrations/tracing/knex/vendored/utils.js.map +1 -1
  225. package/build/esm/integrations/tracing/koa/index.js +3 -26
  226. package/build/esm/integrations/tracing/koa/index.js.map +1 -1
  227. package/build/esm/integrations/tracing/koa/vendored/enums/AttributeNames.js.map +1 -1
  228. package/build/esm/integrations/tracing/koa/vendored/instrumentation.js +31 -43
  229. package/build/esm/integrations/tracing/koa/vendored/instrumentation.js.map +1 -1
  230. package/build/esm/integrations/tracing/koa/vendored/internal-types.js.map +1 -1
  231. package/build/esm/integrations/tracing/koa/vendored/types.js.map +1 -1
  232. package/build/esm/integrations/tracing/koa/vendored/utils.js.map +1 -1
  233. package/build/esm/integrations/tracing/lrumemoizer/vendored/instrumentation.js.map +1 -1
  234. package/build/esm/integrations/tracing/mongo/index.js +3 -43
  235. package/build/esm/integrations/tracing/mongo/index.js.map +1 -1
  236. package/build/esm/integrations/tracing/mongo/vendored/instrumentation.js +13 -563
  237. package/build/esm/integrations/tracing/mongo/vendored/instrumentation.js.map +1 -1
  238. package/build/esm/integrations/tracing/mongo/vendored/internal-types.js.map +1 -1
  239. package/build/esm/integrations/tracing/mongo/vendored/patches.js +143 -0
  240. package/build/esm/integrations/tracing/mongo/vendored/patches.js.map +1 -0
  241. package/build/esm/integrations/tracing/mongo/vendored/semconv.js +1 -3
  242. package/build/esm/integrations/tracing/mongo/vendored/semconv.js.map +1 -1
  243. package/build/esm/integrations/tracing/mongo/vendored/utils.js +146 -0
  244. package/build/esm/integrations/tracing/mongo/vendored/utils.js.map +1 -0
  245. package/build/esm/integrations/tracing/mongoose/index.js +2 -9
  246. package/build/esm/integrations/tracing/mongoose/index.js.map +1 -1
  247. package/build/esm/integrations/tracing/mongoose/vendored/mongoose.js +59 -206
  248. package/build/esm/integrations/tracing/mongoose/vendored/mongoose.js.map +1 -1
  249. package/build/esm/integrations/tracing/mongoose/vendored/semconv.js +1 -3
  250. package/build/esm/integrations/tracing/mongoose/vendored/semconv.js.map +1 -1
  251. package/build/esm/integrations/tracing/mongoose/vendored/utils.js +20 -50
  252. package/build/esm/integrations/tracing/mongoose/vendored/utils.js.map +1 -1
  253. package/build/esm/integrations/tracing/mysql/vendored/AttributeNames.js.map +1 -1
  254. package/build/esm/integrations/tracing/mysql/vendored/instrumentation.js.map +1 -1
  255. package/build/esm/integrations/tracing/mysql/vendored/semconv.js.map +1 -1
  256. package/build/esm/integrations/tracing/mysql/vendored/utils.js.map +1 -1
  257. package/build/esm/integrations/tracing/mysql2/index.js +2 -9
  258. package/build/esm/integrations/tracing/mysql2/index.js.map +1 -1
  259. package/build/esm/integrations/tracing/mysql2/vendored/instrumentation.js +26 -64
  260. package/build/esm/integrations/tracing/mysql2/vendored/instrumentation.js.map +1 -1
  261. package/build/esm/integrations/tracing/mysql2/vendored/semconv.js.map +1 -1
  262. package/build/esm/integrations/tracing/mysql2/vendored/utils.js +15 -34
  263. package/build/esm/integrations/tracing/mysql2/vendored/utils.js.map +1 -1
  264. package/build/esm/integrations/tracing/postgres/index.js +1 -5
  265. package/build/esm/integrations/tracing/postgres/index.js.map +1 -1
  266. package/build/esm/integrations/tracing/postgres/vendored/enums/AttributeNames.js +0 -1
  267. package/build/esm/integrations/tracing/postgres/vendored/enums/AttributeNames.js.map +1 -1
  268. package/build/esm/integrations/tracing/postgres/vendored/enums/SpanNames.js.map +1 -1
  269. package/build/esm/integrations/tracing/postgres/vendored/instrumentation.js +52 -262
  270. package/build/esm/integrations/tracing/postgres/vendored/instrumentation.js.map +1 -1
  271. package/build/esm/integrations/tracing/postgres/vendored/semconv.js +1 -7
  272. package/build/esm/integrations/tracing/postgres/vendored/semconv.js.map +1 -1
  273. package/build/esm/integrations/tracing/postgres/vendored/utils.js +44 -165
  274. package/build/esm/integrations/tracing/postgres/vendored/utils.js.map +1 -1
  275. package/build/esm/integrations/tracing/prisma/vendored/active-tracing-helper.js.map +1 -1
  276. package/build/esm/integrations/tracing/prisma/vendored/constants.js.map +1 -1
  277. package/build/esm/integrations/tracing/prisma/vendored/global.js.map +1 -1
  278. package/build/esm/integrations/tracing/prisma/vendored/instrumentation.js.map +1 -1
  279. package/build/esm/integrations/tracing/redis/index.js.map +1 -1
  280. package/build/esm/integrations/tracing/redis/vendored/ioredis-instrumentation.js +92 -163
  281. package/build/esm/integrations/tracing/redis/vendored/ioredis-instrumentation.js.map +1 -1
  282. package/build/esm/integrations/tracing/redis/vendored/redis-common.js.map +1 -1
  283. package/build/esm/integrations/tracing/redis/vendored/redis-instrumentation.js +94 -233
  284. package/build/esm/integrations/tracing/redis/vendored/redis-instrumentation.js.map +1 -1
  285. package/build/esm/integrations/tracing/redis/vendored/semconv.js +1 -2
  286. package/build/esm/integrations/tracing/redis/vendored/semconv.js.map +1 -1
  287. package/build/esm/integrations/tracing/tedious/index.js +3 -27
  288. package/build/esm/integrations/tracing/tedious/index.js.map +1 -1
  289. package/build/esm/integrations/tracing/tedious/vendored/instrumentation.js +29 -79
  290. package/build/esm/integrations/tracing/tedious/vendored/instrumentation.js.map +1 -1
  291. package/build/esm/integrations/tracing/tedious/vendored/semconv.js.map +1 -1
  292. package/build/esm/integrations/tracing/tedious/vendored/utils.js.map +1 -1
  293. package/build/esm/package.json +1 -1
  294. package/build/esm/sdk/diagnosticsChannelInjection.js +17 -0
  295. package/build/esm/sdk/diagnosticsChannelInjection.js.map +1 -0
  296. package/build/esm/sdk/experimentalUseDiagnosticsChannelInjection.js +17 -0
  297. package/build/esm/sdk/experimentalUseDiagnosticsChannelInjection.js.map +1 -0
  298. package/build/esm/sdk/index.js +17 -1
  299. package/build/esm/sdk/index.js.map +1 -1
  300. package/build/esm/sdk/initOtel.js +2 -1
  301. package/build/esm/sdk/initOtel.js.map +1 -1
  302. package/build/import-hook.mjs +6 -0
  303. package/build/types/index.d.ts +2 -1
  304. package/build/types/index.d.ts.map +1 -1
  305. package/build/types/integrations/fs/index.d.ts.map +1 -1
  306. package/build/types/integrations/fs/vendored/constants.d.ts.map +1 -1
  307. package/build/types/integrations/fs/vendored/instrumentation.d.ts +6 -10
  308. package/build/types/integrations/fs/vendored/instrumentation.d.ts.map +1 -1
  309. package/build/types/integrations/fs/vendored/types.d.ts +10 -15
  310. package/build/types/integrations/fs/vendored/types.d.ts.map +1 -1
  311. package/build/types/integrations/fs/vendored/utils.d.ts +2 -2
  312. package/build/types/integrations/fs/vendored/utils.d.ts.map +1 -1
  313. package/build/types/integrations/node-fetch/index.d.ts.map +1 -1
  314. package/build/types/integrations/node-fetch/vendored/internal-types.d.ts.map +1 -1
  315. package/build/types/integrations/node-fetch/vendored/semconv.d.ts +13 -0
  316. package/build/types/integrations/node-fetch/vendored/semconv.d.ts.map +1 -0
  317. package/build/types/integrations/node-fetch/vendored/types.d.ts +2 -4
  318. package/build/types/integrations/node-fetch/vendored/types.d.ts.map +1 -1
  319. package/build/types/integrations/node-fetch/vendored/undici.d.ts +6 -7
  320. package/build/types/integrations/node-fetch/vendored/undici.d.ts.map +1 -1
  321. package/build/types/integrations/tracing/amqplib/vendored/amqplib.d.ts.map +1 -1
  322. package/build/types/integrations/tracing/amqplib/vendored/semconv-obsolete.d.ts.map +1 -1
  323. package/build/types/integrations/tracing/amqplib/vendored/semconv.d.ts.map +1 -1
  324. package/build/types/integrations/tracing/amqplib/vendored/types.d.ts.map +1 -1
  325. package/build/types/integrations/tracing/amqplib/vendored/utils.d.ts.map +1 -1
  326. package/build/types/integrations/tracing/connect/index.d.ts.map +1 -1
  327. package/build/types/integrations/tracing/connect/vendored/enums/AttributeNames.d.ts +0 -4
  328. package/build/types/integrations/tracing/connect/vendored/enums/AttributeNames.d.ts.map +1 -1
  329. package/build/types/integrations/tracing/connect/vendored/instrumentation.d.ts +5 -5
  330. package/build/types/integrations/tracing/connect/vendored/instrumentation.d.ts.map +1 -1
  331. package/build/types/integrations/tracing/connect/vendored/internal-types.d.ts +2 -2
  332. package/build/types/integrations/tracing/connect/vendored/internal-types.d.ts.map +1 -1
  333. package/build/types/integrations/tracing/connect/vendored/utils.d.ts +1 -1
  334. package/build/types/integrations/tracing/connect/vendored/utils.d.ts.map +1 -1
  335. package/build/types/integrations/tracing/dataloader/vendored/instrumentation.d.ts.map +1 -1
  336. package/build/types/integrations/tracing/dataloader/vendored/types.d.ts.map +1 -1
  337. package/build/types/integrations/tracing/fastify/vendored/instrumentation.d.ts.map +1 -1
  338. package/build/types/integrations/tracing/genericPool/index.d.ts.map +1 -1
  339. package/build/types/integrations/tracing/genericPool/vendored/instrumentation.d.ts.map +1 -1
  340. package/build/types/integrations/tracing/graphql/index.d.ts.map +1 -1
  341. package/build/types/integrations/tracing/graphql/vendored/enum.d.ts.map +1 -1
  342. package/build/types/integrations/tracing/graphql/vendored/enums/AttributeNames.d.ts +1 -3
  343. package/build/types/integrations/tracing/graphql/vendored/enums/AttributeNames.d.ts.map +1 -1
  344. package/build/types/integrations/tracing/graphql/vendored/instrumentation.d.ts +7 -2
  345. package/build/types/integrations/tracing/graphql/vendored/instrumentation.d.ts.map +1 -1
  346. package/build/types/integrations/tracing/graphql/vendored/internal-types.d.ts +4 -4
  347. package/build/types/integrations/tracing/graphql/vendored/internal-types.d.ts.map +1 -1
  348. package/build/types/integrations/tracing/graphql/vendored/symbols.d.ts.map +1 -1
  349. package/build/types/integrations/tracing/graphql/vendored/types.d.ts +5 -43
  350. package/build/types/integrations/tracing/graphql/vendored/types.d.ts.map +1 -1
  351. package/build/types/integrations/tracing/graphql/vendored/utils.d.ts +8 -11
  352. package/build/types/integrations/tracing/graphql/vendored/utils.d.ts.map +1 -1
  353. package/build/types/integrations/tracing/hapi/index.d.ts.map +1 -1
  354. package/build/types/integrations/tracing/hapi/vendored/enums/AttributeNames.d.ts.map +1 -1
  355. package/build/types/integrations/tracing/hapi/vendored/instrumentation.d.ts +2 -2
  356. package/build/types/integrations/tracing/hapi/vendored/instrumentation.d.ts.map +1 -1
  357. package/build/types/integrations/tracing/hapi/vendored/internal-types.d.ts.map +1 -1
  358. package/build/types/integrations/tracing/hapi/vendored/semconv.d.ts.map +1 -1
  359. package/build/types/integrations/tracing/hapi/vendored/utils.d.ts +3 -4
  360. package/build/types/integrations/tracing/hapi/vendored/utils.d.ts.map +1 -1
  361. package/build/types/integrations/tracing/index.d.ts.map +1 -1
  362. package/build/types/integrations/tracing/kafka/index.d.ts.map +1 -1
  363. package/build/types/integrations/tracing/kafka/vendored/instrumentation.d.ts +3 -13
  364. package/build/types/integrations/tracing/kafka/vendored/instrumentation.d.ts.map +1 -1
  365. package/build/types/integrations/tracing/kafka/vendored/kafkajs-types.d.ts +0 -32
  366. package/build/types/integrations/tracing/kafka/vendored/kafkajs-types.d.ts.map +1 -1
  367. package/build/types/integrations/tracing/kafka/vendored/semconv.d.ts +9 -28
  368. package/build/types/integrations/tracing/kafka/vendored/semconv.d.ts.map +1 -1
  369. package/build/types/integrations/tracing/kafka/vendored/utils.d.ts +29 -0
  370. package/build/types/integrations/tracing/kafka/vendored/utils.d.ts.map +1 -0
  371. package/build/types/integrations/tracing/knex/index.d.ts.map +1 -1
  372. package/build/types/integrations/tracing/knex/vendored/instrumentation.d.ts +8 -10
  373. package/build/types/integrations/tracing/knex/vendored/instrumentation.d.ts.map +1 -1
  374. package/build/types/integrations/tracing/knex/vendored/semconv.d.ts +1 -0
  375. package/build/types/integrations/tracing/knex/vendored/semconv.d.ts.map +1 -1
  376. package/build/types/integrations/tracing/knex/vendored/utils.d.ts +0 -6
  377. package/build/types/integrations/tracing/knex/vendored/utils.d.ts.map +1 -1
  378. package/build/types/integrations/tracing/koa/index.d.ts.map +1 -1
  379. package/build/types/integrations/tracing/koa/vendored/enums/AttributeNames.d.ts.map +1 -1
  380. package/build/types/integrations/tracing/koa/vendored/instrumentation.d.ts +1 -1
  381. package/build/types/integrations/tracing/koa/vendored/instrumentation.d.ts.map +1 -1
  382. package/build/types/integrations/tracing/koa/vendored/internal-types.d.ts +4 -4
  383. package/build/types/integrations/tracing/koa/vendored/internal-types.d.ts.map +1 -1
  384. package/build/types/integrations/tracing/koa/vendored/types.d.ts +2 -39
  385. package/build/types/integrations/tracing/koa/vendored/types.d.ts.map +1 -1
  386. package/build/types/integrations/tracing/koa/vendored/utils.d.ts +3 -3
  387. package/build/types/integrations/tracing/koa/vendored/utils.d.ts.map +1 -1
  388. package/build/types/integrations/tracing/lrumemoizer/vendored/instrumentation.d.ts.map +1 -1
  389. package/build/types/integrations/tracing/mongo/index.d.ts +0 -4
  390. package/build/types/integrations/tracing/mongo/index.d.ts.map +1 -1
  391. package/build/types/integrations/tracing/mongo/vendored/instrumentation.d.ts +4 -72
  392. package/build/types/integrations/tracing/mongo/vendored/instrumentation.d.ts.map +1 -1
  393. package/build/types/integrations/tracing/mongo/vendored/internal-types.d.ts +0 -59
  394. package/build/types/integrations/tracing/mongo/vendored/internal-types.d.ts.map +1 -1
  395. package/build/types/integrations/tracing/mongo/vendored/patches.d.ts +15 -0
  396. package/build/types/integrations/tracing/mongo/vendored/patches.d.ts.map +1 -0
  397. package/build/types/integrations/tracing/mongo/vendored/semconv.d.ts +0 -54
  398. package/build/types/integrations/tracing/mongo/vendored/semconv.d.ts.map +1 -1
  399. package/build/types/integrations/tracing/mongo/vendored/utils.d.ts +24 -0
  400. package/build/types/integrations/tracing/mongo/vendored/utils.d.ts.map +1 -0
  401. package/build/types/integrations/tracing/mongoose/index.d.ts.map +1 -1
  402. package/build/types/integrations/tracing/mongoose/vendored/mongoose-types.d.ts +3 -0
  403. package/build/types/integrations/tracing/mongoose/vendored/mongoose-types.d.ts.map +1 -1
  404. package/build/types/integrations/tracing/mongoose/vendored/mongoose.d.ts +3 -8
  405. package/build/types/integrations/tracing/mongoose/vendored/mongoose.d.ts.map +1 -1
  406. package/build/types/integrations/tracing/mongoose/vendored/semconv.d.ts +0 -14
  407. package/build/types/integrations/tracing/mongoose/vendored/semconv.d.ts.map +1 -1
  408. package/build/types/integrations/tracing/mongoose/vendored/utils.d.ts +4 -6
  409. package/build/types/integrations/tracing/mongoose/vendored/utils.d.ts.map +1 -1
  410. package/build/types/integrations/tracing/mysql/vendored/AttributeNames.d.ts.map +1 -1
  411. package/build/types/integrations/tracing/mysql/vendored/instrumentation.d.ts.map +1 -1
  412. package/build/types/integrations/tracing/mysql/vendored/mysql-types.d.ts.map +1 -1
  413. package/build/types/integrations/tracing/mysql/vendored/semconv.d.ts.map +1 -1
  414. package/build/types/integrations/tracing/mysql/vendored/types.d.ts.map +1 -1
  415. package/build/types/integrations/tracing/mysql/vendored/utils.d.ts.map +1 -1
  416. package/build/types/integrations/tracing/mysql2/index.d.ts.map +1 -1
  417. package/build/types/integrations/tracing/mysql2/vendored/instrumentation.d.ts +3 -6
  418. package/build/types/integrations/tracing/mysql2/vendored/instrumentation.d.ts.map +1 -1
  419. package/build/types/integrations/tracing/mysql2/vendored/semconv.d.ts.map +1 -1
  420. package/build/types/integrations/tracing/mysql2/vendored/utils.d.ts +3 -5
  421. package/build/types/integrations/tracing/mysql2/vendored/utils.d.ts.map +1 -1
  422. package/build/types/integrations/tracing/postgres/index.d.ts.map +1 -1
  423. package/build/types/integrations/tracing/postgres/vendored/enums/AttributeNames.d.ts +0 -1
  424. package/build/types/integrations/tracing/postgres/vendored/enums/AttributeNames.d.ts.map +1 -1
  425. package/build/types/integrations/tracing/postgres/vendored/enums/SpanNames.d.ts.map +1 -1
  426. package/build/types/integrations/tracing/postgres/vendored/instrumentation.d.ts +1 -9
  427. package/build/types/integrations/tracing/postgres/vendored/instrumentation.d.ts.map +1 -1
  428. package/build/types/integrations/tracing/postgres/vendored/internal-types.d.ts +0 -2
  429. package/build/types/integrations/tracing/postgres/vendored/internal-types.d.ts.map +1 -1
  430. package/build/types/integrations/tracing/postgres/vendored/pg-pool-types.d.ts.map +1 -1
  431. package/build/types/integrations/tracing/postgres/vendored/pg-types.d.ts.map +1 -1
  432. package/build/types/integrations/tracing/postgres/vendored/semconv.d.ts +0 -50
  433. package/build/types/integrations/tracing/postgres/vendored/semconv.d.ts.map +1 -1
  434. package/build/types/integrations/tracing/postgres/vendored/types.d.ts +2 -56
  435. package/build/types/integrations/tracing/postgres/vendored/types.d.ts.map +1 -1
  436. package/build/types/integrations/tracing/postgres/vendored/utils.d.ts +13 -26
  437. package/build/types/integrations/tracing/postgres/vendored/utils.d.ts.map +1 -1
  438. package/build/types/integrations/tracing/prisma/vendored/active-tracing-helper.d.ts.map +1 -1
  439. package/build/types/integrations/tracing/prisma/vendored/constants.d.ts.map +1 -1
  440. package/build/types/integrations/tracing/prisma/vendored/global.d.ts.map +1 -1
  441. package/build/types/integrations/tracing/prisma/vendored/instrumentation.d.ts.map +1 -1
  442. package/build/types/integrations/tracing/prisma/vendored/types.d.ts.map +1 -1
  443. package/build/types/integrations/tracing/redis/index.d.ts.map +1 -1
  444. package/build/types/integrations/tracing/redis/vendored/ioredis-instrumentation.d.ts +3 -8
  445. package/build/types/integrations/tracing/redis/vendored/ioredis-instrumentation.d.ts.map +1 -1
  446. package/build/types/integrations/tracing/redis/vendored/redis-common.d.ts.map +1 -1
  447. package/build/types/integrations/tracing/redis/vendored/redis-instrumentation.d.ts.map +1 -1
  448. package/build/types/integrations/tracing/redis/vendored/semconv.d.ts.map +1 -1
  449. package/build/types/integrations/tracing/redis/vendored/types.d.ts +2 -36
  450. package/build/types/integrations/tracing/redis/vendored/types.d.ts.map +1 -1
  451. package/build/types/integrations/tracing/tedious/index.d.ts.map +1 -1
  452. package/build/types/integrations/tracing/tedious/vendored/instrumentation.d.ts +3 -14
  453. package/build/types/integrations/tracing/tedious/vendored/instrumentation.d.ts.map +1 -1
  454. package/build/types/integrations/tracing/tedious/vendored/semconv.d.ts.map +1 -1
  455. package/build/types/integrations/tracing/tedious/vendored/utils.d.ts.map +1 -1
  456. package/build/types/sdk/diagnosticsChannelInjection.d.ts +41 -0
  457. package/build/types/sdk/diagnosticsChannelInjection.d.ts.map +1 -0
  458. package/build/types/sdk/experimentalUseDiagnosticsChannelInjection.d.ts +34 -0
  459. package/build/types/sdk/experimentalUseDiagnosticsChannelInjection.d.ts.map +1 -0
  460. package/build/types/sdk/index.d.ts.map +1 -1
  461. package/build/types/sdk/initOtel.d.ts.map +1 -1
  462. package/build/types-ts3.8/index.d.ts +2 -1
  463. package/build/types-ts3.8/integrations/fs/vendored/instrumentation.d.ts +6 -10
  464. package/build/types-ts3.8/integrations/fs/vendored/types.d.ts +10 -15
  465. package/build/types-ts3.8/integrations/fs/vendored/utils.d.ts +2 -2
  466. package/build/types-ts3.8/integrations/node-fetch/vendored/semconv.d.ts +13 -0
  467. package/build/types-ts3.8/integrations/node-fetch/vendored/types.d.ts +2 -4
  468. package/build/types-ts3.8/integrations/node-fetch/vendored/undici.d.ts +6 -7
  469. package/build/types-ts3.8/integrations/tracing/connect/vendored/enums/AttributeNames.d.ts +0 -4
  470. package/build/types-ts3.8/integrations/tracing/connect/vendored/instrumentation.d.ts +4 -4
  471. package/build/types-ts3.8/integrations/tracing/connect/vendored/internal-types.d.ts +2 -2
  472. package/build/types-ts3.8/integrations/tracing/graphql/vendored/enums/AttributeNames.d.ts +1 -3
  473. package/build/types-ts3.8/integrations/tracing/graphql/vendored/instrumentation.d.ts +6 -1
  474. package/build/types-ts3.8/integrations/tracing/graphql/vendored/internal-types.d.ts +3 -3
  475. package/build/types-ts3.8/integrations/tracing/graphql/vendored/types.d.ts +4 -42
  476. package/build/types-ts3.8/integrations/tracing/graphql/vendored/utils.d.ts +6 -9
  477. package/build/types-ts3.8/integrations/tracing/hapi/vendored/instrumentation.d.ts +2 -2
  478. package/build/types-ts3.8/integrations/tracing/hapi/vendored/utils.d.ts +1 -2
  479. package/build/types-ts3.8/integrations/tracing/kafka/vendored/instrumentation.d.ts +3 -13
  480. package/build/types-ts3.8/integrations/tracing/kafka/vendored/kafkajs-types.d.ts +0 -32
  481. package/build/types-ts3.8/integrations/tracing/kafka/vendored/semconv.d.ts +9 -28
  482. package/build/types-ts3.8/integrations/tracing/kafka/vendored/utils.d.ts +29 -0
  483. package/build/types-ts3.8/integrations/tracing/knex/vendored/instrumentation.d.ts +8 -10
  484. package/build/types-ts3.8/integrations/tracing/knex/vendored/semconv.d.ts +1 -0
  485. package/build/types-ts3.8/integrations/tracing/knex/vendored/utils.d.ts +0 -6
  486. package/build/types-ts3.8/integrations/tracing/koa/vendored/internal-types.d.ts +4 -4
  487. package/build/types-ts3.8/integrations/tracing/koa/vendored/types.d.ts +1 -38
  488. package/build/types-ts3.8/integrations/tracing/mongo/index.d.ts +0 -4
  489. package/build/types-ts3.8/integrations/tracing/mongo/vendored/instrumentation.d.ts +4 -72
  490. package/build/types-ts3.8/integrations/tracing/mongo/vendored/internal-types.d.ts +0 -59
  491. package/build/types-ts3.8/integrations/tracing/mongo/vendored/patches.d.ts +15 -0
  492. package/build/types-ts3.8/integrations/tracing/mongo/vendored/semconv.d.ts +0 -54
  493. package/build/types-ts3.8/integrations/tracing/mongo/vendored/utils.d.ts +24 -0
  494. package/build/types-ts3.8/integrations/tracing/mongoose/vendored/mongoose-types.d.ts +3 -0
  495. package/build/types-ts3.8/integrations/tracing/mongoose/vendored/mongoose.d.ts +3 -8
  496. package/build/types-ts3.8/integrations/tracing/mongoose/vendored/semconv.d.ts +0 -14
  497. package/build/types-ts3.8/integrations/tracing/mongoose/vendored/utils.d.ts +4 -6
  498. package/build/types-ts3.8/integrations/tracing/mysql2/vendored/instrumentation.d.ts +3 -6
  499. package/build/types-ts3.8/integrations/tracing/mysql2/vendored/utils.d.ts +3 -5
  500. package/build/types-ts3.8/integrations/tracing/postgres/vendored/enums/AttributeNames.d.ts +0 -1
  501. package/build/types-ts3.8/integrations/tracing/postgres/vendored/instrumentation.d.ts +0 -8
  502. package/build/types-ts3.8/integrations/tracing/postgres/vendored/internal-types.d.ts +0 -2
  503. package/build/types-ts3.8/integrations/tracing/postgres/vendored/semconv.d.ts +0 -50
  504. package/build/types-ts3.8/integrations/tracing/postgres/vendored/types.d.ts +1 -55
  505. package/build/types-ts3.8/integrations/tracing/postgres/vendored/utils.d.ts +13 -26
  506. package/build/types-ts3.8/integrations/tracing/redis/vendored/ioredis-instrumentation.d.ts +3 -8
  507. package/build/types-ts3.8/integrations/tracing/redis/vendored/types.d.ts +2 -36
  508. package/build/types-ts3.8/integrations/tracing/tedious/vendored/instrumentation.d.ts +3 -14
  509. package/build/types-ts3.8/sdk/diagnosticsChannelInjection.d.ts +41 -0
  510. package/build/types-ts3.8/sdk/experimentalUseDiagnosticsChannelInjection.d.ts +34 -0
  511. package/package.json +20 -7
  512. package/build/cjs/integrations/tracing/kafka/vendored/internal-types.js +0 -6
  513. package/build/cjs/integrations/tracing/kafka/vendored/internal-types.js.map +0 -1
  514. package/build/cjs/integrations/tracing/kafka/vendored/propagator.js +0 -22
  515. package/build/cjs/integrations/tracing/kafka/vendored/propagator.js.map +0 -1
  516. package/build/cjs/integrations/tracing/knex/vendored/constants.js +0 -16
  517. package/build/cjs/integrations/tracing/knex/vendored/constants.js.map +0 -1
  518. package/build/cjs/integrations/tracing/postgres/vendored/internal-types.js +0 -6
  519. package/build/cjs/integrations/tracing/postgres/vendored/internal-types.js.map +0 -1
  520. package/build/cjs/integrations/tracing/utils/sql-common.js +0 -43
  521. package/build/cjs/integrations/tracing/utils/sql-common.js.map +0 -1
  522. package/build/esm/integrations/tracing/kafka/vendored/internal-types.js +0 -4
  523. package/build/esm/integrations/tracing/kafka/vendored/internal-types.js.map +0 -1
  524. package/build/esm/integrations/tracing/kafka/vendored/propagator.js +0 -20
  525. package/build/esm/integrations/tracing/kafka/vendored/propagator.js.map +0 -1
  526. package/build/esm/integrations/tracing/knex/vendored/constants.js +0 -13
  527. package/build/esm/integrations/tracing/knex/vendored/constants.js.map +0 -1
  528. package/build/esm/integrations/tracing/postgres/vendored/internal-types.js +0 -4
  529. package/build/esm/integrations/tracing/postgres/vendored/internal-types.js.map +0 -1
  530. package/build/esm/integrations/tracing/utils/sql-common.js +0 -41
  531. package/build/esm/integrations/tracing/utils/sql-common.js.map +0 -1
  532. package/build/types/integrations/tracing/kafka/vendored/internal-types.d.ts +0 -9
  533. package/build/types/integrations/tracing/kafka/vendored/internal-types.d.ts.map +0 -1
  534. package/build/types/integrations/tracing/kafka/vendored/propagator.d.ts +0 -3
  535. package/build/types/integrations/tracing/kafka/vendored/propagator.d.ts.map +0 -1
  536. package/build/types/integrations/tracing/kafka/vendored/types.d.ts +0 -26
  537. package/build/types/integrations/tracing/kafka/vendored/types.d.ts.map +0 -1
  538. package/build/types/integrations/tracing/knex/vendored/constants.d.ts +0 -3
  539. package/build/types/integrations/tracing/knex/vendored/constants.d.ts.map +0 -1
  540. package/build/types/integrations/tracing/knex/vendored/types.d.ts +0 -8
  541. package/build/types/integrations/tracing/knex/vendored/types.d.ts.map +0 -1
  542. package/build/types/integrations/tracing/mongo/vendored/types.d.ts +0 -51
  543. package/build/types/integrations/tracing/mongo/vendored/types.d.ts.map +0 -1
  544. package/build/types/integrations/tracing/mongoose/vendored/types.d.ts +0 -36
  545. package/build/types/integrations/tracing/mongoose/vendored/types.d.ts.map +0 -1
  546. package/build/types/integrations/tracing/mysql2/vendored/types.d.ts +0 -18
  547. package/build/types/integrations/tracing/mysql2/vendored/types.d.ts.map +0 -1
  548. package/build/types/integrations/tracing/tedious/vendored/types.d.ts +0 -10
  549. package/build/types/integrations/tracing/tedious/vendored/types.d.ts.map +0 -1
  550. package/build/types/integrations/tracing/utils/sql-common.d.ts +0 -3
  551. package/build/types/integrations/tracing/utils/sql-common.d.ts.map +0 -1
  552. package/build/types-ts3.8/integrations/tracing/kafka/vendored/internal-types.d.ts +0 -9
  553. package/build/types-ts3.8/integrations/tracing/kafka/vendored/propagator.d.ts +0 -3
  554. package/build/types-ts3.8/integrations/tracing/kafka/vendored/types.d.ts +0 -26
  555. package/build/types-ts3.8/integrations/tracing/knex/vendored/constants.d.ts +0 -3
  556. package/build/types-ts3.8/integrations/tracing/knex/vendored/types.d.ts +0 -8
  557. package/build/types-ts3.8/integrations/tracing/mongo/vendored/types.d.ts +0 -51
  558. package/build/types-ts3.8/integrations/tracing/mongoose/vendored/types.d.ts +0 -36
  559. package/build/types-ts3.8/integrations/tracing/mysql2/vendored/types.d.ts +0 -18
  560. package/build/types-ts3.8/integrations/tracing/tedious/vendored/types.d.ts +0 -10
  561. package/build/types-ts3.8/integrations/tracing/utils/sql-common.d.ts +0 -3
@@ -1,18 +1,16 @@
1
- import { context, trace } from '@opentelemetry/api';
2
1
  import { InstrumentationBase, InstrumentationNodeModuleDefinition, isWrapped, safeExecuteInTheMiddle } from '@opentelemetry/instrumentation';
3
2
  import { InstrumentationNodeModuleFile } from '../../InstrumentationNodeModuleFile.js';
4
3
  import { SpanNames } from './enum.js';
5
4
  import { AttributeNames } from './enums/AttributeNames.js';
6
5
  import { OTEL_GRAPHQL_DATA_SYMBOL } from './symbols.js';
7
6
  import { OPERATION_NOT_SUPPORTED } from './internal-types.js';
8
- import { getOperation, endSpan, isPromise, addSpanSource, addInputVariableAttributes, wrapFieldResolver, wrapFields } from './utils.js';
9
- import { SDK_VERSION } from '@sentry/core';
7
+ import { getOperation, endSpan, isPromise, addSpanSource, wrapFieldResolver, wrapFields } from './utils.js';
8
+ import { SDK_VERSION, withActiveSpan, spanToJSON, SPAN_STATUS_ERROR, getRootSpan, startInactiveSpan, SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN } from '@sentry/core';
9
+ import { SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION } from '@sentry/opentelemetry';
10
10
 
11
11
  const PACKAGE_NAME = "@sentry/instrumentation-graphql";
12
+ const ORIGIN = "auto.graphql.otel.graphql";
12
13
  const DEFAULT_CONFIG = {
13
- mergeItems: false,
14
- depth: -1,
15
- allowValues: false,
16
14
  ignoreResolveSpans: false
17
15
  };
18
16
  const supportedVersions = [">=14.0.0 <17"];
@@ -125,7 +123,7 @@ class GraphQLInstrumentation extends InstrumentationBase {
125
123
  span,
126
124
  fields: {}
127
125
  };
128
- return context.with(trace.setSpan(context.active(), span), () => {
126
+ return withActiveSpan(span, () => {
129
127
  return safeExecuteInTheMiddle(
130
128
  () => {
131
129
  return original.apply(this, [processedArgs]);
@@ -139,7 +137,6 @@ class GraphQLInstrumentation extends InstrumentationBase {
139
137
  };
140
138
  }
141
139
  _handleExecutionResult(span, err, result) {
142
- const config = this.getConfig();
143
140
  if (result === void 0 || err) {
144
141
  endSpan(span, err);
145
142
  return;
@@ -147,40 +144,55 @@ class GraphQLInstrumentation extends InstrumentationBase {
147
144
  if (isPromise(result)) {
148
145
  result.then(
149
146
  (resultData) => {
150
- if (typeof config.responseHook !== "function") {
151
- endSpan(span);
152
- return;
153
- }
154
- this._executeResponseHook(span, resultData);
147
+ this._updateSpanFromResult(span, resultData);
148
+ endSpan(span);
155
149
  },
156
150
  (error) => {
157
151
  endSpan(span, error);
158
152
  }
159
153
  );
160
154
  } else {
161
- if (typeof config.responseHook !== "function") {
162
- endSpan(span);
163
- return;
164
- }
165
- this._executeResponseHook(span, result);
155
+ this._updateSpanFromResult(span, result);
156
+ endSpan(span);
166
157
  }
167
158
  }
168
- _executeResponseHook(span, result) {
169
- const { responseHook } = this.getConfig();
170
- if (!responseHook) {
159
+ /**
160
+ * Applies Sentry-specific span mutations based on the GraphQL execution result:
161
+ * - Marks the execute span as errored if the result contains errors (and no status was set yet)
162
+ * - Optionally renames the containing root span to include the GraphQL operation name(s)
163
+ */
164
+ _updateSpanFromResult(span, result) {
165
+ if (result.errors?.length && !spanToJSON(span).status) {
166
+ span.setStatus({ code: SPAN_STATUS_ERROR });
167
+ }
168
+ if (!this.getConfig().useOperationNameForRootSpan) {
171
169
  return;
172
170
  }
173
- safeExecuteInTheMiddle(
174
- () => {
175
- responseHook(span, result);
176
- },
177
- (err) => {
178
- if (err) {
179
- this._diag.error("Error running response hook", err);
180
- }
181
- endSpan(span, void 0);
182
- },
183
- true
171
+ const attributes = spanToJSON(span).data;
172
+ const operationType = attributes[AttributeNames.OPERATION_TYPE];
173
+ const operationName = attributes[AttributeNames.OPERATION_NAME];
174
+ if (!operationType) {
175
+ return;
176
+ }
177
+ const rootSpan = getRootSpan(span);
178
+ const rootSpanAttributes = spanToJSON(rootSpan).data;
179
+ const existingOperations = rootSpanAttributes[SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION] || [];
180
+ const newOperation = operationName ? `${operationType} ${operationName}` : `${operationType}`;
181
+ if (Array.isArray(existingOperations)) {
182
+ existingOperations.push(newOperation);
183
+ rootSpan.setAttribute(SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, existingOperations);
184
+ } else if (typeof existingOperations === "string") {
185
+ rootSpan.setAttribute(SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, [existingOperations, newOperation]);
186
+ } else {
187
+ rootSpan.setAttribute(SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, newOperation);
188
+ }
189
+ if (!spanToJSON(rootSpan).data["original-description"]) {
190
+ rootSpan.setAttribute("original-description", spanToJSON(rootSpan).description);
191
+ }
192
+ rootSpan.updateName(
193
+ `${spanToJSON(rootSpan).data["original-description"]} (${getGraphqlOperationNamesFromAttribute(
194
+ existingOperations
195
+ )})`
184
196
  );
185
197
  }
186
198
  _patchParse() {
@@ -200,9 +212,8 @@ class GraphQLInstrumentation extends InstrumentationBase {
200
212
  };
201
213
  }
202
214
  _parse(obj, original, source, options) {
203
- const config = this.getConfig();
204
- const span = this.tracer.startSpan(SpanNames.PARSE);
205
- return context.with(trace.setSpan(context.active(), span), () => {
215
+ const span = startInactiveSpan({ name: SpanNames.PARSE });
216
+ return withActiveSpan(span, () => {
206
217
  return safeExecuteInTheMiddle(
207
218
  () => {
208
219
  return original.call(obj, source, options);
@@ -213,7 +224,7 @@ class GraphQLInstrumentation extends InstrumentationBase {
213
224
  if (!operation) {
214
225
  span.updateName(SpanNames.SCHEMA_PARSE);
215
226
  } else if (result.loc) {
216
- addSpanSource(span, result.loc, config.allowValues);
227
+ addSpanSource(span, result.loc);
217
228
  }
218
229
  }
219
230
  endSpan(span, err);
@@ -222,30 +233,26 @@ class GraphQLInstrumentation extends InstrumentationBase {
222
233
  });
223
234
  }
224
235
  _validate(obj, original, schema, documentAST, rules, typeInfo, options) {
225
- const span = this.tracer.startSpan(SpanNames.VALIDATE, {});
226
- return context.with(trace.setSpan(context.active(), span), () => {
236
+ const span = startInactiveSpan({ name: SpanNames.VALIDATE });
237
+ return withActiveSpan(span, () => {
227
238
  return safeExecuteInTheMiddle(
228
239
  () => {
229
240
  return original.call(obj, schema, documentAST, rules, options, typeInfo);
230
241
  },
231
- (err, errors) => {
242
+ (err, _errors) => {
232
243
  if (!documentAST.loc) {
233
244
  span.updateName(SpanNames.SCHEMA_VALIDATE);
234
245
  }
235
- if (errors && errors.length) {
236
- span.recordException({
237
- name: AttributeNames.ERROR_VALIDATION_NAME,
238
- message: JSON.stringify(errors)
239
- });
240
- }
241
246
  endSpan(span, err);
242
247
  }
243
248
  );
244
249
  });
245
250
  }
246
251
  _createExecuteSpan(operation, processedArgs) {
247
- const config = this.getConfig();
248
- const span = this.tracer.startSpan(SpanNames.EXECUTE, {});
252
+ const span = startInactiveSpan({
253
+ name: SpanNames.EXECUTE,
254
+ attributes: { [SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: ORIGIN }
255
+ });
249
256
  if (operation) {
250
257
  const { operation: operationType, name: nameNode } = operation;
251
258
  span.setAttribute(AttributeNames.OPERATION_TYPE, operationType);
@@ -265,10 +272,7 @@ class GraphQLInstrumentation extends InstrumentationBase {
265
272
  span.setAttribute(AttributeNames.OPERATION_NAME, operationName);
266
273
  }
267
274
  if (processedArgs.document?.loc) {
268
- addSpanSource(span, processedArgs.document.loc, config.allowValues);
269
- }
270
- if (processedArgs.variableValues && config.allowValues) {
271
- addInputVariableAttributes(span, processedArgs.variableValues);
275
+ addSpanSource(span, processedArgs.document.loc);
272
276
  }
273
277
  return span;
274
278
  }
@@ -290,15 +294,10 @@ class GraphQLInstrumentation extends InstrumentationBase {
290
294
  }
291
295
  const isUsingDefaultResolver = fieldResolver == null;
292
296
  const fieldResolverForExecute = fieldResolver ?? defaultFieldResolved;
293
- fieldResolver = wrapFieldResolver(
294
- this.tracer,
295
- () => this.getConfig(),
296
- fieldResolverForExecute,
297
- isUsingDefaultResolver
298
- );
297
+ fieldResolver = wrapFieldResolver(() => this.getConfig(), fieldResolverForExecute, isUsingDefaultResolver);
299
298
  if (schema) {
300
- wrapFields(schema.getQueryType(), this.tracer, () => this.getConfig());
301
- wrapFields(schema.getMutationType(), this.tracer, () => this.getConfig());
299
+ wrapFields(schema.getQueryType(), () => this.getConfig());
300
+ wrapFields(schema.getMutationType(), () => this.getConfig());
302
301
  }
303
302
  return {
304
303
  schema,
@@ -312,6 +311,17 @@ class GraphQLInstrumentation extends InstrumentationBase {
312
311
  };
313
312
  }
314
313
  }
314
+ function getGraphqlOperationNamesFromAttribute(attr) {
315
+ if (Array.isArray(attr)) {
316
+ const sorted = attr.slice().sort();
317
+ if (sorted.length <= 5) {
318
+ return sorted.join(", ");
319
+ } else {
320
+ return `${sorted.slice(0, 5).join(", ")}, +${sorted.length - 5}`;
321
+ }
322
+ }
323
+ return `${attr}`;
324
+ }
315
325
 
316
326
  export { GraphQLInstrumentation };
317
327
  //# sourceMappingURL=instrumentation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instrumentation.js","sources":["../../../../../../src/integrations/tracing/graphql/vendored/instrumentation.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * NOTICE from the Sentry authors:\n * - Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/tree/15ef7506553f631ea4181391e0c5725a56f0d082/packages/instrumentation-graphql\n * - Upstream version: @opentelemetry/instrumentation-graphql@0.66.0\n * - Types from `graphql` package inlined as simplified interfaces\n * - Minor TypeScript strictness adjustments\n */\n/* eslint-disable */\n\nimport { context, trace } from '@opentelemetry/api';\nimport {\n isWrapped,\n InstrumentationBase,\n InstrumentationNodeModuleDefinition,\n safeExecuteInTheMiddle,\n} from '@opentelemetry/instrumentation';\nimport { InstrumentationNodeModuleFile } from '../../InstrumentationNodeModuleFile';\nimport type {\n DefinitionNode,\n DocumentNode,\n ExecutionArgs,\n ExecutionResult,\n GraphQLError,\n GraphQLFieldResolver,\n GraphQLSchema,\n GraphQLTypeResolver,\n OperationDefinitionNode,\n ParseOptions,\n PromiseOrValue,\n Source,\n TypeInfo,\n ValidationRule,\n} from './graphql-types';\nimport type { Maybe } from './graphql-types';\nimport { SpanNames } from './enum';\nimport { AttributeNames } from './enums/AttributeNames';\nimport { OTEL_GRAPHQL_DATA_SYMBOL } from './symbols';\n\nimport {\n executeFunctionWithObj,\n executeArgumentsArray,\n executeType,\n parseType,\n validateType,\n OtelExecutionArgs,\n ObjectWithGraphQLData,\n OPERATION_NOT_SUPPORTED,\n} from './internal-types';\nimport {\n addInputVariableAttributes,\n addSpanSource,\n endSpan,\n getOperation,\n isPromise,\n wrapFieldResolver,\n wrapFields,\n} from './utils';\n\nimport { SDK_VERSION } from '@sentry/core';\nimport * as api from '@opentelemetry/api';\nimport { GraphQLInstrumentationConfig, GraphQLInstrumentationParsedConfig } from './types';\n\nconst PACKAGE_NAME = '@sentry/instrumentation-graphql';\n\nconst DEFAULT_CONFIG: GraphQLInstrumentationParsedConfig = {\n mergeItems: false,\n depth: -1,\n allowValues: false,\n ignoreResolveSpans: false,\n};\n\nconst supportedVersions = ['>=14.0.0 <17'];\n\nexport class GraphQLInstrumentation extends InstrumentationBase<GraphQLInstrumentationParsedConfig> {\n constructor(config: GraphQLInstrumentationConfig = {}) {\n super(PACKAGE_NAME, SDK_VERSION, { ...DEFAULT_CONFIG, ...config });\n }\n\n override setConfig(config: GraphQLInstrumentationConfig = {}) {\n super.setConfig({ ...DEFAULT_CONFIG, ...config });\n }\n\n protected init() {\n const module = new InstrumentationNodeModuleDefinition('graphql', supportedVersions);\n module.files.push(this._addPatchingExecute());\n module.files.push(this._addPatchingParser());\n module.files.push(this._addPatchingValidate());\n\n return module;\n }\n\n private _addPatchingExecute(): InstrumentationNodeModuleFile {\n return new InstrumentationNodeModuleFile(\n 'graphql/execution/execute.js',\n supportedVersions,\n // cannot make it work with appropriate type as execute function has 2\n //types and/cannot import function but only types\n (moduleExports: any) => {\n if (isWrapped(moduleExports.execute)) {\n this._unwrap(moduleExports, 'execute');\n }\n this._wrap(moduleExports, 'execute', this._patchExecute(moduleExports.defaultFieldResolver));\n return moduleExports;\n },\n moduleExports => {\n if (moduleExports) {\n this._unwrap(moduleExports, 'execute');\n }\n },\n );\n }\n\n private _addPatchingParser(): InstrumentationNodeModuleFile {\n return new InstrumentationNodeModuleFile(\n 'graphql/language/parser.js',\n supportedVersions,\n (moduleExports: { parse: parseType; [key: string]: any }) => {\n if (isWrapped(moduleExports.parse)) {\n this._unwrap(moduleExports, 'parse');\n }\n this._wrap(moduleExports, 'parse', this._patchParse());\n return moduleExports;\n },\n (moduleExports: { parse: parseType; [key: string]: any }) => {\n if (moduleExports) {\n this._unwrap(moduleExports, 'parse');\n }\n },\n );\n }\n\n private _addPatchingValidate(): InstrumentationNodeModuleFile {\n return new InstrumentationNodeModuleFile(\n 'graphql/validation/validate.js',\n supportedVersions,\n moduleExports => {\n if (isWrapped(moduleExports.validate)) {\n this._unwrap(moduleExports, 'validate');\n }\n this._wrap(moduleExports, 'validate', this._patchValidate());\n return moduleExports;\n },\n moduleExports => {\n if (moduleExports) {\n this._unwrap(moduleExports, 'validate');\n }\n },\n );\n }\n\n private _patchExecute(defaultFieldResolved: GraphQLFieldResolver<any, any>): (original: executeType) => executeType {\n const instrumentation = this;\n return function execute(original) {\n return function patchExecute(this: executeType): PromiseOrValue<ExecutionResult> {\n let processedArgs: OtelExecutionArgs;\n\n // case when apollo server is used for example\n if (arguments.length >= 2) {\n const args = arguments as unknown as executeArgumentsArray;\n processedArgs = instrumentation._wrapExecuteArgs(\n args[0],\n args[1],\n args[2],\n args[3],\n args[4],\n args[5],\n args[6],\n args[7],\n defaultFieldResolved,\n );\n } else {\n const args = arguments[0] as ExecutionArgs;\n processedArgs = instrumentation._wrapExecuteArgs(\n args.schema,\n args.document,\n args.rootValue,\n args.contextValue,\n args.variableValues,\n args.operationName,\n args.fieldResolver,\n args.typeResolver,\n defaultFieldResolved,\n );\n }\n\n const operation = getOperation(processedArgs.document, processedArgs.operationName);\n\n const span = instrumentation._createExecuteSpan(operation, processedArgs);\n\n processedArgs.contextValue[OTEL_GRAPHQL_DATA_SYMBOL] = {\n source: processedArgs.document\n ? processedArgs.document || (processedArgs.document as ObjectWithGraphQLData)[OTEL_GRAPHQL_DATA_SYMBOL]\n : undefined,\n span,\n fields: {},\n };\n\n return context.with(trace.setSpan(context.active(), span), () => {\n return safeExecuteInTheMiddle<PromiseOrValue<ExecutionResult>>(\n () => {\n return (original as executeFunctionWithObj).apply(this, [processedArgs]);\n },\n (err, result) => {\n instrumentation._handleExecutionResult(span, err, result);\n },\n );\n });\n };\n };\n }\n\n private _handleExecutionResult(span: api.Span, err?: Error, result?: PromiseOrValue<ExecutionResult>) {\n const config = this.getConfig();\n if (result === undefined || err) {\n endSpan(span, err);\n return;\n }\n\n if (isPromise(result)) {\n (result as Promise<ExecutionResult>).then(\n resultData => {\n if (typeof config.responseHook !== 'function') {\n endSpan(span);\n return;\n }\n this._executeResponseHook(span, resultData);\n },\n error => {\n endSpan(span, error);\n },\n );\n } else {\n if (typeof config.responseHook !== 'function') {\n endSpan(span);\n return;\n }\n this._executeResponseHook(span, result as ExecutionResult);\n }\n }\n\n private _executeResponseHook(span: api.Span, result: ExecutionResult) {\n const { responseHook } = this.getConfig();\n if (!responseHook) {\n return;\n }\n\n safeExecuteInTheMiddle(\n () => {\n responseHook(span, result);\n },\n err => {\n if (err) {\n this._diag.error('Error running response hook', err);\n }\n\n endSpan(span, undefined);\n },\n true,\n );\n }\n\n private _patchParse(): (original: parseType) => parseType {\n const instrumentation = this;\n return function parse(original) {\n return function patchParse(this: parseType, source: string | Source, options?: ParseOptions): DocumentNode {\n return instrumentation._parse(this, original, source, options);\n };\n };\n }\n\n private _patchValidate(): (original: validateType) => validateType {\n const instrumentation = this;\n return function validate(original: validateType) {\n return function patchValidate(\n this: validateType,\n schema: GraphQLSchema,\n documentAST: DocumentNode,\n rules?: ReadonlyArray<ValidationRule>,\n options?: { maxErrors?: number },\n typeInfo?: TypeInfo,\n ): ReadonlyArray<GraphQLError> {\n return instrumentation._validate(this, original, schema, documentAST, rules, typeInfo, options);\n };\n };\n }\n\n private _parse(obj: parseType, original: parseType, source: string | Source, options?: ParseOptions): DocumentNode {\n const config = this.getConfig();\n const span = this.tracer.startSpan(SpanNames.PARSE);\n\n return context.with(trace.setSpan(context.active(), span), () => {\n return safeExecuteInTheMiddle<DocumentNode & ObjectWithGraphQLData>(\n () => {\n return original.call(obj, source, options);\n },\n (err, result) => {\n if (result) {\n const operation = getOperation(result);\n if (!operation) {\n span.updateName(SpanNames.SCHEMA_PARSE);\n } else if (result.loc) {\n addSpanSource(span, result.loc, config.allowValues);\n }\n }\n endSpan(span, err);\n },\n );\n });\n }\n\n private _validate(\n obj: validateType,\n original: validateType,\n schema: GraphQLSchema,\n documentAST: DocumentNode,\n rules?: ReadonlyArray<ValidationRule>,\n typeInfo?: TypeInfo,\n options?: { maxErrors?: number },\n ): ReadonlyArray<GraphQLError> {\n const span = this.tracer.startSpan(SpanNames.VALIDATE, {});\n\n return context.with(trace.setSpan(context.active(), span), () => {\n return safeExecuteInTheMiddle<ReadonlyArray<GraphQLError>>(\n () => {\n return original.call(obj, schema, documentAST, rules, options, typeInfo);\n },\n (err, errors) => {\n if (!documentAST.loc) {\n span.updateName(SpanNames.SCHEMA_VALIDATE);\n }\n if (errors && errors.length) {\n span.recordException({\n name: AttributeNames.ERROR_VALIDATION_NAME,\n message: JSON.stringify(errors),\n });\n }\n endSpan(span, err);\n },\n );\n });\n }\n\n private _createExecuteSpan(operation: DefinitionNode | undefined, processedArgs: ExecutionArgs): api.Span {\n const config = this.getConfig();\n\n const span = this.tracer.startSpan(SpanNames.EXECUTE, {});\n if (operation) {\n const { operation: operationType, name: nameNode } = operation as OperationDefinitionNode;\n\n span.setAttribute(AttributeNames.OPERATION_TYPE, operationType);\n\n const operationName = nameNode?.value;\n\n // https://opentelemetry.io/docs/reference/specification/trace/semantic_conventions/instrumentation/graphql/\n // > The span name MUST be of the format <graphql.operation.type> <graphql.operation.name> provided that graphql.operation.type and graphql.operation.name are available.\n // > If graphql.operation.name is not available, the span SHOULD be named <graphql.operation.type>.\n if (operationName) {\n span.setAttribute(AttributeNames.OPERATION_NAME, operationName);\n span.updateName(`${operationType} ${operationName}`);\n } else {\n span.updateName(operationType);\n }\n } else {\n let operationName = ' ';\n if (processedArgs.operationName) {\n operationName = ` \"${processedArgs.operationName}\" `;\n }\n operationName = OPERATION_NOT_SUPPORTED.replace('$operationName$', operationName);\n span.setAttribute(AttributeNames.OPERATION_NAME, operationName);\n }\n\n if (processedArgs.document?.loc) {\n addSpanSource(span, processedArgs.document.loc, config.allowValues);\n }\n\n if (processedArgs.variableValues && config.allowValues) {\n addInputVariableAttributes(span, processedArgs.variableValues);\n }\n\n return span;\n }\n\n private _wrapExecuteArgs(\n schema: GraphQLSchema,\n document: DocumentNode,\n rootValue: any,\n contextValue: any,\n variableValues: Maybe<{ [key: string]: any }>,\n operationName: Maybe<string>,\n fieldResolver: Maybe<GraphQLFieldResolver<any, any>>,\n typeResolver: Maybe<GraphQLTypeResolver<any, any>>,\n defaultFieldResolved: GraphQLFieldResolver<any, any>,\n ): OtelExecutionArgs {\n if (!contextValue) {\n contextValue = {};\n }\n\n if (contextValue[OTEL_GRAPHQL_DATA_SYMBOL] || this.getConfig().ignoreResolveSpans) {\n return {\n schema,\n document,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n };\n }\n\n const isUsingDefaultResolver = fieldResolver == null;\n // follows graphql implementation here:\n // https://github.com/graphql/graphql-js/blob/0b7daed9811731362c71900e12e5ea0d1ecc7f1f/src/execution/execute.ts#L494\n const fieldResolverForExecute = fieldResolver ?? defaultFieldResolved;\n fieldResolver = wrapFieldResolver(\n this.tracer,\n () => this.getConfig(),\n fieldResolverForExecute,\n isUsingDefaultResolver,\n );\n\n if (schema) {\n wrapFields(schema.getQueryType() as any, this.tracer, () => this.getConfig());\n wrapFields(schema.getMutationType() as any, this.tracer, () => this.getConfig());\n }\n\n return {\n schema,\n document,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n };\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrumentation.js","sources":["../../../../../../src/integrations/tracing/graphql/vendored/instrumentation.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n *\n * NOTICE from the Sentry authors:\n * - Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/tree/15ef7506553f631ea4181391e0c5725a56f0d082/packages/instrumentation-graphql\n * - Upstream version: @opentelemetry/instrumentation-graphql@0.66.0\n * - Types from `graphql` package inlined as simplified interfaces\n * - Minor TypeScript strictness adjustments\n * - Span lifecycle migrated from the OpenTelemetry tracer to the @sentry/core span API\n * - `auto.graphql.otel.graphql` origin baked into the execute span (previously set via a Sentry responseHook)\n * - The generic `responseHook` config was removed; its Sentry-specific logic (error status + root span renaming\n * via `useOperationNameForRootSpan`) is now applied directly when the execution result is handled\n */\n\n/* oxlint-disable max-lines */\n\nimport {\n isWrapped,\n InstrumentationBase,\n InstrumentationNodeModuleDefinition,\n safeExecuteInTheMiddle,\n} from '@opentelemetry/instrumentation';\nimport { InstrumentationNodeModuleFile } from '../../InstrumentationNodeModuleFile';\nimport type {\n DefinitionNode,\n DocumentNode,\n ExecutionArgs,\n ExecutionResult,\n GraphQLError,\n GraphQLFieldResolver,\n GraphQLSchema,\n GraphQLTypeResolver,\n OperationDefinitionNode,\n ParseOptions,\n PromiseOrValue,\n Source,\n TypeInfo,\n ValidationRule,\n} from './graphql-types';\nimport type { Maybe } from './graphql-types';\nimport { SpanNames } from './enum';\nimport { AttributeNames } from './enums/AttributeNames';\nimport { OTEL_GRAPHQL_DATA_SYMBOL } from './symbols';\n\nimport {\n type executeFunctionWithObj,\n type executeArgumentsArray,\n type executeType,\n type parseType,\n type validateType,\n type OtelExecutionArgs,\n type ObjectWithGraphQLData,\n OPERATION_NOT_SUPPORTED,\n} from './internal-types';\nimport { addSpanSource, endSpan, getOperation, isPromise, wrapFieldResolver, wrapFields } from './utils';\n\nimport type { Span, SpanAttributeValue } from '@sentry/core';\nimport {\n getRootSpan,\n SDK_VERSION,\n SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN,\n SPAN_STATUS_ERROR,\n spanToJSON,\n startInactiveSpan,\n withActiveSpan,\n} from '@sentry/core';\nimport { SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION } from '@sentry/opentelemetry';\nimport type { GraphQLInstrumentationConfig, GraphQLInstrumentationParsedConfig } from './types';\n\nconst PACKAGE_NAME = '@sentry/instrumentation-graphql';\n\nconst ORIGIN = 'auto.graphql.otel.graphql';\n\nconst DEFAULT_CONFIG: GraphQLInstrumentationParsedConfig = {\n ignoreResolveSpans: false,\n};\n\nconst supportedVersions = ['>=14.0.0 <17'];\n\nexport class GraphQLInstrumentation extends InstrumentationBase<GraphQLInstrumentationParsedConfig> {\n constructor(config: GraphQLInstrumentationConfig = {}) {\n super(PACKAGE_NAME, SDK_VERSION, { ...DEFAULT_CONFIG, ...config });\n }\n\n override setConfig(config: GraphQLInstrumentationConfig = {}) {\n super.setConfig({ ...DEFAULT_CONFIG, ...config });\n }\n\n protected init() {\n const module = new InstrumentationNodeModuleDefinition('graphql', supportedVersions);\n module.files.push(this._addPatchingExecute());\n module.files.push(this._addPatchingParser());\n module.files.push(this._addPatchingValidate());\n\n return module;\n }\n\n private _addPatchingExecute(): InstrumentationNodeModuleFile {\n return new InstrumentationNodeModuleFile(\n 'graphql/execution/execute.js',\n supportedVersions,\n // cannot make it work with appropriate type as execute function has 2\n //types and/cannot import function but only types\n (moduleExports: any) => {\n if (isWrapped(moduleExports.execute)) {\n this._unwrap(moduleExports, 'execute');\n }\n this._wrap(moduleExports, 'execute', this._patchExecute(moduleExports.defaultFieldResolver));\n return moduleExports;\n },\n moduleExports => {\n if (moduleExports) {\n this._unwrap(moduleExports, 'execute');\n }\n },\n );\n }\n\n private _addPatchingParser(): InstrumentationNodeModuleFile {\n return new InstrumentationNodeModuleFile(\n 'graphql/language/parser.js',\n supportedVersions,\n (moduleExports: { parse: parseType; [key: string]: any }) => {\n if (isWrapped(moduleExports.parse)) {\n this._unwrap(moduleExports, 'parse');\n }\n this._wrap(moduleExports, 'parse', this._patchParse());\n return moduleExports;\n },\n (moduleExports: { parse: parseType; [key: string]: any }) => {\n if (moduleExports) {\n this._unwrap(moduleExports, 'parse');\n }\n },\n );\n }\n\n private _addPatchingValidate(): InstrumentationNodeModuleFile {\n return new InstrumentationNodeModuleFile(\n 'graphql/validation/validate.js',\n supportedVersions,\n moduleExports => {\n if (isWrapped(moduleExports.validate)) {\n this._unwrap(moduleExports, 'validate');\n }\n this._wrap(moduleExports, 'validate', this._patchValidate());\n return moduleExports;\n },\n moduleExports => {\n if (moduleExports) {\n this._unwrap(moduleExports, 'validate');\n }\n },\n );\n }\n\n private _patchExecute(defaultFieldResolved: GraphQLFieldResolver<any, any>): (original: executeType) => executeType {\n const instrumentation = this;\n return function execute(original) {\n return function patchExecute(this: executeType): PromiseOrValue<ExecutionResult> {\n let processedArgs: OtelExecutionArgs;\n\n // case when apollo server is used for example\n if (arguments.length >= 2) {\n const args = arguments as unknown as executeArgumentsArray;\n processedArgs = instrumentation._wrapExecuteArgs(\n args[0],\n args[1],\n args[2],\n args[3],\n args[4],\n args[5],\n args[6],\n args[7],\n defaultFieldResolved,\n );\n } else {\n const args = arguments[0] as ExecutionArgs;\n processedArgs = instrumentation._wrapExecuteArgs(\n args.schema,\n args.document,\n args.rootValue,\n args.contextValue,\n args.variableValues,\n args.operationName,\n args.fieldResolver,\n args.typeResolver,\n defaultFieldResolved,\n );\n }\n\n const operation = getOperation(processedArgs.document, processedArgs.operationName);\n\n const span = instrumentation._createExecuteSpan(operation, processedArgs);\n\n processedArgs.contextValue[OTEL_GRAPHQL_DATA_SYMBOL] = {\n source: processedArgs.document\n ? processedArgs.document || (processedArgs.document as ObjectWithGraphQLData)[OTEL_GRAPHQL_DATA_SYMBOL]\n : undefined,\n span,\n fields: {},\n };\n\n return withActiveSpan(span, () => {\n return safeExecuteInTheMiddle<PromiseOrValue<ExecutionResult>>(\n () => {\n return (original as executeFunctionWithObj).apply(this, [processedArgs]);\n },\n (err, result) => {\n instrumentation._handleExecutionResult(span, err, result);\n },\n );\n });\n };\n };\n }\n\n private _handleExecutionResult(span: Span, err?: Error, result?: PromiseOrValue<ExecutionResult>) {\n if (result === undefined || err) {\n endSpan(span, err);\n return;\n }\n\n if (isPromise(result)) {\n result.then(\n resultData => {\n this._updateSpanFromResult(span, resultData);\n endSpan(span);\n },\n error => {\n endSpan(span, error);\n },\n );\n } else {\n this._updateSpanFromResult(span, result);\n endSpan(span);\n }\n }\n\n /**\n * Applies Sentry-specific span mutations based on the GraphQL execution result:\n * - Marks the execute span as errored if the result contains errors (and no status was set yet)\n * - Optionally renames the containing root span to include the GraphQL operation name(s)\n */\n private _updateSpanFromResult(span: Span, result: ExecutionResult): void {\n // We want to ensure spans are marked as errored if there are errors in the result\n // We only do that if the span is not already marked with a status\n if (result.errors?.length && !spanToJSON(span).status) {\n span.setStatus({ code: SPAN_STATUS_ERROR });\n }\n\n if (!this.getConfig().useOperationNameForRootSpan) {\n return;\n }\n\n const attributes = spanToJSON(span).data;\n\n // If operation.name is not set, we fall back to use operation.type only\n const operationType = attributes[AttributeNames.OPERATION_TYPE];\n const operationName = attributes[AttributeNames.OPERATION_NAME];\n\n if (!operationType) {\n return;\n }\n\n const rootSpan = getRootSpan(span);\n const rootSpanAttributes = spanToJSON(rootSpan).data;\n\n const existingOperations = rootSpanAttributes[SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION] || [];\n\n const newOperation = operationName ? `${operationType} ${operationName}` : `${operationType}`;\n\n // We keep track of each operation on the root span\n // This can either be a string, or an array of strings (if there are multiple operations)\n if (Array.isArray(existingOperations)) {\n (existingOperations as string[]).push(newOperation);\n rootSpan.setAttribute(SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, existingOperations);\n } else if (typeof existingOperations === 'string') {\n rootSpan.setAttribute(SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, [existingOperations, newOperation]);\n } else {\n rootSpan.setAttribute(SEMANTIC_ATTRIBUTE_SENTRY_GRAPHQL_OPERATION, newOperation);\n }\n\n if (!spanToJSON(rootSpan).data['original-description']) {\n rootSpan.setAttribute('original-description', spanToJSON(rootSpan).description);\n }\n // Important for e.g. @sentry/aws-serverless because this would otherwise overwrite the name again\n rootSpan.updateName(\n `${spanToJSON(rootSpan).data['original-description']} (${getGraphqlOperationNamesFromAttribute(\n existingOperations,\n )})`,\n );\n }\n\n private _patchParse(): (original: parseType) => parseType {\n const instrumentation = this;\n return function parse(original) {\n return function patchParse(this: parseType, source: string | Source, options?: ParseOptions): DocumentNode {\n return instrumentation._parse(this, original, source, options);\n };\n };\n }\n\n private _patchValidate(): (original: validateType) => validateType {\n const instrumentation = this;\n return function validate(original: validateType) {\n return function patchValidate(\n this: validateType,\n schema: GraphQLSchema,\n documentAST: DocumentNode,\n rules?: ReadonlyArray<ValidationRule>,\n options?: { maxErrors?: number },\n typeInfo?: TypeInfo,\n ): ReadonlyArray<GraphQLError> {\n return instrumentation._validate(this, original, schema, documentAST, rules, typeInfo, options);\n };\n };\n }\n\n private _parse(obj: parseType, original: parseType, source: string | Source, options?: ParseOptions): DocumentNode {\n const span = startInactiveSpan({ name: SpanNames.PARSE });\n\n return withActiveSpan(span, () => {\n return safeExecuteInTheMiddle<DocumentNode & ObjectWithGraphQLData>(\n () => {\n return original.call(obj, source, options);\n },\n (err, result) => {\n if (result) {\n const operation = getOperation(result);\n if (!operation) {\n span.updateName(SpanNames.SCHEMA_PARSE);\n } else if (result.loc) {\n addSpanSource(span, result.loc);\n }\n }\n endSpan(span, err);\n },\n );\n });\n }\n\n private _validate(\n obj: validateType,\n original: validateType,\n schema: GraphQLSchema,\n documentAST: DocumentNode,\n rules?: ReadonlyArray<ValidationRule>,\n typeInfo?: TypeInfo,\n options?: { maxErrors?: number },\n ): ReadonlyArray<GraphQLError> {\n const span = startInactiveSpan({ name: SpanNames.VALIDATE });\n\n return withActiveSpan(span, () => {\n return safeExecuteInTheMiddle<ReadonlyArray<GraphQLError>>(\n () => {\n return original.call(obj, schema, documentAST, rules, options, typeInfo);\n },\n (err, _errors) => {\n if (!documentAST.loc) {\n span.updateName(SpanNames.SCHEMA_VALIDATE);\n }\n endSpan(span, err);\n },\n );\n });\n }\n\n private _createExecuteSpan(operation: DefinitionNode | undefined, processedArgs: ExecutionArgs): Span {\n const span = startInactiveSpan({\n name: SpanNames.EXECUTE,\n attributes: { [SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: ORIGIN },\n });\n if (operation) {\n const { operation: operationType, name: nameNode } = operation as OperationDefinitionNode;\n\n span.setAttribute(AttributeNames.OPERATION_TYPE, operationType);\n\n const operationName = nameNode?.value;\n\n // https://opentelemetry.io/docs/reference/specification/trace/semantic_conventions/instrumentation/graphql/\n // > The span name MUST be of the format <graphql.operation.type> <graphql.operation.name> provided that graphql.operation.type and graphql.operation.name are available.\n // > If graphql.operation.name is not available, the span SHOULD be named <graphql.operation.type>.\n if (operationName) {\n span.setAttribute(AttributeNames.OPERATION_NAME, operationName);\n span.updateName(`${operationType} ${operationName}`);\n } else {\n span.updateName(operationType);\n }\n } else {\n let operationName = ' ';\n if (processedArgs.operationName) {\n operationName = ` \"${processedArgs.operationName}\" `;\n }\n operationName = OPERATION_NOT_SUPPORTED.replace('$operationName$', operationName);\n span.setAttribute(AttributeNames.OPERATION_NAME, operationName);\n }\n\n if (processedArgs.document?.loc) {\n addSpanSource(span, processedArgs.document.loc);\n }\n\n return span;\n }\n\n private _wrapExecuteArgs(\n schema: GraphQLSchema,\n document: DocumentNode,\n rootValue: any,\n contextValue: any,\n variableValues: Maybe<{ [key: string]: any }>,\n operationName: Maybe<string>,\n fieldResolver: Maybe<GraphQLFieldResolver<any, any>>,\n typeResolver: Maybe<GraphQLTypeResolver<any, any>>,\n defaultFieldResolved: GraphQLFieldResolver<any, any>,\n ): OtelExecutionArgs {\n if (!contextValue) {\n // oxlint-disable-next-line no-param-reassign\n contextValue = {};\n }\n\n if (contextValue[OTEL_GRAPHQL_DATA_SYMBOL] || this.getConfig().ignoreResolveSpans) {\n return {\n schema,\n document,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n };\n }\n\n const isUsingDefaultResolver = fieldResolver == null;\n // follows graphql implementation here:\n // https://github.com/graphql/graphql-js/blob/0b7daed9811731362c71900e12e5ea0d1ecc7f1f/src/execution/execute.ts#L494\n const fieldResolverForExecute = fieldResolver ?? defaultFieldResolved;\n // oxlint-disable-next-line no-param-reassign\n fieldResolver = wrapFieldResolver(() => this.getConfig(), fieldResolverForExecute, isUsingDefaultResolver);\n\n if (schema) {\n wrapFields(schema.getQueryType() as any, () => this.getConfig());\n wrapFields(schema.getMutationType() as any, () => this.getConfig());\n }\n\n return {\n schema,\n document,\n rootValue,\n contextValue,\n variableValues,\n operationName,\n fieldResolver,\n typeResolver,\n };\n }\n}\n\n// copy from packages/opentelemetry/utils\nfunction getGraphqlOperationNamesFromAttribute(attr: SpanAttributeValue): string {\n if (Array.isArray(attr)) {\n // oxlint-disable-next-line typescript/require-array-sort-compare\n const sorted = attr.slice().sort();\n\n // Up to 5 items, we just add all of them\n if (sorted.length <= 5) {\n return sorted.join(', ');\n } else {\n // Else, we add the first 5 and the diff of other operations\n return `${sorted.slice(0, 5).join(', ')}, +${sorted.length - 5}`;\n }\n }\n\n return `${attr}`;\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"internal-types.js","sources":["../../../../../../src/integrations/tracing/graphql/vendored/internal-types.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * NOTICE from the Sentry authors:\n * - Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/tree/15ef7506553f631ea4181391e0c5725a56f0d082/packages/instrumentation-graphql\n * - Upstream version: @opentelemetry/instrumentation-graphql@0.66.0\n * - Types from `graphql` package inlined as simplified interfaces\n * - Minor TypeScript strictness adjustments\n */\n/* eslint-disable */\n\nimport type * as api from '@opentelemetry/api';\nimport type {\n DocumentNode,\n ExecutionArgs,\n ExecutionResult,\n GraphQLError,\n GraphQLFieldResolver,\n GraphQLSchema,\n GraphQLTypeResolver,\n Maybe,\n ParseOptions,\n PromiseOrValue,\n Source,\n TypeInfo,\n ValidationRule,\n} from './graphql-types';\nimport { OTEL_GRAPHQL_DATA_SYMBOL, OTEL_PATCHED_SYMBOL } from './symbols';\n\nexport type { Maybe } from './graphql-types';\n\nexport const OPERATION_NOT_SUPPORTED = 'Operation$operationName$not' + ' supported';\n\nexport type executeFunctionWithObj = (args: ExecutionArgs) => PromiseOrValue<ExecutionResult>;\n\nexport type executeArgumentsArray = [\n GraphQLSchema,\n DocumentNode,\n any,\n any,\n Maybe<{ [key: string]: any }>,\n Maybe<string>,\n Maybe<GraphQLFieldResolver<any, any>>,\n Maybe<GraphQLTypeResolver<any, any>>,\n];\n\nexport type executeFunctionWithArgs = (\n schema: GraphQLSchema,\n document: DocumentNode,\n rootValue?: any,\n contextValue?: any,\n variableValues?: Maybe<{ [key: string]: any }>,\n operationName?: Maybe<string>,\n fieldResolver?: Maybe<GraphQLFieldResolver<any, any>>,\n typeResolver?: Maybe<GraphQLTypeResolver<any, any>>,\n) => PromiseOrValue<ExecutionResult>;\n\nexport interface OtelExecutionArgs {\n schema: GraphQLSchema;\n document: DocumentNode & ObjectWithGraphQLData;\n rootValue?: any;\n contextValue?: any & ObjectWithGraphQLData;\n variableValues?: Maybe<{ [key: string]: any }>;\n operationName?: Maybe<string>;\n fieldResolver?: Maybe<GraphQLFieldResolver<any, any> & OtelPatched>;\n typeResolver?: Maybe<GraphQLTypeResolver<any, any>>;\n}\n\nexport type executeType = executeFunctionWithObj | executeFunctionWithArgs;\n\nexport type parseType = (source: string | Source, options?: ParseOptions) => DocumentNode;\n\nexport type validateType = (\n schema: GraphQLSchema,\n documentAST: DocumentNode,\n rules?: ReadonlyArray<ValidationRule>,\n options?: { maxErrors?: number },\n typeInfo?: TypeInfo,\n) => ReadonlyArray<GraphQLError>;\n\nexport interface GraphQLField {\n span: api.Span;\n}\n\ninterface OtelGraphQLData {\n source?: any;\n span: api.Span;\n fields: { [key: string]: GraphQLField };\n}\n\nexport interface ObjectWithGraphQLData {\n [OTEL_GRAPHQL_DATA_SYMBOL]?: OtelGraphQLData;\n}\n\nexport interface OtelPatched {\n [OTEL_PATCHED_SYMBOL]?: boolean;\n}\n\nexport interface GraphQLPath {\n prev: GraphQLPath | undefined;\n key: string | number;\n /**\n * optional as it didn't exist yet in ver 14\n */\n typename?: string | undefined;\n}\n"],"names":[],"mappings":"AA2CO,MAAM,uBAAA,GAA0B;;;;"}
1
+ {"version":3,"file":"internal-types.js","sources":["../../../../../../src/integrations/tracing/graphql/vendored/internal-types.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n *\n * NOTICE from the Sentry authors:\n * - Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/tree/15ef7506553f631ea4181391e0c5725a56f0d082/packages/instrumentation-graphql\n * - Upstream version: @opentelemetry/instrumentation-graphql@0.66.0\n * - Types from `graphql` package inlined as simplified interfaces\n * - Minor TypeScript strictness adjustments\n */\n\nimport type { Span } from '@sentry/core';\nimport type {\n DocumentNode,\n ExecutionArgs,\n ExecutionResult,\n GraphQLError,\n GraphQLFieldResolver,\n GraphQLSchema,\n GraphQLTypeResolver,\n Maybe,\n ParseOptions,\n PromiseOrValue,\n Source,\n TypeInfo,\n ValidationRule,\n} from './graphql-types';\nimport type { OTEL_GRAPHQL_DATA_SYMBOL, OTEL_PATCHED_SYMBOL } from './symbols';\n\nexport type { Maybe } from './graphql-types';\n\nexport const OPERATION_NOT_SUPPORTED = 'Operation$operationName$not' + ' supported';\n\nexport type executeFunctionWithObj = (args: ExecutionArgs) => PromiseOrValue<ExecutionResult>;\n\nexport type executeArgumentsArray = [\n GraphQLSchema,\n DocumentNode,\n any,\n any,\n Maybe<{ [key: string]: any }>,\n Maybe<string>,\n Maybe<GraphQLFieldResolver<any, any>>,\n Maybe<GraphQLTypeResolver<any, any>>,\n];\n\nexport type executeFunctionWithArgs = (\n schema: GraphQLSchema,\n document: DocumentNode,\n rootValue?: any,\n contextValue?: any,\n variableValues?: Maybe<{ [key: string]: any }>,\n operationName?: Maybe<string>,\n fieldResolver?: Maybe<GraphQLFieldResolver<any, any>>,\n typeResolver?: Maybe<GraphQLTypeResolver<any, any>>,\n) => PromiseOrValue<ExecutionResult>;\n\nexport interface OtelExecutionArgs {\n schema: GraphQLSchema;\n document: DocumentNode & ObjectWithGraphQLData;\n rootValue?: any;\n contextValue?: any & ObjectWithGraphQLData;\n variableValues?: Maybe<{ [key: string]: any }>;\n operationName?: Maybe<string>;\n fieldResolver?: Maybe<GraphQLFieldResolver<any, any> & OtelPatched>;\n typeResolver?: Maybe<GraphQLTypeResolver<any, any>>;\n}\n\nexport type executeType = executeFunctionWithObj | executeFunctionWithArgs;\n\nexport type parseType = (source: string | Source, options?: ParseOptions) => DocumentNode;\n\nexport type validateType = (\n schema: GraphQLSchema,\n documentAST: DocumentNode,\n rules?: ReadonlyArray<ValidationRule>,\n options?: { maxErrors?: number },\n typeInfo?: TypeInfo,\n) => ReadonlyArray<GraphQLError>;\n\nexport interface GraphQLField {\n span: Span;\n}\n\ninterface OtelGraphQLData {\n source?: any;\n span: Span;\n fields: { [key: string]: GraphQLField };\n}\n\nexport interface ObjectWithGraphQLData {\n [OTEL_GRAPHQL_DATA_SYMBOL]?: OtelGraphQLData;\n}\n\nexport interface OtelPatched {\n [OTEL_PATCHED_SYMBOL]?: boolean;\n}\n\nexport interface GraphQLPath {\n prev: GraphQLPath | undefined;\n key: string | number;\n /**\n * optional as it didn't exist yet in ver 14\n */\n typename?: string | undefined;\n}\n"],"names":[],"mappings":"AA+BO,MAAM,uBAAA,GAA0B;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"symbols.js","sources":["../../../../../../src/integrations/tracing/graphql/vendored/symbols.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * NOTICE from the Sentry authors:\n * - Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/tree/15ef7506553f631ea4181391e0c5725a56f0d082/packages/instrumentation-graphql\n * - Upstream version: @opentelemetry/instrumentation-graphql@0.66.0\n */\n/* eslint-disable */\n\nexport const OTEL_PATCHED_SYMBOL = Symbol.for('opentelemetry.patched');\n\nexport const OTEL_GRAPHQL_DATA_SYMBOL = Symbol.for('opentelemetry.graphql_data');\n"],"names":[],"mappings":"AAqBO,MAAM,mBAAA,mBAAsB,MAAA,CAAO,GAAA,CAAI,uBAAuB;AAE9D,MAAM,wBAAA,mBAA2B,MAAA,CAAO,GAAA,CAAI,4BAA4B;;;;"}
1
+ {"version":3,"file":"symbols.js","sources":["../../../../../../src/integrations/tracing/graphql/vendored/symbols.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n *\n * NOTICE from the Sentry authors:\n * - Vendored from: https://github.com/open-telemetry/opentelemetry-js-contrib/tree/15ef7506553f631ea4181391e0c5725a56f0d082/packages/instrumentation-graphql\n * - Upstream version: @opentelemetry/instrumentation-graphql@0.66.0\n */\n\nexport const OTEL_PATCHED_SYMBOL = Symbol.for('opentelemetry.patched');\n\nexport const OTEL_GRAPHQL_DATA_SYMBOL = Symbol.for('opentelemetry.graphql_data');\n"],"names":[],"mappings":"AASO,MAAM,mBAAA,mBAAsB,MAAA,CAAO,GAAA,CAAI,uBAAuB;AAE9D,MAAM,wBAAA,mBAA2B,MAAA,CAAO,GAAA,CAAI,4BAA4B;;;;"}
@@ -1,4 +1,4 @@
1
- import * as api from '@opentelemetry/api';
1
+ import { SPAN_STATUS_ERROR, withActiveSpan, startInactiveSpan } from '@sentry/core';
2
2
  import { AllowedOperationTypes, TokenKind, SpanNames } from './enum.js';
3
3
  import { AttributeNames } from './enums/AttributeNames.js';
4
4
  import { OTEL_PATCHED_SYMBOL, OTEL_GRAPHQL_DATA_SYMBOL } from './symbols.js';
@@ -10,65 +10,44 @@ const isPromise = (value) => {
10
10
  const isObjectLike = (value) => {
11
11
  return typeof value == "object" && value !== null;
12
12
  };
13
- function addInputVariableAttribute(span, key, variable) {
14
- if (Array.isArray(variable)) {
15
- variable.forEach((value, idx) => {
16
- addInputVariableAttribute(span, `${key}.${idx}`, value);
17
- });
18
- } else if (variable instanceof Object) {
19
- Object.entries(variable).forEach(([nestedKey, value]) => {
20
- addInputVariableAttribute(span, `${key}.${nestedKey}`, value);
21
- });
22
- } else {
23
- span.setAttribute(`${AttributeNames.VARIABLES}${String(key)}`, variable);
24
- }
25
- }
26
- function addInputVariableAttributes(span, variableValues) {
27
- Object.entries(variableValues).forEach(([key, value]) => {
28
- addInputVariableAttribute(span, key, value);
29
- });
30
- }
31
- function addSpanSource(span, loc, allowValues, start, end) {
32
- const source = getSourceFromLocation(loc, allowValues, start, end);
13
+ function addSpanSource(span, loc, start, end) {
14
+ const source = getSourceFromLocation(loc, start, end);
33
15
  span.setAttribute(AttributeNames.SOURCE, source);
34
16
  }
35
- function createFieldIfNotExists(tracer, getConfig, contextValue, info, path) {
17
+ function createFieldIfNotExists(contextValue, info, path) {
36
18
  let field = getField(contextValue, path);
37
19
  if (field) {
38
20
  return { field, spanAdded: false };
39
21
  }
40
- const config = getConfig();
41
- const parentSpan = config.flatResolveSpans ? getRootSpan(contextValue) : getParentFieldSpan(contextValue, path);
22
+ const parentSpan = getParentFieldSpan(contextValue, path);
42
23
  field = {
43
- span: createResolverSpan(tracer, getConfig, contextValue, info, path, parentSpan)
24
+ span: createResolverSpan(contextValue, info, path, parentSpan)
44
25
  };
45
26
  addField(contextValue, path, field);
46
27
  return { field, spanAdded: true };
47
28
  }
48
- function createResolverSpan(tracer, getConfig, contextValue, info, path, parentSpan) {
29
+ function createResolverSpan(contextValue, info, path, parentSpan) {
49
30
  const attributes = {
50
31
  [AttributeNames.FIELD_NAME]: info.fieldName,
51
32
  [AttributeNames.FIELD_PATH]: path.join("."),
52
33
  [AttributeNames.FIELD_TYPE]: info.returnType.toString(),
53
34
  [AttributeNames.PARENT_NAME]: info.parentType.name
54
35
  };
55
- const span = tracer.startSpan(
56
- `${SpanNames.RESOLVE} ${attributes[AttributeNames.FIELD_PATH]}`,
57
- {
58
- attributes
59
- },
60
- parentSpan ? api.trace.setSpan(api.context.active(), parentSpan) : void 0
61
- );
36
+ const span = startInactiveSpan({
37
+ name: `${SpanNames.RESOLVE} ${attributes[AttributeNames.FIELD_PATH]}`,
38
+ attributes,
39
+ parentSpan
40
+ });
62
41
  const document = contextValue[OTEL_GRAPHQL_DATA_SYMBOL].source;
63
42
  const fieldNode = info.fieldNodes.find((fieldNode2) => fieldNode2.kind === "Field");
64
43
  if (fieldNode) {
65
- addSpanSource(span, document.loc, getConfig().allowValues, fieldNode.loc?.start, fieldNode.loc?.end);
44
+ addSpanSource(span, document.loc, fieldNode.loc?.start, fieldNode.loc?.end);
66
45
  }
67
46
  return span;
68
47
  }
69
48
  function endSpan(span, error) {
70
49
  if (error) {
71
- span.recordException(error);
50
+ span.setStatus({ code: SPAN_STATUS_ERROR, message: error.message });
72
51
  }
73
52
  span.end();
74
53
  }
@@ -100,15 +79,11 @@ function getParentFieldSpan(contextValue, path) {
100
79
  function getRootSpan(contextValue) {
101
80
  return contextValue[OTEL_GRAPHQL_DATA_SYMBOL].span;
102
81
  }
103
- function pathToArray(mergeItems, path) {
82
+ function pathToArray(path) {
104
83
  const flattened = [];
105
84
  let curr = path;
106
85
  while (curr) {
107
- let key = curr.key;
108
- if (mergeItems && typeof key === "number") {
109
- key = "*";
110
- }
111
- flattened.push(String(key));
86
+ flattened.push(String(curr.key));
112
87
  curr = curr.prev;
113
88
  }
114
89
  return flattened.reverse();
@@ -127,7 +102,7 @@ function repeatChar(char, to) {
127
102
  return text;
128
103
  }
129
104
  const KindsToBeRemoved = [TokenKind.FLOAT, TokenKind.STRING, TokenKind.INT, TokenKind.BLOCK_STRING];
130
- function getSourceFromLocation(loc, allowValues = false, inputStart, inputEnd) {
105
+ function getSourceFromLocation(loc, inputStart, inputEnd) {
131
106
  let source = "";
132
107
  if (loc?.startToken) {
133
108
  const start = typeof inputStart === "number" ? inputStart : loc.start;
@@ -147,7 +122,7 @@ function getSourceFromLocation(loc, allowValues = false, inputStart, inputEnd) {
147
122
  }
148
123
  let value = next.value || next.kind;
149
124
  let space = "";
150
- if (!allowValues && KindsToBeRemoved.indexOf(next.kind) >= 0) {
125
+ if (KindsToBeRemoved.indexOf(next.kind) >= 0) {
151
126
  value = "*";
152
127
  }
153
128
  if (next.kind === TokenKind.STRING) {
@@ -173,7 +148,7 @@ function getSourceFromLocation(loc, allowValues = false, inputStart, inputEnd) {
173
148
  }
174
149
  return source;
175
150
  }
176
- function wrapFields(type, tracer, getConfig) {
151
+ function wrapFields(type, getConfig) {
177
152
  if (!type || type[OTEL_PATCHED_SYMBOL]) {
178
153
  return;
179
154
  }
@@ -185,12 +160,12 @@ function wrapFields(type, tracer, getConfig) {
185
160
  return;
186
161
  }
187
162
  if (field.resolve) {
188
- field.resolve = wrapFieldResolver(tracer, getConfig, field.resolve);
163
+ field.resolve = wrapFieldResolver(getConfig, field.resolve);
189
164
  }
190
165
  if (field.type) {
191
166
  const unwrappedTypes = unwrapType(field.type);
192
167
  for (const unwrappedType of unwrappedTypes) {
193
- wrapFields(unwrappedType, tracer, getConfig);
168
+ wrapFields(unwrappedType, getConfig);
194
169
  }
195
170
  }
196
171
  });
@@ -217,9 +192,8 @@ const handleResolveSpanError = (resolveSpan, err, shouldEndSpan) => {
217
192
  if (!shouldEndSpan) {
218
193
  return;
219
194
  }
220
- resolveSpan.recordException(err);
221
195
  resolveSpan.setStatus({
222
- code: api.SpanStatusCode.ERROR,
196
+ code: SPAN_STATUS_ERROR,
223
197
  message: err.message
224
198
  });
225
199
  resolveSpan.end();
@@ -230,7 +204,7 @@ const handleResolveSpanSuccess = (resolveSpan, shouldEndSpan) => {
230
204
  }
231
205
  resolveSpan.end();
232
206
  };
233
- function wrapFieldResolver(tracer, getConfig, fieldResolver, isDefaultResolver = false) {
207
+ function wrapFieldResolver(getConfig, fieldResolver, isDefaultResolver = false) {
234
208
  if (wrappedFieldResolver[OTEL_PATCHED_SYMBOL] || typeof fieldResolver !== "function") {
235
209
  return fieldResolver;
236
210
  }
@@ -248,18 +222,11 @@ function wrapFieldResolver(tracer, getConfig, fieldResolver, isDefaultResolver =
248
222
  if (!contextValue[OTEL_GRAPHQL_DATA_SYMBOL]) {
249
223
  return fieldResolver.call(this, source, args, contextValue, info);
250
224
  }
251
- const path = pathToArray(config.mergeItems, info && info.path);
252
- const depth = path.filter((item) => typeof item === "string").length;
253
- let span;
254
- let shouldEndSpan = false;
255
- if (config.depth >= 0 && config.depth < depth) {
256
- span = getParentFieldSpan(contextValue, path);
257
- } else {
258
- const { field, spanAdded } = createFieldIfNotExists(tracer, getConfig, contextValue, info, path);
259
- span = field.span;
260
- shouldEndSpan = spanAdded;
261
- }
262
- return api.context.with(api.trace.setSpan(api.context.active(), span), () => {
225
+ const path = pathToArray(info?.path);
226
+ const { field, spanAdded } = createFieldIfNotExists(contextValue, info, path);
227
+ const span = field.span;
228
+ const shouldEndSpan = spanAdded;
229
+ return withActiveSpan(span, () => {
263
230
  try {
264
231
  const res = fieldResolver.call(this, source, args, contextValue, info);
265
232
  if (isPromise(res)) {
@@ -287,5 +254,5 @@ function wrapFieldResolver(tracer, getConfig, fieldResolver, isDefaultResolver =
287
254
  return wrappedFieldResolver;
288
255
  }
289
256
 
290
- export { addInputVariableAttributes, addSpanSource, endSpan, getOperation, getSourceFromLocation, isPromise, wrapFieldResolver, wrapFields };
257
+ export { addSpanSource, endSpan, getOperation, getSourceFromLocation, isPromise, wrapFieldResolver, wrapFields };
291
258
  //# sourceMappingURL=utils.js.map