@dxos/observability 0.8.4-main.ef1bc66f44 → 0.8.4-main.f466a3d56e

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 (133) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +14 -11
  3. package/dist/lib/browser/{chunk-K4VFBKST.mjs → chunk-PSFTIG54.mjs} +9 -2
  4. package/dist/lib/browser/chunk-PSFTIG54.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +181 -283
  6. package/dist/lib/browser/index.mjs.map +4 -4
  7. package/dist/lib/browser/{log-processor-FDLTDQEM.mjs → log-processor-HPHWNBOK.mjs} +11 -18
  8. package/dist/lib/browser/log-processor-HPHWNBOK.mjs.map +7 -0
  9. package/dist/lib/browser/{logs-ATTRIUTL.mjs → logs-UTNIFYHF.mjs} +7 -4
  10. package/dist/lib/browser/logs-UTNIFYHF.mjs.map +7 -0
  11. package/dist/lib/browser/meta.json +1 -1
  12. package/dist/lib/browser/{metrics-PKTV6IGF.mjs → metrics-PRGSYAZJ.mjs} +7 -21
  13. package/dist/lib/browser/metrics-PRGSYAZJ.mjs.map +7 -0
  14. package/dist/lib/browser/traces-browser-XRINKQUA.mjs +154 -0
  15. package/dist/lib/browser/traces-browser-XRINKQUA.mjs.map +7 -0
  16. package/dist/lib/node-esm/{chunk-FEVP3MK4.mjs → chunk-EDDZWPYV.mjs} +9 -2
  17. package/dist/lib/node-esm/chunk-EDDZWPYV.mjs.map +7 -0
  18. package/dist/lib/node-esm/index.mjs +166 -250
  19. package/dist/lib/node-esm/index.mjs.map +4 -4
  20. package/dist/lib/node-esm/{log-processor-TKJVJJSJ.mjs → log-processor-ZODHERST.mjs} +11 -18
  21. package/dist/lib/node-esm/log-processor-ZODHERST.mjs.map +7 -0
  22. package/dist/lib/node-esm/{logs-7J45KLM7.mjs → logs-ARJUVN3T.mjs} +7 -4
  23. package/dist/lib/node-esm/logs-ARJUVN3T.mjs.map +7 -0
  24. package/dist/lib/node-esm/meta.json +1 -1
  25. package/dist/lib/node-esm/{metrics-H7DDLYSG.mjs → metrics-DREJOOAC.mjs} +7 -21
  26. package/dist/lib/node-esm/metrics-DREJOOAC.mjs.map +7 -0
  27. package/dist/lib/node-esm/traces-74F7JUKF.mjs +125 -0
  28. package/dist/lib/node-esm/traces-74F7JUKF.mjs.map +7 -0
  29. package/dist/types/src/cli-observability-secrets.json +2 -2
  30. package/dist/types/src/extensions/otel/extension.d.ts.map +1 -1
  31. package/dist/types/src/extensions/otel/extension.js +112 -16
  32. package/dist/types/src/extensions/otel/extension.js.map +1 -1
  33. package/dist/types/src/extensions/otel/logs.d.ts.map +1 -1
  34. package/dist/types/src/extensions/otel/logs.js +6 -3
  35. package/dist/types/src/extensions/otel/logs.js.map +1 -1
  36. package/dist/types/src/extensions/otel/metrics.d.ts.map +1 -1
  37. package/dist/types/src/extensions/otel/metrics.js +2 -2
  38. package/dist/types/src/extensions/otel/metrics.js.map +1 -1
  39. package/dist/types/src/extensions/otel/otel.d.ts +7 -0
  40. package/dist/types/src/extensions/otel/otel.d.ts.map +1 -1
  41. package/dist/types/src/extensions/otel/otel.js +12 -0
  42. package/dist/types/src/extensions/otel/otel.js.map +1 -1
  43. package/dist/types/src/extensions/otel/span-processors.d.ts +25 -0
  44. package/dist/types/src/extensions/otel/span-processors.d.ts.map +1 -0
  45. package/dist/types/src/extensions/otel/span-processors.js +41 -0
  46. package/dist/types/src/extensions/otel/span-processors.js.map +1 -0
  47. package/dist/types/src/extensions/otel/traces-browser.d.ts +17 -0
  48. package/dist/types/src/extensions/otel/traces-browser.d.ts.map +1 -1
  49. package/dist/types/src/extensions/otel/traces-browser.js +73 -12
  50. package/dist/types/src/extensions/otel/traces-browser.js.map +1 -1
  51. package/dist/types/src/extensions/otel/traces.d.ts +17 -0
  52. package/dist/types/src/extensions/otel/traces.d.ts.map +1 -1
  53. package/dist/types/src/extensions/otel/traces.js +59 -9
  54. package/dist/types/src/extensions/otel/traces.js.map +1 -1
  55. package/dist/types/src/extensions/posthog/extension.d.ts +13 -0
  56. package/dist/types/src/extensions/posthog/extension.d.ts.map +1 -1
  57. package/dist/types/src/extensions/posthog/extension.js +41 -28
  58. package/dist/types/src/extensions/posthog/extension.js.map +1 -1
  59. package/dist/types/src/extensions/posthog/log-processor.d.ts.map +1 -1
  60. package/dist/types/src/extensions/posthog/log-processor.js +10 -19
  61. package/dist/types/src/extensions/posthog/log-processor.js.map +1 -1
  62. package/dist/types/src/extensions/posthog/log-processor.test.js +2 -2
  63. package/dist/types/src/extensions/posthog/log-processor.test.js.map +1 -1
  64. package/dist/types/src/index.d.ts +0 -1
  65. package/dist/types/src/index.d.ts.map +1 -1
  66. package/dist/types/src/index.js +0 -1
  67. package/dist/types/src/index.js.map +1 -1
  68. package/dist/types/src/observability-extension.d.ts +1 -1
  69. package/dist/types/src/observability-extension.d.ts.map +1 -1
  70. package/dist/types/src/observability.d.ts.map +1 -1
  71. package/dist/types/src/observability.js +4 -2
  72. package/dist/types/src/observability.js.map +1 -1
  73. package/dist/types/src/observability.test.js +1 -1
  74. package/dist/types/src/observability.test.js.map +1 -1
  75. package/dist/types/src/providers/client-observability.d.ts.map +1 -1
  76. package/dist/types/src/providers/client-observability.js +2 -0
  77. package/dist/types/src/providers/client-observability.js.map +1 -1
  78. package/dist/types/src/providers/ip-data.d.ts.map +1 -1
  79. package/dist/types/src/providers/ip-data.js +4 -2
  80. package/dist/types/src/providers/ip-data.js.map +1 -1
  81. package/dist/types/src/storage/browser.d.ts.map +1 -1
  82. package/dist/types/src/storage/browser.js +15 -4
  83. package/dist/types/src/storage/browser.js.map +1 -1
  84. package/dist/types/src/storage/node.d.ts.map +1 -1
  85. package/dist/types/src/storage/node.js +1 -1
  86. package/dist/types/src/storage/node.js.map +1 -1
  87. package/dist/types/src/storage/node.test.js +1 -1
  88. package/dist/types/src/storage/node.test.js.map +1 -1
  89. package/dist/types/tsconfig.tsbuildinfo +1 -1
  90. package/package.json +36 -32
  91. package/src/cli-observability-secrets.json +2 -2
  92. package/src/extensions/otel/extension.ts +118 -17
  93. package/src/extensions/otel/logs.ts +6 -3
  94. package/src/extensions/otel/metrics.ts +2 -2
  95. package/src/extensions/otel/otel.ts +13 -0
  96. package/src/extensions/otel/span-processors.ts +45 -0
  97. package/src/extensions/otel/traces-browser.ts +95 -13
  98. package/src/extensions/otel/traces.ts +76 -12
  99. package/src/extensions/posthog/extension.ts +54 -27
  100. package/src/extensions/posthog/log-processor.test.ts +7 -6
  101. package/src/extensions/posthog/log-processor.ts +10 -21
  102. package/src/index.ts +0 -1
  103. package/src/observability-extension.ts +1 -1
  104. package/src/observability.test.ts +1 -1
  105. package/src/observability.ts +4 -2
  106. package/src/providers/client-observability.ts +2 -0
  107. package/src/providers/ip-data.ts +5 -2
  108. package/src/storage/browser.ts +14 -4
  109. package/src/storage/node.test.ts +1 -2
  110. package/src/storage/node.ts +1 -2
  111. package/src/vite-import-meta.d.ts +14 -0
  112. package/dist/lib/browser/chunk-K4VFBKST.mjs.map +0 -7
  113. package/dist/lib/browser/log-processor-FDLTDQEM.mjs.map +0 -7
  114. package/dist/lib/browser/logs-ATTRIUTL.mjs.map +0 -7
  115. package/dist/lib/browser/metrics-PKTV6IGF.mjs.map +0 -7
  116. package/dist/lib/browser/traces-browser-XYXBF5ZX.mjs +0 -62
  117. package/dist/lib/browser/traces-browser-XYXBF5ZX.mjs.map +0 -7
  118. package/dist/lib/node-esm/chunk-FEVP3MK4.mjs.map +0 -7
  119. package/dist/lib/node-esm/log-processor-TKJVJJSJ.mjs.map +0 -7
  120. package/dist/lib/node-esm/logs-7J45KLM7.mjs.map +0 -7
  121. package/dist/lib/node-esm/metrics-H7DDLYSG.mjs.map +0 -7
  122. package/dist/lib/node-esm/traces-KMTHMYFX.mjs +0 -44
  123. package/dist/lib/node-esm/traces-KMTHMYFX.mjs.map +0 -7
  124. package/dist/types/src/log-buffer.d.ts +0 -34
  125. package/dist/types/src/log-buffer.d.ts.map +0 -1
  126. package/dist/types/src/log-buffer.js +0 -70
  127. package/dist/types/src/log-buffer.js.map +0 -1
  128. package/dist/types/src/log-buffer.test.d.ts +0 -2
  129. package/dist/types/src/log-buffer.test.d.ts.map +0 -1
  130. package/dist/types/src/log-buffer.test.js +0 -107
  131. package/dist/types/src/log-buffer.test.js.map +0 -1
  132. package/src/log-buffer.test.ts +0 -134
  133. package/src/log-buffer.ts +0 -101
@@ -1 +1 @@
1
- {"inputs":{"src/log-buffer.ts":{"bytes":8585,"imports":[{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/storage/node.ts":{"bytes":13390,"imports":[{"path":"node:fs","kind":"import-statement","external":true},{"path":"node:fs/promises","kind":"import-statement","external":true},{"path":"node:path","kind":"import-statement","external":true},{"path":"js-yaml","kind":"import-statement","external":true},{"path":"uuid","kind":"import-statement","external":true}],"format":"esm"},"src/storage/index.ts":{"bytes":453,"imports":[{"path":"src/storage/node.ts","kind":"import-statement","original":"./node"}],"format":"esm"},"src/observability.ts":{"bytes":28997,"imports":[{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/storage/index.ts","kind":"import-statement","original":"./storage"}],"format":"esm"},"src/cli-observability-secrets.json":{"bytes":246,"imports":[]},"src/extensions/stub.ts":{"bytes":1776,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true}],"format":"esm"},"src/extensions/otel/otel.ts":{"bytes":1710,"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true}],"format":"esm"},"src/extensions/otel/logs.ts":{"bytes":13603,"imports":[{"path":"@opentelemetry/api-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-logs-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/extensions/otel/otel.ts","kind":"import-statement","original":"./otel"}],"format":"esm"},"src/extensions/otel/metrics.ts":{"bytes":12316,"imports":[{"path":"@opentelemetry/exporter-metrics-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-metrics","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"src/extensions/otel/otel.ts","kind":"import-statement","original":"./otel"}],"format":"esm"},"src/extensions/otel/traces.ts":{"bytes":5396,"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-trace-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-base","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"debug","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true}],"format":"esm"},"src/extensions/otel/extension.ts":{"bytes":20276,"imports":[{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Match","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Ref","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/cli-observability-secrets.json","kind":"import-statement","original":"../../cli-observability-secrets.json"},{"path":"src/storage/index.ts","kind":"import-statement","original":"../../storage"},{"path":"src/extensions/stub.ts","kind":"import-statement","original":"../stub"},{"path":"src/extensions/otel/logs.ts","kind":"dynamic-import","original":"./logs"},{"path":"src/extensions/otel/metrics.ts","kind":"dynamic-import","original":"./metrics"},{"path":"src/extensions/otel/traces.ts","kind":"dynamic-import","original":"./traces"}],"format":"esm"},"src/extensions/otel/index.ts":{"bytes":474,"imports":[{"path":"src/extensions/otel/extension.ts","kind":"import-statement","original":"./extension"}],"format":"esm"},"src/extensions/posthog/log-processor.ts":{"bytes":6561,"imports":[{"path":"posthog-js","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/extensions/posthog/extension.ts":{"bytes":21654,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/log-buffer.ts","kind":"import-statement","original":"../../log-buffer"},{"path":"src/extensions/stub.ts","kind":"import-statement","original":"../stub"},{"path":"posthog-js","kind":"dynamic-import","external":true},{"path":"src/extensions/posthog/log-processor.ts","kind":"dynamic-import","original":"./log-processor"}],"format":"esm"},"src/extensions/posthog/index.ts":{"bytes":477,"imports":[{"path":"src/extensions/posthog/extension.ts","kind":"import-statement","original":"./extension"}],"format":"esm"},"src/extensions/index.ts":{"bytes":650,"imports":[{"path":"src/extensions/otel/index.ts","kind":"import-statement","original":"./otel"},{"path":"src/extensions/posthog/index.ts","kind":"import-statement","original":"./posthog"}],"format":"esm"},"src/observability-extension.ts":{"bytes":4133,"imports":[{"path":"src/extensions/index.ts","kind":"import-statement","original":"./extensions"}],"format":"esm"},"src/providers/client-observability.ts":{"bytes":35893,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true}],"format":"esm"},"src/providers/ip-data.ts":{"bytes":8948,"imports":[{"path":"@effect/platform/FetchHttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClientRequest","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"localforage","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/providers/storage.ts":{"bytes":3607,"imports":[{"path":"effect/Duration","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Fiber","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true}],"format":"esm"},"src/providers/index.ts":{"bytes":840,"imports":[{"path":"src/providers/client-observability.ts","kind":"import-statement","original":"./client-observability"},{"path":"src/providers/ip-data.ts","kind":"import-statement","original":"./ip-data"},{"path":"src/providers/storage.ts","kind":"import-statement","original":"./storage"}],"format":"esm"},"src/index.ts":{"bytes":1092,"imports":[{"path":"src/log-buffer.ts","kind":"import-statement","original":"./log-buffer"},{"path":"src/observability.ts","kind":"import-statement","original":"./observability"},{"path":"src/observability-extension.ts","kind":"import-statement","original":"./observability-extension"},{"path":"src/providers/index.ts","kind":"import-statement","original":"./providers"}],"format":"esm"}},"outputs":{"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":75707},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"node:fs","kind":"import-statement","external":true},{"path":"node:fs/promises","kind":"import-statement","external":true},{"path":"node:path","kind":"import-statement","external":true},{"path":"js-yaml","kind":"import-statement","external":true},{"path":"uuid","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Match","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Ref","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/logs-7J45KLM7.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/metrics-H7DDLYSG.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/traces-KMTHMYFX.mjs","kind":"dynamic-import"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"posthog-js","kind":"dynamic-import","external":true},{"path":"dist/lib/node-esm/log-processor-TKJVJJSJ.mjs","kind":"dynamic-import"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@effect/platform/FetchHttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClientRequest","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"localforage","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect/Duration","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Fiber","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true}],"exports":["LogBuffer","Observability","ObservabilityExtension","ObservabilityProvider"],"entryPoint":"src/index.ts","inputs":{"src/log-buffer.ts":{"bytesInOutput":1781},"src/index.ts":{"bytesInOutput":0},"src/observability.ts":{"bytesInOutput":7696},"src/storage/node.ts":{"bytesInOutput":2937},"src/observability-extension.ts":{"bytesInOutput":151},"src/extensions/otel/index.ts":{"bytesInOutput":83},"src/extensions/otel/extension.ts":{"bytesInOutput":4848},"src/cli-observability-secrets.json":{"bytesInOutput":280},"src/extensions/stub.ts":{"bytesInOutput":311},"src/extensions/index.ts":{"bytesInOutput":0},"src/extensions/posthog/index.ts":{"bytesInOutput":90},"src/extensions/posthog/extension.ts":{"bytesInOutput":5581},"src/providers/index.ts":{"bytesInOutput":174},"src/providers/client-observability.ts":{"bytesInOutput":8756},"src/providers/ip-data.ts":{"bytesInOutput":2092},"src/providers/storage.ts":{"bytesInOutput":895}},"bytes":36533},"dist/lib/node-esm/logs-7J45KLM7.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7266},"dist/lib/node-esm/logs-7J45KLM7.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-FEVP3MK4.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"@opentelemetry/api-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-logs-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["OtelLogs"],"entryPoint":"src/extensions/otel/logs.ts","inputs":{"src/extensions/otel/logs.ts":{"bytesInOutput":3076}},"bytes":3353},"dist/lib/node-esm/metrics-H7DDLYSG.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6101},"dist/lib/node-esm/metrics-H7DDLYSG.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-FEVP3MK4.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"@opentelemetry/exporter-metrics-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-metrics","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true}],"exports":["OtelMetrics"],"entryPoint":"src/extensions/otel/metrics.ts","inputs":{"src/extensions/otel/metrics.ts":{"bytesInOutput":3058}},"bytes":3344},"dist/lib/node-esm/chunk-FEVP3MK4.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1012},"dist/lib/node-esm/chunk-FEVP3MK4.mjs":{"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true}],"exports":["setDiagLogger"],"inputs":{"src/extensions/otel/otel.ts":{"bytesInOutput":229}},"bytes":426},"dist/lib/node-esm/traces-KMTHMYFX.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2878},"dist/lib/node-esm/traces-KMTHMYFX.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-trace-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-base","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"debug","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true}],"exports":["OtelTraces"],"entryPoint":"src/extensions/otel/traces.ts","inputs":{"src/extensions/otel/traces.ts":{"bytesInOutput":1255}},"bytes":1482},"dist/lib/node-esm/log-processor-TKJVJJSJ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3468},"dist/lib/node-esm/log-processor-TKJVJJSJ.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"posthog-js","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["logProcessor"],"entryPoint":"src/extensions/posthog/log-processor.ts","inputs":{"src/extensions/posthog/log-processor.ts":{"bytesInOutput":1338}},"bytes":1584},"dist/lib/node-esm/chunk-HSLMI22Q.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/chunk-HSLMI22Q.mjs":{"imports":[],"exports":["__export"],"inputs":{},"bytes":327}}}
1
+ {"inputs":{"src/storage/node.ts":{"bytes":13302,"imports":[{"path":"js-yaml","kind":"import-statement","external":true},{"path":"node:fs","kind":"import-statement","external":true},{"path":"node:fs/promises","kind":"import-statement","external":true},{"path":"node:path","kind":"import-statement","external":true},{"path":"uuid","kind":"import-statement","external":true}],"format":"esm"},"src/storage/index.ts":{"bytes":368,"imports":[{"path":"src/storage/node.ts","kind":"import-statement","original":"./node"}],"format":"esm"},"src/observability.ts":{"bytes":28799,"imports":[{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/storage/index.ts","kind":"import-statement","original":"./storage"}],"format":"esm"},"src/cli-observability-secrets.json":{"bytes":165,"imports":[]},"src/extensions/stub.ts":{"bytes":1689,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true}],"format":"esm"},"src/extensions/otel/otel.ts":{"bytes":3260,"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true}],"format":"esm"},"src/extensions/otel/logs.ts":{"bytes":14077,"imports":[{"path":"@opentelemetry/api-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-logs-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/extensions/otel/otel.ts","kind":"import-statement","original":"./otel"}],"format":"esm"},"src/extensions/otel/metrics.ts":{"bytes":12229,"imports":[{"path":"@opentelemetry/exporter-metrics-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-metrics","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"src/extensions/otel/otel.ts","kind":"import-statement","original":"./otel"}],"format":"esm"},"src/extensions/otel/span-processors.ts":{"bytes":4354,"imports":[{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/extensions/otel/traces.ts":{"bytes":13229,"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/core","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-trace-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-base","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"src/extensions/otel/otel.ts","kind":"import-statement","original":"./otel"},{"path":"src/extensions/otel/span-processors.ts","kind":"import-statement","original":"./span-processors"}],"format":"esm"},"src/extensions/otel/extension.ts":{"bytes":34487,"imports":[{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Match","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Ref","kind":"import-statement","external":true},{"path":"@dxos/config","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/cli-observability-secrets.json","kind":"import-statement","original":"../../cli-observability-secrets.json"},{"path":"src/storage/index.ts","kind":"import-statement","original":"../../storage"},{"path":"src/extensions/stub.ts","kind":"import-statement","original":"../stub"},{"path":"src/extensions/otel/logs.ts","kind":"dynamic-import","original":"./logs"},{"path":"src/extensions/otel/metrics.ts","kind":"dynamic-import","original":"./metrics"},{"path":"src/extensions/otel/traces.ts","kind":"dynamic-import","original":"./traces"}],"format":"esm"},"src/extensions/otel/index.ts":{"bytes":377,"imports":[{"path":"src/extensions/otel/extension.ts","kind":"import-statement","original":"./extension"}],"format":"esm"},"src/extensions/posthog/log-processor.ts":{"bytes":5374,"imports":[{"path":"posthog-js","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/extensions/posthog/extension.ts":{"bytes":23891,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/extensions/stub.ts","kind":"import-statement","original":"../stub"},{"path":"posthog-js","kind":"dynamic-import","external":true},{"path":"src/extensions/posthog/log-processor.ts","kind":"dynamic-import","original":"./log-processor"}],"format":"esm"},"src/extensions/posthog/index.ts":{"bytes":377,"imports":[{"path":"src/extensions/posthog/extension.ts","kind":"import-statement","original":"./extension"}],"format":"esm"},"src/extensions/index.ts":{"bytes":562,"imports":[{"path":"src/extensions/otel/index.ts","kind":"import-statement","original":"./otel"},{"path":"src/extensions/posthog/index.ts","kind":"import-statement","original":"./posthog"}],"format":"esm"},"src/observability-extension.ts":{"bytes":4066,"imports":[{"path":"src/extensions/index.ts","kind":"import-statement","original":"./extensions"}],"format":"esm"},"src/providers/client-observability.ts":{"bytes":35900,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true}],"format":"esm"},"src/providers/ip-data.ts":{"bytes":9579,"imports":[{"path":"@effect/platform/FetchHttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClientRequest","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"localforage","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/providers/storage.ts":{"bytes":3514,"imports":[{"path":"effect/Duration","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Fiber","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true}],"format":"esm"},"src/providers/index.ts":{"bytes":749,"imports":[{"path":"src/providers/client-observability.ts","kind":"import-statement","original":"./client-observability"},{"path":"src/providers/ip-data.ts","kind":"import-statement","original":"./ip-data"},{"path":"src/providers/storage.ts","kind":"import-statement","original":"./storage"}],"format":"esm"},"src/index.ts":{"bytes":921,"imports":[{"path":"src/observability.ts","kind":"import-statement","original":"./observability"},{"path":"src/observability-extension.ts","kind":"import-statement","original":"./observability-extension"},{"path":"src/providers/index.ts","kind":"import-statement","original":"./providers"}],"format":"esm"}},"outputs":{"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":75545},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"effect/Array","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"js-yaml","kind":"import-statement","external":true},{"path":"node:fs","kind":"import-statement","external":true},{"path":"node:fs/promises","kind":"import-statement","external":true},{"path":"node:path","kind":"import-statement","external":true},{"path":"uuid","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Match","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Ref","kind":"import-statement","external":true},{"path":"@dxos/config","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"dist/lib/node-esm/logs-ARJUVN3T.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/metrics-DREJOOAC.mjs","kind":"dynamic-import"},{"path":"dist/lib/node-esm/traces-74F7JUKF.mjs","kind":"dynamic-import"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"posthog-js","kind":"dynamic-import","external":true},{"path":"dist/lib/node-esm/log-processor-ZODHERST.mjs","kind":"dynamic-import"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@effect/platform/FetchHttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClientRequest","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"localforage","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect/Duration","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Fiber","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true}],"exports":["Observability","ObservabilityExtension","ObservabilityProvider"],"entryPoint":"src/index.ts","inputs":{"src/observability.ts":{"bytesInOutput":7664},"src/storage/node.ts":{"bytesInOutput":2937},"src/index.ts":{"bytesInOutput":0},"src/observability-extension.ts":{"bytesInOutput":151},"src/extensions/otel/index.ts":{"bytesInOutput":83},"src/extensions/otel/extension.ts":{"bytesInOutput":7032},"src/cli-observability-secrets.json":{"bytesInOutput":199},"src/extensions/stub.ts":{"bytesInOutput":311},"src/extensions/index.ts":{"bytesInOutput":0},"src/extensions/posthog/index.ts":{"bytesInOutput":90},"src/extensions/posthog/extension.ts":{"bytesInOutput":6136},"src/providers/index.ts":{"bytesInOutput":174},"src/providers/client-observability.ts":{"bytesInOutput":8977},"src/providers/ip-data.ts":{"bytesInOutput":2202},"src/providers/storage.ts":{"bytesInOutput":895}},"bytes":37674},"dist/lib/node-esm/logs-ARJUVN3T.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7526},"dist/lib/node-esm/logs-ARJUVN3T.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-EDDZWPYV.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"@opentelemetry/api-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-logs-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["OtelLogs"],"entryPoint":"src/extensions/otel/logs.ts","inputs":{"src/extensions/otel/logs.ts":{"bytesInOutput":3158}},"bytes":3453},"dist/lib/node-esm/metrics-DREJOOAC.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5591},"dist/lib/node-esm/metrics-DREJOOAC.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-EDDZWPYV.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"@opentelemetry/exporter-metrics-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-metrics","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true}],"exports":["OtelMetrics"],"entryPoint":"src/extensions/otel/metrics.ts","inputs":{"src/extensions/otel/metrics.ts":{"bytesInOutput":2996}},"bytes":3300},"dist/lib/node-esm/traces-74F7JUKF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":8310},"dist/lib/node-esm/traces-74F7JUKF.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-EDDZWPYV.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/core","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-trace-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-base","kind":"import-statement","external":true},{"path":"@opentelemetry/semantic-conventions","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["OtelTraces"],"entryPoint":"src/extensions/otel/traces.ts","inputs":{"src/extensions/otel/traces.ts":{"bytesInOutput":3527},"src/extensions/otel/span-processors.ts":{"bytesInOutput":644}},"bytes":4532},"dist/lib/node-esm/chunk-EDDZWPYV.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1779},"dist/lib/node-esm/chunk-EDDZWPYV.mjs":{"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true}],"exports":["resolveOtlpUrl","setDiagLogger"],"inputs":{"src/extensions/otel/otel.ts":{"bytesInOutput":404}},"bytes":619},"dist/lib/node-esm/log-processor-ZODHERST.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2899},"dist/lib/node-esm/log-processor-ZODHERST.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-HSLMI22Q.mjs","kind":"import-statement"},{"path":"posthog-js","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["logProcessor"],"entryPoint":"src/extensions/posthog/log-processor.ts","inputs":{"src/extensions/posthog/log-processor.ts":{"bytesInOutput":1175}},"bytes":1421},"dist/lib/node-esm/chunk-HSLMI22Q.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/chunk-HSLMI22Q.mjs":{"imports":[],"exports":["__export"],"inputs":{},"bytes":327}}}
@@ -1,7 +1,8 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
+ resolveOtlpUrl,
3
4
  setDiagLogger
4
- } from "./chunk-FEVP3MK4.mjs";
5
+ } from "./chunk-EDDZWPYV.mjs";
5
6
  import "./chunk-HSLMI22Q.mjs";
6
7
 
7
8
  // src/extensions/otel/metrics.ts
@@ -20,7 +21,7 @@ var OtelMetrics = class {
20
21
  setDiagLogger(options.consoleDiagLogLevel);
21
22
  const grafanaMetricReader = new PeriodicExportingMetricReader({
22
23
  exporter: new OTLPMetricExporter({
23
- url: this.options.endpoint + "/v1/metrics",
24
+ url: resolveOtlpUrl(this.options.endpoint + "/v1/metrics"),
24
25
  headers: this.options.headers
25
26
  }),
26
27
  exportIntervalMillis: EXPORT_INTERVAL
@@ -57,12 +58,7 @@ var OtelMetrics = class {
57
58
  ...this.options.getTags(),
58
59
  ...tags
59
60
  }
60
- }, {
61
- F: __dxlog_file,
62
- L: 60,
63
- S: this,
64
- C: (f, a) => f(...a)
65
- });
61
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 52, S: this });
66
62
  gauge.record(value, {
67
63
  ...this.options.getTags(),
68
64
  ...tags
@@ -77,12 +73,7 @@ var OtelMetrics = class {
77
73
  ...this.options.getTags(),
78
74
  ...tags
79
75
  }
80
- }, {
81
- F: __dxlog_file,
82
- L: 66,
83
- S: this,
84
- C: (f, a) => f(...a)
85
- });
76
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 67, S: this });
86
77
  counter.add(value ?? 1, {
87
78
  ...this.options.getTags(),
88
79
  ...tags
@@ -97,12 +88,7 @@ var OtelMetrics = class {
97
88
  ...this.options.getTags(),
98
89
  ...tags
99
90
  }
100
- }, {
101
- F: __dxlog_file,
102
- L: 72,
103
- S: this,
104
- C: (f, a) => f(...a)
105
- });
91
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 82, S: this });
106
92
  distribution.record(value, {
107
93
  ...this.options.getTags(),
108
94
  ...tags
@@ -128,4 +114,4 @@ var convertTags = (data) => {
128
114
  export {
129
115
  OtelMetrics
130
116
  };
131
- //# sourceMappingURL=metrics-H7DDLYSG.mjs.map
117
+ //# sourceMappingURL=metrics-DREJOOAC.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extensions/otel/metrics.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { type Meter } from '@opentelemetry/api';\nimport { OTLPMetricExporter } from '@opentelemetry/exporter-metrics-otlp-http';\nimport { MeterProvider, PeriodicExportingMetricReader } from '@opentelemetry/sdk-metrics';\n\nimport { log } from '@dxos/log';\nimport { type MetricData, TRACE_PROCESSOR } from '@dxos/tracing';\n\nimport { type OtelOptions, resolveOtlpUrl, setDiagLogger } from './otel';\n\nconst EXPORT_INTERVAL = 60 * 1000;\n\nexport class OtelMetrics {\n private _meterProvider: MeterProvider;\n private _meter: Meter;\n\n constructor(private readonly options: OtelOptions) {\n // TODO: improve error handling/logging\n // https://github.com/open-telemetry/opentelemetry-js/issues/4823\n setDiagLogger(options.consoleDiagLogLevel);\n\n const grafanaMetricReader = new PeriodicExportingMetricReader({\n exporter: new OTLPMetricExporter({\n url: resolveOtlpUrl(this.options.endpoint + '/v1/metrics'),\n headers: this.options.headers,\n }),\n exportIntervalMillis: EXPORT_INTERVAL,\n });\n\n this._meterProvider = new MeterProvider({\n resource: this.options.resource,\n readers: [grafanaMetricReader],\n });\n this._meter = this._meterProvider.getMeter('dxos-observability');\n\n const metrics = {\n // TODO: update metrics names and remove prefix?\n increment: (name: string, value?: number, data?: MetricData) => {\n this.increment(name, value, convertTags(data));\n },\n distribution: (name: string, value: number, data?: MetricData) => {\n this.distribution(name, value, convertTags(data));\n },\n set: (name: string, value: number | string, data?: MetricData) => {\n // Not implemented, not part of Otel spec.\n },\n gauge: (name: string, value: number, data?: MetricData) => {\n this.gauge(name, value, convertTags(data));\n },\n };\n\n TRACE_PROCESSOR.remoteMetrics.registerProcessor(metrics);\n }\n\n gauge(name: string, value: number, tags?: any): void {\n const gauge = this._meter.createGauge(name);\n log('otel gauge', { name, value, tags: { ...this.options.getTags(), ...tags } });\n gauge.record(value, { ...this.options.getTags(), ...tags });\n }\n\n increment(name: string, value?: number, tags?: any): void {\n const counter = this._meter.createCounter(name);\n log('otel counter', { name, value, tags: { ...this.options.getTags(), ...tags } });\n counter.add(value ?? 1, { ...this.options.getTags(), ...tags });\n }\n\n distribution(name: string, value: number, tags?: any): void {\n const distribution = this._meter.createHistogram(name);\n log('otel distribution', { name, value, tags: { ...this.options.getTags(), ...tags } });\n distribution.record(value, { ...this.options.getTags(), ...tags });\n }\n\n flush(): Promise<void> {\n return this._meterProvider.forceFlush();\n }\n\n close(): Promise<void> {\n return this._meterProvider.shutdown();\n }\n}\n\nconst convertTags = (data?: MetricData) => {\n if (data && data.tags) {\n return Object.entries(data.tags).reduce<{ [key: string]: any }>((obj, [key, value]) => {\n obj[key] = value;\n return obj;\n }, {});\n } else {\n return {};\n }\n};\n"],
5
+ "mappings": ";;;;;;;;AAKA,SAASA,0BAA0B;AACnC,SAASC,eAAeC,qCAAqC;AAE7D,SAASC,WAAW;AACpB,SAA0BC,uBAAuB;AAIjD,IAAA,eAAMC;;AAGIC,IAAAA,cAAAA,MAA8B;EAC9BC;EAER;;cACE,SAAA;AACA,SAAA,UAAA;kBAIY,QAAIC,mBAAmB;gCACX,IAAI,8BAAoB;gBAC5CC,IAAS,mBAAoB;QAC/B,KAAA,eAAA,KAAA,QAAA,WAAA,aAAA;QACAC,SAAAA,KAAAA,QAAsBL;MACxB,CAAA;MAEI,sBAAsBM;;SAExBC,iBAAS,IAAA,cAAA;gBAACC,KAAAA,QAAAA;eAAoB;QAChC;MACI;IAEJ,CAAA;SACE,SAAA,KAAA,eAAA,SAAA,oBAAgD;UAChDC,UAAYC;;MAEZ,WAAA,CAAA,MAAA,OAAA,SAAA;AACAC,aAAAA,UAAeD,MAAcE,OAAeC,YAAAA,IAAAA,CAAAA;;MAE5C,cAAA,CAAA,MAAA,OAAA,SAAA;AACAC,aAAMJ,aAAsCG,MAAAA,OAAAA,YAAAA,IAAAA,CAAAA;MAC1C;MACF,KAAA,CAAA,MAAA,OAAA,SAAA;;MAGA,OAAA,CAAA,MAAA,OAAA,SAAA;AACF,aAAA,MAAA,MAAA,OAAA,YAAA,IAAA,CAAA;MAEAE;IACF;AAEAC,oBAAmCC,cAAkB,kBAAA,OAAA;;QAEnDC,MAAI,OAAA,MAAc;UAAER,QAAAA,KAAAA,OAAAA,YAAAA,IAAAA;QAAME,cAAAA;MAAOK;;YAAmC;QAAQ,GAAA,KAAA,QAAA,QAAA;QAAE,GAAA;MAC9ED;qBAA8BG,YAAQC,GAAO,cAAE,GAAA,IAAA,GAAA,KAAA,CAAA;UAAE,OAAO,OAAA;MAAC,GAAA,KAAA,QAAA,QAAA;MAC3D,GAAA;IAEAX,CAAAA;;YAEM,MAAA,OAAA,MAAgB;UAAEC,UAAAA,KAAAA,OAAAA,cAAAA,IAAAA;QAAME,gBAAAA;MAAOK;;YAAmC;QAAQ,GAAA,KAAA,QAAA,QAAA;QAAE,GAAA;MAChFI;qBAAkCF,YAAQC,GAAO,cAAE,GAAA,IAAA,GAAA,KAAA,CAAA;YAAKH,IAAI,SAAA,GAAA;MAAC,GAAA,KAAA,QAAA,QAAA;MAC/D,GAAA;IAEAN,CAAAA;;eAEM,MAAA,OAAA,MAAqB;UAAED,eAAAA,KAAAA,OAAAA,gBAAAA,IAAAA;QAAME,qBAAAA;MAAOK;;YAAmC;QAAQ,GAAA,KAAA,QAAA,QAAA;QAAE,GAAA;MACrFN;qBAAqCQ,YAAQC,GAAO,cAAE,GAAA,IAAA,GAAA,KAAA,CAAA;iBAAS,OAAA,OAAA;MAAC,GAAA,KAAA,QAAA,QAAA;MAClE,GAAA;IAEAE,CAAAA;;EAEA,QAAA;AAEAC,WAAuB,KAAA,eAAA,WAAA;;EAEvB,QAAA;AACF,WAAA,KAAA,eAAA,SAAA;EAEA;;kBAEWC,CAAAA,SAAOC;cACRC,KAAI,MAAGd;WACX,OAAOe,QAAAA,KAAAA,IAAAA,EAAAA,OAAAA,CAAAA,KAAAA,CAAAA,KAAAA,KAAAA,MAAAA;AACL,UAAA,GAAA,IAAA;AACC,aAAA;IACL,GAAA,CAAA,CAAA;EACF,OAAA;AACF,WAAA,CAAA;;;",
6
+ "names": ["OTLPMetricExporter", "MeterProvider", "PeriodicExportingMetricReader", "log", "TRACE_PROCESSOR", "EXPORT_INTERVAL", "_meterProvider", "_meter", "OTLPMetricExporter", "headers", "exportIntervalMillis", "MeterProvider", "readers", "grafanaMetricReader", "increment", "name", "distribution", "value", "data", "set", "TRACE_PROCESSOR", "gauge", "tags", "log", "options", "getTags", "counter", "flush", "close", "Object", "entries", "key", "obj"]
7
+ }
@@ -0,0 +1,125 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ resolveOtlpUrl
4
+ } from "./chunk-EDDZWPYV.mjs";
5
+ import "./chunk-HSLMI22Q.mjs";
6
+
7
+ // src/extensions/otel/traces.ts
8
+ import { ROOT_CONTEXT, SpanStatusCode, context as otelContext, propagation, trace } from "@opentelemetry/api";
9
+ import { W3CTraceContextPropagator } from "@opentelemetry/core";
10
+ import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";
11
+ import { BasicTracerProvider, BatchSpanProcessor } from "@opentelemetry/sdk-trace-base";
12
+ import { ATTR_SERVICE_VERSION } from "@opentelemetry/semantic-conventions";
13
+ import { log as log2 } from "@dxos/log";
14
+ import { TRACE_PROCESSOR } from "@dxos/tracing";
15
+
16
+ // src/extensions/otel/span-processors.ts
17
+ import { log } from "@dxos/log";
18
+ var __dxlog_file = "/__w/dxos/dxos/packages/sdk/observability/src/extensions/otel/span-processors.ts";
19
+ var TagInjectorSpanProcessor = class {
20
+ _getTags;
21
+ constructor(_getTags) {
22
+ this._getTags = _getTags;
23
+ }
24
+ onStart(span, _parentContext) {
25
+ let tags;
26
+ try {
27
+ tags = this._getTags();
28
+ } catch (err) {
29
+ log.catch(err, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 28, S: this });
30
+ return;
31
+ }
32
+ for (const [key, value] of Object.entries(tags)) {
33
+ span.setAttribute(key, value);
34
+ }
35
+ }
36
+ onEnd(_span) {
37
+ }
38
+ async shutdown() {
39
+ }
40
+ async forceFlush() {
41
+ }
42
+ };
43
+
44
+ // src/extensions/otel/traces.ts
45
+ var __dxlog_file2 = "/__w/dxos/dxos/packages/sdk/observability/src/extensions/otel/traces.ts";
46
+ var OtelTraces = class {
47
+ options;
48
+ _tracer;
49
+ _tracerProvider;
50
+ constructor(options) {
51
+ this.options = options;
52
+ propagation.setGlobalPropagator(new W3CTraceContextPropagator());
53
+ this._tracerProvider = new BasicTracerProvider({
54
+ resource: this.options.resource,
55
+ spanProcessors: [
56
+ new TagInjectorSpanProcessor(this.options.getTags),
57
+ new BatchSpanProcessor(new OTLPTraceExporter({
58
+ url: resolveOtlpUrl(this.options.endpoint + "/v1/traces"),
59
+ headers: this.options.headers,
60
+ concurrencyLimit: 10
61
+ }))
62
+ ]
63
+ });
64
+ trace.setGlobalTracerProvider(this._tracerProvider);
65
+ this._tracer = trace.getTracer("dxos-observability", this.options.resource.attributes[ATTR_SERVICE_VERSION]?.toString());
66
+ }
67
+ /**
68
+ * Forcibly flush the BatchSpanProcessor. Call before process exit to avoid
69
+ * losing queued spans (which manifests as "Missing Span" in SigNoz — their
70
+ * already-exported children reference a parent that never made it to OTLP).
71
+ */
72
+ async flush() {
73
+ await this._tracerProvider.forceFlush();
74
+ }
75
+ /**
76
+ * Flush + shut down the tracer provider via `BasicTracerProvider.shutdown()`,
77
+ * which forces a final export then terminates all span processors.
78
+ *
79
+ * Terminal and effectively one-shot: safe to call after `flush()`, but
80
+ * `flush()` MUST NOT be called after `close()` — shutdown stops further
81
+ * exporting, so subsequent `close()`/`flush()` calls resolve without
82
+ * emitting new spans.
83
+ */
84
+ async close() {
85
+ await this._tracerProvider.shutdown();
86
+ }
87
+ start() {
88
+ log2("trace processor registered", void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file2, L: 53, S: this });
89
+ const tracer = this._tracer;
90
+ TRACE_PROCESSOR.tracingBackend = {
91
+ startSpan: (options) => {
92
+ log2("begin otel trace", {
93
+ options
94
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file2, L: 57, S: this });
95
+ const parentCtx = options.parentContext ? propagation.extract(ROOT_CONTEXT, {
96
+ traceparent: options.parentContext.traceparent,
97
+ tracestate: options.parentContext.tracestate ?? ""
98
+ }) : otelContext.active();
99
+ const span = tracer.startSpan(options.name, options, parentCtx);
100
+ const sc = span.spanContext();
101
+ const spanContext = sc && sc.traceId && sc.spanId ? {
102
+ traceparent: `00-${sc.traceId}-${sc.spanId}-${(sc.traceFlags ?? 0).toString(16).padStart(2, "0")}`,
103
+ tracestate: sc.traceState?.serialize()
104
+ } : void 0;
105
+ return {
106
+ end: (endTime) => span.end(endTime),
107
+ setError: (err) => {
108
+ if (err instanceof Error) {
109
+ span.recordException(err);
110
+ }
111
+ span.setStatus({
112
+ code: SpanStatusCode.ERROR,
113
+ message: err instanceof Error ? err.message : String(err)
114
+ });
115
+ },
116
+ spanContext
117
+ };
118
+ }
119
+ };
120
+ }
121
+ };
122
+ export {
123
+ OtelTraces
124
+ };
125
+ //# sourceMappingURL=traces-74F7JUKF.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/extensions/otel/traces.ts", "../../../src/extensions/otel/span-processors.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport {\n ROOT_CONTEXT,\n SpanStatusCode,\n type Tracer,\n context as otelContext,\n propagation,\n trace,\n} from '@opentelemetry/api';\nimport { W3CTraceContextPropagator } from '@opentelemetry/core';\nimport { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';\nimport { BasicTracerProvider, BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';\nimport { ATTR_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';\n\nimport { log } from '@dxos/log';\nimport { type RemoteSpan, type StartSpanOptions, TRACE_PROCESSOR } from '@dxos/tracing';\n\nimport { type OtelOptions, resolveOtlpUrl } from './otel';\nimport { TagInjectorSpanProcessor } from './span-processors';\n\nexport class OtelTraces {\n private _tracer: Tracer;\n private readonly _tracerProvider: BasicTracerProvider;\n\n constructor(private readonly options: OtelOptions) {\n propagation.setGlobalPropagator(new W3CTraceContextPropagator());\n\n this._tracerProvider = new BasicTracerProvider({\n resource: this.options.resource,\n spanProcessors: [\n new TagInjectorSpanProcessor(this.options.getTags),\n new BatchSpanProcessor(\n new OTLPTraceExporter({\n url: resolveOtlpUrl(this.options.endpoint + '/v1/traces'),\n headers: this.options.headers,\n concurrencyLimit: 10,\n }),\n ),\n ],\n });\n\n trace.setGlobalTracerProvider(this._tracerProvider);\n this._tracer = trace.getTracer(\n 'dxos-observability',\n this.options.resource.attributes[ATTR_SERVICE_VERSION]?.toString(),\n );\n }\n\n /**\n * Forcibly flush the BatchSpanProcessor. Call before process exit to avoid\n * losing queued spans (which manifests as \"Missing Span\" in SigNoz — their\n * already-exported children reference a parent that never made it to OTLP).\n */\n public async flush(): Promise<void> {\n await this._tracerProvider.forceFlush();\n }\n\n /**\n * Flush + shut down the tracer provider via `BasicTracerProvider.shutdown()`,\n * which forces a final export then terminates all span processors.\n *\n * Terminal and effectively one-shot: safe to call after `flush()`, but\n * `flush()` MUST NOT be called after `close()` — shutdown stops further\n * exporting, so subsequent `close()`/`flush()` calls resolve without\n * emitting new spans.\n */\n public async close(): Promise<void> {\n await this._tracerProvider.shutdown();\n }\n\n public start(): void {\n log('trace processor registered');\n\n const tracer = this._tracer;\n\n TRACE_PROCESSOR.tracingBackend = {\n startSpan: (options: StartSpanOptions): RemoteSpan => {\n log('begin otel trace', { options });\n const parentCtx = options.parentContext\n ? propagation.extract(ROOT_CONTEXT, {\n traceparent: options.parentContext.traceparent,\n tracestate: options.parentContext.tracestate ?? '',\n })\n : otelContext.active();\n\n const span = tracer.startSpan(options.name, options, parentCtx);\n\n const sc = span.spanContext();\n const spanContext =\n sc && sc.traceId && sc.spanId\n ? {\n traceparent: `00-${sc.traceId}-${sc.spanId}-${(sc.traceFlags ?? 0).toString(16).padStart(2, '0')}`,\n tracestate: sc.traceState?.serialize(),\n }\n : undefined;\n\n return {\n end: (endTime?: number) => span.end(endTime),\n setError: (err: unknown) => {\n if (err instanceof Error) {\n span.recordException(err);\n }\n span.setStatus({ code: SpanStatusCode.ERROR, message: err instanceof Error ? err.message : String(err) });\n },\n spanContext,\n };\n },\n };\n }\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Context } from '@opentelemetry/api';\nimport { type ReadableSpan, type Span, type SpanProcessor } from '@opentelemetry/sdk-trace-base';\n\nimport { log } from '@dxos/log';\n\n/**\n * Injects dynamic tags as attributes on every span.\n *\n * This is an `onStart`-only processor; `onEnd`/`shutdown`/`forceFlush` are no-ops\n * because this processor never holds pending work (delegates export to downstream\n * processors like BatchSpanProcessor).\n *\n * Use for tags that are not known at provider construction (e.g. identity\n * resolved asynchronously after login). For values known at startup, prefer\n * putting them on the `Resource` — see `extension.ts`.\n *\n * Failures in the tag provider are swallowed so they can never break span\n * recording (the processor is best-effort and runs on the startSpan hot path).\n */\nexport class TagInjectorSpanProcessor implements SpanProcessor {\n constructor(private readonly _getTags: () => Record<string, string>) {}\n\n onStart(span: Span, _parentContext: Context): void {\n let tags: Record<string, string>;\n try {\n tags = this._getTags();\n } catch (err) {\n log.catch(err);\n return;\n }\n for (const [key, value] of Object.entries(tags)) {\n span.setAttribute(key, value);\n }\n }\n\n onEnd(_span: ReadableSpan): void {}\n\n async shutdown(): Promise<void> {}\n\n async forceFlush(): Promise<void> {}\n}\n"],
5
+ "mappings": ";;;;;;;AAIA,SACEA,cACAC,gBAEAC,WAAWC,aACXC,aACAC,aACK;AACP,SAASC,iCAAiC;AAC1C,SAASC,yBAAyB;AAClC,SAASC,qBAAqBC,0BAA0B;AACxD,SAASC,4BAA4B;AAErC,SAASC,OAAAA,YAAW;AACpB,SAAiDC,uBAAuB;;;ACXxE,SAASC,WAAW;AAEpB,IAAA,eAAA;AAeE,IAA6BC,2BAA7B,MAAqE;;EAAC,YAAA,UAAA;AAEtEC,SAAQC,WAAYC;;UAEd,MAAA,gBAAA;QACFC;AACF,QAAE;AACAL,aAAIM,KAAMC,SAAAA;aACV,KAAA;AACF,UAAA,MAAA,KAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,KAAA,CAAA;AACA;;AAEA,eAAA,CAAA,KAAA,KAAA,KAAA,OAAA,QAAA,IAAA,GAAA;AACF,WAAA,aAAA,KAAA,KAAA;IAEAC;EAEA;EAEA,MAAMC,OAAAA;EAAAA;EACR,MAAA,WAAA;EAAA;;;;;;ADrBA,IAAAC,gBAAaC;AACHC,IAAgB,aAAhBA,MAAgB;EACPC;EAEjB;;cACEC,SAAYC;AAEZ,SAAKF,UAAAA;gBACHG,oBAAuBA,IAAQ,0BAAA,CAAA;SAC/BC,kBAAgB,IAAA,oBAAA;gBACVC,KAAAA,QAAAA;sBACAC;YAEAC,yBAAyBC,KAAAA,QAAQC,OAAW;YAC5CC,mBAAcF,IAAQE,kBAAO;UAC7BC,KAAAA,eAAkB,KAAA,QAAA,WAAA,YAAA;UACpB,SAAA,KAAA,QAAA;UAEH,kBAAA;QACH,CAAA,CAAA;MAEAC;IACA,CAAA;AAIF,UAAA,wBAAA,KAAA,eAAA;AAEA,SAAA,UAAA,MAAA,UAAA,sBAAA,KAAA,QAAA,SAAA,WAAA,oBAAA,GAAA,SAAA,CAAA;;;;;;;EAOA,MAAA,QAAA;AAEA,UAAA,KAAA,gBAAA,WAAA;;;;;;;;;;;EAWA,MAAA,QAAA;AAEOC,UAAc,KAAA,gBAAA,SAAA;;UAGnB;AAEAC,IAAAA,KAAAA,8BAAiC,QAAA,EAAA,YAAA,YAAA,GAAAjB,eAAA,GAAA,IAAA,GAAA,KAAA,CAAA;UAC/BkB,SAAW,KAACP;oBACN,iBAAoB;iBAAEA,CAAAA,YAAAA;AAAQ,QAAAQ,KAAA,oBAAA;UAClC;yBAEMC,YAAqBC,GAAAA,eAAcD,GAAAA,IAAAA,GAAAA,KAAW,CAAA;cAC9CE,YAAYX,QAAQU,gBAAcC,YAAc,QAAA,cAAA;UAClD,aACYC,QAAM,cAAA;UAEtB,YAAaC,QAAON,cAAkBO,cAAMd;QAE5C,CAAA,IAAA,YAAgBe,OAAAA;AAChB,cAAMA,OAAAA,OACJC,UAASC,QAAO,MAAOC,SACnB,SAAA;cACET,KAAAA,KAAAA,YAAsBQ;cACtBN,cAAeQ,MAAAA,GAAU,WAAEC,GAAAA,SAAAA;UAE7BC,aAAAA,MAAAA,GAAAA,OAAAA,IAAAA,GAAAA,MAAAA,KAAAA,GAAAA,cAAAA,GAAAA,SAAAA,EAAAA,EAAAA,SAAAA,GAAAA,GAAAA,CAAAA;UAEN,YAAO,GAAA,YAAA,UAAA;YACLC;eACAC;eACE,CAAA,YAAIC,KAAAA,IAAeC,OAAO;oBACxBC,CAAAA,QAAKC;AACP,gBAAA,eAAA,OAAA;AACAD,mBAAKE,gBAAU,GAAA;;iBAA8BC,UAASL;cAAiD,MAAA,eAAA;cACzG,SAAA,eAAA,QAAA,IAAA,UAAA,OAAA,GAAA;YACAT,CAAAA;UACF;UACF;QACF;MACF;IACF;;;",
6
+ "names": ["ROOT_CONTEXT", "SpanStatusCode", "context", "otelContext", "propagation", "trace", "W3CTraceContextPropagator", "OTLPTraceExporter", "BasicTracerProvider", "BatchSpanProcessor", "ATTR_SERVICE_VERSION", "log", "TRACE_PROCESSOR", "log", "_getTags", "onStart", "span", "_parentContext", "tags", "catch", "err", "onEnd", "forceFlush", "__dxlog_file", "OtelTraces", "_tracer", "_tracerProvider", "propagation", "setGlobalPropagator", "resource", "spanProcessors", "TagInjectorSpanProcessor", "BatchSpanProcessor", "url", "options", "endpoint", "headers", "concurrencyLimit", "trace", "start", "TRACE_PROCESSOR", "startSpan", "log", "traceparent", "parentContext", "tracestate", "active", "tracer", "name", "spanContext", "sc", "traceId", "spanId", "traceState", "serialize", "undefined", "end", "setError", "err", "Error", "span", "recordException", "setStatus", "message"]
7
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "POSTHOG_API_KEY": null,
3
3
  "IPDATA_API_KEY": "73dfdecdf979c18f07d50cf841bbdd9e589f237256326ac8cca23786",
4
- "OTEL_ENDPOINT": "https://ingest.eu.signoz.cloud:443",
5
- "OTEL_HEADERS": "signoz-ingestion-key: 5300e0c9-a5e8-4a10-9c61-f473e539c0b7"
4
+ "OTEL_ENDPOINT": "/api/otel",
5
+ "OTEL_HEADERS": null
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/otel/extension.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAO,MAAM,WAAW,CAAC;AAI1C,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,+BAA+B,CAAC;AAIlF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,+FAA+F;IAC/F,WAAW,EAAE,MAAM,CAAC;IACpB,kGAAkG;IAClG,cAAc,EAAE,MAAM,CAAC;IACvB,sGAAsG;IACtG,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,sFAAsF;AACtF,eAAO,MAAM,UAAU,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,CAgI9E,CAAC"}
1
+ {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/otel/extension.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAKxC,OAAO,EAAE,KAAK,MAAM,EAAuB,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAO,MAAM,WAAW,CAAC;AAI1C,OAAO,EAAE,KAAK,SAAS,EAAqB,MAAM,+BAA+B,CAAC;AAIlF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,+FAA+F;IAC/F,WAAW,EAAE,MAAM,CAAC;IACpB,kGAAkG;IAClG,cAAc,EAAE,MAAM,CAAC;IACvB,sGAAsG;IACtG,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,sFAAsF;AACtF,eAAO,MAAM,UAAU,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,CAuL9E,CAAC"}
@@ -7,6 +7,7 @@ import * as Effect from 'effect/Effect';
7
7
  import * as Match from 'effect/Match';
8
8
  import * as Option from 'effect/Option';
9
9
  import * as Ref from 'effect/Ref';
10
+ import { resolveTelemetryTag } from '@dxos/config';
10
11
  import { LogLevel, log } from '@dxos/log';
11
12
  import { isNode, isNonNullable } from '@dxos/util';
12
13
  import buildSecrets from '../../cli-observability-secrets.json';
@@ -23,26 +24,55 @@ logs: logsEnabled = false, logLevel = LogLevel.INFO, metrics: metricsEnabled = f
23
24
  const { OtelMetrics } = yield* Effect.promise(() => import('./metrics'));
24
25
  const { OtelTraces } = yield* Effect.promise(() => import('./traces'));
25
26
  const cachedDisabled = yield* Effect.promise(() => isObservabilityDisabled(serviceName));
26
- const enabledRef = yield* Ref.make(!cachedDisabled);
27
+ const disabled = cachedDisabled || isObservabilityDisabledSync(serviceName);
28
+ const enabledRef = yield* Ref.make(!disabled);
27
29
  const tags = new Map();
28
- const endpoint = isNode()
30
+ const rawEndpoint = isNode()
29
31
  ? (process.env.DX_OTEL_ENDPOINT ?? _endpoint ?? buildSecrets.OTEL_ENDPOINT)
30
- : config.values.runtime?.app?.env?.DX_OTEL_ENDPOINT;
32
+ : (config.values.runtime?.app?.env?.DX_OTEL_ENDPOINT ?? _endpoint);
33
+ // The OTLP exporter (>= 0.203) validates URLs and rejects relative paths.
34
+ // In the browser/worker, resolve relative endpoints against the current origin
35
+ // so callers can keep using paths like `/api/otel` for proxied deployments.
36
+ const endpoint = !isNode() && rawEndpoint?.startsWith('/') ? resolveRelativeEndpoint(rawEndpoint) : rawEndpoint;
31
37
  const headers = _headers ??
32
38
  Match.value(isNode()).pipe(Match.when(true, () => Option.fromNullable(process.env.DX_OTEL_HEADERS ?? buildSecrets.OTEL_HEADERS)), Match.when(false, () => Option.fromNullable(config.values.runtime?.app?.env?.DX_OTEL_HEADERS)), Match.exhaustive, Option.map((raw) => parseHeaders(raw)), Option.getOrElse(() => undefined));
33
- if (!endpoint || !headers) {
34
- log.info('Missing OTEL_ENDPOINT or OTEL_HEADERS');
39
+ if (!endpoint) {
40
+ log.info('Missing OTEL_ENDPOINT');
35
41
  return stubExtension;
36
42
  }
43
+ // Headers are optional when using a proxy that injects auth server-side.
44
+ const resolvedHeaders = headers ?? {};
45
+ // OTLP HTTP exporters require an absolute URL. Resolve relative paths using the current origin.
46
+ // globalThis.location is defined in all browser contexts (main thread, dedicated/service workers).
47
+ const resolvedEndpoint = !isNode() && endpoint.startsWith('/') ? `${globalThis.location.origin}${endpoint}` : endpoint;
48
+ // Matches edge's `ctx.tag` span attribute (stamped by the edge log middleware
49
+ // when it reads the `X-DXOS-Client-Tag` header, see
50
+ // /edge/packages/services/edge/src/log-middleware.ts).
51
+ //
52
+ // Stamped in TWO places:
53
+ // 1. Resource attribute — so logs and metrics emitted from this extension
54
+ // also carry it, and for zero per-span cost.
55
+ // 2. Span attribute via `tags` — because edge puts `ctx.tag` in the span-
56
+ // attribute context (not resource), and SigNoz indexes the two contexts
57
+ // separately. Stamping it on span attributes here keeps a single
58
+ // `ctx.tag = <value>` filter matching spans from both tiers in SigNoz
59
+ // without requiring qualified `attribute.ctx.tag`/`resource.ctx.tag` syntax.
60
+ const clientTag = resolveTelemetryTag(config);
61
+ if (clientTag) {
62
+ tags.set('ctx.tag', clientTag);
63
+ }
37
64
  const resource = defaultResource().merge(resourceFromAttributes({
38
65
  [ATTR_SERVICE_NAME]: serviceName,
39
66
  [ATTR_SERVICE_VERSION]: serviceVersion,
67
+ 'session.id': crypto.randomUUID(),
40
68
  'deployment.environment': environment,
69
+ 'dxos.process.type': detectProcessType(),
70
+ ...(clientTag ? { 'ctx.tag': clientTag } : {}),
41
71
  }));
42
72
  const logs = logsEnabled
43
73
  ? new OtelLogs({
44
- endpoint,
45
- headers,
74
+ endpoint: resolvedEndpoint,
75
+ headers: resolvedHeaders,
46
76
  resource,
47
77
  getTags: () => Object.fromEntries(tags),
48
78
  logLevel,
@@ -50,22 +80,25 @@ logs: logsEnabled = false, logLevel = LogLevel.INFO, metrics: metricsEnabled = f
50
80
  : undefined;
51
81
  const metrics = metricsEnabled
52
82
  ? new OtelMetrics({
53
- endpoint,
54
- headers,
83
+ endpoint: resolvedEndpoint,
84
+ headers: resolvedHeaders,
55
85
  resource,
56
86
  getTags: () => Object.fromEntries(tags),
57
87
  })
58
88
  : undefined;
59
89
  const traces = tracesEnabled
60
90
  ? new OtelTraces({
61
- endpoint,
62
- headers,
91
+ endpoint: resolvedEndpoint,
92
+ headers: resolvedHeaders,
63
93
  resource,
64
94
  getTags: () => Object.fromEntries(tags),
65
95
  })
66
96
  : undefined;
67
- return {
97
+ const extension = {
68
98
  initialize: () => Effect.sync(() => {
99
+ if (disabled) {
100
+ return;
101
+ }
69
102
  if (logs) {
70
103
  log.runtimeConfig.processors.push(logs.logProcessor);
71
104
  }
@@ -82,12 +115,30 @@ logs: logsEnabled = false, logLevel = LogLevel.INFO, metrics: metricsEnabled = f
82
115
  yield* Ref.update(enabledRef, () => false);
83
116
  }),
84
117
  close: () => Effect.promise(async () => {
85
- await logs?.close();
86
- await metrics?.close();
118
+ // Run logs/metrics close concurrently and swallow their failures so the
119
+ // tracer provider shutdown below ALWAYS runs. Without this, a rejection
120
+ // from logs or metrics would drop the tracer provider's BatchSpanProcessor
121
+ // queue on process exit, manifesting as "Missing Span" in SigNoz for any
122
+ // already-exported children.
123
+ const results = await Promise.allSettled([logs?.close(), metrics?.close()]);
124
+ for (const result of results) {
125
+ if (result.status === 'rejected') {
126
+ log.catch(result.reason);
127
+ }
128
+ }
129
+ // Critical: shut down the tracer provider so BatchSpanProcessor drains its
130
+ // queue. Otherwise spans enqueued in the last 5s (close/teardown spans)
131
+ // are dropped on process exit.
132
+ await traces?.close();
87
133
  }),
88
134
  flush: () => Effect.promise(async () => {
89
- await logs?.flush();
90
- await metrics?.flush();
135
+ const results = await Promise.allSettled([logs?.flush(), metrics?.flush()]);
136
+ for (const result of results) {
137
+ if (result.status === 'rejected') {
138
+ log.catch(result.reason);
139
+ }
140
+ }
141
+ await traces?.flush();
91
142
  }),
92
143
  setTags: (incomingTags) => {
93
144
  for (const [key, value] of Object.entries(incomingTags)) {
@@ -111,7 +162,52 @@ logs: logsEnabled = false, logLevel = LogLevel.INFO, metrics: metricsEnabled = f
111
162
  traces ? { kind: 'traces', isAvailable: () => Effect.succeed(true) } : undefined,
112
163
  ].filter(isNonNullable),
113
164
  };
165
+ return extension;
114
166
  });
167
+ /**
168
+ * Synchronous best-effort check for observability opt-out.
169
+ * Prevents telemetry from being emitted before the async storage check completes.
170
+ */
171
+ const isObservabilityDisabledSync = (serviceName) => {
172
+ if (isNode()) {
173
+ return process.env.DX_DISABLE_OBSERVABILITY === 'true';
174
+ }
175
+ try {
176
+ if (typeof localStorage !== 'undefined') {
177
+ return localStorage.getItem(`${serviceName}/observability-disabled`) === 'true';
178
+ }
179
+ }
180
+ catch {
181
+ // localStorage not available (e.g., in workers).
182
+ }
183
+ return false;
184
+ };
185
+ /** Best-effort detection of the JavaScript execution context type. */
186
+ const detectProcessType = () => {
187
+ if (isNode()) {
188
+ return 'node';
189
+ }
190
+ if (typeof window !== 'undefined') {
191
+ return 'browser';
192
+ }
193
+ if (typeof globalThis.ServiceWorkerGlobalScope !== 'undefined') {
194
+ return 'service-worker';
195
+ }
196
+ if (typeof globalThis.SharedWorkerGlobalScope !== 'undefined') {
197
+ return 'shared-worker';
198
+ }
199
+ return 'dedicated-worker';
200
+ };
201
+ /**
202
+ * Resolves a relative OTLP endpoint path against the current global origin.
203
+ * Workers expose the same `globalThis.location` as the page that spawned them;
204
+ * if neither is available we fall back to the original path and let the OTLP
205
+ * exporter surface the configuration error.
206
+ */
207
+ const resolveRelativeEndpoint = (path) => {
208
+ const origin = globalThis.location?.origin;
209
+ return origin ? `${origin}${path}` : path;
210
+ };
115
211
  const parseHeaders = (unparsedHeaders) => {
116
212
  return unparsedHeaders.split(';').reduce((acc, header) => {
117
213
  const [key, ...rest] = header.split(':');
@@ -1 +1 @@
1
- {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../../../../src/extensions/otel/extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../../../../src/extensions/otel/extension.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/otel/logs.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,QAAQ,EACR,KAAK,YAAY,EAGlB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,KAAK,WAAW,EAAiB,MAAM,QAAQ,CAAC;AAIzD,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG;IACzC,QAAQ,EAAE,QAAQ,CAAC;IACnB;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC,CAAC;AAEF,qBAAa,QAAQ;IAEP,OAAO,CAAC,QAAQ,CAAC,OAAO;IADpC,OAAO,CAAC,eAAe,CAAiB;gBACX,OAAO,EAAE,cAAc;IAapD,SAAgB,YAAY,EAAE,YAAY,CAyBxC;IAEF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAGvB"}
1
+ {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../../../../src/extensions/otel/logs.ts"],"names":[],"mappings":"AASA,OAAO,EAGL,QAAQ,EACR,KAAK,YAAY,EAGlB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,KAAK,WAAW,EAAiC,MAAM,QAAQ,CAAC;AAIzE,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG;IACzC,QAAQ,EAAE,QAAQ,CAAC;IACnB;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC,CAAC;AAEF,qBAAa,QAAQ;IAEP,OAAO,CAAC,QAAQ,CAAC,OAAO;IADpC,OAAO,CAAC,eAAe,CAAiB;IACxC,YAA6B,OAAO,EAAE,cAAc,EAWnD;IAED,SAAgB,YAAY,EAAE,YAAY,CAyBxC;IAEF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAErB;IAED,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAErB;CACF"}