@dxos/observability 0.8.4-main.bc674ce → 0.8.4-main.bcb3aa67d6

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 (346) hide show
  1. package/README.md +14 -11
  2. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  3. package/dist/lib/browser/chunk-K4VFBKST.mjs +13 -0
  4. package/dist/lib/browser/chunk-K4VFBKST.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +922 -278
  6. package/dist/lib/browser/index.mjs.map +4 -4
  7. package/dist/lib/browser/log-processor-FDLTDQEM.mjs +45 -0
  8. package/dist/lib/browser/log-processor-FDLTDQEM.mjs.map +7 -0
  9. package/dist/lib/browser/logs-ATTRIUTL.mjs +113 -0
  10. package/dist/lib/browser/logs-ATTRIUTL.mjs.map +7 -0
  11. package/dist/lib/browser/meta.json +1 -1
  12. package/dist/lib/browser/metrics-PKTV6IGF.mjs +130 -0
  13. package/dist/lib/browser/metrics-PKTV6IGF.mjs.map +7 -0
  14. package/dist/lib/browser/traces-browser-PUNCJ5KV.mjs +112 -0
  15. package/dist/lib/browser/traces-browser-PUNCJ5KV.mjs.map +7 -0
  16. package/dist/lib/node-esm/chunk-FEVP3MK4.mjs +15 -0
  17. package/dist/lib/node-esm/chunk-FEVP3MK4.mjs.map +7 -0
  18. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  19. package/dist/lib/node-esm/index.mjs +939 -293
  20. package/dist/lib/node-esm/index.mjs.map +4 -4
  21. package/dist/lib/node-esm/log-processor-TKJVJJSJ.mjs +46 -0
  22. package/dist/lib/node-esm/log-processor-TKJVJJSJ.mjs.map +7 -0
  23. package/dist/lib/node-esm/logs-7J45KLM7.mjs +114 -0
  24. package/dist/lib/node-esm/logs-7J45KLM7.mjs.map +7 -0
  25. package/dist/lib/node-esm/meta.json +1 -1
  26. package/dist/lib/node-esm/metrics-H7DDLYSG.mjs +131 -0
  27. package/dist/lib/node-esm/metrics-H7DDLYSG.mjs.map +7 -0
  28. package/dist/lib/node-esm/{chunk-WAGGA7IT.mjs → traces-KMTHMYFX.mjs} +8 -16
  29. package/dist/lib/node-esm/traces-KMTHMYFX.mjs.map +7 -0
  30. package/dist/types/src/cli-observability-secrets.json +3 -4
  31. package/dist/types/src/extensions/index.d.ts +3 -0
  32. package/dist/types/src/extensions/index.d.ts.map +1 -0
  33. package/dist/types/src/extensions/index.js +6 -0
  34. package/dist/types/src/extensions/index.js.map +1 -0
  35. package/dist/types/src/extensions/otel/extension.d.ts +23 -0
  36. package/dist/types/src/extensions/otel/extension.d.ts.map +1 -0
  37. package/dist/types/src/extensions/otel/extension.js +124 -0
  38. package/dist/types/src/extensions/otel/extension.js.map +1 -0
  39. package/dist/types/src/extensions/otel/index.d.ts +2 -0
  40. package/dist/types/src/extensions/otel/index.d.ts.map +1 -0
  41. package/dist/types/src/extensions/otel/index.js +5 -0
  42. package/dist/types/src/extensions/otel/index.js.map +1 -0
  43. package/dist/types/src/{otel → extensions/otel}/logs.d.ts +4 -3
  44. package/dist/types/src/extensions/otel/logs.d.ts.map +1 -0
  45. package/dist/types/src/{otel → extensions/otel}/logs.js +48 -18
  46. package/dist/types/src/extensions/otel/logs.js.map +1 -0
  47. package/dist/types/src/extensions/otel/metrics.d.ts.map +1 -0
  48. package/dist/types/src/{otel → extensions/otel}/metrics.js +2 -10
  49. package/dist/types/src/extensions/otel/metrics.js.map +1 -0
  50. package/dist/types/src/{otel → extensions/otel}/otel.d.ts +3 -3
  51. package/dist/types/src/extensions/otel/otel.d.ts.map +1 -0
  52. package/dist/types/src/extensions/otel/otel.js.map +1 -0
  53. package/dist/types/src/extensions/otel/traces-browser.d.ts.map +1 -0
  54. package/dist/types/src/extensions/otel/traces-browser.js +85 -0
  55. package/dist/types/src/extensions/otel/traces-browser.js.map +1 -0
  56. package/dist/types/src/extensions/otel/traces.d.ts.map +1 -0
  57. package/dist/types/src/{otel → extensions/otel}/traces.js +5 -13
  58. package/dist/types/src/extensions/otel/traces.js.map +1 -0
  59. package/dist/types/src/extensions/posthog/extension.d.ts +18 -0
  60. package/dist/types/src/extensions/posthog/extension.d.ts.map +1 -0
  61. package/dist/types/src/extensions/posthog/extension.js +142 -0
  62. package/dist/types/src/extensions/posthog/extension.js.map +1 -0
  63. package/dist/types/src/extensions/posthog/index.d.ts +2 -0
  64. package/dist/types/src/extensions/posthog/index.d.ts.map +1 -0
  65. package/dist/types/src/extensions/posthog/index.js +5 -0
  66. package/dist/types/src/extensions/posthog/index.js.map +1 -0
  67. package/dist/types/src/extensions/posthog/log-processor.d.ts +3 -0
  68. package/dist/types/src/extensions/posthog/log-processor.d.ts.map +1 -0
  69. package/dist/types/src/extensions/posthog/log-processor.js +45 -0
  70. package/dist/types/src/extensions/posthog/log-processor.js.map +1 -0
  71. package/dist/types/src/extensions/posthog/log-processor.test.d.ts +2 -0
  72. package/dist/types/src/extensions/posthog/log-processor.test.d.ts.map +1 -0
  73. package/dist/types/src/extensions/posthog/log-processor.test.js +146 -0
  74. package/dist/types/src/extensions/posthog/log-processor.test.js.map +1 -0
  75. package/dist/types/src/extensions/stub.d.ts +3 -0
  76. package/dist/types/src/extensions/stub.d.ts.map +1 -0
  77. package/dist/types/src/extensions/stub.js +16 -0
  78. package/dist/types/src/extensions/stub.js.map +1 -0
  79. package/dist/types/src/index.d.ts +3 -2
  80. package/dist/types/src/index.d.ts.map +1 -1
  81. package/dist/types/src/index.js +4 -3
  82. package/dist/types/src/index.js.map +1 -1
  83. package/dist/types/src/observability-extension.d.ts +74 -0
  84. package/dist/types/src/observability-extension.d.ts.map +1 -0
  85. package/dist/types/src/observability-extension.js +5 -0
  86. package/dist/types/src/observability-extension.js.map +1 -0
  87. package/dist/types/src/observability.d.ts +32 -110
  88. package/dist/types/src/observability.d.ts.map +1 -1
  89. package/dist/types/src/observability.js +177 -465
  90. package/dist/types/src/observability.js.map +1 -1
  91. package/dist/types/src/observability.test.d.ts +2 -0
  92. package/dist/types/src/observability.test.d.ts.map +1 -0
  93. package/dist/types/src/observability.test.js +312 -0
  94. package/dist/types/src/observability.test.js.map +1 -0
  95. package/dist/types/src/providers/client-observability.d.ts +11 -0
  96. package/dist/types/src/providers/client-observability.d.ts.map +1 -0
  97. package/dist/types/src/providers/client-observability.js +200 -0
  98. package/dist/types/src/providers/client-observability.js.map +1 -0
  99. package/dist/types/src/providers/index.d.ts +4 -0
  100. package/dist/types/src/providers/index.d.ts.map +1 -0
  101. package/dist/types/src/providers/index.js +7 -0
  102. package/dist/types/src/providers/index.js.map +1 -0
  103. package/dist/types/src/providers/ip-data.d.ts +5 -0
  104. package/dist/types/src/providers/ip-data.d.ts.map +1 -0
  105. package/dist/types/src/providers/ip-data.js +57 -0
  106. package/dist/types/src/providers/ip-data.js.map +1 -0
  107. package/dist/types/src/providers/storage.d.ts +3 -0
  108. package/dist/types/src/providers/storage.d.ts.map +1 -0
  109. package/dist/types/src/providers/storage.js +19 -0
  110. package/dist/types/src/providers/storage.js.map +1 -0
  111. package/dist/types/src/storage/browser.d.ts +19 -0
  112. package/dist/types/src/storage/browser.d.ts.map +1 -0
  113. package/dist/types/src/storage/browser.js +59 -0
  114. package/dist/types/src/storage/browser.js.map +1 -0
  115. package/dist/types/src/storage/index.d.ts +2 -0
  116. package/dist/types/src/storage/index.d.ts.map +1 -0
  117. package/dist/types/src/storage/index.js.map +1 -0
  118. package/dist/types/src/storage/node.d.ts +26 -0
  119. package/dist/types/src/storage/node.d.ts.map +1 -0
  120. package/dist/types/src/{helpers/node-observability.js → storage/node.js} +37 -42
  121. package/dist/types/src/storage/node.js.map +1 -0
  122. package/dist/types/src/storage/node.test.d.ts +2 -0
  123. package/dist/types/src/storage/node.test.d.ts.map +1 -0
  124. package/dist/types/src/storage/node.test.js +103 -0
  125. package/dist/types/src/storage/node.test.js.map +1 -0
  126. package/dist/types/tsconfig.tsbuildinfo +1 -1
  127. package/package.json +26 -47
  128. package/src/cli-observability-secrets.json +3 -4
  129. package/src/extensions/index.ts +6 -0
  130. package/src/extensions/otel/extension.ts +178 -0
  131. package/src/extensions/otel/index.ts +5 -0
  132. package/src/{otel → extensions/otel}/logs.ts +55 -23
  133. package/src/{otel → extensions/otel}/metrics.ts +2 -12
  134. package/src/{otel → extensions/otel}/otel.ts +3 -3
  135. package/src/extensions/otel/traces-browser.ts +110 -0
  136. package/src/{otel → extensions/otel}/traces.ts +10 -21
  137. package/src/extensions/posthog/extension.ts +174 -0
  138. package/src/extensions/posthog/index.ts +5 -0
  139. package/src/extensions/posthog/log-processor.test.ts +185 -0
  140. package/src/extensions/posthog/log-processor.ts +54 -0
  141. package/src/extensions/stub.ts +19 -0
  142. package/src/index.ts +4 -3
  143. package/src/observability-extension.ts +94 -0
  144. package/src/observability.test.ts +531 -0
  145. package/src/observability.ts +236 -577
  146. package/src/providers/client-observability.ts +253 -0
  147. package/src/providers/index.ts +7 -0
  148. package/src/providers/ip-data.ts +91 -0
  149. package/src/providers/storage.ts +23 -0
  150. package/src/storage/browser.ts +62 -0
  151. package/src/{segment → storage}/index.ts +0 -1
  152. package/src/storage/node.test.ts +130 -0
  153. package/src/{helpers/node-observability.ts → storage/node.ts} +40 -69
  154. package/dist/lib/browser/chunk-5ICT2XF2.mjs +0 -1
  155. package/dist/lib/browser/chunk-5LN7D6GM.mjs +0 -148
  156. package/dist/lib/browser/chunk-5LN7D6GM.mjs.map +0 -7
  157. package/dist/lib/browser/chunk-JJQT5TQH.mjs +0 -672
  158. package/dist/lib/browser/chunk-JJQT5TQH.mjs.map +0 -7
  159. package/dist/lib/browser/chunk-O4BG5MRL.mjs +0 -164
  160. package/dist/lib/browser/chunk-O4BG5MRL.mjs.map +0 -7
  161. package/dist/lib/browser/chunk-U6JWT3E2.mjs +0 -1
  162. package/dist/lib/browser/chunk-VL6LVQPU.mjs +0 -69
  163. package/dist/lib/browser/chunk-VL6LVQPU.mjs.map +0 -7
  164. package/dist/lib/browser/observability-XK652NZG.mjs +0 -11
  165. package/dist/lib/browser/observability-XK652NZG.mjs.map +0 -7
  166. package/dist/lib/browser/otel/traces-browser.mjs +0 -7
  167. package/dist/lib/browser/otel/traces-browser.mjs.map +0 -7
  168. package/dist/lib/browser/otel/traces.mjs +0 -7
  169. package/dist/lib/browser/otel/traces.mjs.map +0 -7
  170. package/dist/lib/browser/otel-DI4ASU7Y.mjs +0 -226
  171. package/dist/lib/browser/otel-DI4ASU7Y.mjs.map +0 -7
  172. package/dist/lib/browser/segment/browser.mjs +0 -9
  173. package/dist/lib/browser/segment/browser.mjs.map +0 -7
  174. package/dist/lib/browser/segment/index.mjs +0 -12
  175. package/dist/lib/browser/segment/index.mjs.map +0 -7
  176. package/dist/lib/browser/segment/node.mjs +0 -9
  177. package/dist/lib/browser/segment/node.mjs.map +0 -7
  178. package/dist/lib/browser/sentry/browser.mjs +0 -23
  179. package/dist/lib/browser/sentry/browser.mjs.map +0 -7
  180. package/dist/lib/browser/sentry/index.mjs +0 -24
  181. package/dist/lib/browser/sentry/index.mjs.map +0 -7
  182. package/dist/lib/browser/sentry/node.mjs +0 -23
  183. package/dist/lib/browser/sentry/node.mjs.map +0 -7
  184. package/dist/lib/browser/sentry-log-processor-W7LI6WXA.mjs +0 -146
  185. package/dist/lib/browser/sentry-log-processor-W7LI6WXA.mjs.map +0 -7
  186. package/dist/lib/node-esm/chunk-KKNY7TRV.mjs +0 -673
  187. package/dist/lib/node-esm/chunk-KKNY7TRV.mjs.map +0 -7
  188. package/dist/lib/node-esm/chunk-KLJGCUYA.mjs +0 -2
  189. package/dist/lib/node-esm/chunk-KLJGCUYA.mjs.map +0 -7
  190. package/dist/lib/node-esm/chunk-KVJTNW3F.mjs +0 -147
  191. package/dist/lib/node-esm/chunk-KVJTNW3F.mjs.map +0 -7
  192. package/dist/lib/node-esm/chunk-M4627SMT.mjs +0 -135
  193. package/dist/lib/node-esm/chunk-M4627SMT.mjs.map +0 -7
  194. package/dist/lib/node-esm/chunk-QUZL7LKE.mjs +0 -2
  195. package/dist/lib/node-esm/chunk-QUZL7LKE.mjs.map +0 -7
  196. package/dist/lib/node-esm/chunk-UIVXGEGJ.mjs +0 -62
  197. package/dist/lib/node-esm/chunk-UIVXGEGJ.mjs.map +0 -7
  198. package/dist/lib/node-esm/chunk-WAGGA7IT.mjs.map +0 -7
  199. package/dist/lib/node-esm/observability-CXQ3CZGB.mjs +0 -13
  200. package/dist/lib/node-esm/observability-CXQ3CZGB.mjs.map +0 -7
  201. package/dist/lib/node-esm/otel/traces-browser.mjs +0 -70
  202. package/dist/lib/node-esm/otel/traces-browser.mjs.map +0 -7
  203. package/dist/lib/node-esm/otel/traces.mjs +0 -8
  204. package/dist/lib/node-esm/otel/traces.mjs.map +0 -7
  205. package/dist/lib/node-esm/otel-JFXO22WD.mjs +0 -227
  206. package/dist/lib/node-esm/otel-JFXO22WD.mjs.map +0 -7
  207. package/dist/lib/node-esm/segment/browser.mjs +0 -92
  208. package/dist/lib/node-esm/segment/browser.mjs.map +0 -7
  209. package/dist/lib/node-esm/segment/index.mjs +0 -15
  210. package/dist/lib/node-esm/segment/index.mjs.map +0 -7
  211. package/dist/lib/node-esm/segment/node.mjs +0 -11
  212. package/dist/lib/node-esm/segment/node.mjs.map +0 -7
  213. package/dist/lib/node-esm/sentry/browser.mjs +0 -165
  214. package/dist/lib/node-esm/sentry/browser.mjs.map +0 -7
  215. package/dist/lib/node-esm/sentry/index.mjs +0 -25
  216. package/dist/lib/node-esm/sentry/index.mjs.map +0 -7
  217. package/dist/lib/node-esm/sentry/node.mjs +0 -24
  218. package/dist/lib/node-esm/sentry/node.mjs.map +0 -7
  219. package/dist/lib/node-esm/sentry-log-processor-W3SG4RQL.mjs +0 -147
  220. package/dist/lib/node-esm/sentry-log-processor-W3SG4RQL.mjs.map +0 -7
  221. package/dist/types/src/helpers/browser-observability.d.ts +0 -17
  222. package/dist/types/src/helpers/browser-observability.d.ts.map +0 -1
  223. package/dist/types/src/helpers/browser-observability.js +0 -138
  224. package/dist/types/src/helpers/browser-observability.js.map +0 -1
  225. package/dist/types/src/helpers/common.d.ts +0 -12
  226. package/dist/types/src/helpers/common.d.ts.map +0 -1
  227. package/dist/types/src/helpers/common.js +0 -23
  228. package/dist/types/src/helpers/common.js.map +0 -1
  229. package/dist/types/src/helpers/index.d.ts +0 -6
  230. package/dist/types/src/helpers/index.d.ts.map +0 -1
  231. package/dist/types/src/helpers/index.js +0 -9
  232. package/dist/types/src/helpers/index.js.map +0 -1
  233. package/dist/types/src/helpers/map-spaces.d.ts +0 -18
  234. package/dist/types/src/helpers/map-spaces.d.ts.map +0 -1
  235. package/dist/types/src/helpers/map-spaces.js +0 -36
  236. package/dist/types/src/helpers/map-spaces.js.map +0 -1
  237. package/dist/types/src/helpers/node-observability.d.ts +0 -24
  238. package/dist/types/src/helpers/node-observability.d.ts.map +0 -1
  239. package/dist/types/src/helpers/node-observability.js.map +0 -1
  240. package/dist/types/src/helpers/setup-telemetry-listeners.d.ts +0 -4
  241. package/dist/types/src/helpers/setup-telemetry-listeners.d.ts.map +0 -1
  242. package/dist/types/src/helpers/setup-telemetry-listeners.js +0 -94
  243. package/dist/types/src/helpers/setup-telemetry-listeners.js.map +0 -1
  244. package/dist/types/src/otel/index.d.ts +0 -5
  245. package/dist/types/src/otel/index.d.ts.map +0 -1
  246. package/dist/types/src/otel/index.js +0 -8
  247. package/dist/types/src/otel/index.js.map +0 -1
  248. package/dist/types/src/otel/logs.d.ts.map +0 -1
  249. package/dist/types/src/otel/logs.js.map +0 -1
  250. package/dist/types/src/otel/metrics.d.ts.map +0 -1
  251. package/dist/types/src/otel/metrics.js.map +0 -1
  252. package/dist/types/src/otel/otel.d.ts.map +0 -1
  253. package/dist/types/src/otel/otel.js.map +0 -1
  254. package/dist/types/src/otel/traces-browser.d.ts.map +0 -1
  255. package/dist/types/src/otel/traces-browser.js +0 -53
  256. package/dist/types/src/otel/traces-browser.js.map +0 -1
  257. package/dist/types/src/otel/traces.d.ts.map +0 -1
  258. package/dist/types/src/otel/traces.js.map +0 -1
  259. package/dist/types/src/segment/base.d.ts +0 -15
  260. package/dist/types/src/segment/base.d.ts.map +0 -1
  261. package/dist/types/src/segment/base.js +0 -51
  262. package/dist/types/src/segment/base.js.map +0 -1
  263. package/dist/types/src/segment/browser.d.ts +0 -15
  264. package/dist/types/src/segment/browser.d.ts.map +0 -1
  265. package/dist/types/src/segment/browser.js +0 -63
  266. package/dist/types/src/segment/browser.js.map +0 -1
  267. package/dist/types/src/segment/index.d.ts +0 -3
  268. package/dist/types/src/segment/index.d.ts.map +0 -1
  269. package/dist/types/src/segment/index.js +0 -6
  270. package/dist/types/src/segment/index.js.map +0 -1
  271. package/dist/types/src/segment/node.d.ts +0 -16
  272. package/dist/types/src/segment/node.d.ts.map +0 -1
  273. package/dist/types/src/segment/node.js +0 -84
  274. package/dist/types/src/segment/node.js.map +0 -1
  275. package/dist/types/src/segment/types.d.ts +0 -52
  276. package/dist/types/src/segment/types.d.ts.map +0 -1
  277. package/dist/types/src/segment/types.js +0 -18
  278. package/dist/types/src/segment/types.js.map +0 -1
  279. package/dist/types/src/sentry/browser.d.ts +0 -32
  280. package/dist/types/src/sentry/browser.d.ts.map +0 -1
  281. package/dist/types/src/sentry/browser.js +0 -110
  282. package/dist/types/src/sentry/browser.js.map +0 -1
  283. package/dist/types/src/sentry/index.d.ts +0 -3
  284. package/dist/types/src/sentry/index.d.ts.map +0 -1
  285. package/dist/types/src/sentry/index.js.map +0 -1
  286. package/dist/types/src/sentry/node.d.ts +0 -32
  287. package/dist/types/src/sentry/node.d.ts.map +0 -1
  288. package/dist/types/src/sentry/node.js +0 -106
  289. package/dist/types/src/sentry/node.js.map +0 -1
  290. package/dist/types/src/sentry/node.node.test.d.ts +0 -2
  291. package/dist/types/src/sentry/node.node.test.d.ts.map +0 -1
  292. package/dist/types/src/sentry/node.node.test.js +0 -32
  293. package/dist/types/src/sentry/node.node.test.js.map +0 -1
  294. package/dist/types/src/sentry/sentry-log-processor.d.ts +0 -9
  295. package/dist/types/src/sentry/sentry-log-processor.d.ts.map +0 -1
  296. package/dist/types/src/sentry/sentry-log-processor.js +0 -144
  297. package/dist/types/src/sentry/sentry-log-processor.js.map +0 -1
  298. package/dist/types/src/sentry/sentry.node.test.d.ts +0 -2
  299. package/dist/types/src/sentry/sentry.node.test.d.ts.map +0 -1
  300. package/dist/types/src/sentry/sentry.node.test.js +0 -28
  301. package/dist/types/src/sentry/sentry.node.test.js.map +0 -1
  302. package/dist/types/src/sentry/types.d.ts +0 -18
  303. package/dist/types/src/sentry/types.d.ts.map +0 -1
  304. package/dist/types/src/sentry/types.js +0 -4
  305. package/dist/types/src/sentry/types.js.map +0 -1
  306. package/dist/types/src/testing/index.d.ts +0 -2
  307. package/dist/types/src/testing/index.d.ts.map +0 -1
  308. package/dist/types/src/testing/index.js +0 -5
  309. package/dist/types/src/testing/index.js.map +0 -1
  310. package/dist/types/src/testing/testkit/browser.d.ts +0 -2
  311. package/dist/types/src/testing/testkit/browser.d.ts.map +0 -1
  312. package/dist/types/src/testing/testkit/browser.js +0 -7
  313. package/dist/types/src/testing/testkit/browser.js.map +0 -1
  314. package/dist/types/src/testing/testkit/index.d.ts +0 -2
  315. package/dist/types/src/testing/testkit/index.d.ts.map +0 -1
  316. package/dist/types/src/testing/testkit/index.js +0 -6
  317. package/dist/types/src/testing/testkit/index.js.map +0 -1
  318. package/src/helpers/browser-observability.ts +0 -178
  319. package/src/helpers/common.ts +0 -38
  320. package/src/helpers/index.ts +0 -9
  321. package/src/helpers/map-spaces.ts +0 -48
  322. package/src/helpers/setup-telemetry-listeners.ts +0 -109
  323. package/src/otel/index.ts +0 -8
  324. package/src/otel/traces-browser.ts +0 -62
  325. package/src/segment/base.ts +0 -69
  326. package/src/segment/browser.ts +0 -69
  327. package/src/segment/node.ts +0 -95
  328. package/src/segment/types.ts +0 -57
  329. package/src/sentry/browser.ts +0 -133
  330. package/src/sentry/index.ts +0 -6
  331. package/src/sentry/node.node.test.ts +0 -40
  332. package/src/sentry/node.ts +0 -126
  333. package/src/sentry/sentry-log-processor.ts +0 -176
  334. package/src/sentry/sentry.node.test.ts +0 -35
  335. package/src/sentry/types.ts +0 -22
  336. package/src/testing/index.ts +0 -5
  337. package/src/testing/testkit/browser.ts +0 -8
  338. package/src/testing/testkit/index.ts +0 -7
  339. package/src/testing/testkit/shims.d.ts +0 -5
  340. /package/dist/lib/browser/{chunk-5ICT2XF2.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
  341. /package/dist/lib/{browser/chunk-U6JWT3E2.mjs.map → node-esm/chunk-HSLMI22Q.mjs.map} +0 -0
  342. /package/dist/types/src/{otel → extensions/otel}/metrics.d.ts +0 -0
  343. /package/dist/types/src/{otel → extensions/otel}/otel.js +0 -0
  344. /package/dist/types/src/{otel → extensions/otel}/traces-browser.d.ts +0 -0
  345. /package/dist/types/src/{otel → extensions/otel}/traces.d.ts +0 -0
  346. /package/dist/types/src/{sentry → storage}/index.js +0 -0
@@ -1,673 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- TelemetryEvent
4
- } from "./chunk-UIVXGEGJ.mjs";
5
-
6
- // src/observability.ts
7
- import { Event, scheduleTaskInterval } from "@dxos/async";
8
- import { PublicKey } from "@dxos/client";
9
- import { Context } from "@dxos/context";
10
- import { invariant } from "@dxos/invariant";
11
- import { LogLevel, log } from "@dxos/log";
12
- import { ConnectionState } from "@dxos/network-manager";
13
- import { DeviceKind, Platform } from "@dxos/protocols/proto/dxos/client/services";
14
- import { isNode } from "@dxos/util";
15
-
16
- // src/cli-observability-secrets.json
17
- var cli_observability_secrets_default = {
18
- SENTRY_DESTINATION: "https://2647916221e643869965e78469479aa4@o4504012000067584.ingest.sentry.io/4504012027265029",
19
- TELEMETRY_API_KEY: "B00QG6PtJJrJ0VVFe0H5a6bcUUShKyZM",
20
- IPDATA_API_KEY: "73dfdecdf979c18f07d50cf841bbdd9e589f237256326ac8cca23786",
21
- OTEL_ENDPOINT: "https://otlp-proxy.dxos.workers.dev",
22
- OTEL_AUTHORIZATION: "Basic OTA3MzIzOmdsY19leUp2SWpvaU1URXdNVEl6TnlJc0ltNGlPaUp6ZEdGamF5MDVNRGN6TWpNdGFXNTBaV2R5WVhScGIyNHRZMnh2ZFdSbWJHRnlaUzF2ZEd4d0xYQnliM2g1SWl3aWF5STZJalZ2Tkd4cFYydE5iRmszTlRNMGJUVXpTemRTVjNBeVNpSXNJbTBpT25zaWNpSTZJbkJ5YjJRdGRYTXRaV0Z6ZEMwd0luMTk="
23
- };
24
-
25
- // src/helpers/common.ts
26
- var getTelemetryIdentifier = (client) => {
27
- if (!client?.initialized) {
28
- return void 0;
29
- }
30
- const identity = client.halo.identity.get();
31
- if (identity) {
32
- return identity.did;
33
- }
34
- return void 0;
35
- };
36
- var getTelemetryIdentity = (client) => {
37
- const did = getTelemetryIdentifier(client);
38
- return {
39
- did
40
- };
41
- };
42
-
43
- // src/helpers/map-spaces.ts
44
- var mapSpaces = (spaces, options = {
45
- verbose: false,
46
- truncateKeys: false
47
- }) => {
48
- return spaces.map((space) => {
49
- const { open, ready } = space.internal.data.metrics ?? {};
50
- const startup = open && ready && ready.getTime() - open.getTime();
51
- const pipeline = space.internal.data.pipeline;
52
- const startDataMutations = pipeline?.currentEpoch?.subject.assertion.timeframe.totalMessages() ?? 0;
53
- const epoch = pipeline?.currentEpoch?.subject.assertion.number;
54
- const currentDataMutations = pipeline?.currentDataTimeframe?.totalMessages() ?? 0;
55
- const totalDataMutations = pipeline?.targetDataTimeframe?.totalMessages() ?? 0;
56
- return {
57
- // TODO(nf): truncate keys for DD?
58
- key: space.key.truncate(),
59
- open: space.isOpen,
60
- members: space.members.get().length,
61
- objects: space.internal.db.coreDatabase.getAllObjectIds().length,
62
- startup,
63
- epoch,
64
- // appliedEpoch,
65
- startDataMutations,
66
- currentDataMutations,
67
- totalDataMutations,
68
- // TODO(burdon): Negative?
69
- progress: (Math.min(Math.abs((currentDataMutations - startDataMutations) / (totalDataMutations - startDataMutations)), 1) * 100).toFixed(0)
70
- };
71
- });
72
- };
73
-
74
- // src/observability.ts
75
- var __dxlog_file = "/__w/dxos/dxos/packages/sdk/observability/src/observability.ts";
76
- var SPACE_METRICS_MIN_INTERVAL = 1e3 * 60;
77
- var SPACE_TELEMETRY_MIN_INTERVAL = 1e3 * 60 * 60;
78
- var NETWORK_METRICS_MIN_INTERVAL = 1e3 * 60 * 5;
79
- var Observability = class {
80
- _mode;
81
- _namespace;
82
- _config;
83
- _group;
84
- _secrets;
85
- _tags = /* @__PURE__ */ new Map();
86
- // TODO(wittjosiah): Generic metrics interface.
87
- _otelMetrics;
88
- _otelTraces;
89
- // TODO(wittjosiah): Generic telemetry interface.
90
- _telemetryBatchSize;
91
- _telemetry;
92
- // TODO(wittjosiah): Generic error logging interface.
93
- _sentryLogProcessor;
94
- _otelLogs;
95
- _errorReportingOptions;
96
- _captureException;
97
- _captureUserFeedback;
98
- _lastNetworkStatus;
99
- _ctx = new Context(void 0, {
100
- F: __dxlog_file,
101
- L: 115
102
- });
103
- // TODO(nf): make platform a required extension?
104
- constructor({ mode, namespace, environment, release, config, group, secrets, telemetry, errorLog }) {
105
- this._mode = mode;
106
- this._namespace = namespace;
107
- this._config = config;
108
- this._group = group;
109
- this._secrets = this._loadSecrets(config, secrets);
110
- this._telemetryBatchSize = telemetry?.batchSize ?? 30;
111
- this._errorReportingOptions = errorLog?.sentryInitOptions;
112
- this.setTag("mode", this._mode);
113
- this.setTag("namespace", this._namespace);
114
- this.setTag("environment", environment);
115
- this.setTag("release", release);
116
- this.setTag("session", PublicKey.random().toHex());
117
- this.setTag("group", this._group);
118
- }
119
- get mode() {
120
- return this._mode;
121
- }
122
- get group() {
123
- return this._group;
124
- }
125
- get enabled() {
126
- return this._mode !== "disabled";
127
- }
128
- _loadSecrets(config, secrets) {
129
- if (isNode()) {
130
- const mergedSecrets = {
131
- ...cli_observability_secrets_default,
132
- ...secrets
133
- };
134
- process.env.DX_ENVIRONMENT && (mergedSecrets.DX_ENVIRONMENT = process.env.DX_ENVIRONMENT);
135
- process.env.DX_RELEASE && (mergedSecrets.DX_RELEASE = process.env.DX_RELEASE);
136
- process.env.SENTRY_DESTINATION && (mergedSecrets.SENTRY_DESTINATION = process.env.SENTRY_DESTINATION);
137
- process.env.TELEMETRY_API_KEY && (mergedSecrets.TELEMETRY_API_KEY = process.env.TELEMETRY_API_KEY);
138
- process.env.IPDATA_API_KEY && (mergedSecrets.IPDATA_API_KEY = process.env.IPDATA_API_KEY);
139
- process.env.DX_OTEL_ENDPOINT && (mergedSecrets.OTEL_ENDPOINT = process.env.DX_OTEL_ENDPOINT);
140
- process.env.DX_OTEL_AUTHORIZATION && (mergedSecrets.OTEL_AUTHORIZATION = process.env.DX_OTEL_AUTHORIZATION);
141
- return mergedSecrets;
142
- } else {
143
- log("config", {
144
- rtc: this._secrets,
145
- config
146
- }, {
147
- F: __dxlog_file,
148
- L: 176,
149
- S: this,
150
- C: (f, a) => f(...a)
151
- });
152
- return {
153
- DX_ENVIRONMENT: config?.get("runtime.app.env.DX_ENVIRONMENT"),
154
- DX_RELEASE: config?.get("runtime.app.env.DX_RELEASE"),
155
- SENTRY_DESTINATION: config?.get("runtime.app.env.DX_SENTRY_DESTINATION"),
156
- TELEMETRY_API_KEY: config?.get("runtime.app.env.DX_TELEMETRY_API_KEY"),
157
- IPDATA_API_KEY: config?.get("runtime.app.env.DX_IPDATA_API_KEY"),
158
- OTEL_ENDPOINT: config?.get("runtime.app.env.DX_OTEL_ENDPOINT"),
159
- OTEL_AUTHORIZATION: config?.get("runtime.app.env.DX_OTEL_AUTHORIZATION"),
160
- ...secrets
161
- };
162
- }
163
- }
164
- async initialize() {
165
- log("initializing...", void 0, {
166
- F: __dxlog_file,
167
- L: 191,
168
- S: this,
169
- C: (f, a) => f(...a)
170
- });
171
- await this._initLogs();
172
- await this._initMetrics();
173
- await this._initTelemetry();
174
- await this._initErrorLogs();
175
- await this._initTraces();
176
- }
177
- async close() {
178
- log("closing...", void 0, {
179
- F: __dxlog_file,
180
- L: 200,
181
- S: this,
182
- C: (f, a) => f(...a)
183
- });
184
- const closes = [];
185
- this._telemetry && closes.push(this._telemetry.close());
186
- this._otelMetrics && closes.push(this._otelMetrics.close());
187
- this._otelLogs && closes.push(this._otelLogs.close());
188
- await Promise.all(closes);
189
- await this._ctx.dispose();
190
- }
191
- setMode(mode) {
192
- this._mode = mode;
193
- }
194
- //
195
- // Tags
196
- //
197
- /** Callback (e.g., to share tags with Sentry.) */
198
- _setTag;
199
- /**
200
- * camelCase keys are converted to snake_case in Segment.
201
- */
202
- setTag(key, value, scope) {
203
- if (value === void 0) {
204
- return;
205
- }
206
- if (this.enabled && (scope === void 0 || scope === "all" || scope === "errors")) {
207
- this._setTag?.(key, value);
208
- }
209
- if (!scope) {
210
- scope = "all";
211
- }
212
- this._tags.set(key, {
213
- value,
214
- scope
215
- });
216
- }
217
- getTag(key) {
218
- return this._tags.get(key);
219
- }
220
- // TODO(wittjosiah): Improve privacy of telemetry identifiers. See `getTelemetryIdentifier`.
221
- async setIdentityTags(clientServices) {
222
- if (clientServices.IdentityService) {
223
- clientServices.IdentityService.queryIdentity().subscribe((idqr) => {
224
- if (!idqr?.identity?.did) {
225
- log("empty response from identity service", {
226
- idqr
227
- }, {
228
- F: __dxlog_file,
229
- L: 247,
230
- S: this,
231
- C: (f, a) => f(...a)
232
- });
233
- return;
234
- }
235
- this.setTag("did", idqr.identity.did);
236
- this._telemetry?.identify({
237
- userId: idqr.identity.did
238
- });
239
- });
240
- }
241
- if (clientServices.DevicesService) {
242
- clientServices.DevicesService.queryDevices().subscribe((dqr) => {
243
- if (!dqr || !dqr.devices || dqr.devices.length === 0) {
244
- log("empty response from device service", {
245
- device: dqr
246
- }, {
247
- F: __dxlog_file,
248
- L: 259,
249
- S: this,
250
- C: (f, a) => f(...a)
251
- });
252
- return;
253
- }
254
- invariant(dqr, "empty response from device service", {
255
- F: __dxlog_file,
256
- L: 263,
257
- S: this,
258
- A: [
259
- "dqr",
260
- "'empty response from device service'"
261
- ]
262
- });
263
- const thisDevice = dqr.devices.find((device) => device.kind === DeviceKind.CURRENT);
264
- if (!thisDevice) {
265
- log("no current device", {
266
- device: dqr
267
- }, {
268
- F: __dxlog_file,
269
- L: 266,
270
- S: this,
271
- C: (f, a) => f(...a)
272
- });
273
- return;
274
- }
275
- this.setTag("deviceKey", thisDevice.deviceKey.truncate());
276
- if (thisDevice.profile?.label) {
277
- this.setTag("deviceProfile", thisDevice.profile.label);
278
- }
279
- });
280
- }
281
- }
282
- setIPDataTelemetryTags = (ipData) => {
283
- this.setTag("city", ipData.city, "telemetry");
284
- this.setTag("region", ipData.region, "telemetry");
285
- this.setTag("country", ipData.country, "telemetry");
286
- ipData.latitude && this.setTag("latitude", ipData.latitude.toString(), "telemetry");
287
- ipData.longitude && this.setTag("longitude", ipData.longitude.toString(), "telemetry");
288
- };
289
- //
290
- // Logs
291
- //
292
- async _initLogs() {
293
- if (this._secrets.OTEL_ENDPOINT && this._secrets.OTEL_AUTHORIZATION && this._mode !== "disabled") {
294
- const { OtelLogs } = await import("./otel-JFXO22WD.mjs");
295
- this._otelLogs = new OtelLogs({
296
- endpoint: this._secrets.OTEL_ENDPOINT,
297
- authorizationHeader: this._secrets.OTEL_AUTHORIZATION,
298
- serviceName: this._namespace,
299
- serviceVersion: this.getTag("release")?.value ?? "0.0.0",
300
- getTags: () => Object.fromEntries(Array.from(this._tags).filter(([key, value]) => {
301
- return value.scope === "all" || value.scope === "errors";
302
- }).map(([key, value]) => [
303
- key,
304
- value.value
305
- ])),
306
- logLevel: LogLevel.VERBOSE,
307
- includeSharedWorkerLogs: false
308
- });
309
- this._otelLogs && log.runtimeConfig.processors.push(this._otelLogs.logProcessor);
310
- log("otel logs enabled", {
311
- namespace: this._namespace
312
- }, {
313
- F: __dxlog_file,
314
- L: 310,
315
- S: this,
316
- C: (f, a) => f(...a)
317
- });
318
- } else {
319
- log("otel logs disabled", void 0, {
320
- F: __dxlog_file,
321
- L: 312,
322
- S: this,
323
- C: (f, a) => f(...a)
324
- });
325
- }
326
- }
327
- //
328
- // Metrics
329
- //
330
- async _initMetrics() {
331
- if (this.enabled && this._secrets.OTEL_ENDPOINT && this._secrets.OTEL_AUTHORIZATION) {
332
- const { OtelMetrics } = await import("./otel-JFXO22WD.mjs");
333
- this._otelMetrics = new OtelMetrics({
334
- endpoint: this._secrets.OTEL_ENDPOINT,
335
- authorizationHeader: this._secrets.OTEL_AUTHORIZATION,
336
- serviceName: this._namespace,
337
- serviceVersion: this.getTag("release")?.value ?? "0.0.0",
338
- getTags: () => Object.fromEntries(Array.from(this._tags).filter(([key, value]) => {
339
- return value.scope === "all" || value.scope === "metrics";
340
- }).map(([key, value]) => [
341
- key,
342
- value.value
343
- ]))
344
- });
345
- log("otel metrics enabled", void 0, {
346
- F: __dxlog_file,
347
- L: 337,
348
- S: this,
349
- C: (f, a) => f(...a)
350
- });
351
- } else {
352
- log("otel metrics disabled", void 0, {
353
- F: __dxlog_file,
354
- L: 339,
355
- S: this,
356
- C: (f, a) => f(...a)
357
- });
358
- }
359
- }
360
- /**
361
- * Gauge metric.
362
- *
363
- * The default implementation uses OpenTelemetry
364
- */
365
- gauge(name, value, extraTags) {
366
- this._otelMetrics?.gauge(name, value, extraTags);
367
- }
368
- // TODO(nf): Refactor into ObservabilityExtensions.
369
- startNetworkMetrics(clientServices) {
370
- if (!clientServices.NetworkService) {
371
- return;
372
- }
373
- const updateSignalMetrics = new Event().debounce(NETWORK_METRICS_MIN_INTERVAL);
374
- updateSignalMetrics.on(this._ctx, async () => {
375
- log("send signal metrics", void 0, {
376
- F: __dxlog_file,
377
- L: 361,
378
- S: this,
379
- C: (f, a) => f(...a)
380
- });
381
- this._lastNetworkStatus?.signaling?.forEach(({ server, state }) => {
382
- this.gauge("dxos.client.network.signal.connectionState", state, {
383
- server
384
- });
385
- });
386
- let swarmCount = 0;
387
- const connectionStates = /* @__PURE__ */ new Map();
388
- for (const state in ConnectionState) {
389
- connectionStates.set(state, 0);
390
- }
391
- let totalReadBufferSize = 0;
392
- let totalWriteBufferSize = 0;
393
- let totalChannelBufferSize = 0;
394
- this._lastNetworkStatus?.connectionInfo?.forEach((connectionInfo) => {
395
- swarmCount++;
396
- for (const conn of connectionInfo.connections ?? []) {
397
- connectionStates.set(conn.state, (connectionStates.get(conn.state) ?? 0) + 1);
398
- totalReadBufferSize += conn.readBufferSize ?? 0;
399
- totalWriteBufferSize += conn.writeBufferSize ?? 0;
400
- for (const stream of conn.streams ?? []) {
401
- totalChannelBufferSize += stream.writeBufferSize ?? 0;
402
- }
403
- }
404
- this.gauge("dxos.client.network.swarm.count", swarmCount);
405
- for (const state in ConnectionState) {
406
- this.gauge("dxos.client.network.connection.count", connectionStates.get(state) ?? 0, {
407
- state
408
- });
409
- }
410
- this.gauge("dxos.client.network.totalReadBufferSize", totalReadBufferSize);
411
- this.gauge("dxos.client.network.totalWriteBufferSize", totalWriteBufferSize);
412
- this.gauge("dxos.client.network.totalChannelBufferSize", totalChannelBufferSize);
413
- });
414
- });
415
- clientServices.NetworkService.queryStatus().subscribe((networkStatus) => {
416
- this._lastNetworkStatus = networkStatus;
417
- updateSignalMetrics.emit();
418
- });
419
- scheduleTaskInterval(this._ctx, async () => updateSignalMetrics.emit(), NETWORK_METRICS_MIN_INTERVAL);
420
- }
421
- startSpacesMetrics(client, namespace) {
422
- const spaces = client.spaces.get();
423
- const subscriptions = /* @__PURE__ */ new Map();
424
- this._ctx.onDispose(() => subscriptions.forEach((subscription) => subscription.unsubscribe()));
425
- const updateSpaceMetrics = new Event().debounce(SPACE_METRICS_MIN_INTERVAL);
426
- updateSpaceMetrics.on(this._ctx, async () => {
427
- log("send space metrics", void 0, {
428
- F: __dxlog_file,
429
- L: 414,
430
- S: this,
431
- C: (f, a) => f(...a)
432
- });
433
- for (const data of mapSpaces(spaces, {
434
- truncateKeys: true
435
- })) {
436
- this.gauge("dxos.client.space.members", data.members, {
437
- key: data.key
438
- });
439
- this.gauge("dxos.client.space.objects", data.objects, {
440
- key: data.key
441
- });
442
- this.gauge("dxos.client.space.epoch", data.epoch, {
443
- key: data.key
444
- });
445
- this.gauge("dxos.client.space.currentDataMutations", data.currentDataMutations, {
446
- key: data.key
447
- });
448
- }
449
- });
450
- const updateSpaceTelemetry = new Event().debounce(SPACE_TELEMETRY_MIN_INTERVAL);
451
- updateSpaceTelemetry.on(this._ctx, async () => {
452
- log("send space telemetry", void 0, {
453
- F: __dxlog_file,
454
- L: 425,
455
- S: this,
456
- C: (f, a) => f(...a)
457
- });
458
- for (const data of mapSpaces(spaces, {
459
- truncateKeys: true
460
- })) {
461
- this.track({
462
- ...getTelemetryIdentity(client),
463
- event: TelemetryEvent.METRICS,
464
- action: "space.update",
465
- properties: data
466
- });
467
- }
468
- });
469
- const subscribeToSpaceUpdate = (space) => space.pipeline.subscribe({
470
- next: () => {
471
- updateSpaceMetrics.emit();
472
- updateSpaceTelemetry.emit();
473
- }
474
- });
475
- spaces.forEach((space) => {
476
- subscriptions.set(space.id, subscribeToSpaceUpdate(space));
477
- });
478
- client.spaces.subscribe({
479
- next: async (spaces2) => {
480
- spaces2.filter((space) => !subscriptions.has(space.id)).forEach((space) => {
481
- subscriptions.set(space.id, subscribeToSpaceUpdate(space));
482
- });
483
- }
484
- });
485
- scheduleTaskInterval(this._ctx, async () => updateSpaceMetrics.emit(), NETWORK_METRICS_MIN_INTERVAL);
486
- }
487
- async startRuntimeMetrics(client, frequency = NETWORK_METRICS_MIN_INTERVAL) {
488
- const platform = await client.services.services.SystemService?.getPlatform();
489
- invariant(platform, "platform is required", {
490
- F: __dxlog_file,
491
- L: 463,
492
- S: this,
493
- A: [
494
- "platform",
495
- "'platform is required'"
496
- ]
497
- });
498
- this.setTag("platformType", Platform.PLATFORM_TYPE[platform.type].toLowerCase());
499
- if (this._mode === "full") {
500
- if (platform.platform) {
501
- this.setTag("platform", platform.platform);
502
- }
503
- if (platform.arch) {
504
- this.setTag("arch", platform.arch);
505
- }
506
- if (platform.runtime) {
507
- this.setTag("runtime", platform.runtime);
508
- }
509
- }
510
- scheduleTaskInterval(this._ctx, async () => {
511
- if (client.services.constructor.name === "WorkerClientServices") {
512
- const memory = window.performance.memory;
513
- if (memory) {
514
- this.gauge("dxos.client.runtime.heapTotal", memory.totalJSHeapSize);
515
- this.gauge("dxos.client.runtime.heapUsed", memory.usedJSHeapSize);
516
- this.gauge("dxos.client.runtime.heapSizeLimit", memory.jsHeapSizeLimit);
517
- }
518
- }
519
- client.services.services.SystemService?.getPlatform().then((platform2) => {
520
- if (platform2.memory) {
521
- this.gauge("dxos.client.services.runtime.rss", platform2.memory.rss);
522
- this.gauge("dxos.client.services.runtime.heapTotal", platform2.memory.heapTotal);
523
- this.gauge("dxos.client.services.runtime.heapUsed", platform2.memory.heapUsed);
524
- }
525
- }).catch((error) => log("platform error", {
526
- error
527
- }, {
528
- F: __dxlog_file,
529
- L: 497,
530
- S: this,
531
- C: (f, a) => f(...a)
532
- }));
533
- }, frequency);
534
- }
535
- //
536
- // Telemetry
537
- //
538
- async _initTelemetry() {
539
- if (this._secrets.TELEMETRY_API_KEY && this._mode !== "disabled" && typeof document !== "undefined") {
540
- const { SegmentTelemetry } = await import("./segment/index.mjs");
541
- this._telemetry = new SegmentTelemetry({
542
- apiKey: this._secrets.TELEMETRY_API_KEY,
543
- batchSize: this._telemetryBatchSize,
544
- getTags: () => Object.fromEntries(Array.from(this._tags).filter(([key, value]) => {
545
- return value.scope === "all" || value.scope === "telemetry";
546
- }).map(([key, value]) => [
547
- key,
548
- value.value
549
- ]))
550
- });
551
- } else {
552
- log("segment disabled", void 0, {
553
- F: __dxlog_file,
554
- L: 523,
555
- S: this,
556
- C: (f, a) => f(...a)
557
- });
558
- }
559
- }
560
- /**
561
- * Submit telemetry page view.
562
- * The default implementation uses Segment.
563
- */
564
- page(options) {
565
- this._telemetry?.page(options);
566
- }
567
- /**
568
- * Submit telemetry user action.
569
- * The default implementation uses Segment.
570
- */
571
- track(options) {
572
- this._telemetry?.track(options);
573
- }
574
- //
575
- // Error Logs
576
- //
577
- async _initErrorLogs() {
578
- if (this._secrets.SENTRY_DESTINATION && this._mode !== "disabled") {
579
- const { captureException, captureUserFeedback, init, setTag } = await import("./sentry/index.mjs");
580
- const { SentryLogProcessor } = await import("./sentry-log-processor-W3SG4RQL.mjs");
581
- this._captureException = captureException;
582
- this._captureUserFeedback = captureUserFeedback;
583
- this._setTag = setTag;
584
- log.info("Initializing Sentry", {
585
- dest: this._secrets.SENTRY_DESTINATION,
586
- options: this._errorReportingOptions
587
- }, {
588
- F: __dxlog_file,
589
- L: 556,
590
- S: this,
591
- C: (f, a) => f(...a)
592
- });
593
- this._sentryLogProcessor = new SentryLogProcessor();
594
- init({
595
- ...this._errorReportingOptions,
596
- destination: this._secrets.SENTRY_DESTINATION,
597
- scrubFilenames: this._mode !== "full",
598
- onError: (event) => this._sentryLogProcessor.addLogBreadcrumbsTo(event)
599
- });
600
- this._tags.forEach((v, k) => {
601
- if (v.scope === "all" || v.scope === "errors") {
602
- setTag(k, v.value);
603
- }
604
- });
605
- } else {
606
- log("sentry disabled", void 0, {
607
- F: __dxlog_file,
608
- L: 576,
609
- S: this,
610
- C: (f, a) => f(...a)
611
- });
612
- }
613
- }
614
- startErrorLogs() {
615
- this._sentryLogProcessor && log.runtimeConfig.processors.push(this._sentryLogProcessor.logProcessor);
616
- }
617
- startTraces() {
618
- this._otelTraces && this._otelTraces.start();
619
- }
620
- // TODO(nf): Refactor init based on providers and their capabilities.
621
- async _initTraces() {
622
- if (this._secrets.OTEL_ENDPOINT && this._secrets.OTEL_AUTHORIZATION && this._mode !== "disabled") {
623
- const { OtelTraces } = await import("./otel-JFXO22WD.mjs");
624
- this._otelTraces = new OtelTraces({
625
- endpoint: this._secrets.OTEL_ENDPOINT,
626
- authorizationHeader: this._secrets.OTEL_AUTHORIZATION,
627
- serviceName: this._namespace,
628
- serviceVersion: this.getTag("release")?.value ?? "0.0.0",
629
- getTags: () => Object.fromEntries(Array.from(this._tags).filter(([key, value]) => {
630
- return value.scope === "all" || value.scope === "metrics";
631
- }).map(([key, value]) => [
632
- key,
633
- value.value
634
- ]))
635
- });
636
- }
637
- }
638
- /**
639
- * Manually capture an exception.
640
- * The default implementation uses Sentry.
641
- */
642
- captureException(err) {
643
- if (this.enabled) {
644
- this._captureException?.(err);
645
- }
646
- }
647
- /**
648
- * Manually capture user feedback.
649
- * The default implementation uses Sentry.
650
- */
651
- captureUserFeedback(message) {
652
- if (!this._secrets.SENTRY_DESTINATION) {
653
- log.info("Feedback submitted without Sentry destination", {
654
- message
655
- }, {
656
- F: __dxlog_file,
657
- L: 625,
658
- S: this,
659
- C: (f, a) => f(...a)
660
- });
661
- return;
662
- }
663
- void this._captureUserFeedback?.(message);
664
- }
665
- };
666
-
667
- export {
668
- Observability,
669
- getTelemetryIdentifier,
670
- getTelemetryIdentity,
671
- mapSpaces
672
- };
673
- //# sourceMappingURL=chunk-KKNY7TRV.mjs.map