@multiplayer-app/session-recorder-common 0.0.12 → 1.0.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (343) hide show
  1. package/dist/esm/SessionRecorderIdGenerator.js +2 -2
  2. package/dist/esm/SessionRecorderIdGenerator.js.map +1 -1
  3. package/dist/esm/SessionRecorderJsonTraceSerializer.d.ts.map +1 -1
  4. package/dist/esm/SessionRecorderJsonTraceSerializer.js +75 -7
  5. package/dist/esm/SessionRecorderJsonTraceSerializer.js.map +1 -1
  6. package/dist/esm/SessionRecorderTraceIdRatioBasedSampler.d.ts.map +1 -1
  7. package/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js +4 -4
  8. package/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js.map +1 -1
  9. package/dist/esm/{constants.base.d.ts → constants/constants.base.d.ts} +16 -0
  10. package/dist/esm/constants/constants.base.d.ts.map +1 -0
  11. package/dist/esm/{constants.base.js → constants/constants.base.js} +16 -0
  12. package/dist/esm/constants/constants.base.js.map +1 -0
  13. package/dist/esm/constants/constants.browser.d.ts.map +1 -0
  14. package/dist/esm/constants/constants.browser.js.map +1 -0
  15. package/dist/esm/constants/constants.node.d.ts.map +1 -0
  16. package/dist/esm/constants/constants.node.js.map +1 -0
  17. package/dist/esm/exporters/SessionRecorderBrowserTraceExporter.d.ts +31 -0
  18. package/dist/esm/exporters/SessionRecorderBrowserTraceExporter.d.ts.map +1 -0
  19. package/dist/esm/exporters/SessionRecorderBrowserTraceExporter.js +220 -0
  20. package/dist/esm/exporters/SessionRecorderBrowserTraceExporter.js.map +1 -0
  21. package/dist/esm/exporters/SessionRecorderGrpcLogsExporter.d.ts +22 -0
  22. package/dist/esm/exporters/SessionRecorderGrpcLogsExporter.d.ts.map +1 -0
  23. package/dist/esm/exporters/SessionRecorderGrpcLogsExporter.js +51 -0
  24. package/dist/esm/exporters/SessionRecorderGrpcLogsExporter.js.map +1 -0
  25. package/dist/esm/exporters/SessionRecorderGrpcTraceExporter.d.ts +22 -0
  26. package/dist/esm/exporters/SessionRecorderGrpcTraceExporter.d.ts.map +1 -0
  27. package/dist/esm/exporters/SessionRecorderGrpcTraceExporter.js +48 -0
  28. package/dist/esm/exporters/SessionRecorderGrpcTraceExporter.js.map +1 -0
  29. package/dist/esm/exporters/SessionRecorderHttpLogsExporter.d.ts +20 -0
  30. package/dist/esm/exporters/SessionRecorderHttpLogsExporter.d.ts.map +1 -0
  31. package/dist/esm/exporters/SessionRecorderHttpLogsExporter.js +50 -0
  32. package/dist/esm/exporters/SessionRecorderHttpLogsExporter.js.map +1 -0
  33. package/dist/esm/exporters/SessionRecorderHttpTraceExporter.d.ts +25 -0
  34. package/dist/esm/exporters/SessionRecorderHttpTraceExporter.d.ts.map +1 -0
  35. package/dist/esm/exporters/SessionRecorderHttpTraceExporter.js +56 -0
  36. package/dist/esm/exporters/SessionRecorderHttpTraceExporter.js.map +1 -0
  37. package/dist/esm/exporters/SessionRecorderLogsExporterWrapper.d.ts +13 -0
  38. package/dist/esm/exporters/SessionRecorderLogsExporterWrapper.d.ts.map +1 -0
  39. package/dist/esm/exporters/SessionRecorderLogsExporterWrapper.js +25 -0
  40. package/dist/esm/exporters/SessionRecorderLogsExporterWrapper.js.map +1 -0
  41. package/dist/esm/exporters/SessionRecorderTraceExporterWrapper.d.ts +13 -0
  42. package/dist/esm/exporters/SessionRecorderTraceExporterWrapper.d.ts.map +1 -0
  43. package/dist/esm/exporters/SessionRecorderTraceExporterWrapper.js +24 -0
  44. package/dist/esm/exporters/SessionRecorderTraceExporterWrapper.js.map +1 -0
  45. package/dist/esm/exporters/index-browser.d.ts +2 -0
  46. package/dist/esm/exporters/index-browser.d.ts.map +1 -0
  47. package/dist/esm/exporters/index-browser.js +2 -0
  48. package/dist/esm/exporters/index-browser.js.map +1 -0
  49. package/dist/esm/exporters/index-node.d.ts +7 -0
  50. package/dist/esm/exporters/index-node.d.ts.map +1 -0
  51. package/dist/esm/exporters/index-node.js +7 -0
  52. package/dist/esm/exporters/index-node.js.map +1 -0
  53. package/dist/esm/exporters/index.d.ts +8 -0
  54. package/dist/esm/exporters/index.d.ts.map +1 -0
  55. package/dist/esm/exporters/index.js +8 -0
  56. package/dist/esm/exporters/index.js.map +1 -0
  57. package/dist/esm/index-browser.d.ts +2 -2
  58. package/dist/esm/index-browser.d.ts.map +1 -1
  59. package/dist/esm/index-browser.js +2 -2
  60. package/dist/esm/index-browser.js.map +1 -1
  61. package/dist/esm/index-node.d.ts +3 -2
  62. package/dist/esm/index-node.d.ts.map +1 -1
  63. package/dist/esm/index-node.js +3 -2
  64. package/dist/esm/index-node.js.map +1 -1
  65. package/dist/esm/index.d.ts +3 -4
  66. package/dist/esm/index.d.ts.map +1 -1
  67. package/dist/esm/index.js +3 -4
  68. package/dist/esm/index.js.map +1 -1
  69. package/dist/esm/instrumentations/SessionRecorderHttpInstrumentationHooksNode.d.ts.map +1 -0
  70. package/dist/esm/{SessionRecorderHttpInstrumentationHooksNode.js → instrumentations/SessionRecorderHttpInstrumentationHooksNode.js} +3 -6
  71. package/dist/esm/instrumentations/SessionRecorderHttpInstrumentationHooksNode.js.map +1 -0
  72. package/dist/esm/instrumentations/index-node.d.ts +2 -0
  73. package/dist/esm/instrumentations/index-node.d.ts.map +1 -0
  74. package/dist/esm/instrumentations/index-node.js +2 -0
  75. package/dist/esm/instrumentations/index-node.js.map +1 -0
  76. package/dist/esm/sdk/capture-exception.js.map +1 -1
  77. package/dist/esm/sdk/id-generator.js.map +1 -1
  78. package/dist/esm/sdk/mask.js +1 -1
  79. package/dist/esm/sdk/mask.js.map +1 -1
  80. package/dist/esm/sdk/save-continuous-deb-session.d.ts.map +1 -1
  81. package/dist/esm/sdk/save-continuous-deb-session.js +2 -2
  82. package/dist/esm/sdk/save-continuous-deb-session.js.map +1 -1
  83. package/dist/esm/sdk/schemify.d.ts.map +1 -1
  84. package/dist/esm/sdk/schemify.js +0 -1
  85. package/dist/esm/sdk/schemify.js.map +1 -1
  86. package/dist/esm/sdk/set-attribute.js +2 -2
  87. package/dist/esm/sdk/set-attribute.js.map +1 -1
  88. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  89. package/dist/esnext/SessionRecorderIdGenerator.js +2 -2
  90. package/dist/esnext/SessionRecorderIdGenerator.js.map +1 -1
  91. package/dist/esnext/SessionRecorderJsonTraceSerializer.d.ts.map +1 -1
  92. package/dist/esnext/SessionRecorderJsonTraceSerializer.js +47 -7
  93. package/dist/esnext/SessionRecorderJsonTraceSerializer.js.map +1 -1
  94. package/dist/esnext/SessionRecorderTraceIdRatioBasedSampler.d.ts.map +1 -1
  95. package/dist/esnext/SessionRecorderTraceIdRatioBasedSampler.js +4 -4
  96. package/dist/esnext/SessionRecorderTraceIdRatioBasedSampler.js.map +1 -1
  97. package/dist/{src → esnext/constants}/constants.base.d.ts +16 -0
  98. package/dist/esnext/constants/constants.base.d.ts.map +1 -0
  99. package/dist/esnext/{constants.base.js → constants/constants.base.js} +16 -0
  100. package/dist/esnext/constants/constants.base.js.map +1 -0
  101. package/dist/esnext/constants/constants.browser.d.ts.map +1 -0
  102. package/dist/esnext/constants/constants.browser.js.map +1 -0
  103. package/dist/esnext/constants/constants.node.d.ts.map +1 -0
  104. package/dist/esnext/constants/constants.node.js.map +1 -0
  105. package/dist/esnext/exporters/SessionRecorderBrowserTraceExporter.d.ts +31 -0
  106. package/dist/esnext/exporters/SessionRecorderBrowserTraceExporter.d.ts.map +1 -0
  107. package/dist/esnext/exporters/SessionRecorderBrowserTraceExporter.js +159 -0
  108. package/dist/esnext/exporters/SessionRecorderBrowserTraceExporter.js.map +1 -0
  109. package/dist/esnext/exporters/SessionRecorderGrpcLogsExporter.d.ts +22 -0
  110. package/dist/esnext/exporters/SessionRecorderGrpcLogsExporter.d.ts.map +1 -0
  111. package/dist/esnext/exporters/SessionRecorderGrpcLogsExporter.js +33 -0
  112. package/dist/esnext/exporters/SessionRecorderGrpcLogsExporter.js.map +1 -0
  113. package/dist/esnext/exporters/SessionRecorderGrpcTraceExporter.d.ts +22 -0
  114. package/dist/esnext/exporters/SessionRecorderGrpcTraceExporter.d.ts.map +1 -0
  115. package/dist/esnext/exporters/SessionRecorderGrpcTraceExporter.js +30 -0
  116. package/dist/esnext/exporters/SessionRecorderGrpcTraceExporter.js.map +1 -0
  117. package/dist/esnext/exporters/SessionRecorderHttpLogsExporter.d.ts +20 -0
  118. package/dist/esnext/exporters/SessionRecorderHttpLogsExporter.d.ts.map +1 -0
  119. package/dist/esnext/exporters/SessionRecorderHttpLogsExporter.js +32 -0
  120. package/dist/esnext/exporters/SessionRecorderHttpLogsExporter.js.map +1 -0
  121. package/dist/esnext/exporters/SessionRecorderHttpTraceExporter.d.ts +25 -0
  122. package/dist/esnext/exporters/SessionRecorderHttpTraceExporter.d.ts.map +1 -0
  123. package/dist/esnext/exporters/SessionRecorderHttpTraceExporter.js +38 -0
  124. package/dist/esnext/exporters/SessionRecorderHttpTraceExporter.js.map +1 -0
  125. package/dist/esnext/exporters/SessionRecorderLogsExporterWrapper.d.ts +13 -0
  126. package/dist/esnext/exporters/SessionRecorderLogsExporterWrapper.d.ts.map +1 -0
  127. package/dist/esnext/exporters/SessionRecorderLogsExporterWrapper.js +23 -0
  128. package/dist/esnext/exporters/SessionRecorderLogsExporterWrapper.js.map +1 -0
  129. package/dist/esnext/exporters/SessionRecorderTraceExporterWrapper.d.ts +13 -0
  130. package/dist/esnext/exporters/SessionRecorderTraceExporterWrapper.d.ts.map +1 -0
  131. package/dist/esnext/exporters/SessionRecorderTraceExporterWrapper.js +22 -0
  132. package/dist/esnext/exporters/SessionRecorderTraceExporterWrapper.js.map +1 -0
  133. package/dist/esnext/exporters/index-browser.d.ts +2 -0
  134. package/dist/esnext/exporters/index-browser.d.ts.map +1 -0
  135. package/dist/esnext/exporters/index-browser.js +2 -0
  136. package/dist/esnext/exporters/index-browser.js.map +1 -0
  137. package/dist/esnext/exporters/index-node.d.ts +7 -0
  138. package/dist/esnext/exporters/index-node.d.ts.map +1 -0
  139. package/dist/esnext/exporters/index-node.js +7 -0
  140. package/dist/esnext/exporters/index-node.js.map +1 -0
  141. package/dist/esnext/exporters/index.d.ts +8 -0
  142. package/dist/esnext/exporters/index.d.ts.map +1 -0
  143. package/dist/esnext/exporters/index.js +8 -0
  144. package/dist/esnext/exporters/index.js.map +1 -0
  145. package/dist/esnext/index-browser.d.ts +2 -2
  146. package/dist/esnext/index-browser.d.ts.map +1 -1
  147. package/dist/esnext/index-browser.js +2 -2
  148. package/dist/esnext/index-browser.js.map +1 -1
  149. package/dist/esnext/index-node.d.ts +3 -2
  150. package/dist/esnext/index-node.d.ts.map +1 -1
  151. package/dist/esnext/index-node.js +3 -2
  152. package/dist/esnext/index-node.js.map +1 -1
  153. package/dist/esnext/index.d.ts +3 -4
  154. package/dist/esnext/index.d.ts.map +1 -1
  155. package/dist/esnext/index.js +3 -4
  156. package/dist/esnext/index.js.map +1 -1
  157. package/dist/esnext/instrumentations/SessionRecorderHttpInstrumentationHooksNode.d.ts.map +1 -0
  158. package/dist/esnext/{SessionRecorderHttpInstrumentationHooksNode.js → instrumentations/SessionRecorderHttpInstrumentationHooksNode.js} +3 -6
  159. package/dist/esnext/instrumentations/SessionRecorderHttpInstrumentationHooksNode.js.map +1 -0
  160. package/dist/esnext/instrumentations/index-node.d.ts +2 -0
  161. package/dist/esnext/instrumentations/index-node.d.ts.map +1 -0
  162. package/dist/esnext/instrumentations/index-node.js +2 -0
  163. package/dist/esnext/instrumentations/index-node.js.map +1 -0
  164. package/dist/esnext/sdk/capture-exception.js.map +1 -1
  165. package/dist/esnext/sdk/id-generator.js.map +1 -1
  166. package/dist/esnext/sdk/mask.js +1 -1
  167. package/dist/esnext/sdk/mask.js.map +1 -1
  168. package/dist/esnext/sdk/save-continuous-deb-session.d.ts.map +1 -1
  169. package/dist/esnext/sdk/save-continuous-deb-session.js +2 -2
  170. package/dist/esnext/sdk/save-continuous-deb-session.js.map +1 -1
  171. package/dist/esnext/sdk/schemify.d.ts.map +1 -1
  172. package/dist/esnext/sdk/schemify.js +0 -1
  173. package/dist/esnext/sdk/schemify.js.map +1 -1
  174. package/dist/esnext/sdk/set-attribute.js +2 -2
  175. package/dist/esnext/sdk/set-attribute.js.map +1 -1
  176. package/dist/esnext/tsconfig.esnext.tsbuildinfo +1 -1
  177. package/dist/src/SessionRecorderIdGenerator.js +1 -1
  178. package/dist/src/SessionRecorderIdGenerator.js.map +1 -1
  179. package/dist/src/SessionRecorderJsonTraceSerializer.d.ts.map +1 -1
  180. package/dist/src/SessionRecorderJsonTraceSerializer.js +47 -7
  181. package/dist/src/SessionRecorderJsonTraceSerializer.js.map +1 -1
  182. package/dist/src/SessionRecorderTraceIdRatioBasedSampler.d.ts.map +1 -1
  183. package/dist/src/SessionRecorderTraceIdRatioBasedSampler.js +4 -4
  184. package/dist/src/SessionRecorderTraceIdRatioBasedSampler.js.map +1 -1
  185. package/dist/{esnext → src/constants}/constants.base.d.ts +16 -0
  186. package/dist/src/constants/constants.base.d.ts.map +1 -0
  187. package/dist/src/{constants.base.js → constants/constants.base.js} +17 -1
  188. package/dist/src/constants/constants.base.js.map +1 -0
  189. package/dist/src/constants/constants.browser.d.ts.map +1 -0
  190. package/dist/src/constants/constants.browser.js.map +1 -0
  191. package/dist/src/constants/constants.node.d.ts.map +1 -0
  192. package/dist/src/constants/constants.node.js.map +1 -0
  193. package/dist/src/exporters/SessionRecorderBrowserTraceExporter.d.ts +31 -0
  194. package/dist/src/exporters/SessionRecorderBrowserTraceExporter.d.ts.map +1 -0
  195. package/dist/src/exporters/SessionRecorderBrowserTraceExporter.js +163 -0
  196. package/dist/src/exporters/SessionRecorderBrowserTraceExporter.js.map +1 -0
  197. package/dist/src/exporters/SessionRecorderGrpcLogsExporter.d.ts +22 -0
  198. package/dist/src/exporters/SessionRecorderGrpcLogsExporter.d.ts.map +1 -0
  199. package/dist/src/exporters/SessionRecorderGrpcLogsExporter.js +37 -0
  200. package/dist/src/exporters/SessionRecorderGrpcLogsExporter.js.map +1 -0
  201. package/dist/src/exporters/SessionRecorderGrpcTraceExporter.d.ts +22 -0
  202. package/dist/src/exporters/SessionRecorderGrpcTraceExporter.d.ts.map +1 -0
  203. package/dist/src/exporters/SessionRecorderGrpcTraceExporter.js +34 -0
  204. package/dist/src/exporters/SessionRecorderGrpcTraceExporter.js.map +1 -0
  205. package/dist/src/exporters/SessionRecorderHttpLogsExporter.d.ts +20 -0
  206. package/dist/src/exporters/SessionRecorderHttpLogsExporter.d.ts.map +1 -0
  207. package/dist/src/exporters/SessionRecorderHttpLogsExporter.js +36 -0
  208. package/dist/src/exporters/SessionRecorderHttpLogsExporter.js.map +1 -0
  209. package/dist/src/exporters/SessionRecorderHttpTraceExporter.d.ts +25 -0
  210. package/dist/src/exporters/SessionRecorderHttpTraceExporter.d.ts.map +1 -0
  211. package/dist/src/exporters/SessionRecorderHttpTraceExporter.js +42 -0
  212. package/dist/src/exporters/SessionRecorderHttpTraceExporter.js.map +1 -0
  213. package/dist/src/exporters/SessionRecorderLogsExporterWrapper.d.ts +13 -0
  214. package/dist/src/exporters/SessionRecorderLogsExporterWrapper.d.ts.map +1 -0
  215. package/dist/src/exporters/SessionRecorderLogsExporterWrapper.js +27 -0
  216. package/dist/src/exporters/SessionRecorderLogsExporterWrapper.js.map +1 -0
  217. package/dist/src/exporters/SessionRecorderTraceExporterWrapper.d.ts +13 -0
  218. package/dist/src/exporters/SessionRecorderTraceExporterWrapper.d.ts.map +1 -0
  219. package/dist/src/exporters/SessionRecorderTraceExporterWrapper.js +26 -0
  220. package/dist/src/exporters/SessionRecorderTraceExporterWrapper.js.map +1 -0
  221. package/dist/src/exporters/index-browser.d.ts +2 -0
  222. package/dist/src/exporters/index-browser.d.ts.map +1 -0
  223. package/dist/src/exporters/index-browser.js +18 -0
  224. package/dist/src/exporters/index-browser.js.map +1 -0
  225. package/dist/src/exporters/index-node.d.ts +7 -0
  226. package/dist/src/exporters/index-node.d.ts.map +1 -0
  227. package/dist/src/exporters/index-node.js +23 -0
  228. package/dist/src/exporters/index-node.js.map +1 -0
  229. package/dist/src/exporters/index.d.ts +8 -0
  230. package/dist/src/exporters/index.d.ts.map +1 -0
  231. package/dist/src/exporters/index.js +24 -0
  232. package/dist/src/exporters/index.js.map +1 -0
  233. package/dist/src/index-browser.d.ts +2 -2
  234. package/dist/src/index-browser.d.ts.map +1 -1
  235. package/dist/src/index-browser.js +3 -4
  236. package/dist/src/index-browser.js.map +1 -1
  237. package/dist/src/index-node.d.ts +3 -2
  238. package/dist/src/index-node.d.ts.map +1 -1
  239. package/dist/src/index-node.js +3 -2
  240. package/dist/src/index-node.js.map +1 -1
  241. package/dist/src/index.d.ts +3 -4
  242. package/dist/src/index.d.ts.map +1 -1
  243. package/dist/src/index.js +4 -8
  244. package/dist/src/index.js.map +1 -1
  245. package/dist/src/instrumentations/SessionRecorderHttpInstrumentationHooksNode.d.ts.map +1 -0
  246. package/dist/src/{SessionRecorderHttpInstrumentationHooksNode.js → instrumentations/SessionRecorderHttpInstrumentationHooksNode.js} +3 -6
  247. package/dist/src/instrumentations/SessionRecorderHttpInstrumentationHooksNode.js.map +1 -0
  248. package/dist/src/instrumentations/index-node.d.ts +2 -0
  249. package/dist/src/instrumentations/index-node.d.ts.map +1 -0
  250. package/dist/src/instrumentations/index-node.js +18 -0
  251. package/dist/src/instrumentations/index-node.js.map +1 -0
  252. package/dist/src/sdk/capture-exception.js.map +1 -1
  253. package/dist/src/sdk/id-generator.js.map +1 -1
  254. package/dist/src/sdk/mask.js +1 -1
  255. package/dist/src/sdk/mask.js.map +1 -1
  256. package/dist/src/sdk/save-continuous-deb-session.d.ts.map +1 -1
  257. package/dist/src/sdk/save-continuous-deb-session.js +2 -2
  258. package/dist/src/sdk/save-continuous-deb-session.js.map +1 -1
  259. package/dist/src/sdk/schemify.d.ts.map +1 -1
  260. package/dist/src/sdk/schemify.js +0 -1
  261. package/dist/src/sdk/schemify.js.map +1 -1
  262. package/dist/src/sdk/set-attribute.js +1 -1
  263. package/dist/src/sdk/set-attribute.js.map +1 -1
  264. package/package.json +12 -6
  265. package/src/SessionRecorderIdGenerator.ts +2 -2
  266. package/src/SessionRecorderJsonTraceSerializer.ts +48 -8
  267. package/src/SessionRecorderTraceIdRatioBasedSampler.ts +7 -4
  268. package/src/{constants.base.ts → constants/constants.base.ts} +23 -0
  269. package/src/exporters/SessionRecorderBrowserTraceExporter.ts +212 -0
  270. package/src/exporters/SessionRecorderGrpcLogsExporter.ts +52 -0
  271. package/src/exporters/SessionRecorderGrpcTraceExporter.ts +50 -0
  272. package/src/exporters/SessionRecorderHttpLogsExporter.ts +58 -0
  273. package/src/exporters/SessionRecorderHttpTraceExporter.ts +65 -0
  274. package/src/exporters/SessionRecorderLogsExporterWrapper.ts +36 -0
  275. package/src/exporters/SessionRecorderTraceExporterWrapper.ts +36 -0
  276. package/src/exporters/index-browser.ts +1 -0
  277. package/src/exporters/index-node.ts +6 -0
  278. package/src/exporters/index.ts +7 -0
  279. package/src/index-browser.ts +2 -2
  280. package/src/index-node.ts +3 -2
  281. package/src/index.ts +3 -4
  282. package/src/{SessionRecorderHttpInstrumentationHooksNode.ts → instrumentations/SessionRecorderHttpInstrumentationHooksNode.ts} +10 -10
  283. package/src/instrumentations/index-node.ts +1 -0
  284. package/src/sdk/capture-exception.ts +3 -3
  285. package/src/sdk/id-generator.ts +12 -12
  286. package/src/sdk/mask.ts +1 -1
  287. package/src/sdk/save-continuous-deb-session.ts +17 -17
  288. package/src/sdk/schemify.ts +0 -1
  289. package/src/sdk/set-attribute.ts +12 -12
  290. package/dist/esm/SessionRecorderHttpInstrumentationHooksNode.d.ts.map +0 -1
  291. package/dist/esm/SessionRecorderHttpInstrumentationHooksNode.js.map +0 -1
  292. package/dist/esm/SessionRecorderHttpTraceExporterBrowser.d.ts +0 -26
  293. package/dist/esm/SessionRecorderHttpTraceExporterBrowser.d.ts.map +0 -1
  294. package/dist/esm/SessionRecorderHttpTraceExporterBrowser.js +0 -116
  295. package/dist/esm/SessionRecorderHttpTraceExporterBrowser.js.map +0 -1
  296. package/dist/esm/constants.base.d.ts.map +0 -1
  297. package/dist/esm/constants.base.js.map +0 -1
  298. package/dist/esm/constants.browser.d.ts.map +0 -1
  299. package/dist/esm/constants.browser.js.map +0 -1
  300. package/dist/esm/constants.node.d.ts.map +0 -1
  301. package/dist/esm/constants.node.js.map +0 -1
  302. package/dist/esnext/SessionRecorderHttpInstrumentationHooksNode.d.ts.map +0 -1
  303. package/dist/esnext/SessionRecorderHttpInstrumentationHooksNode.js.map +0 -1
  304. package/dist/esnext/SessionRecorderHttpTraceExporterBrowser.d.ts +0 -26
  305. package/dist/esnext/SessionRecorderHttpTraceExporterBrowser.d.ts.map +0 -1
  306. package/dist/esnext/SessionRecorderHttpTraceExporterBrowser.js +0 -82
  307. package/dist/esnext/SessionRecorderHttpTraceExporterBrowser.js.map +0 -1
  308. package/dist/esnext/constants.base.d.ts.map +0 -1
  309. package/dist/esnext/constants.base.js.map +0 -1
  310. package/dist/esnext/constants.browser.d.ts.map +0 -1
  311. package/dist/esnext/constants.browser.js.map +0 -1
  312. package/dist/esnext/constants.node.d.ts.map +0 -1
  313. package/dist/esnext/constants.node.js.map +0 -1
  314. package/dist/src/SessionRecorderHttpInstrumentationHooksNode.d.ts.map +0 -1
  315. package/dist/src/SessionRecorderHttpInstrumentationHooksNode.js.map +0 -1
  316. package/dist/src/SessionRecorderHttpTraceExporterBrowser.d.ts +0 -26
  317. package/dist/src/SessionRecorderHttpTraceExporterBrowser.d.ts.map +0 -1
  318. package/dist/src/SessionRecorderHttpTraceExporterBrowser.js +0 -86
  319. package/dist/src/SessionRecorderHttpTraceExporterBrowser.js.map +0 -1
  320. package/dist/src/constants.base.d.ts.map +0 -1
  321. package/dist/src/constants.base.js.map +0 -1
  322. package/dist/src/constants.browser.d.ts.map +0 -1
  323. package/dist/src/constants.browser.js.map +0 -1
  324. package/dist/src/constants.node.d.ts.map +0 -1
  325. package/dist/src/constants.node.js.map +0 -1
  326. package/src/SessionRecorderHttpTraceExporterBrowser.ts +0 -123
  327. /package/dist/esm/{constants.browser.d.ts → constants/constants.browser.d.ts} +0 -0
  328. /package/dist/esm/{constants.browser.js → constants/constants.browser.js} +0 -0
  329. /package/dist/esm/{constants.node.d.ts → constants/constants.node.d.ts} +0 -0
  330. /package/dist/esm/{constants.node.js → constants/constants.node.js} +0 -0
  331. /package/dist/esm/{SessionRecorderHttpInstrumentationHooksNode.d.ts → instrumentations/SessionRecorderHttpInstrumentationHooksNode.d.ts} +0 -0
  332. /package/dist/esnext/{constants.browser.d.ts → constants/constants.browser.d.ts} +0 -0
  333. /package/dist/esnext/{constants.browser.js → constants/constants.browser.js} +0 -0
  334. /package/dist/esnext/{constants.node.d.ts → constants/constants.node.d.ts} +0 -0
  335. /package/dist/esnext/{constants.node.js → constants/constants.node.js} +0 -0
  336. /package/dist/esnext/{SessionRecorderHttpInstrumentationHooksNode.d.ts → instrumentations/SessionRecorderHttpInstrumentationHooksNode.d.ts} +0 -0
  337. /package/dist/src/{constants.browser.d.ts → constants/constants.browser.d.ts} +0 -0
  338. /package/dist/src/{constants.browser.js → constants/constants.browser.js} +0 -0
  339. /package/dist/src/{constants.node.d.ts → constants/constants.node.d.ts} +0 -0
  340. /package/dist/src/{constants.node.js → constants/constants.node.js} +0 -0
  341. /package/dist/src/{SessionRecorderHttpInstrumentationHooksNode.d.ts → instrumentations/SessionRecorderHttpInstrumentationHooksNode.d.ts} +0 -0
  342. /package/src/{constants.browser.ts → constants/constants.browser.ts} +0 -0
  343. /package/src/{constants.node.ts → constants/constants.node.ts} +0 -0
@@ -0,0 +1,30 @@
1
+ import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-proto';
2
+ import { MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_GRPC_URL, MULTIPLAYER_TRACE_DEBUG_PREFIX, MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX, } from '../constants/constants.base';
3
+ /**
4
+ * gRPC trace exporter for Session Recorder
5
+ * Exports traces via gRPC to Multiplayer's OTLP endpoint
6
+ * Only exports spans with trace IDs starting with Multiplayer prefixes
7
+ * Note: API key authentication may need to be handled at the gRPC client level
8
+ */
9
+ export class SessionRecorderGrpcTraceExporter extends OTLPTraceExporter {
10
+ constructor(config) {
11
+ const { url = MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_GRPC_URL, timeoutMillis = 30000, } = config;
12
+ super({
13
+ url,
14
+ timeoutMillis,
15
+ });
16
+ }
17
+ export(spans, resultCallback) {
18
+ const filteredSpans = spans.filter(span => {
19
+ const traceId = span.spanContext().traceId;
20
+ return traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) ||
21
+ traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX);
22
+ });
23
+ if (filteredSpans.length === 0) {
24
+ resultCallback({ code: 0 });
25
+ return;
26
+ }
27
+ super.export(filteredSpans, resultCallback);
28
+ }
29
+ }
30
+ //# sourceMappingURL=SessionRecorderGrpcTraceExporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderGrpcTraceExporter.js","sourceRoot":"","sources":["../../../src/exporters/SessionRecorderGrpcTraceExporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAC5E,OAAO,EACL,iDAAiD,EACjD,8BAA8B,EAC9B,yCAAyC,GAC1C,MAAM,6BAA6B,CAAA;AAWpC;;;;;GAKG;AACH,MAAM,OAAO,gCAAiC,SAAQ,iBAAiB;IACrE,YAAY,MAA8C;QACxD,MAAM,EACJ,GAAG,GAAG,iDAAiD,EACvD,aAAa,GAAG,KAAK,GACtB,GAAG,MAAM,CAAA;QAEV,KAAK,CAAC;YACJ,GAAG;YACH,aAAa;SACd,CAAC,CAAA;IACJ,CAAC;IAEQ,MAAM,CAAC,KAAY,EAAE,cAAkD;QAC9E,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAA;YAC1C,OAAO,OAAO,CAAC,UAAU,CAAC,8BAA8B,CAAC;gBACvD,OAAO,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAA;QACjE,CAAC,CAAC,CAAA;QAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;YAC3B,OAAM;QACR,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;IAC7C,CAAC;CACF","sourcesContent":["import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-proto'\nimport {\n MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_GRPC_URL,\n MULTIPLAYER_TRACE_DEBUG_PREFIX,\n MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX,\n} from '../constants/constants.base'\n\nexport interface SessionRecorderGrpcTraceExporterConfig {\n /** The URL to send traces to. Defaults to MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_GRPC_URL */\n url?: string\n /** API key for authentication. Required. */\n apiKey: string\n /** Timeout for gRPC requests in milliseconds. Defaults to 30000 */\n timeoutMillis?: number\n}\n\n/**\n * gRPC trace exporter for Session Recorder\n * Exports traces via gRPC to Multiplayer's OTLP endpoint\n * Only exports spans with trace IDs starting with Multiplayer prefixes\n * Note: API key authentication may need to be handled at the gRPC client level\n */\nexport class SessionRecorderGrpcTraceExporter extends OTLPTraceExporter {\n constructor(config: SessionRecorderGrpcTraceExporterConfig) {\n const {\n url = MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_GRPC_URL,\n timeoutMillis = 30000,\n } = config\n\n super({\n url,\n timeoutMillis,\n })\n }\n\n override export(spans: any[], resultCallback: (result: { code: number }) => void): void {\n const filteredSpans = spans.filter(span => {\n const traceId = span.spanContext().traceId\n return traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) ||\n traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)\n })\n\n if (filteredSpans.length === 0) {\n resultCallback({ code: 0 })\n return\n }\n\n super.export(filteredSpans, resultCallback)\n }\n}\n"]}
@@ -0,0 +1,20 @@
1
+ import { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http';
2
+ export interface SessionRecorderHttpLogsExporterConfig {
3
+ /** The URL to send logs to. Defaults to MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_HTTP_URL */
4
+ url?: string;
5
+ /** API key for authentication. Required. */
6
+ apiKey: string;
7
+ /** Timeout for HTTP requests in milliseconds. Defaults to 30000 */
8
+ timeoutMillis?: number;
9
+ /** Whether to keep the connection alive. Defaults to true */
10
+ keepAlive?: boolean;
11
+ /** Maximum number of concurrent requests. Defaults to 20 */
12
+ concurrencyLimit?: number;
13
+ }
14
+ export declare class SessionRecorderHttpLogsExporter extends OTLPLogExporter {
15
+ constructor(config: SessionRecorderHttpLogsExporterConfig);
16
+ export(logs: any[], resultCallback: (result: {
17
+ code: number;
18
+ }) => void): void;
19
+ }
20
+ //# sourceMappingURL=SessionRecorderHttpLogsExporter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderHttpLogsExporter.d.ts","sourceRoot":"","sources":["../../../src/exporters/SessionRecorderHttpLogsExporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAOxE,MAAM,WAAW,qCAAqC;IACpD,2FAA2F;IAC3F,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAA;IACd,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,4DAA4D;IAC5D,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,qBAAa,+BAAgC,SAAQ,eAAe;gBACtD,MAAM,EAAE,qCAAqC;IAsBhD,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI;CAcvF"}
@@ -0,0 +1,32 @@
1
+ import { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http';
2
+ import { MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_HTTP_URL, MULTIPLAYER_TRACE_DEBUG_PREFIX, MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX, } from '../constants/constants.base';
3
+ export class SessionRecorderHttpLogsExporter extends OTLPLogExporter {
4
+ constructor(config) {
5
+ const { url = MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_HTTP_URL, apiKey, timeoutMillis = 30000, keepAlive = true, concurrencyLimit = 20, } = config;
6
+ super({
7
+ url,
8
+ headers: {
9
+ 'Content-Type': 'application/x-protobuf',
10
+ 'User-Agent': '@multiplayer-app/session-recorder-common/1.0.0',
11
+ 'authorization': apiKey,
12
+ },
13
+ timeoutMillis,
14
+ keepAlive,
15
+ concurrencyLimit,
16
+ });
17
+ }
18
+ export(logs, resultCallback) {
19
+ const filteredLogs = logs.filter(log => {
20
+ var _a;
21
+ const traceId = ((_a = log.spanContext) === null || _a === void 0 ? void 0 : _a.traceId) || log.traceId;
22
+ return traceId && (traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) ||
23
+ traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX));
24
+ });
25
+ if (filteredLogs.length === 0) {
26
+ resultCallback({ code: 0 });
27
+ return;
28
+ }
29
+ super.export(filteredLogs, resultCallback);
30
+ }
31
+ }
32
+ //# sourceMappingURL=SessionRecorderHttpLogsExporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderHttpLogsExporter.js","sourceRoot":"","sources":["../../../src/exporters/SessionRecorderHttpLogsExporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AACxE,OAAO,EACL,+CAA+C,EAC/C,8BAA8B,EAC9B,yCAAyC,GAC1C,MAAM,6BAA6B,CAAA;AAepC,MAAM,OAAO,+BAAgC,SAAQ,eAAe;IAClE,YAAY,MAA6C;QACvD,MAAM,EACJ,GAAG,GAAG,+CAA+C,EACrD,MAAM,EACN,aAAa,GAAG,KAAK,EACrB,SAAS,GAAG,IAAI,EAChB,gBAAgB,GAAG,EAAE,GACtB,GAAG,MAAM,CAAA;QAEV,KAAK,CAAC;YACJ,GAAG;YACH,OAAO,EAAE;gBACP,cAAc,EAAE,wBAAwB;gBACxC,YAAY,EAAE,gDAAgD;gBAC9D,eAAe,EAAE,MAAM;aACxB;YACD,aAAa;YACb,SAAS;YACT,gBAAgB;SACjB,CAAC,CAAA;IACJ,CAAC;IAEQ,MAAM,CAAC,IAAW,EAAE,cAAkD;QAC7E,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;;YACrC,MAAM,OAAO,GAAG,CAAA,MAAA,GAAG,CAAC,WAAW,0CAAE,OAAO,KAAI,GAAG,CAAC,OAAO,CAAA;YACvD,OAAO,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,8BAA8B,CAAC;gBACnE,OAAO,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC,CAAA;QAClE,CAAC,CAAC,CAAA;QAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;YAC3B,OAAM;QACR,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC,CAAA;IAC5C,CAAC;CACF","sourcesContent":["import { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http'\nimport {\n MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_HTTP_URL,\n MULTIPLAYER_TRACE_DEBUG_PREFIX,\n MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX,\n} from '../constants/constants.base'\n\nexport interface SessionRecorderHttpLogsExporterConfig {\n /** The URL to send logs to. Defaults to MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_HTTP_URL */\n url?: string\n /** API key for authentication. Required. */\n apiKey: string\n /** Timeout for HTTP requests in milliseconds. Defaults to 30000 */\n timeoutMillis?: number\n /** Whether to keep the connection alive. Defaults to true */\n keepAlive?: boolean\n /** Maximum number of concurrent requests. Defaults to 20 */\n concurrencyLimit?: number\n}\n\nexport class SessionRecorderHttpLogsExporter extends OTLPLogExporter {\n constructor(config: SessionRecorderHttpLogsExporterConfig) {\n const {\n url = MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_HTTP_URL,\n apiKey,\n timeoutMillis = 30000,\n keepAlive = true,\n concurrencyLimit = 20,\n } = config\n\n super({\n url,\n headers: {\n 'Content-Type': 'application/x-protobuf',\n 'User-Agent': '@multiplayer-app/session-recorder-common/1.0.0',\n 'authorization': apiKey,\n },\n timeoutMillis,\n keepAlive,\n concurrencyLimit,\n })\n }\n\n override export(logs: any[], resultCallback: (result: { code: number }) => void): void {\n const filteredLogs = logs.filter(log => {\n const traceId = log.spanContext?.traceId || log.traceId\n return traceId && (traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) ||\n traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX))\n })\n\n if (filteredLogs.length === 0) {\n resultCallback({ code: 0 })\n return\n }\n\n super.export(filteredLogs, resultCallback)\n }\n}\n"]}
@@ -0,0 +1,25 @@
1
+ import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
2
+ export interface SessionRecorderHttpTraceExporterConfig {
3
+ /** The URL to send traces to. Defaults to MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL */
4
+ url?: string;
5
+ /** API key for authentication. Required. */
6
+ apiKey: string;
7
+ /** Timeout for HTTP requests in milliseconds. Defaults to 30000 */
8
+ timeoutMillis?: number;
9
+ /** Whether to keep the connection alive. Defaults to true */
10
+ keepAlive?: boolean;
11
+ /** Maximum number of concurrent requests. Defaults to 20 */
12
+ concurrencyLimit?: number;
13
+ }
14
+ /**
15
+ * HTTP trace exporter for Session Recorder
16
+ * Exports traces via HTTP to Multiplayer's OTLP endpoint
17
+ * Only exports spans with trace IDs starting with Multiplayer prefixes
18
+ */
19
+ export declare class SessionRecorderHttpTraceExporter extends OTLPTraceExporter {
20
+ constructor(config: SessionRecorderHttpTraceExporterConfig);
21
+ export(spans: any[], resultCallback: (result: {
22
+ code: number;
23
+ }) => void): void;
24
+ }
25
+ //# sourceMappingURL=SessionRecorderHttpTraceExporter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderHttpTraceExporter.d.ts","sourceRoot":"","sources":["../../../src/exporters/SessionRecorderHttpTraceExporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AAO3E,MAAM,WAAW,sCAAsC;IACrD,+FAA+F;IAC/F,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAA;IACd,mEAAmE;IACnE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,4DAA4D;IAC5D,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED;;;;GAIG;AACH,qBAAa,gCAAiC,SAAQ,iBAAiB;gBACzD,MAAM,EAAE,sCAAsC;IAsBjD,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI;CAgBxF"}
@@ -0,0 +1,38 @@
1
+ import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
2
+ import { MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL, MULTIPLAYER_TRACE_DEBUG_PREFIX, MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX, } from '../constants/constants.base';
3
+ /**
4
+ * HTTP trace exporter for Session Recorder
5
+ * Exports traces via HTTP to Multiplayer's OTLP endpoint
6
+ * Only exports spans with trace IDs starting with Multiplayer prefixes
7
+ */
8
+ export class SessionRecorderHttpTraceExporter extends OTLPTraceExporter {
9
+ constructor(config) {
10
+ const { url = MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL, apiKey, timeoutMillis = 30000, keepAlive = true, concurrencyLimit = 20, } = config;
11
+ super({
12
+ url,
13
+ headers: {
14
+ 'Content-Type': 'application/x-protobuf',
15
+ 'User-Agent': '@multiplayer-app/session-recorder-common/1.0.0',
16
+ 'authorization': apiKey,
17
+ },
18
+ timeoutMillis,
19
+ keepAlive,
20
+ concurrencyLimit,
21
+ });
22
+ }
23
+ export(spans, resultCallback) {
24
+ // Filter spans to only include those with Multiplayer trace prefixes
25
+ const filteredSpans = spans.filter(span => {
26
+ const traceId = span.spanContext().traceId;
27
+ return traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) ||
28
+ traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX);
29
+ });
30
+ // Only proceed if there are filtered spans
31
+ if (filteredSpans.length === 0) {
32
+ resultCallback({ code: 0 });
33
+ return;
34
+ }
35
+ super.export(filteredSpans, resultCallback);
36
+ }
37
+ }
38
+ //# sourceMappingURL=SessionRecorderHttpTraceExporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderHttpTraceExporter.js","sourceRoot":"","sources":["../../../src/exporters/SessionRecorderHttpTraceExporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAA;AAC3E,OAAO,EACL,iDAAiD,EACjD,8BAA8B,EAC9B,yCAAyC,GAC1C,MAAM,6BAA6B,CAAA;AAepC;;;;GAIG;AACH,MAAM,OAAO,gCAAiC,SAAQ,iBAAiB;IACrE,YAAY,MAA8C;QACxD,MAAM,EACJ,GAAG,GAAG,iDAAiD,EACvD,MAAM,EACN,aAAa,GAAG,KAAK,EACrB,SAAS,GAAG,IAAI,EAChB,gBAAgB,GAAG,EAAE,GACtB,GAAG,MAAM,CAAA;QAEV,KAAK,CAAC;YACJ,GAAG;YACH,OAAO,EAAE;gBACP,cAAc,EAAE,wBAAwB;gBACxC,YAAY,EAAE,gDAAgD;gBAC9D,eAAe,EAAE,MAAM;aACxB;YACD,aAAa;YACb,SAAS;YACT,gBAAgB;SACjB,CAAC,CAAA;IACJ,CAAC;IAEQ,MAAM,CAAC,KAAY,EAAE,cAAkD;QAC9E,qEAAqE;QACrE,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAA;YAC1C,OAAO,OAAO,CAAC,UAAU,CAAC,8BAA8B,CAAC;gBACvD,OAAO,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAA;QACjE,CAAC,CAAC,CAAA;QAEF,2CAA2C;QAC3C,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;YAC3B,OAAM;QACR,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;IAC7C,CAAC;CACF","sourcesContent":["import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http'\nimport {\n MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL,\n MULTIPLAYER_TRACE_DEBUG_PREFIX,\n MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX,\n} from '../constants/constants.base'\n\nexport interface SessionRecorderHttpTraceExporterConfig {\n /** The URL to send traces to. Defaults to MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL */\n url?: string\n /** API key for authentication. Required. */\n apiKey: string\n /** Timeout for HTTP requests in milliseconds. Defaults to 30000 */\n timeoutMillis?: number\n /** Whether to keep the connection alive. Defaults to true */\n keepAlive?: boolean\n /** Maximum number of concurrent requests. Defaults to 20 */\n concurrencyLimit?: number\n}\n\n/**\n * HTTP trace exporter for Session Recorder\n * Exports traces via HTTP to Multiplayer's OTLP endpoint\n * Only exports spans with trace IDs starting with Multiplayer prefixes\n */\nexport class SessionRecorderHttpTraceExporter extends OTLPTraceExporter {\n constructor(config: SessionRecorderHttpTraceExporterConfig) {\n const {\n url = MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL,\n apiKey,\n timeoutMillis = 30000,\n keepAlive = true,\n concurrencyLimit = 20,\n } = config\n\n super({\n url,\n headers: {\n 'Content-Type': 'application/x-protobuf',\n 'User-Agent': '@multiplayer-app/session-recorder-common/1.0.0',\n 'authorization': apiKey,\n },\n timeoutMillis,\n keepAlive,\n concurrencyLimit,\n })\n }\n\n override export(spans: any[], resultCallback: (result: { code: number }) => void): void {\n // Filter spans to only include those with Multiplayer trace prefixes\n const filteredSpans = spans.filter(span => {\n const traceId = span.spanContext().traceId\n return traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) ||\n traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)\n })\n\n // Only proceed if there are filtered spans\n if (filteredSpans.length === 0) {\n resultCallback({ code: 0 })\n return\n }\n\n super.export(filteredSpans, resultCallback)\n }\n}\n"]}
@@ -0,0 +1,13 @@
1
+ import { SdkLogRecord, LogRecordExporter } from '@opentelemetry/sdk-logs';
2
+ export interface SessionRecorderLogsExporterWrapperConfig {
3
+ exporter: LogRecordExporter;
4
+ }
5
+ export declare class SessionRecorderLogsExporterWrapper implements LogRecordExporter {
6
+ private readonly exporter;
7
+ constructor(config: SessionRecorderLogsExporterWrapperConfig);
8
+ export(logs: SdkLogRecord[], resultCallback: (result: {
9
+ code: number;
10
+ }) => void): void;
11
+ shutdown(): Promise<void>;
12
+ }
13
+ //# sourceMappingURL=SessionRecorderLogsExporterWrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderLogsExporterWrapper.d.ts","sourceRoot":"","sources":["../../../src/exporters/SessionRecorderLogsExporterWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAMzE,MAAM,WAAW,wCAAwC;IACvD,QAAQ,EAAE,iBAAiB,CAAA;CAC5B;AAED,qBAAa,kCAAmC,YAAW,iBAAiB;IAC1E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;gBAEhC,MAAM,EAAE,wCAAwC;IAI5D,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI;IAetF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAG1B"}
@@ -0,0 +1,23 @@
1
+ import { MULTIPLAYER_TRACE_DEBUG_PREFIX, MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX, } from '../constants/constants.base';
2
+ export class SessionRecorderLogsExporterWrapper {
3
+ constructor(config) {
4
+ this.exporter = config.exporter;
5
+ }
6
+ export(logs, resultCallback) {
7
+ const filteredLogs = logs.filter(log => {
8
+ var _a;
9
+ const traceId = (_a = log.spanContext) === null || _a === void 0 ? void 0 : _a.traceId;
10
+ return !traceId || (!traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) &&
11
+ !traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX));
12
+ });
13
+ if (filteredLogs.length === 0) {
14
+ resultCallback({ code: 0 });
15
+ return;
16
+ }
17
+ this.exporter.export(filteredLogs, resultCallback);
18
+ }
19
+ shutdown() {
20
+ return this.exporter.shutdown();
21
+ }
22
+ }
23
+ //# sourceMappingURL=SessionRecorderLogsExporterWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderLogsExporterWrapper.js","sourceRoot":"","sources":["../../../src/exporters/SessionRecorderLogsExporterWrapper.ts"],"names":[],"mappings":"AACA,OAAO,EACL,8BAA8B,EAC9B,yCAAyC,GAC1C,MAAM,6BAA6B,CAAA;AAMpC,MAAM,OAAO,kCAAkC;IAG7C,YAAY,MAAgD;QAC1D,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;IACjC,CAAC;IAED,MAAM,CAAC,IAAoB,EAAE,cAAkD;QAC7E,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;;YACrC,MAAM,OAAO,GAAG,MAAA,GAAG,CAAC,WAAW,0CAAE,OAAO,CAAA;YACxC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,8BAA8B,CAAC;gBACrE,CAAC,OAAO,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC,CAAA;QACnE,CAAC,CAAC,CAAA;QAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;YAC3B,OAAM;QACR,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC,CAAA;IACpD,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAA;IACjC,CAAC;CACF","sourcesContent":["import { SdkLogRecord, LogRecordExporter } from '@opentelemetry/sdk-logs'\nimport {\n MULTIPLAYER_TRACE_DEBUG_PREFIX,\n MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX,\n} from '../constants/constants.base'\n\nexport interface SessionRecorderLogsExporterWrapperConfig {\n exporter: LogRecordExporter\n}\n\nexport class SessionRecorderLogsExporterWrapper implements LogRecordExporter {\n private readonly exporter: LogRecordExporter\n\n constructor(config: SessionRecorderLogsExporterWrapperConfig) {\n this.exporter = config.exporter\n }\n\n export(logs: SdkLogRecord[], resultCallback: (result: { code: number }) => void): void {\n const filteredLogs = logs.filter(log => {\n const traceId = log.spanContext?.traceId\n return !traceId || (!traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) &&\n !traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX))\n })\n\n if (filteredLogs.length === 0) {\n resultCallback({ code: 0 })\n return\n }\n\n this.exporter.export(filteredLogs, resultCallback)\n }\n\n shutdown(): Promise<void> {\n return this.exporter.shutdown()\n }\n}\n"]}
@@ -0,0 +1,13 @@
1
+ import { ReadableSpan, SpanExporter } from '@opentelemetry/sdk-trace-base';
2
+ export interface SessionRecorderTraceExporterWrapperConfig {
3
+ exporter: SpanExporter;
4
+ }
5
+ export declare class SessionRecorderTraceExporterWrapper implements SpanExporter {
6
+ private readonly exporter;
7
+ constructor(config: SessionRecorderTraceExporterWrapperConfig);
8
+ export(spans: ReadableSpan[], resultCallback: (result: {
9
+ code: number;
10
+ }) => void): void;
11
+ shutdown(): Promise<void>;
12
+ }
13
+ //# sourceMappingURL=SessionRecorderTraceExporterWrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderTraceExporterWrapper.d.ts","sourceRoot":"","sources":["../../../src/exporters/SessionRecorderTraceExporterWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAM1E,MAAM,WAAW,yCAAyC;IACxD,QAAQ,EAAE,YAAY,CAAA;CACvB;AAED,qBAAa,mCAAoC,YAAW,YAAY;IACtE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;gBAE3B,MAAM,EAAE,yCAAyC;IAI7D,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI;IAevF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAG1B"}
@@ -0,0 +1,22 @@
1
+ import { MULTIPLAYER_TRACE_DEBUG_PREFIX, MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX, } from '../constants/constants.base';
2
+ export class SessionRecorderTraceExporterWrapper {
3
+ constructor(config) {
4
+ this.exporter = config.exporter;
5
+ }
6
+ export(spans, resultCallback) {
7
+ const filteredSpans = spans.filter(span => {
8
+ const traceId = span.spanContext().traceId;
9
+ return !traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) &&
10
+ !traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX);
11
+ });
12
+ if (filteredSpans.length === 0) {
13
+ resultCallback({ code: 0 });
14
+ return;
15
+ }
16
+ this.exporter.export(filteredSpans, resultCallback);
17
+ }
18
+ shutdown() {
19
+ return this.exporter.shutdown();
20
+ }
21
+ }
22
+ //# sourceMappingURL=SessionRecorderTraceExporterWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderTraceExporterWrapper.js","sourceRoot":"","sources":["../../../src/exporters/SessionRecorderTraceExporterWrapper.ts"],"names":[],"mappings":"AACA,OAAO,EACL,8BAA8B,EAC9B,yCAAyC,GAC1C,MAAM,6BAA6B,CAAA;AAMpC,MAAM,OAAO,mCAAmC;IAG9C,YAAY,MAAiD;QAC3D,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;IACjC,CAAC;IAED,MAAM,CAAC,KAAqB,EAAE,cAAkD;QAC9E,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAA;YAC1C,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,8BAA8B,CAAC;gBACxD,CAAC,OAAO,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAA;QAClE,CAAC,CAAC,CAAA;QAEF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;YAC3B,OAAM;QACR,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;IACrD,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAA;IACjC,CAAC;CACF","sourcesContent":["import { ReadableSpan, SpanExporter } from '@opentelemetry/sdk-trace-base'\nimport {\n MULTIPLAYER_TRACE_DEBUG_PREFIX,\n MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX,\n} from '../constants/constants.base'\n\nexport interface SessionRecorderTraceExporterWrapperConfig {\n exporter: SpanExporter\n}\n\nexport class SessionRecorderTraceExporterWrapper implements SpanExporter {\n private readonly exporter: SpanExporter\n\n constructor(config: SessionRecorderTraceExporterWrapperConfig) {\n this.exporter = config.exporter\n }\n\n export(spans: ReadableSpan[], resultCallback: (result: { code: number }) => void): void {\n const filteredSpans = spans.filter(span => {\n const traceId = span.spanContext().traceId\n return !traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX) &&\n !traceId.startsWith(MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)\n })\n\n if (filteredSpans.length === 0) {\n resultCallback({ code: 0 })\n return\n }\n\n this.exporter.export(filteredSpans, resultCallback)\n }\n\n shutdown(): Promise<void> {\n return this.exporter.shutdown()\n }\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export * from './SessionRecorderBrowserTraceExporter';
2
+ //# sourceMappingURL=index-browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-browser.d.ts","sourceRoot":"","sources":["../../../src/exporters/index-browser.ts"],"names":[],"mappings":"AAAA,cAAc,uCAAuC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './SessionRecorderBrowserTraceExporter';
2
+ //# sourceMappingURL=index-browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-browser.js","sourceRoot":"","sources":["../../../src/exporters/index-browser.ts"],"names":[],"mappings":"AAAA,cAAc,uCAAuC,CAAA","sourcesContent":["export * from './SessionRecorderBrowserTraceExporter'\n"]}
@@ -0,0 +1,7 @@
1
+ export * from './SessionRecorderHttpTraceExporter';
2
+ export * from './SessionRecorderHttpLogsExporter';
3
+ export * from './SessionRecorderGrpcTraceExporter';
4
+ export * from './SessionRecorderGrpcLogsExporter';
5
+ export * from './SessionRecorderTraceExporterWrapper';
6
+ export * from './SessionRecorderLogsExporterWrapper';
7
+ //# sourceMappingURL=index-node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-node.d.ts","sourceRoot":"","sources":["../../../src/exporters/index-node.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA"}
@@ -0,0 +1,7 @@
1
+ export * from './SessionRecorderHttpTraceExporter';
2
+ export * from './SessionRecorderHttpLogsExporter';
3
+ export * from './SessionRecorderGrpcTraceExporter';
4
+ export * from './SessionRecorderGrpcLogsExporter';
5
+ export * from './SessionRecorderTraceExporterWrapper';
6
+ export * from './SessionRecorderLogsExporterWrapper';
7
+ //# sourceMappingURL=index-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-node.js","sourceRoot":"","sources":["../../../src/exporters/index-node.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA","sourcesContent":["export * from './SessionRecorderHttpTraceExporter'\nexport * from './SessionRecorderHttpLogsExporter'\nexport * from './SessionRecorderGrpcTraceExporter'\nexport * from './SessionRecorderGrpcLogsExporter'\nexport * from './SessionRecorderTraceExporterWrapper'\nexport * from './SessionRecorderLogsExporterWrapper'\n"]}
@@ -0,0 +1,8 @@
1
+ export * from './SessionRecorderHttpTraceExporter';
2
+ export * from './SessionRecorderHttpLogsExporter';
3
+ export * from './SessionRecorderGrpcTraceExporter';
4
+ export * from './SessionRecorderGrpcLogsExporter';
5
+ export * from './SessionRecorderBrowserTraceExporter';
6
+ export * from './SessionRecorderTraceExporterWrapper';
7
+ export * from './SessionRecorderLogsExporterWrapper';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exporters/index.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,uCAAuC,CAAA;AACrD,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA"}
@@ -0,0 +1,8 @@
1
+ export * from './SessionRecorderHttpTraceExporter';
2
+ export * from './SessionRecorderHttpLogsExporter';
3
+ export * from './SessionRecorderGrpcTraceExporter';
4
+ export * from './SessionRecorderGrpcLogsExporter';
5
+ export * from './SessionRecorderBrowserTraceExporter';
6
+ export * from './SessionRecorderTraceExporterWrapper';
7
+ export * from './SessionRecorderLogsExporterWrapper';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/exporters/index.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,uCAAuC,CAAA;AACrD,cAAc,uCAAuC,CAAA;AACrD,cAAc,sCAAsC,CAAA","sourcesContent":["export * from './SessionRecorderHttpTraceExporter'\nexport * from './SessionRecorderHttpLogsExporter'\nexport * from './SessionRecorderGrpcTraceExporter'\nexport * from './SessionRecorderGrpcLogsExporter'\nexport * from './SessionRecorderBrowserTraceExporter'\nexport * from './SessionRecorderTraceExporterWrapper'\nexport * from './SessionRecorderLogsExporterWrapper'\n"]}
@@ -1,8 +1,8 @@
1
- export * from './constants.browser';
2
- export { SessionRecorderHttpTraceExporterBrowser } from './SessionRecorderHttpTraceExporterBrowser';
1
+ export * from './constants/constants.browser';
3
2
  export { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator';
4
3
  export { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer';
5
4
  export { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler';
6
5
  export * as SessionRecorderSdk from './sdk';
7
6
  export * from './type';
7
+ export * from './exporters/index-browser';
8
8
  //# sourceMappingURL=index-browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-browser.d.ts","sourceRoot":"","sources":["../../src/index-browser.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA"}
1
+ {"version":3,"file":"index-browser.d.ts","sourceRoot":"","sources":["../../src/index-browser.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAA;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA;AACtB,cAAc,2BAA2B,CAAA"}
@@ -1,8 +1,8 @@
1
- export * from './constants.browser';
2
- export { SessionRecorderHttpTraceExporterBrowser } from './SessionRecorderHttpTraceExporterBrowser';
1
+ export * from './constants/constants.browser';
3
2
  export { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator';
4
3
  export { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer';
5
4
  export { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler';
6
5
  export * as SessionRecorderSdk from './sdk';
7
6
  export * from './type';
7
+ export * from './exporters/index-browser';
8
8
  //# sourceMappingURL=index-browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-browser.js","sourceRoot":"","sources":["../../src/index-browser.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA","sourcesContent":["export * from './constants.browser'\nexport { SessionRecorderHttpTraceExporterBrowser } from './SessionRecorderHttpTraceExporterBrowser'\nexport { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator'\nexport { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer'\nexport { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler'\nexport * as SessionRecorderSdk from './sdk'\nexport * from './type'\n"]}
1
+ {"version":3,"file":"index-browser.js","sourceRoot":"","sources":["../../src/index-browser.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAA;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA;AACtB,cAAc,2BAA2B,CAAA","sourcesContent":["export * from './constants/constants.browser'\nexport { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator'\nexport { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer'\nexport { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler'\nexport * as SessionRecorderSdk from './sdk'\nexport * from './type'\nexport * from './exporters/index-browser'\n"]}
@@ -1,8 +1,9 @@
1
- export * from './constants.node';
2
- export { SessionRecorderHttpInstrumentationHooksNode } from './SessionRecorderHttpInstrumentationHooksNode';
1
+ export * from './constants/constants.node';
2
+ export { SessionRecorderHttpInstrumentationHooksNode } from './instrumentations/SessionRecorderHttpInstrumentationHooksNode';
3
3
  export { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator';
4
4
  export { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer';
5
5
  export { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler';
6
6
  export * as SessionRecorderSdk from './sdk';
7
7
  export * from './type';
8
+ export * from './exporters/index-node';
8
9
  //# sourceMappingURL=index-node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-node.d.ts","sourceRoot":"","sources":["../../src/index-node.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,2CAA2C,EAAE,MAAM,+CAA+C,CAAA;AAC3G,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA"}
1
+ {"version":3,"file":"index-node.d.ts","sourceRoot":"","sources":["../../src/index-node.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,OAAO,EAAE,2CAA2C,EAAE,MAAM,gEAAgE,CAAA;AAC5H,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA;AACtB,cAAc,wBAAwB,CAAA"}
@@ -1,8 +1,9 @@
1
- export * from './constants.node';
2
- export { SessionRecorderHttpInstrumentationHooksNode } from './SessionRecorderHttpInstrumentationHooksNode';
1
+ export * from './constants/constants.node';
2
+ export { SessionRecorderHttpInstrumentationHooksNode } from './instrumentations/SessionRecorderHttpInstrumentationHooksNode';
3
3
  export { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator';
4
4
  export { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer';
5
5
  export { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler';
6
6
  export * as SessionRecorderSdk from './sdk';
7
7
  export * from './type';
8
+ export * from './exporters/index-node';
8
9
  //# sourceMappingURL=index-node.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-node.js","sourceRoot":"","sources":["../../src/index-node.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,2CAA2C,EAAE,MAAM,+CAA+C,CAAA;AAC3G,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA","sourcesContent":["export * from './constants.node'\nexport { SessionRecorderHttpInstrumentationHooksNode } from './SessionRecorderHttpInstrumentationHooksNode'\nexport { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator'\nexport { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer'\nexport { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler'\nexport * as SessionRecorderSdk from './sdk'\nexport * from './type'\n"]}
1
+ {"version":3,"file":"index-node.js","sourceRoot":"","sources":["../../src/index-node.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,OAAO,EAAE,2CAA2C,EAAE,MAAM,gEAAgE,CAAA;AAC5H,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA;AACtB,cAAc,wBAAwB,CAAA","sourcesContent":["export * from './constants/constants.node'\nexport { SessionRecorderHttpInstrumentationHooksNode } from './instrumentations/SessionRecorderHttpInstrumentationHooksNode'\nexport { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator'\nexport { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer'\nexport { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler'\nexport * as SessionRecorderSdk from './sdk'\nexport * from './type'\nexport * from './exporters/index-node'\n"]}
@@ -1,9 +1,8 @@
1
- export * from './constants.node';
2
- export { SessionRecorderHttpTraceExporterBrowser } from './SessionRecorderHttpTraceExporterBrowser';
3
- export { SessionRecorderHttpInstrumentationHooksNode } from './SessionRecorderHttpInstrumentationHooksNode';
1
+ export * from './constants/constants.node';
4
2
  export { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator';
5
- export { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer';
6
3
  export { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler';
7
4
  export * as SessionRecorderSdk from './sdk';
8
5
  export * from './type';
6
+ export * from './exporters';
7
+ export * from './instrumentations/index-node';
9
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,EAAE,2CAA2C,EAAE,MAAM,+CAA+C,CAAA;AAC3G,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA;AACtB,cAAc,aAAa,CAAA;AAC3B,cAAc,+BAA+B,CAAA"}
@@ -1,9 +1,8 @@
1
- export * from './constants.node';
2
- export { SessionRecorderHttpTraceExporterBrowser } from './SessionRecorderHttpTraceExporterBrowser';
3
- export { SessionRecorderHttpInstrumentationHooksNode } from './SessionRecorderHttpInstrumentationHooksNode';
1
+ export * from './constants/constants.node';
4
2
  export { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator';
5
- export { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer';
6
3
  export { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler';
7
4
  export * as SessionRecorderSdk from './sdk';
8
5
  export * from './type';
6
+ export * from './exporters';
7
+ export * from './instrumentations/index-node';
9
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,EAAE,2CAA2C,EAAE,MAAM,+CAA+C,CAAA;AAC3G,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAA;AACzF,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA","sourcesContent":["export * from './constants.node'\nexport { SessionRecorderHttpTraceExporterBrowser } from './SessionRecorderHttpTraceExporterBrowser'\nexport { SessionRecorderHttpInstrumentationHooksNode } from './SessionRecorderHttpInstrumentationHooksNode'\nexport { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator'\nexport { SessionRecorderJsonTraceSerializer } from './SessionRecorderJsonTraceSerializer'\nexport { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler'\nexport * as SessionRecorderSdk from './sdk'\nexport * from './type'\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAA;AACnG,OAAO,KAAK,kBAAkB,MAAM,OAAO,CAAA;AAC3C,cAAc,QAAQ,CAAA;AACtB,cAAc,aAAa,CAAA;AAC3B,cAAc,+BAA+B,CAAA","sourcesContent":["export * from './constants/constants.node'\nexport { SessionRecorderIdGenerator } from './SessionRecorderIdGenerator'\nexport { SessionRecorderTraceIdRatioBasedSampler } from './SessionRecorderTraceIdRatioBasedSampler'\nexport * as SessionRecorderSdk from './sdk'\nexport * from './type'\nexport * from './exporters'\nexport * from './instrumentations/index-node'\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderHttpInstrumentationHooksNode.d.ts","sourceRoot":"","sources":["../../../src/instrumentations/SessionRecorderHttpInstrumentationHooksNode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,aAAa,EACd,MAAM,MAAM,CAAA;AAEb,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAqB9C,UAAU,uBAAuB;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAE3B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAE9B,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,KAAK,GAAG,CAAA;IACxC,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,KAAK,GAAG,CAAA;IAE3C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAE1B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC5B;AAED,UAAU,sBAAsB;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAEhC,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAE9B,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,KAAK,GAAG,CAAA;IACxC,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,KAAK,GAAG,CAAA;IAE3C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAE1B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC5B;AA0ED,eAAO,MAAM,2CAA2C;6BAC9B,uBAAuB,MAC5C,MAAM,IAAI,EAAE,UAAU,eAAe,GAAG,cAAc;4BAwIlC,sBAAsB,MAC1C,MAAM,IAAI,EAAE,SAAS,aAAa,GAAG,eAAe;CA+FxD,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import * as zlib from 'zlib';
2
- import { ATTR_MULTIPLAYER_HTTP_REQUEST_BODY, ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS, ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY, ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS, MULTIPLAYER_MAX_HTTP_REQUEST_RESPONSE_SIZE, ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY_ENCODING, MULTIPLAYER_TRACE_DEBUG_PREFIX, MULTIPLAYER_TRACE_DOC_PREFIX } from './constants.node';
3
- import { mask, schemify, isGzip, } from './sdk';
4
- import { sensitiveFields, sensitiveHeaders } from './sdk/mask';
2
+ import { ATTR_MULTIPLAYER_HTTP_REQUEST_BODY, ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS, ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY, ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS, MULTIPLAYER_MAX_HTTP_REQUEST_RESPONSE_SIZE, ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY_ENCODING, MULTIPLAYER_TRACE_DEBUG_PREFIX, MULTIPLAYER_TRACE_DOC_PREFIX, } from '../constants/constants.node';
3
+ import { mask, schemify, isGzip, } from '../sdk';
4
+ import { sensitiveFields, sensitiveHeaders, } from '../sdk/mask';
5
5
  const setDefaultOptions = (options) => {
6
6
  options.captureHeaders = 'captureHeaders' in options
7
7
  ? options.captureHeaders
@@ -57,12 +57,10 @@ export const SessionRecorderHttpInstrumentationHooksNode = {
57
57
  if (_options.captureBody) {
58
58
  _response.write = function (...restArgs) {
59
59
  chunks.push(Buffer.from(restArgs[0]));
60
- // eslint-disable-next-line
61
60
  // @ts-ignore
62
61
  oldWrite.apply(_response, restArgs);
63
62
  };
64
63
  }
65
- // eslint-disable-next-line
66
64
  // @ts-ignore
67
65
  _response.end = async function (...restArgs) {
68
66
  var _a;
@@ -139,7 +137,6 @@ export const SessionRecorderHttpInstrumentationHooksNode = {
139
137
  span.setAttribute(ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS, stringifiedHeaders);
140
138
  }
141
139
  }
142
- // eslint-disable-next-line
143
140
  // @ts-ignore
144
141
  return oldEnd.apply(_response, restArgs);
145
142
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionRecorderHttpInstrumentationHooksNode.js","sourceRoot":"","sources":["../../../src/instrumentations/SessionRecorderHttpInstrumentationHooksNode.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n IncomingMessage,\n ServerResponse,\n ClientRequest,\n} from 'http'\nimport * as zlib from 'zlib'\nimport type { Span } from '@opentelemetry/api'\nimport {\n ATTR_MULTIPLAYER_HTTP_REQUEST_BODY,\n ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS,\n ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY,\n ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS,\n MULTIPLAYER_MAX_HTTP_REQUEST_RESPONSE_SIZE,\n ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY_ENCODING,\n MULTIPLAYER_TRACE_DEBUG_PREFIX,\n MULTIPLAYER_TRACE_DOC_PREFIX,\n} from '../constants/constants.node'\nimport {\n mask,\n schemify,\n isGzip,\n} from '../sdk'\nimport {\n sensitiveFields,\n sensitiveHeaders,\n} from '../sdk/mask'\n\ninterface HttpResponseHookOptions {\n maxPayloadSizeBytes?: number\n schemifyDocSpanPayload?: boolean\n uncompressPayload?: boolean\n\n captureHeaders?: boolean\n captureBody?: boolean\n\n isMaskBodyEnabled?: boolean\n isMaskHeadersEnabled?: boolean\n\n maskBody?: (arg: any, span: Span) => any\n maskHeaders?: (arg: any, span: Span) => any\n\n maskBodyFieldsList?: string[]\n maskHeadersList?: string[]\n\n headersToInclude?: string[]\n headersToExclude?: string[]\n}\n\ninterface HttpRequestHookOptions {\n maxPayloadSizeBytes?: number\n schemifyDocSpanPayload?: boolean\n\n captureHeaders?: boolean\n captureBody?: boolean\n\n isMaskBodyEnabled?: boolean\n isMaskHeadersEnabled?: boolean\n\n maskBody?: (arg: any, span: Span) => any\n maskHeaders?: (arg: any, span: Span) => any\n\n maskBodyFieldsList?: string[]\n maskHeadersList?: string[]\n\n headersToInclude?: string[]\n headersToExclude?: string[]\n}\n\nconst setDefaultOptions = (\n options: HttpResponseHookOptions | HttpResponseHookOptions,\n): Omit<HttpResponseHookOptions & HttpResponseHookOptions, 'maskBody' | 'maskHeaders'>\n & {\n maskBody: (arg: any, span: Span) => any\n maskHeaders: (arg: any, span: Span) => any\n captureHeaders: boolean,\n captureBody: boolean,\n isMaskBodyEnabled: boolean\n isMaskHeadersEnabled: boolean\n schemifyDocSpanPayload: boolean,\n uncompressPayload: boolean,\n maxPayloadSizeBytes: number\n } => {\n options.captureHeaders = 'captureHeaders' in options\n ? options.captureHeaders\n : true\n options.captureBody = 'captureBody' in options\n ? options.captureBody\n : true\n options.isMaskBodyEnabled = 'isMaskBodyEnabled' in options\n ? options.isMaskBodyEnabled\n : true\n options.isMaskHeadersEnabled = 'isMaskHeadersEnabled' in options\n ? options.isMaskHeadersEnabled\n : true\n options.schemifyDocSpanPayload = 'schemifyDocSpanPayload' in options\n ? options.schemifyDocSpanPayload\n : false\n options.uncompressPayload = 'uncompressPayload' in options\n ? options.uncompressPayload\n : true\n options.maskBody = options.maskBody || mask([\n ...(\n Array.isArray(options.maskBodyFieldsList)\n ? options.maskBodyFieldsList\n : sensitiveFields\n ),\n ...(\n Array.isArray(options.maskHeadersList)\n ? options.maskHeadersList\n : sensitiveHeaders\n ),\n ])\n options.maskHeaders = options.maskHeaders || mask([\n ...(\n Array.isArray(options.maskBodyFieldsList)\n ? options.maskBodyFieldsList\n : sensitiveFields\n ),\n ...(\n Array.isArray(options.maskHeadersList)\n ? options.maskHeadersList\n : sensitiveHeaders\n ),\n ])\n options.maxPayloadSizeBytes = options.maxPayloadSizeBytes || MULTIPLAYER_MAX_HTTP_REQUEST_RESPONSE_SIZE\n\n return options as Omit<HttpResponseHookOptions & HttpResponseHookOptions, 'maskBody' | 'maskHeaders'>\n & {\n maskBody: (arg: any, span: Span) => any\n maskHeaders: (arg: any, span: Span) => any\n captureHeaders: boolean,\n captureBody: boolean,\n isMaskBodyEnabled: boolean,\n isMaskHeadersEnabled: boolean,\n schemifyDocSpanPayload: boolean,\n uncompressPayload: boolean,\n maxPayloadSizeBytes: number\n }\n}\n\nexport const SessionRecorderHttpInstrumentationHooksNode = {\n responseHook: (options: HttpResponseHookOptions = {}) =>\n (span: Span, response: IncomingMessage | ServerResponse) => {\n try {\n const _options = setDefaultOptions(options)\n\n if (!_options.captureBody && !_options.captureHeaders) {\n return\n }\n\n const _response = response as ServerResponse\n const traceId = span.spanContext().traceId\n\n if (_response.setHeader) {\n _response.setHeader('X-Trace-Id', traceId)\n }\n\n const [oldWrite, oldEnd] = [_response.write, _response.end]\n\n const chunks: Buffer[] = []\n\n if (_options.captureBody) {\n (_response.write as unknown) = function (...restArgs: any[]) {\n chunks.push(Buffer.from(restArgs[0]))\n\n // @ts-ignore\n oldWrite.apply(_response, restArgs)\n }\n }\n\n\n // @ts-ignore\n _response.end = async function (...restArgs) {\n if (_options.captureBody && restArgs[0]) {\n chunks.push(Buffer.from(restArgs[0]))\n }\n\n const responseBuffer = Buffer.concat(chunks)\n\n if (\n _options.captureBody\n && responseBuffer.byteLength > 0\n && responseBuffer.byteLength < _options.maxPayloadSizeBytes\n ) {\n let responseBody: string\n let skipResponseBodyModification = false\n\n if (isGzip(responseBuffer)) {\n if (_options.uncompressPayload) {\n const dezippedBuffer = await new Promise((resolve) => zlib\n .gunzip(responseBuffer, function (err, dezipped) {\n if (err) {\n return resolve(Buffer.from(''))\n } else {\n return resolve(dezipped)\n }\n })) as Buffer\n responseBody = dezippedBuffer.toString('utf-8')\n } else {\n span.setAttribute(\n ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY_ENCODING,\n 'gzip',\n )\n\n skipResponseBodyModification = true\n responseBody = responseBuffer.toString('hex')\n }\n } else {\n responseBody = responseBuffer.toString('utf-8')\n }\n\n if (responseBody.length) {\n responseBody = JSON.parse(JSON.stringify(responseBody))\n }\n\n if (!skipResponseBodyModification) {\n if (\n traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX)\n && _options.isMaskBodyEnabled\n ) {\n responseBody = _options.maskBody(responseBody, span)\n } else if (\n traceId.startsWith(MULTIPLAYER_TRACE_DOC_PREFIX)\n && _options.schemifyDocSpanPayload\n ) {\n responseBody = schemify(responseBody)\n } else if (typeof responseBody !== 'string') {\n responseBody = JSON.stringify(responseBody)\n }\n }\n\n if (responseBody.length) {\n span.setAttribute(\n ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY,\n responseBody,\n )\n }\n }\n\n if (_options.captureHeaders) {\n let _headers = JSON.parse(JSON.stringify(_response.getHeaders() || {}))\n if (_options.isMaskHeadersEnabled) {\n _headers = _options.maskHeaders(_headers, span)\n }\n\n if (_options.headersToInclude) {\n const filteredHeaders: any = {}\n for (const headerName of _options.headersToInclude) {\n filteredHeaders[headerName] = _headers[headerName]\n }\n _headers = filteredHeaders\n }\n\n if (_options.headersToExclude?.length) {\n for (const headerName of _options.headersToExclude) {\n delete _headers[headerName]\n }\n }\n\n const stringifiedHeaders = JSON.stringify(_headers)\n\n if (stringifiedHeaders?.length) {\n span.setAttribute(\n ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS,\n stringifiedHeaders,\n )\n }\n }\n\n\n // @ts-ignore\n return oldEnd.apply(_response, restArgs)\n }\n } catch (error) {\n // eslint-disable-next-line\n console.error('An error occured in multiplayer otlp http responseHook', error)\n }\n },\n requestHook: (options: HttpRequestHookOptions = {}) =>\n (span: Span, request: ClientRequest | IncomingMessage) => {\n try {\n const _options = setDefaultOptions(options)\n\n if (!_options.captureBody && !_options.captureHeaders) {\n return\n }\n\n const traceId = span.spanContext().traceId\n const _request = request as IncomingMessage\n\n if (_options.captureHeaders) {\n let _headers = JSON.parse(JSON.stringify(_request.headers || {}))\n\n if (_options.isMaskHeadersEnabled) {\n _headers = _options.maskHeaders(_headers, span)\n }\n\n if (_options.headersToInclude) {\n const filteredHeaders: any = {}\n for (const headerName of _options.headersToInclude) {\n filteredHeaders[headerName] = _headers[headerName]\n }\n _headers = filteredHeaders\n }\n\n if (_options.headersToExclude?.length) {\n for (const headerName of _options.headersToExclude) {\n delete _headers[headerName]\n }\n }\n\n span.setAttribute(\n ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS,\n JSON.stringify(_headers),\n )\n }\n\n const contentType = _request?.headers?.['content-type']\n if (\n _options.captureBody\n && contentType?.includes('application/json')\n ) {\n let body = ''\n _request.on('data', (chunk) => {\n body += chunk\n })\n _request.on('end', () => {\n try {\n const requestBodySizeBytes = Buffer.byteLength(body, 'utf8')\n\n if (\n requestBodySizeBytes === 0\n || requestBodySizeBytes > _options.maxPayloadSizeBytes\n ) {\n return\n }\n\n let requestBody = body\n if (!requestBody) return\n\n requestBody = JSON.parse(JSON.stringify(requestBody))\n\n if (\n traceId.startsWith(MULTIPLAYER_TRACE_DEBUG_PREFIX)\n && _options.isMaskBodyEnabled\n ) {\n requestBody = _options.maskBody(requestBody, span)\n } else if (\n traceId.startsWith(MULTIPLAYER_TRACE_DOC_PREFIX)\n && _options.schemifyDocSpanPayload\n ) {\n requestBody = schemify(requestBody)\n } else if (typeof requestBody !== 'string') {\n requestBody = JSON.stringify(requestBody)\n }\n\n if (requestBody?.length) {\n span.setAttribute(\n ATTR_MULTIPLAYER_HTTP_REQUEST_BODY,\n requestBody,\n )\n }\n } catch (err) {\n // eslint-disable-next-line\n console.error('[MULTIPLAYER-HTTP-REQ-HOOK] An error occured in multiplayer otlp http requestHook', err)\n }\n })\n }\n\n } catch (error) {\n // eslint-disable-next-line\n console.error('An error occured in multiplayer otlp http requestHook', error)\n }\n },\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export * from './SessionRecorderHttpInstrumentationHooksNode';
2
+ //# sourceMappingURL=index-node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-node.d.ts","sourceRoot":"","sources":["../../../src/instrumentations/index-node.ts"],"names":[],"mappings":"AAAA,cAAc,+CAA+C,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './SessionRecorderHttpInstrumentationHooksNode';
2
+ //# sourceMappingURL=index-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-node.js","sourceRoot":"","sources":["../../../src/instrumentations/index-node.ts"],"names":[],"mappings":"AAAA,cAAc,+CAA+C,CAAA","sourcesContent":["export * from './SessionRecorderHttpInstrumentationHooksNode'\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"capture-exception.js","sourceRoot":"","sources":["../../../src/sdk/capture-exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnE;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAY,EAAE,EAAE;IAC/C,IAAI,CAAC,KAAK;QAAE,OAAO;IAEnB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAC5C,IAAI,CAAC,IAAI;QAAE,OAAO;IAElB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;IAC3B,IAAI,CAAC,SAAS,CAAC;QACb,IAAI,EAAE,cAAc,CAAC,KAAK;QAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import { context, trace, SpanStatusCode } from '@opentelemetry/api'\n\n/**\n * @description Add error to current span\n * @param {Error} error \n * @returns {void}\n */\nexport const captureException = (error: Error) => {\n if (!error) return;\n\n const span = trace.getSpan(context.active())\n if (!span) return;\n\n span.recordException(error)\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: error.message,\n })\n}\n"]}
1
+ {"version":3,"file":"capture-exception.js","sourceRoot":"","sources":["../../../src/sdk/capture-exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnE;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAY,EAAE,EAAE;IAC/C,IAAI,CAAC,KAAK;QAAE,OAAM;IAElB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAC5C,IAAI,CAAC,IAAI;QAAE,OAAM;IAEjB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;IAC3B,IAAI,CAAC,SAAS,CAAC;QACb,IAAI,EAAE,cAAc,CAAC,KAAK;QAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import { context, trace, SpanStatusCode } from '@opentelemetry/api'\n\n/**\n * @description Add error to current span\n * @param {Error} error\n * @returns {void}\n */\nexport const captureException = (error: Error) => {\n if (!error) return\n\n const span = trace.getSpan(context.active())\n if (!span) return\n\n span.recordException(error)\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: error.message,\n })\n}\n"]}