@dxos/observability 0.8.3 → 0.8.4-main.28f8d3d

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 (143) hide show
  1. package/dist/lib/browser/{chunk-G6EE7HFV.mjs → chunk-4PRNMJKD.mjs} +15 -14
  2. package/dist/lib/browser/chunk-4PRNMJKD.mjs.map +7 -0
  3. package/dist/lib/browser/chunk-5ICT2XF2.mjs +1 -0
  4. package/dist/lib/browser/{chunk-YQJELTRP.mjs → chunk-I5VYFJ6C.mjs} +64 -41
  5. package/dist/lib/browser/chunk-I5VYFJ6C.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-JA5VJRKF.mjs → chunk-LJO63BXO.mjs} +4 -4
  7. package/dist/lib/browser/{chunk-JA5VJRKF.mjs.map → chunk-LJO63BXO.mjs.map} +3 -3
  8. package/dist/lib/browser/index.mjs +4 -4
  9. package/dist/lib/browser/meta.json +1 -1
  10. package/dist/lib/browser/observability-VMNREW6G.mjs +10 -0
  11. package/dist/lib/browser/{otel-LHAFLNBQ.mjs → otel-VKOLQDIM.mjs} +19 -10
  12. package/dist/lib/browser/{otel-LHAFLNBQ.mjs.map → otel-VKOLQDIM.mjs.map} +3 -3
  13. package/dist/lib/browser/segment/index.mjs +3 -3
  14. package/dist/lib/browser/sentry/index.mjs +2 -2
  15. package/dist/lib/browser/{sentry-log-processor-625AISXI.mjs → sentry-log-processor-JLBMJ2SF.mjs} +54 -54
  16. package/dist/lib/browser/sentry-log-processor-JLBMJ2SF.mjs.map +7 -0
  17. package/dist/lib/node-esm/{chunk-M7QJLFGR.mjs → chunk-4BWYXXFK.mjs} +64 -41
  18. package/dist/lib/{browser/chunk-YQJELTRP.mjs.map → node-esm/chunk-4BWYXXFK.mjs.map} +3 -3
  19. package/dist/lib/node-esm/{chunk-H7Y2DDUN.mjs → chunk-QK5IUYVA.mjs} +4 -4
  20. package/dist/lib/node-esm/{chunk-H7Y2DDUN.mjs.map → chunk-QK5IUYVA.mjs.map} +3 -3
  21. package/dist/lib/node-esm/{chunk-YJ4KVBWC.mjs → chunk-QUZL7LKE.mjs} +1 -1
  22. package/dist/lib/node-esm/{chunk-AZMSBUWR.mjs → chunk-RM3E3H7X.mjs} +21 -19
  23. package/dist/lib/node-esm/chunk-RM3E3H7X.mjs.map +7 -0
  24. package/dist/lib/node-esm/index.mjs +4 -4
  25. package/dist/lib/node-esm/meta.json +1 -1
  26. package/dist/lib/node-esm/observability-LKATG37M.mjs +11 -0
  27. package/dist/lib/node-esm/{otel-AF5TSABC.mjs → otel-SDH2ZRXT.mjs} +17 -8
  28. package/dist/lib/node-esm/{otel-AF5TSABC.mjs.map → otel-SDH2ZRXT.mjs.map} +3 -3
  29. package/dist/lib/node-esm/segment/index.mjs +3 -3
  30. package/dist/lib/node-esm/sentry/index.mjs +2 -2
  31. package/dist/lib/node-esm/{sentry-log-processor-HPUPCMRG.mjs → sentry-log-processor-C4UGMAMV.mjs} +54 -54
  32. package/dist/lib/node-esm/sentry-log-processor-C4UGMAMV.mjs.map +7 -0
  33. package/dist/types/src/helpers/browser-observability.d.ts.map +1 -1
  34. package/dist/types/src/helpers/browser-observability.js +4 -6
  35. package/dist/types/src/helpers/browser-observability.js.map +1 -1
  36. package/dist/types/src/helpers/common.js +1 -1
  37. package/dist/types/src/helpers/common.js.map +1 -1
  38. package/dist/types/src/helpers/map-spaces.js +5 -6
  39. package/dist/types/src/helpers/map-spaces.js.map +1 -1
  40. package/dist/types/src/helpers/node-observability.d.ts +1 -1
  41. package/dist/types/src/helpers/node-observability.d.ts.map +1 -1
  42. package/dist/types/src/helpers/node-observability.js +7 -11
  43. package/dist/types/src/helpers/node-observability.js.map +1 -1
  44. package/dist/types/src/helpers/setup-telemetry-listeners.d.ts.map +1 -1
  45. package/dist/types/src/helpers/setup-telemetry-listeners.js +4 -7
  46. package/dist/types/src/helpers/setup-telemetry-listeners.js.map +1 -1
  47. package/dist/types/src/observability.d.ts +1 -1
  48. package/dist/types/src/observability.d.ts.map +1 -1
  49. package/dist/types/src/observability.js +68 -59
  50. package/dist/types/src/observability.js.map +1 -1
  51. package/dist/types/src/otel/logs.d.ts.map +1 -1
  52. package/dist/types/src/otel/logs.js +20 -19
  53. package/dist/types/src/otel/logs.js.map +1 -1
  54. package/dist/types/src/otel/metrics.js +5 -2
  55. package/dist/types/src/otel/metrics.js.map +1 -1
  56. package/dist/types/src/otel/otel.js +1 -1
  57. package/dist/types/src/otel/otel.js.map +1 -1
  58. package/dist/types/src/otel/traces-browser.js +3 -1
  59. package/dist/types/src/otel/traces-browser.js.map +1 -1
  60. package/dist/types/src/otel/traces.js +2 -0
  61. package/dist/types/src/otel/traces.js.map +1 -1
  62. package/dist/types/src/segment/base.d.ts +1 -1
  63. package/dist/types/src/segment/base.d.ts.map +1 -1
  64. package/dist/types/src/segment/base.js +2 -1
  65. package/dist/types/src/segment/base.js.map +1 -1
  66. package/dist/types/src/segment/browser.d.ts +1 -1
  67. package/dist/types/src/segment/browser.d.ts.map +1 -1
  68. package/dist/types/src/segment/browser.js +6 -10
  69. package/dist/types/src/segment/browser.js.map +1 -1
  70. package/dist/types/src/segment/node.d.ts +1 -1
  71. package/dist/types/src/segment/node.d.ts.map +1 -1
  72. package/dist/types/src/segment/node.js +2 -1
  73. package/dist/types/src/segment/node.js.map +1 -1
  74. package/dist/types/src/sentry/browser.d.ts.map +1 -1
  75. package/dist/types/src/sentry/browser.js +4 -6
  76. package/dist/types/src/sentry/browser.js.map +1 -1
  77. package/dist/types/src/sentry/index.d.ts +1 -1
  78. package/dist/types/src/sentry/index.d.ts.map +1 -1
  79. package/dist/types/src/sentry/index.js +0 -1
  80. package/dist/types/src/sentry/index.js.map +1 -1
  81. package/dist/types/src/sentry/node.d.ts.map +1 -1
  82. package/dist/types/src/sentry/node.js +8 -13
  83. package/dist/types/src/sentry/node.js.map +1 -1
  84. package/dist/types/src/sentry/node.node.test.js +3 -5
  85. package/dist/types/src/sentry/node.node.test.js.map +1 -1
  86. package/dist/types/src/sentry/sentry-log-processor.d.ts.map +1 -1
  87. package/dist/types/src/sentry/sentry-log-processor.js +58 -63
  88. package/dist/types/src/sentry/sentry-log-processor.js.map +1 -1
  89. package/dist/types/src/sentry/sentry.node.test.js +1 -1
  90. package/dist/types/src/sentry/sentry.node.test.js.map +1 -1
  91. package/dist/types/tsconfig.tsbuildinfo +1 -1
  92. package/package.json +18 -15
  93. package/src/helpers/browser-observability.ts +2 -1
  94. package/src/helpers/node-observability.ts +5 -4
  95. package/src/helpers/setup-telemetry-listeners.ts +2 -1
  96. package/src/observability.ts +4 -4
  97. package/src/otel/logs.ts +2 -2
  98. package/src/otel/metrics.ts +1 -1
  99. package/src/otel/otel.ts +1 -1
  100. package/src/otel/traces-browser.ts +3 -3
  101. package/src/otel/traces.ts +2 -2
  102. package/src/segment/base.ts +1 -1
  103. package/src/segment/browser.ts +3 -2
  104. package/src/segment/node.ts +3 -2
  105. package/src/sentry/browser.ts +7 -7
  106. package/src/sentry/index.ts +1 -1
  107. package/src/sentry/node.node.test.ts +2 -1
  108. package/src/sentry/node.ts +3 -3
  109. package/src/sentry/sentry-log-processor.ts +15 -7
  110. package/src/sentry/sentry.node.test.ts +2 -1
  111. package/dist/lib/browser/chunk-G6EE7HFV.mjs.map +0 -7
  112. package/dist/lib/browser/chunk-KDP3SESE.mjs +0 -1
  113. package/dist/lib/browser/observability-HDE3I7TA.mjs +0 -10
  114. package/dist/lib/browser/sentry-log-processor-625AISXI.mjs.map +0 -7
  115. package/dist/lib/node/chunk-325GAGFA.cjs +0 -213
  116. package/dist/lib/node/chunk-325GAGFA.cjs.map +0 -7
  117. package/dist/lib/node/chunk-BZHVFSLF.cjs +0 -1025
  118. package/dist/lib/node/chunk-BZHVFSLF.cjs.map +0 -7
  119. package/dist/lib/node/chunk-GIYJMZEQ.cjs +0 -2
  120. package/dist/lib/node/chunk-GIYJMZEQ.cjs.map +0 -7
  121. package/dist/lib/node/chunk-MZ3PMDTP.cjs +0 -163
  122. package/dist/lib/node/chunk-MZ3PMDTP.cjs.map +0 -7
  123. package/dist/lib/node/index.cjs +0 -60
  124. package/dist/lib/node/index.cjs.map +0 -7
  125. package/dist/lib/node/meta.json +0 -1
  126. package/dist/lib/node/observability-E2NGRIEN.cjs +0 -32
  127. package/dist/lib/node/observability-E2NGRIEN.cjs.map +0 -7
  128. package/dist/lib/node/otel-VF5YNCR3.cjs +0 -278
  129. package/dist/lib/node/otel-VF5YNCR3.cjs.map +0 -7
  130. package/dist/lib/node/segment/index.cjs +0 -33
  131. package/dist/lib/node/segment/index.cjs.map +0 -7
  132. package/dist/lib/node/sentry/index.cjs +0 -46
  133. package/dist/lib/node/sentry/index.cjs.map +0 -7
  134. package/dist/lib/node/sentry-log-processor-CCV4RL7N.cjs +0 -164
  135. package/dist/lib/node/sentry-log-processor-CCV4RL7N.cjs.map +0 -7
  136. package/dist/lib/node-esm/chunk-AZMSBUWR.mjs.map +0 -7
  137. package/dist/lib/node-esm/chunk-M7QJLFGR.mjs.map +0 -7
  138. package/dist/lib/node-esm/observability-7BTI46NM.mjs +0 -11
  139. package/dist/lib/node-esm/sentry-log-processor-HPUPCMRG.mjs.map +0 -7
  140. /package/dist/lib/browser/{chunk-KDP3SESE.mjs.map → chunk-5ICT2XF2.mjs.map} +0 -0
  141. /package/dist/lib/browser/{observability-HDE3I7TA.mjs.map → observability-VMNREW6G.mjs.map} +0 -0
  142. /package/dist/lib/node-esm/{chunk-YJ4KVBWC.mjs.map → chunk-QUZL7LKE.mjs.map} +0 -0
  143. /package/dist/lib/node-esm/{observability-7BTI46NM.mjs.map → observability-LKATG37M.mjs.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/sentry/browser.ts"],
4
- "sourcesContent": ["//\n// Copyright 2022 DXOS.org\n//\n\nimport {\n init as naturalInit,\n setTag,\n addBreadcrumb as naturalAddBreadcrumb,\n captureException as naturalCaptureException,\n captureMessage as naturalCaptureMessage,\n sendFeedback as naturalSendFeedback,\n withScope as naturalWithScope,\n breadcrumbsIntegration,\n browserTracingIntegration,\n feedbackIntegration,\n httpClientIntegration,\n replayIntegration,\n metrics,\n startInactiveSpan,\n} from '@sentry/browser';\n\nimport { log } from '@dxos/log';\nimport { TRACE_PROCESSOR } from '@dxos/tracing';\n\nimport { type InitOptions } from './types';\n\n// Polyfill export.\nexport { setTag, setTags, setUser } from '@sentry/browser';\n\n/**\n * To use this SDK, call the init function as early as possible when loading the web page.\n * To set context information or send manual events, use the provided methods.\n *\n * @param options {InitOptions}\n */\nexport const init = (options: InitOptions) => {\n try {\n log('sentry init', options);\n naturalInit({\n enabled: options.enable ?? true,\n dsn: options.destination,\n release: options.release,\n environment: options.environment,\n integrations: [\n breadcrumbsIntegration({ console: false, fetch: false }),\n httpClientIntegration({\n failedRequestStatusCodes: [\n // 401 errors are omitted as they happen as a part of the EDGE authentication flow.\n [400, 400],\n [402, 599],\n ],\n }),\n feedbackIntegration({ autoInject: false }),\n ...(options.tracing ? [browserTracingIntegration()] : []),\n ...(options.replay ? [replayIntegration({ blockAllMedia: true, maskAllText: true })] : []),\n ],\n replaysSessionSampleRate: options.replaySampleRate,\n replaysOnErrorSampleRate: options.replaySampleRateOnError,\n tracesSampleRate: options.sampleRate,\n transport: options.transport,\n beforeSend: (event) => {\n options.onError?.(event);\n return event;\n },\n });\n\n if (options.tracing) {\n TRACE_PROCESSOR.remoteMetrics.registerProcessor(metrics);\n TRACE_PROCESSOR.remoteTracing.registerProcessor({\n startSpan: startInactiveSpan,\n });\n }\n\n Object.entries(options.properties ?? {}).forEach(([key, value]) => {\n setTag(key, value);\n });\n } catch (err) {\n log.catch('Failed to initialize sentry', err);\n }\n};\n\n/**\n * Records a new breadcrumb which will be attached to future events.\n *\n * Breadcrumbs will be added to subsequent events to provide more context on user's actions prior to an error or crash.\n *\n * https://docs.sentry.io/platforms/javascript/enriching-events/breadcrumbs/\n *\n * @param breadcrumb — The breadcrumb to record.\n */\nexport const addBreadcrumb: typeof naturalAddBreadcrumb = (breadcrumb) => {\n try {\n naturalAddBreadcrumb(breadcrumb);\n log('add breadcrumb', breadcrumb);\n } catch (err) {\n log.catch('Failed to add breadcrumb', err);\n }\n};\n\n/**\n * Captures an exception event and sends it to Sentry.\n *\n * @param exception — An exception-like object.\n * @param captureContext — Additional scope data to apply to exception event.\n * @returns — The generated eventId.\n */\nexport const captureException: typeof naturalCaptureException = (exception, captureContext) => {\n try {\n const eventId = naturalCaptureException(exception, captureContext);\n log('capture exception', { exception, eventId, ...captureContext });\n return eventId;\n } catch (err) {\n log.catch('Failed to capture exception', err);\n return 'unknown';\n }\n};\n\nexport const captureMessage: typeof naturalCaptureMessage = (exception, captureContext) => {\n try {\n const eventId = naturalCaptureMessage(exception, captureContext);\n log('capture message', { exception, eventId, captureContext });\n return eventId;\n } catch (err) {\n log.catch('Failed to capture message', err);\n return 'unknown';\n }\n};\n\nexport const captureUserFeedback = (message: string) => {\n return naturalSendFeedback({ message }, { includeReplay: true });\n};\n\nexport const withScope = naturalWithScope;\n"],
5
- "mappings": ";AAIA,SACEA,QAAQC,aACRC,QACAC,iBAAiBC,sBACjBC,oBAAoBC,yBACpBC,kBAAkBC,uBAClBC,gBAAgBC,qBAChBC,aAAaC,kBACbC,wBACAC,2BACAC,qBACAC,uBACAC,mBACAC,SACAC,yBACK;AAEP,SAASC,WAAW;AACpB,SAASC,uBAAuB;AAKhC,SAASnB,UAAAA,SAAQoB,SAASC,eAAe;;AAQlC,IAAMvB,OAAO,CAACwB,YAAAA;AACnB,MAAI;AACFJ,QAAI,eAAeI,SAAAA;;;;;;AACnBvB,gBAAY;MACVwB,SAASD,QAAQE,UAAU;MAC3BC,KAAKH,QAAQI;MACbC,SAASL,QAAQK;MACjBC,aAAaN,QAAQM;MACrBC,cAAc;QACZlB,uBAAuB;UAAEmB,SAAS;UAAOC,OAAO;QAAM,CAAA;QACtDjB,sBAAsB;UACpBkB,0BAA0B;;YAExB;cAAC;cAAK;;YACN;cAAC;cAAK;;;QAEV,CAAA;QACAnB,oBAAoB;UAAEoB,YAAY;QAAM,CAAA;WACpCX,QAAQY,UAAU;UAACtB,0BAAAA;YAA+B,CAAA;WAClDU,QAAQa,SAAS;UAACpB,kBAAkB;YAAEqB,eAAe;YAAMC,aAAa;UAAK,CAAA;YAAM,CAAA;;MAEzFC,0BAA0BhB,QAAQiB;MAClCC,0BAA0BlB,QAAQmB;MAClCC,kBAAkBpB,QAAQqB;MAC1BC,WAAWtB,QAAQsB;MACnBC,YAAY,CAACC,UAAAA;AACXxB,gBAAQyB,UAAUD,KAAAA;AAClB,eAAOA;MACT;IACF,CAAA;AAEA,QAAIxB,QAAQY,SAAS;AACnBf,sBAAgB6B,cAAcC,kBAAkBjC,OAAAA;AAChDG,sBAAgB+B,cAAcD,kBAAkB;QAC9CE,WAAWlC;MACb,CAAA;IACF;AAEAmC,WAAOC,QAAQ/B,QAAQgC,cAAc,CAAC,CAAA,EAAGC,QAAQ,CAAC,CAACC,KAAKC,KAAAA,MAAM;AAC5DzD,aAAOwD,KAAKC,KAAAA;IACd,CAAA;EACF,SAASC,KAAK;AACZxC,QAAIyC,MAAM,+BAA+BD,KAAAA;;;;;;EAC3C;AACF;AAWO,IAAMzD,gBAA6C,CAAC2D,eAAAA;AACzD,MAAI;AACF1D,yBAAqB0D,UAAAA;AACrB1C,QAAI,kBAAkB0C,YAAAA;;;;;;EACxB,SAASF,KAAK;AACZxC,QAAIyC,MAAM,4BAA4BD,KAAAA;;;;;;EACxC;AACF;AASO,IAAMvD,mBAAmD,CAAC0D,WAAWC,mBAAAA;AAC1E,MAAI;AACF,UAAMC,UAAU3D,wBAAwByD,WAAWC,cAAAA;AACnD5C,QAAI,qBAAqB;MAAE2C;MAAWE;MAAS,GAAGD;IAAe,GAAA;;;;;;AACjE,WAAOC;EACT,SAASL,KAAK;AACZxC,QAAIyC,MAAM,+BAA+BD,KAAAA;;;;;;AACzC,WAAO;EACT;AACF;AAEO,IAAMrD,iBAA+C,CAACwD,WAAWC,mBAAAA;AACtE,MAAI;AACF,UAAMC,UAAUzD,sBAAsBuD,WAAWC,cAAAA;AACjD5C,QAAI,mBAAmB;MAAE2C;MAAWE;MAASD;IAAe,GAAA;;;;;;AAC5D,WAAOC;EACT,SAASL,KAAK;AACZxC,QAAIyC,MAAM,6BAA6BD,KAAAA;;;;;;AACvC,WAAO;EACT;AACF;AAEO,IAAMM,sBAAsB,CAACC,YAAAA;AAClC,SAAOzD,oBAAoB;IAAEyD;EAAQ,GAAG;IAAEC,eAAe;EAAK,CAAA;AAChE;AAEO,IAAMzD,YAAYC;",
6
- "names": ["init", "naturalInit", "setTag", "addBreadcrumb", "naturalAddBreadcrumb", "captureException", "naturalCaptureException", "captureMessage", "naturalCaptureMessage", "sendFeedback", "naturalSendFeedback", "withScope", "naturalWithScope", "breadcrumbsIntegration", "browserTracingIntegration", "feedbackIntegration", "httpClientIntegration", "replayIntegration", "metrics", "startInactiveSpan", "log", "TRACE_PROCESSOR", "setTags", "setUser", "options", "enabled", "enable", "dsn", "destination", "release", "environment", "integrations", "console", "fetch", "failedRequestStatusCodes", "autoInject", "tracing", "replay", "blockAllMedia", "maskAllText", "replaysSessionSampleRate", "replaySampleRate", "replaysOnErrorSampleRate", "replaySampleRateOnError", "tracesSampleRate", "sampleRate", "transport", "beforeSend", "event", "onError", "remoteMetrics", "registerProcessor", "remoteTracing", "startSpan", "Object", "entries", "properties", "forEach", "key", "value", "err", "catch", "breadcrumb", "exception", "captureContext", "eventId", "captureUserFeedback", "message", "includeReplay"]
4
+ "sourcesContent": ["//\n// Copyright 2022 DXOS.org\n//\n\nimport {\n breadcrumbsIntegration,\n browserTracingIntegration,\n feedbackIntegration,\n httpClientIntegration,\n metrics,\n addBreadcrumb as naturalAddBreadcrumb,\n captureException as naturalCaptureException,\n captureMessage as naturalCaptureMessage,\n init as naturalInit,\n sendFeedback as naturalSendFeedback,\n withScope as naturalWithScope,\n replayIntegration,\n setTag,\n startInactiveSpan,\n} from '@sentry/browser';\n\nimport { log } from '@dxos/log';\nimport { TRACE_PROCESSOR } from '@dxos/tracing';\n\nimport { type InitOptions } from './types';\n\n// Polyfill export.\nexport { setTag, setTags, setUser } from '@sentry/browser';\n\n/**\n * To use this SDK, call the init function as early as possible when loading the web page.\n * To set context information or send manual events, use the provided methods.\n *\n * @param options {InitOptions}\n */\nexport const init = (options: InitOptions) => {\n try {\n log('sentry init', options);\n naturalInit({\n enabled: options.enable ?? true,\n dsn: options.destination,\n release: options.release,\n environment: options.environment,\n integrations: [\n breadcrumbsIntegration({ console: false, fetch: false }),\n httpClientIntegration({\n failedRequestStatusCodes: [\n // 401 errors are omitted as they happen as a part of the EDGE authentication flow.\n [400, 400],\n [402, 599],\n ],\n }),\n feedbackIntegration({ autoInject: false }),\n ...(options.tracing ? [browserTracingIntegration()] : []),\n ...(options.replay ? [replayIntegration({ blockAllMedia: true, maskAllText: true })] : []),\n ],\n replaysSessionSampleRate: options.replaySampleRate,\n replaysOnErrorSampleRate: options.replaySampleRateOnError,\n tracesSampleRate: options.sampleRate,\n transport: options.transport,\n beforeSend: (event) => {\n options.onError?.(event);\n return event;\n },\n });\n\n if (options.tracing) {\n TRACE_PROCESSOR.remoteMetrics.registerProcessor(metrics);\n TRACE_PROCESSOR.remoteTracing.registerProcessor({\n startSpan: startInactiveSpan,\n });\n }\n\n Object.entries(options.properties ?? {}).forEach(([key, value]) => {\n setTag(key, value);\n });\n } catch (err) {\n log.catch('Failed to initialize sentry', err);\n }\n};\n\n/**\n * Records a new breadcrumb which will be attached to future events.\n *\n * Breadcrumbs will be added to subsequent events to provide more context on user's actions prior to an error or crash.\n *\n * https://docs.sentry.io/platforms/javascript/enriching-events/breadcrumbs/\n *\n * @param breadcrumb — The breadcrumb to record.\n */\nexport const addBreadcrumb: typeof naturalAddBreadcrumb = (breadcrumb) => {\n try {\n naturalAddBreadcrumb(breadcrumb);\n log('add breadcrumb', breadcrumb);\n } catch (err) {\n log.catch('Failed to add breadcrumb', err);\n }\n};\n\n/**\n * Captures an exception event and sends it to Sentry.\n *\n * @param exception — An exception-like object.\n * @param captureContext — Additional scope data to apply to exception event.\n * @returns — The generated eventId.\n */\nexport const captureException: typeof naturalCaptureException = (exception, captureContext) => {\n try {\n const eventId = naturalCaptureException(exception, captureContext);\n log('capture exception', { exception, eventId, ...captureContext });\n return eventId;\n } catch (err) {\n log.catch('Failed to capture exception', err);\n return 'unknown';\n }\n};\n\nexport const captureMessage: typeof naturalCaptureMessage = (exception, captureContext) => {\n try {\n const eventId = naturalCaptureMessage(exception, captureContext);\n log('capture message', { exception, eventId, captureContext });\n return eventId;\n } catch (err) {\n log.catch('Failed to capture message', err);\n return 'unknown';\n }\n};\n\nexport const captureUserFeedback = (message: string) => {\n return naturalSendFeedback({ message }, { includeReplay: true });\n};\n\nexport const withScope = naturalWithScope;\n"],
5
+ "mappings": ";AAIA,SACEA,wBACAC,2BACAC,qBACAC,uBACAC,SACAC,iBAAiBC,sBACjBC,oBAAoBC,yBACpBC,kBAAkBC,uBAClBC,QAAQC,aACRC,gBAAgBC,qBAChBC,aAAaC,kBACbC,mBACAC,QACAC,yBACK;AAEP,SAASC,WAAW;AACpB,SAASC,uBAAuB;AAKhC,SAASH,UAAAA,SAAQI,SAASC,eAAe;;AAQlC,IAAMZ,OAAO,CAACa,YAAAA;AACnB,MAAI;AACFJ,QAAI,eAAeI,SAAAA;;;;;;AACnBZ,gBAAY;MACVa,SAASD,QAAQE,UAAU;MAC3BC,KAAKH,QAAQI;MACbC,SAASL,QAAQK;MACjBC,aAAaN,QAAQM;MACrBC,cAAc;QACZ/B,uBAAuB;UAAEgC,SAAS;UAAOC,OAAO;QAAM,CAAA;QACtD9B,sBAAsB;UACpB+B,0BAA0B;;YAExB;cAAC;cAAK;;YACN;cAAC;cAAK;;;QAEV,CAAA;QACAhC,oBAAoB;UAAEiC,YAAY;QAAM,CAAA;WACpCX,QAAQY,UAAU;UAACnC,0BAAAA;YAA+B,CAAA;WAClDuB,QAAQa,SAAS;UAACpB,kBAAkB;YAAEqB,eAAe;YAAMC,aAAa;UAAK,CAAA;YAAM,CAAA;;MAEzFC,0BAA0BhB,QAAQiB;MAClCC,0BAA0BlB,QAAQmB;MAClCC,kBAAkBpB,QAAQqB;MAC1BC,WAAWtB,QAAQsB;MACnBC,YAAY,CAACC,UAAAA;AACXxB,gBAAQyB,UAAUD,KAAAA;AAClB,eAAOA;MACT;IACF,CAAA;AAEA,QAAIxB,QAAQY,SAAS;AACnBf,sBAAgB6B,cAAcC,kBAAkB/C,OAAAA;AAChDiB,sBAAgB+B,cAAcD,kBAAkB;QAC9CE,WAAWlC;MACb,CAAA;IACF;AAEAmC,WAAOC,QAAQ/B,QAAQgC,cAAc,CAAC,CAAA,EAAGC,QAAQ,CAAC,CAACC,KAAKC,KAAAA,MAAM;AAC5DzC,aAAOwC,KAAKC,KAAAA;IACd,CAAA;EACF,SAASC,KAAK;AACZxC,QAAIyC,MAAM,+BAA+BD,KAAAA;;;;;;EAC3C;AACF;AAWO,IAAMvD,gBAA6C,CAACyD,eAAAA;AACzD,MAAI;AACFxD,yBAAqBwD,UAAAA;AACrB1C,QAAI,kBAAkB0C,YAAAA;;;;;;EACxB,SAASF,KAAK;AACZxC,QAAIyC,MAAM,4BAA4BD,KAAAA;;;;;;EACxC;AACF;AASO,IAAMrD,mBAAmD,CAACwD,WAAWC,mBAAAA;AAC1E,MAAI;AACF,UAAMC,UAAUzD,wBAAwBuD,WAAWC,cAAAA;AACnD5C,QAAI,qBAAqB;MAAE2C;MAAWE;MAAS,GAAGD;IAAe,GAAA;;;;;;AACjE,WAAOC;EACT,SAASL,KAAK;AACZxC,QAAIyC,MAAM,+BAA+BD,KAAAA;;;;;;AACzC,WAAO;EACT;AACF;AAEO,IAAMnD,iBAA+C,CAACsD,WAAWC,mBAAAA;AACtE,MAAI;AACF,UAAMC,UAAUvD,sBAAsBqD,WAAWC,cAAAA;AACjD5C,QAAI,mBAAmB;MAAE2C;MAAWE;MAASD;IAAe,GAAA;;;;;;AAC5D,WAAOC;EACT,SAASL,KAAK;AACZxC,QAAIyC,MAAM,6BAA6BD,KAAAA;;;;;;AACvC,WAAO;EACT;AACF;AAEO,IAAMM,sBAAsB,CAACC,YAAAA;AAClC,SAAOrD,oBAAoB;IAAEqD;EAAQ,GAAG;IAAEC,eAAe;EAAK,CAAA;AAChE;AAEO,IAAMrD,YAAYC;",
6
+ "names": ["breadcrumbsIntegration", "browserTracingIntegration", "feedbackIntegration", "httpClientIntegration", "metrics", "addBreadcrumb", "naturalAddBreadcrumb", "captureException", "naturalCaptureException", "captureMessage", "naturalCaptureMessage", "init", "naturalInit", "sendFeedback", "naturalSendFeedback", "withScope", "naturalWithScope", "replayIntegration", "setTag", "startInactiveSpan", "log", "TRACE_PROCESSOR", "setTags", "setUser", "options", "enabled", "enable", "dsn", "destination", "release", "environment", "integrations", "console", "fetch", "failedRequestStatusCodes", "autoInject", "tracing", "replay", "blockAllMedia", "maskAllText", "replaysSessionSampleRate", "replaySampleRate", "replaysOnErrorSampleRate", "replaySampleRateOnError", "tracesSampleRate", "sampleRate", "transport", "beforeSend", "event", "onError", "remoteMetrics", "registerProcessor", "remoteTracing", "startSpan", "Object", "entries", "properties", "forEach", "key", "value", "err", "catch", "breadcrumb", "exception", "captureContext", "eventId", "captureUserFeedback", "message", "includeReplay"]
7
7
  }
@@ -14,10 +14,10 @@ import {
14
14
  showObservabilityBanner,
15
15
  storeObservabilityDisabled,
16
16
  storeObservabilityGroup
17
- } from "./chunk-YQJELTRP.mjs";
18
- import "./chunk-G6EE7HFV.mjs";
19
- import "./chunk-KDP3SESE.mjs";
20
- import "./chunk-JA5VJRKF.mjs";
17
+ } from "./chunk-I5VYFJ6C.mjs";
18
+ import "./chunk-4PRNMJKD.mjs";
19
+ import "./chunk-5ICT2XF2.mjs";
20
+ import "./chunk-LJO63BXO.mjs";
21
21
  export {
22
22
  OBSERVABILITY_DISABLED_KEY,
23
23
  OBSERVABILITY_GROUP_KEY,
@@ -1 +1 @@
1
- {"inputs":{"packages/sdk/observability/src/cli-observability-secrets.json":{"bytes":593,"imports":[]},"packages/sdk/observability/src/segment/types.ts":{"bytes":2527,"imports":[],"format":"esm"},"packages/sdk/observability/src/segment/base.ts":{"bytes":5286,"imports":[{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/observability/src/segment/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/sdk/observability/src/sentry/browser.ts":{"bytes":15809,"imports":[{"path":"@sentry/browser","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@sentry/browser","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/observability/src/sentry/types.ts":{"bytes":1037,"imports":[],"format":"esm"},"packages/sdk/observability/src/sentry/index.ts":{"bytes":546,"imports":[{"path":"packages/sdk/observability/src/sentry/browser.ts","kind":"import-statement","original":"./node"},{"path":"packages/sdk/observability/src/sentry/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/sdk/observability/src/segment/browser.ts":{"bytes":7594,"imports":[{"path":"@segment/snippet","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/observability/src/segment/base.ts","kind":"import-statement","original":"./base"},{"path":"packages/sdk/observability/src/sentry/index.ts","kind":"import-statement","original":"../sentry"}],"format":"esm"},"packages/sdk/observability/src/segment/index.ts":{"bytes":547,"imports":[{"path":"packages/sdk/observability/src/segment/browser.ts","kind":"import-statement","original":"./node"},{"path":"packages/sdk/observability/src/segment/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/sdk/observability/src/otel/otel.ts":{"bytes":1920,"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/observability/src/otel/logs.ts":{"bytes":10977,"imports":[{"path":"@opentelemetry/api-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-logs-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","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":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/observability/src/otel/otel.ts","kind":"import-statement","original":"./otel"}],"format":"esm"},"packages/sdk/observability/src/otel/metrics.ts":{"bytes":14198,"imports":[{"path":"@opentelemetry/exporter-metrics-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-metrics","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":"packages/sdk/observability/src/otel/otel.ts","kind":"import-statement","original":"./otel"}],"format":"esm"},"packages/sdk/observability/src/otel/traces-browser.ts":{"bytes":8216,"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/auto-instrumentations-web","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-trace-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/instrumentation","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-base","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-web","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}],"format":"esm"},"packages/sdk/observability/src/otel/index.ts":{"bytes":712,"imports":[{"path":"packages/sdk/observability/src/otel/otel.ts","kind":"import-statement","original":"./otel"},{"path":"packages/sdk/observability/src/otel/logs.ts","kind":"import-statement","original":"./logs"},{"path":"packages/sdk/observability/src/otel/metrics.ts","kind":"import-statement","original":"./metrics"},{"path":"packages/sdk/observability/src/otel/traces-browser.ts","kind":"import-statement","original":"./traces"}],"format":"esm"},"packages/sdk/observability/src/sentry/sentry-log-processor.ts":{"bytes":19452,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/observability/src/sentry/browser.ts","kind":"import-statement","original":"./node"}],"format":"esm"},"packages/sdk/observability/src/observability.ts":{"bytes":76925,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client","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/network-manager","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"packages/sdk/observability/src/cli-observability-secrets.json","kind":"import-statement","original":"./cli-observability-secrets.json"},{"path":"packages/sdk/observability/src/helpers/index.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/observability/src/segment/index.ts","kind":"import-statement","original":"./segment"},{"path":"packages/sdk/observability/src/otel/index.ts","kind":"dynamic-import","original":"./otel"},{"path":"packages/sdk/observability/src/otel/index.ts","kind":"dynamic-import","original":"./otel"},{"path":"packages/sdk/observability/src/segment/index.ts","kind":"dynamic-import","original":"./segment"},{"path":"packages/sdk/observability/src/sentry/index.ts","kind":"dynamic-import","original":"./sentry"},{"path":"packages/sdk/observability/src/sentry/sentry-log-processor.ts","kind":"dynamic-import","original":"./sentry/sentry-log-processor"},{"path":"packages/sdk/observability/src/otel/index.ts","kind":"dynamic-import","original":"./otel"}],"format":"esm"},"packages/sdk/observability/src/helpers/browser-observability.ts":{"bytes":20102,"imports":[{"path":"localforage","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/observability/src/observability.ts","kind":"dynamic-import","original":"../observability"}],"format":"esm"},"packages/sdk/observability/src/helpers/common.ts":{"bytes":3134,"imports":[],"format":"esm"},"packages/sdk/observability/src/helpers/node-observability.ts":{"bytes":14188,"imports":[{"path":"js-yaml","kind":"import-statement","external":true},{"path":"@dxos/node-std/fs","kind":"import-statement","external":true},{"path":"@dxos/node-std/fs/promises","kind":"import-statement","external":true},{"path":"@dxos/node-std/path","kind":"import-statement","external":true},{"path":"uuid","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/observability/src/observability.ts","kind":"import-statement","original":"../observability"}],"format":"esm"},"packages/sdk/observability/src/helpers/map-spaces.ts":{"bytes":6377,"imports":[],"format":"esm"},"packages/sdk/observability/src/helpers/setup-telemetry-listeners.ts":{"bytes":10352,"imports":[{"path":"packages/sdk/observability/src/helpers/common.ts","kind":"import-statement","original":"./common"}],"format":"esm"},"packages/sdk/observability/src/helpers/index.ts":{"bytes":930,"imports":[{"path":"packages/sdk/observability/src/helpers/browser-observability.ts","kind":"import-statement","original":"./browser-observability"},{"path":"packages/sdk/observability/src/helpers/common.ts","kind":"import-statement","original":"./common"},{"path":"packages/sdk/observability/src/helpers/node-observability.ts","kind":"import-statement","original":"./node-observability"},{"path":"packages/sdk/observability/src/helpers/map-spaces.ts","kind":"import-statement","original":"./map-spaces"},{"path":"packages/sdk/observability/src/helpers/setup-telemetry-listeners.ts","kind":"import-statement","original":"./setup-telemetry-listeners"}],"format":"esm"},"packages/sdk/observability/src/index.ts":{"bytes":566,"imports":[{"path":"packages/sdk/observability/src/helpers/index.ts","kind":"import-statement","original":"./helpers"},{"path":"packages/sdk/observability/src/observability.ts","kind":"import-statement","original":"./observability"}],"format":"esm"}},"outputs":{"packages/sdk/observability/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/observability/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/sdk/observability/dist/lib/browser/chunk-YQJELTRP.mjs","kind":"import-statement"},{"path":"packages/sdk/observability/dist/lib/browser/chunk-G6EE7HFV.mjs","kind":"import-statement"},{"path":"packages/sdk/observability/dist/lib/browser/chunk-KDP3SESE.mjs","kind":"import-statement"},{"path":"packages/sdk/observability/dist/lib/browser/chunk-JA5VJRKF.mjs","kind":"import-statement"}],"exports":["OBSERVABILITY_DISABLED_KEY","OBSERVABILITY_GROUP_KEY","Observability","getObservabilityGroup","getObservabilityState","getTelemetryIdentifier","getTelemetryIdentity","initializeAppObservability","initializeNodeObservability","isObservabilityDisabled","mapSpaces","setupTelemetryListeners","showObservabilityBanner","storeObservabilityDisabled","storeObservabilityGroup"],"entryPoint":"packages/sdk/observability/src/index.ts","inputs":{"packages/sdk/observability/src/index.ts":{"bytesInOutput":0}},"bytes":950},"packages/sdk/observability/dist/lib/browser/segment/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/observability/dist/lib/browser/segment/index.mjs":{"imports":[{"path":"packages/sdk/observability/dist/lib/browser/chunk-G6EE7HFV.mjs","kind":"import-statement"},{"path":"packages/sdk/observability/dist/lib/browser/chunk-KDP3SESE.mjs","kind":"import-statement"},{"path":"packages/sdk/observability/dist/lib/browser/chunk-JA5VJRKF.mjs","kind":"import-statement"}],"exports":["SegmentTelemetry","TelemetryEvent"],"entryPoint":"packages/sdk/observability/src/segment/index.ts","inputs":{},"bytes":226},"packages/sdk/observability/dist/lib/browser/sentry/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/observability/dist/lib/browser/sentry/index.mjs":{"imports":[{"path":"packages/sdk/observability/dist/lib/browser/chunk-KDP3SESE.mjs","kind":"import-statement"},{"path":"packages/sdk/observability/dist/lib/browser/chunk-JA5VJRKF.mjs","kind":"import-statement"}],"exports":["addBreadcrumb","captureException","captureMessage","captureUserFeedback","init","setTag","setTags","setUser","withScope"],"entryPoint":"packages/sdk/observability/src/sentry/index.ts","inputs":{},"bytes":380},"packages/sdk/observability/dist/lib/browser/otel-LHAFLNBQ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":18016},"packages/sdk/observability/dist/lib/browser/otel-LHAFLNBQ.mjs":{"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/api-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-logs-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","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":"@dxos/util","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-metrics-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-metrics","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":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/auto-instrumentations-web","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-trace-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/instrumentation","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-base","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-web","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}],"exports":["OtelLogs","OtelMetrics","OtelTraces","setDiagLogger"],"entryPoint":"packages/sdk/observability/src/otel/index.ts","inputs":{"packages/sdk/observability/src/otel/otel.ts":{"bytesInOutput":229},"packages/sdk/observability/src/otel/index.ts":{"bytesInOutput":0},"packages/sdk/observability/src/otel/logs.ts":{"bytesInOutput":2448},"packages/sdk/observability/src/otel/metrics.ts":{"bytesInOutput":3528},"packages/sdk/observability/src/otel/traces-browser.ts":{"bytesInOutput":2328}},"bytes":8849},"packages/sdk/observability/dist/lib/browser/sentry-log-processor-625AISXI.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10071},"packages/sdk/observability/dist/lib/browser/sentry-log-processor-625AISXI.mjs":{"imports":[{"path":"packages/sdk/observability/dist/lib/browser/chunk-JA5VJRKF.mjs","kind":"import-statement"},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["SentryLogProcessor"],"entryPoint":"packages/sdk/observability/src/sentry/sentry-log-processor.ts","inputs":{"packages/sdk/observability/src/sentry/sentry-log-processor.ts":{"bytesInOutput":4634}},"bytes":4882},"packages/sdk/observability/dist/lib/browser/observability-HDE3I7TA.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/observability/dist/lib/browser/observability-HDE3I7TA.mjs":{"imports":[{"path":"packages/sdk/observability/dist/lib/browser/chunk-YQJELTRP.mjs","kind":"import-statement"},{"path":"packages/sdk/observability/dist/lib/browser/chunk-G6EE7HFV.mjs","kind":"import-statement"},{"path":"packages/sdk/observability/dist/lib/browser/chunk-KDP3SESE.mjs","kind":"import-statement"},{"path":"packages/sdk/observability/dist/lib/browser/chunk-JA5VJRKF.mjs","kind":"import-statement"}],"exports":["Observability"],"entryPoint":"packages/sdk/observability/src/observability.ts","inputs":{},"bytes":229},"packages/sdk/observability/dist/lib/browser/chunk-YQJELTRP.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":64517},"packages/sdk/observability/dist/lib/browser/chunk-YQJELTRP.mjs":{"imports":[{"path":"packages/sdk/observability/dist/lib/browser/chunk-G6EE7HFV.mjs","kind":"import-statement"},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client","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/network-manager","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"localforage","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/observability/dist/lib/browser/observability-HDE3I7TA.mjs","kind":"dynamic-import"},{"path":"js-yaml","kind":"import-statement","external":true},{"path":"@dxos/node-std/fs","kind":"import-statement","external":true},{"path":"@dxos/node-std/fs/promises","kind":"import-statement","external":true},{"path":"@dxos/node-std/path","kind":"import-statement","external":true},{"path":"uuid","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"packages/sdk/observability/dist/lib/browser/otel-LHAFLNBQ.mjs","kind":"dynamic-import"},{"path":"packages/sdk/observability/dist/lib/browser/otel-LHAFLNBQ.mjs","kind":"dynamic-import"},{"path":"packages/sdk/observability/dist/lib/browser/segment/index.mjs","kind":"dynamic-import"},{"path":"packages/sdk/observability/dist/lib/browser/sentry/index.mjs","kind":"dynamic-import"},{"path":"packages/sdk/observability/dist/lib/browser/sentry-log-processor-625AISXI.mjs","kind":"dynamic-import"},{"path":"packages/sdk/observability/dist/lib/browser/otel-LHAFLNBQ.mjs","kind":"dynamic-import"}],"exports":["OBSERVABILITY_DISABLED_KEY","OBSERVABILITY_GROUP_KEY","Observability","getObservabilityGroup","getObservabilityState","getTelemetryIdentifier","getTelemetryIdentity","initializeAppObservability","initializeNodeObservability","isObservabilityDisabled","mapSpaces","setupTelemetryListeners","showObservabilityBanner","storeObservabilityDisabled","storeObservabilityGroup"],"inputs":{"packages/sdk/observability/src/observability.ts":{"bytesInOutput":19467},"packages/sdk/observability/src/cli-observability-secrets.json":{"bytesInOutput":625},"packages/sdk/observability/src/helpers/browser-observability.ts":{"bytesInOutput":5045},"packages/sdk/observability/src/helpers/index.ts":{"bytesInOutput":0},"packages/sdk/observability/src/helpers/common.ts":{"bytesInOutput":324},"packages/sdk/observability/src/helpers/node-observability.ts":{"bytesInOutput":3445},"packages/sdk/observability/src/helpers/map-spaces.ts":{"bytesInOutput":1192},"packages/sdk/observability/src/helpers/setup-telemetry-listeners.ts":{"bytesInOutput":2542}},"bytes":33624},"packages/sdk/observability/dist/lib/browser/chunk-G6EE7HFV.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7711},"packages/sdk/observability/dist/lib/browser/chunk-G6EE7HFV.mjs":{"imports":[{"path":"packages/sdk/observability/dist/lib/browser/chunk-JA5VJRKF.mjs","kind":"import-statement"},{"path":"@segment/snippet","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["SegmentTelemetry","TelemetryEvent"],"inputs":{"packages/sdk/observability/src/segment/browser.ts":{"bytesInOutput":1959},"packages/sdk/observability/src/segment/base.ts":{"bytesInOutput":1096},"packages/sdk/observability/src/segment/types.ts":{"bytesInOutput":180},"packages/sdk/observability/src/segment/index.ts":{"bytesInOutput":0}},"bytes":3650},"packages/sdk/observability/dist/lib/browser/chunk-KDP3SESE.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/observability/dist/lib/browser/chunk-KDP3SESE.mjs":{"imports":[],"exports":[],"inputs":{"packages/sdk/observability/src/sentry/index.ts":{"bytesInOutput":0}},"bytes":44},"packages/sdk/observability/dist/lib/browser/chunk-JA5VJRKF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7321},"packages/sdk/observability/dist/lib/browser/chunk-JA5VJRKF.mjs":{"imports":[{"path":"@sentry/browser","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@sentry/browser","kind":"import-statement","external":true}],"exports":["addBreadcrumb","captureException","captureMessage","captureUserFeedback","init","setTag","setTags","setUser","withScope"],"inputs":{"packages/sdk/observability/src/sentry/browser.ts":{"bytesInOutput":4076}},"bytes":4326}}}
1
+ {"inputs":{"src/cli-observability-secrets.json":{"bytes":593,"imports":[]},"src/sentry/browser.ts":{"bytes":15792,"imports":[{"path":"@sentry/browser","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@sentry/browser","kind":"import-statement","external":true}],"format":"esm"},"src/sentry/index.ts":{"bytes":492,"imports":[{"path":"src/sentry/browser.ts","kind":"import-statement","original":"./node"}],"format":"esm"},"src/segment/types.ts":{"bytes":2514,"imports":[],"format":"esm"},"src/segment/base.ts":{"bytes":5273,"imports":[{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/segment/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/segment/browser.ts":{"bytes":7585,"imports":[{"path":"@segment/snippet","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/sentry/index.ts","kind":"import-statement","original":"../sentry"},{"path":"src/segment/base.ts","kind":"import-statement","original":"./base"}],"format":"esm"},"src/segment/index.ts":{"bytes":534,"imports":[{"path":"src/segment/browser.ts","kind":"import-statement","original":"./node"},{"path":"src/segment/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/otel/otel.ts":{"bytes":1907,"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true}],"format":"esm"},"src/otel/logs.ts":{"bytes":10964,"imports":[{"path":"@opentelemetry/api-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-logs-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","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":"@dxos/util","kind":"import-statement","external":true},{"path":"src/otel/otel.ts","kind":"import-statement","original":"./otel"}],"format":"esm"},"src/otel/metrics.ts":{"bytes":14185,"imports":[{"path":"@opentelemetry/exporter-metrics-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-metrics","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/otel/otel.ts","kind":"import-statement","original":"./otel"}],"format":"esm"},"src/otel/traces-browser.ts":{"bytes":8203,"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/auto-instrumentations-web","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-trace-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/instrumentation","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-base","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-web","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}],"format":"esm"},"src/otel/index.ts":{"bytes":699,"imports":[{"path":"src/otel/otel.ts","kind":"import-statement","original":"./otel"},{"path":"src/otel/logs.ts","kind":"import-statement","original":"./logs"},{"path":"src/otel/metrics.ts","kind":"import-statement","original":"./metrics"},{"path":"src/otel/traces-browser.ts","kind":"import-statement","original":"./traces"}],"format":"esm"},"src/sentry/sentry-log-processor.ts":{"bytes":20520,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/sentry/browser.ts","kind":"import-statement","original":"./node"}],"format":"esm"},"src/observability.ts":{"bytes":76912,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client","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/network-manager","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","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/helpers/index.ts","kind":"import-statement","original":"./helpers"},{"path":"src/segment/index.ts","kind":"import-statement","original":"./segment"},{"path":"src/otel/index.ts","kind":"dynamic-import","original":"./otel"},{"path":"src/otel/index.ts","kind":"dynamic-import","original":"./otel"},{"path":"src/segment/index.ts","kind":"dynamic-import","original":"./segment"},{"path":"src/sentry/index.ts","kind":"dynamic-import","original":"./sentry"},{"path":"src/sentry/sentry-log-processor.ts","kind":"dynamic-import","original":"./sentry/sentry-log-processor"},{"path":"src/otel/index.ts","kind":"dynamic-import","original":"./otel"}],"format":"esm"},"src/helpers/browser-observability.ts":{"bytes":20089,"imports":[{"path":"localforage","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/observability.ts","kind":"dynamic-import","original":"../observability"}],"format":"esm"},"src/helpers/common.ts":{"bytes":3121,"imports":[],"format":"esm"},"src/helpers/node-observability.ts":{"bytes":14187,"imports":[{"path":"@dxos/node-std/fs","kind":"import-statement","external":true},{"path":"@dxos/node-std/fs/promises","kind":"import-statement","external":true},{"path":"@dxos/node-std/path","kind":"import-statement","external":true},{"path":"js-yaml","kind":"import-statement","external":true},{"path":"uuid","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/observability.ts","kind":"import-statement","original":"../observability"}],"format":"esm"},"src/helpers/map-spaces.ts":{"bytes":6364,"imports":[],"format":"esm"},"src/helpers/setup-telemetry-listeners.ts":{"bytes":10343,"imports":[{"path":"src/helpers/common.ts","kind":"import-statement","original":"./common"}],"format":"esm"},"src/helpers/index.ts":{"bytes":917,"imports":[{"path":"src/helpers/browser-observability.ts","kind":"import-statement","original":"./browser-observability"},{"path":"src/helpers/common.ts","kind":"import-statement","original":"./common"},{"path":"src/helpers/node-observability.ts","kind":"import-statement","original":"./node-observability"},{"path":"src/helpers/map-spaces.ts","kind":"import-statement","original":"./map-spaces"},{"path":"src/helpers/setup-telemetry-listeners.ts","kind":"import-statement","original":"./setup-telemetry-listeners"}],"format":"esm"},"src/index.ts":{"bytes":553,"imports":[{"path":"src/helpers/index.ts","kind":"import-statement","original":"./helpers"},{"path":"src/observability.ts","kind":"import-statement","original":"./observability"}],"format":"esm"}},"outputs":{"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-I5VYFJ6C.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-4PRNMJKD.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-5ICT2XF2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-LJO63BXO.mjs","kind":"import-statement"}],"exports":["OBSERVABILITY_DISABLED_KEY","OBSERVABILITY_GROUP_KEY","Observability","getObservabilityGroup","getObservabilityState","getTelemetryIdentifier","getTelemetryIdentity","initializeAppObservability","initializeNodeObservability","isObservabilityDisabled","mapSpaces","setupTelemetryListeners","showObservabilityBanner","storeObservabilityDisabled","storeObservabilityGroup"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0}},"bytes":950},"dist/lib/browser/segment/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/segment/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-4PRNMJKD.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-5ICT2XF2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-LJO63BXO.mjs","kind":"import-statement"}],"exports":["SegmentTelemetry","TelemetryEvent"],"entryPoint":"src/segment/index.ts","inputs":{},"bytes":226},"dist/lib/browser/sentry/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/sentry/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-5ICT2XF2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-LJO63BXO.mjs","kind":"import-statement"}],"exports":["addBreadcrumb","captureException","captureMessage","captureUserFeedback","init","setTag","setTags","setUser","withScope"],"entryPoint":"src/sentry/index.ts","inputs":{},"bytes":380},"dist/lib/browser/otel-VKOLQDIM.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":18062},"dist/lib/browser/otel-VKOLQDIM.mjs":{"imports":[{"path":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/api-logs","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-logs-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","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":"@dxos/util","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-metrics-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-metrics","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":"@opentelemetry/api","kind":"import-statement","external":true},{"path":"@opentelemetry/auto-instrumentations-web","kind":"import-statement","external":true},{"path":"@opentelemetry/exporter-trace-otlp-http","kind":"import-statement","external":true},{"path":"@opentelemetry/instrumentation","kind":"import-statement","external":true},{"path":"@opentelemetry/resources","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-base","kind":"import-statement","external":true},{"path":"@opentelemetry/sdk-trace-web","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}],"exports":["OtelLogs","OtelMetrics","OtelTraces","setDiagLogger"],"entryPoint":"src/otel/index.ts","inputs":{"src/otel/otel.ts":{"bytesInOutput":229},"src/otel/index.ts":{"bytesInOutput":0},"src/otel/logs.ts":{"bytesInOutput":2494},"src/otel/metrics.ts":{"bytesInOutput":3565},"src/otel/traces-browser.ts":{"bytesInOutput":2337}},"bytes":8833},"dist/lib/browser/sentry-log-processor-JLBMJ2SF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10603},"dist/lib/browser/sentry-log-processor-JLBMJ2SF.mjs":{"imports":[{"path":"dist/lib/browser/chunk-LJO63BXO.mjs","kind":"import-statement"},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["SentryLogProcessor"],"entryPoint":"src/sentry/sentry-log-processor.ts","inputs":{"src/sentry/sentry-log-processor.ts":{"bytesInOutput":4751}},"bytes":4972},"dist/lib/browser/observability-VMNREW6G.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/observability-VMNREW6G.mjs":{"imports":[{"path":"dist/lib/browser/chunk-I5VYFJ6C.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-4PRNMJKD.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-5ICT2XF2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-LJO63BXO.mjs","kind":"import-statement"}],"exports":["Observability"],"entryPoint":"src/observability.ts","inputs":{},"bytes":229},"dist/lib/browser/chunk-I5VYFJ6C.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":64661},"dist/lib/browser/chunk-I5VYFJ6C.mjs":{"imports":[{"path":"dist/lib/browser/chunk-4PRNMJKD.mjs","kind":"import-statement"},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client","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/network-manager","kind":"import-statement","external":true},{"path":"@dxos/protocols/proto/dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"localforage","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"dist/lib/browser/observability-VMNREW6G.mjs","kind":"dynamic-import"},{"path":"@dxos/node-std/fs","kind":"import-statement","external":true},{"path":"@dxos/node-std/fs/promises","kind":"import-statement","external":true},{"path":"@dxos/node-std/path","kind":"import-statement","external":true},{"path":"js-yaml","kind":"import-statement","external":true},{"path":"uuid","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"dist/lib/browser/otel-VKOLQDIM.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/otel-VKOLQDIM.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/segment/index.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/sentry/index.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/sentry-log-processor-JLBMJ2SF.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/otel-VKOLQDIM.mjs","kind":"dynamic-import"}],"exports":["OBSERVABILITY_DISABLED_KEY","OBSERVABILITY_GROUP_KEY","Observability","getObservabilityGroup","getObservabilityState","getTelemetryIdentifier","getTelemetryIdentity","initializeAppObservability","initializeNodeObservability","isObservabilityDisabled","mapSpaces","setupTelemetryListeners","showObservabilityBanner","storeObservabilityDisabled","storeObservabilityGroup"],"inputs":{"src/observability.ts":{"bytesInOutput":19910},"src/cli-observability-secrets.json":{"bytesInOutput":625},"src/helpers/browser-observability.ts":{"bytesInOutput":5032},"src/helpers/index.ts":{"bytesInOutput":0},"src/helpers/common.ts":{"bytesInOutput":324},"src/helpers/node-observability.ts":{"bytesInOutput":3432},"src/helpers/map-spaces.ts":{"bytesInOutput":1192},"src/helpers/setup-telemetry-listeners.ts":{"bytesInOutput":2542}},"bytes":33825},"dist/lib/browser/chunk-4PRNMJKD.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7714},"dist/lib/browser/chunk-4PRNMJKD.mjs":{"imports":[{"path":"dist/lib/browser/chunk-LJO63BXO.mjs","kind":"import-statement"},{"path":"@segment/snippet","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["SegmentTelemetry","TelemetryEvent"],"inputs":{"src/segment/browser.ts":{"bytesInOutput":1946},"src/segment/base.ts":{"bytesInOutput":1095},"src/segment/types.ts":{"bytesInOutput":180},"src/segment/index.ts":{"bytesInOutput":0}},"bytes":3501},"dist/lib/browser/chunk-5ICT2XF2.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/chunk-5ICT2XF2.mjs":{"imports":[],"exports":[],"inputs":{"src/sentry/index.ts":{"bytesInOutput":0}},"bytes":44},"dist/lib/browser/chunk-LJO63BXO.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7317},"dist/lib/browser/chunk-LJO63BXO.mjs":{"imports":[{"path":"@sentry/browser","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/tracing","kind":"import-statement","external":true},{"path":"@sentry/browser","kind":"import-statement","external":true}],"exports":["addBreadcrumb","captureException","captureMessage","captureUserFeedback","init","setTag","setTags","setUser","withScope"],"inputs":{"src/sentry/browser.ts":{"bytesInOutput":4063}},"bytes":4286}}}
@@ -0,0 +1,10 @@
1
+ import {
2
+ Observability
3
+ } from "./chunk-I5VYFJ6C.mjs";
4
+ import "./chunk-4PRNMJKD.mjs";
5
+ import "./chunk-5ICT2XF2.mjs";
6
+ import "./chunk-LJO63BXO.mjs";
7
+ export {
8
+ Observability
9
+ };
10
+ //# sourceMappingURL=observability-VMNREW6G.mjs.map
@@ -1,5 +1,5 @@
1
- // packages/sdk/observability/src/otel/otel.ts
2
- import { diag, DiagConsoleLogger, DiagLogLevel } from "@opentelemetry/api";
1
+ // src/otel/otel.ts
2
+ import { DiagConsoleLogger, DiagLogLevel, diag } from "@opentelemetry/api";
3
3
  var setDiagLogger = (level) => {
4
4
  const logLevel = DiagLogLevel[level];
5
5
  if (logLevel) {
@@ -7,15 +7,17 @@ var setDiagLogger = (level) => {
7
7
  }
8
8
  };
9
9
 
10
- // packages/sdk/observability/src/otel/logs.ts
10
+ // src/otel/logs.ts
11
11
  import { SeverityNumber } from "@opentelemetry/api-logs";
12
12
  import { OTLPLogExporter } from "@opentelemetry/exporter-logs-otlp-http";
13
13
  import { Resource } from "@opentelemetry/resources";
14
14
  import { BatchLogRecordProcessor, LoggerProvider } from "@opentelemetry/sdk-logs";
15
15
  import { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_VERSION } from "@opentelemetry/semantic-conventions";
16
- import { getContextFromEntry, getRelativeFilename, LogLevel } from "@dxos/log";
16
+ import { LogLevel, getContextFromEntry, getRelativeFilename } from "@dxos/log";
17
17
  import { jsonlogify } from "@dxos/util";
18
18
  var OtelLogs = class {
19
+ options;
20
+ _loggerProvider;
19
21
  constructor(options) {
20
22
  this.options = options;
21
23
  this.logProcessor = (config, entry) => {
@@ -56,6 +58,7 @@ var OtelLogs = class {
56
58
  });
57
59
  this._loggerProvider.addLogRecordProcessor(new BatchLogRecordProcessor(logExporter));
58
60
  }
61
+ logProcessor;
59
62
  flush() {
60
63
  return this._loggerProvider.forceFlush();
61
64
  }
@@ -80,16 +83,20 @@ var convertLevel = (level) => {
80
83
  }
81
84
  };
82
85
 
83
- // packages/sdk/observability/src/otel/metrics.ts
86
+ // src/otel/metrics.ts
84
87
  import { OTLPMetricExporter } from "@opentelemetry/exporter-metrics-otlp-http";
85
88
  import { Resource as Resource2 } from "@opentelemetry/resources";
86
89
  import { MeterProvider, PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics";
87
90
  import { SEMRESATTRS_SERVICE_NAME as SEMRESATTRS_SERVICE_NAME2, SEMRESATTRS_SERVICE_VERSION as SEMRESATTRS_SERVICE_VERSION2 } from "@opentelemetry/semantic-conventions";
88
91
  import { log } from "@dxos/log";
89
92
  import { TRACE_PROCESSOR } from "@dxos/tracing";
90
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/sdk/observability/src/otel/metrics.ts";
93
+ var __dxlog_file = "/__w/dxos/dxos/packages/sdk/observability/src/otel/metrics.ts";
91
94
  var EXPORT_INTERVAL = 60 * 1e3;
92
95
  var OtelMetrics = class {
96
+ options;
97
+ _meterProvider;
98
+ _meter;
99
+ _gauges;
93
100
  constructor(options) {
94
101
  this.options = options;
95
102
  this._gauges = /* @__PURE__ */ new Map();
@@ -208,19 +215,21 @@ var convertTags = (data) => {
208
215
  }
209
216
  };
210
217
 
211
- // packages/sdk/observability/src/otel/traces-browser.ts
218
+ // src/otel/traces-browser.ts
212
219
  import { trace } from "@opentelemetry/api";
213
220
  import { getWebAutoInstrumentations } from "@opentelemetry/auto-instrumentations-web";
214
221
  import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";
215
222
  import { registerInstrumentations } from "@opentelemetry/instrumentation";
216
223
  import { Resource as Resource3 } from "@opentelemetry/resources";
217
- import { ConsoleSpanExporter, SimpleSpanProcessor, BatchSpanProcessor } from "@opentelemetry/sdk-trace-base";
224
+ import { BatchSpanProcessor, ConsoleSpanExporter, SimpleSpanProcessor } from "@opentelemetry/sdk-trace-base";
218
225
  import { WebTracerProvider } from "@opentelemetry/sdk-trace-web";
219
226
  import { SEMRESATTRS_SERVICE_NAME as SEMRESATTRS_SERVICE_NAME3, SEMRESATTRS_SERVICE_VERSION as SEMRESATTRS_SERVICE_VERSION3 } from "@opentelemetry/semantic-conventions";
220
227
  import { log as log2 } from "@dxos/log";
221
228
  import { TRACE_PROCESSOR as TRACE_PROCESSOR2 } from "@dxos/tracing";
222
- var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/sdk/observability/src/otel/traces-browser.ts";
229
+ var __dxlog_file2 = "/__w/dxos/dxos/packages/sdk/observability/src/otel/traces-browser.ts";
223
230
  var OtelTraces = class {
231
+ options;
232
+ _tracer;
224
233
  constructor(options) {
225
234
  this.options = options;
226
235
  const resource = Resource3.default().merge(new Resource3({
@@ -274,4 +283,4 @@ export {
274
283
  OtelTraces,
275
284
  setDiagLogger
276
285
  };
277
- //# sourceMappingURL=otel-LHAFLNBQ.mjs.map
286
+ //# sourceMappingURL=otel-VKOLQDIM.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/otel/otel.ts", "../../../src/otel/logs.ts", "../../../src/otel/metrics.ts", "../../../src/otel/traces-browser.ts"],
4
- "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { diag, DiagConsoleLogger, DiagLogLevel } from '@opentelemetry/api';\n\nexport type OtelOptions = {\n endpoint: string;\n authorizationHeader: string;\n serviceName: string; // For the Otel API, the name of the entity for which signals (metrics or trace) are collected.\n serviceVersion: string; // For the Otel API, The name of the entity for which signals (metrics or trace) are collected.\n getTags: () => { [key: string]: string };\n consoleDiagLogLevel?: string;\n};\n\nexport const setDiagLogger = (level?: string) => {\n const logLevel = DiagLogLevel[level as keyof typeof DiagLogLevel];\n if (logLevel) {\n diag.setLogger(new DiagConsoleLogger(), logLevel);\n }\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { SeverityNumber } from '@opentelemetry/api-logs';\nimport { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http';\nimport { Resource } from '@opentelemetry/resources';\nimport { BatchLogRecordProcessor, LoggerProvider } from '@opentelemetry/sdk-logs';\nimport { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';\n\nimport {\n getContextFromEntry,\n getRelativeFilename,\n type LogConfig,\n type LogEntry,\n LogLevel,\n type LogProcessor,\n} from '@dxos/log';\nimport { jsonlogify } from '@dxos/util';\n\nimport { type OtelOptions, setDiagLogger } from './otel';\n\nexport type OtelLogOptions = OtelOptions & {\n logLevel: LogLevel;\n /**\n * Set `true` to capture logs sent through LoggingService from shared worker.\n * Better to set to `false` because shared worker is initializing its own logger.\n */\n includeSharedWorkerLogs: boolean;\n};\n\nexport class OtelLogs {\n private _loggerProvider: LoggerProvider;\n constructor(private readonly options: OtelLogOptions) {\n setDiagLogger(options.consoleDiagLogLevel);\n const resource = Resource.default().merge(\n new Resource({\n [SEMRESATTRS_SERVICE_NAME]: this.options.serviceName,\n [SEMRESATTRS_SERVICE_VERSION]: this.options.serviceVersion,\n }),\n );\n const logExporter = new OTLPLogExporter({\n url: this.options.endpoint + '/v1/logs',\n headers: {\n Authorization: this.options.authorizationHeader,\n },\n concurrencyLimit: 10, // an optional limit on pending requests\n });\n this._loggerProvider = new LoggerProvider({ resource });\n this._loggerProvider.addLogRecordProcessor(new BatchLogRecordProcessor(logExporter));\n }\n\n public readonly logProcessor: LogProcessor = (config: LogConfig, entry: LogEntry) => {\n const logger = this._loggerProvider.getLogger('dxos-observability', this.options.serviceVersion);\n\n if (\n entry.level < this.options.logLevel ||\n (!this.options.includeSharedWorkerLogs && entry.meta?.S?.remoteSessionId)\n ) {\n return;\n }\n\n const record = {\n ...entry,\n ...(entry.meta ? { meta: { file: getRelativeFilename(entry.meta.F), line: entry.meta.L } } : {}),\n context: jsonlogify(getContextFromEntry(entry)),\n };\n\n logger.emit({\n severityNumber: convertLevel(entry.level),\n body: JSON.stringify(record),\n attributes: this.options.getTags(),\n });\n };\n\n flush(): Promise<void> {\n return this._loggerProvider.forceFlush();\n }\n\n close(): Promise<void> {\n return this._loggerProvider.shutdown();\n }\n}\n\nconst convertLevel = (level: LogLevel): SeverityNumber => {\n switch (level) {\n case LogLevel.DEBUG:\n return SeverityNumber.DEBUG;\n case LogLevel.VERBOSE:\n return SeverityNumber.INFO;\n case LogLevel.INFO:\n return SeverityNumber.INFO;\n case LogLevel.WARN:\n return SeverityNumber.WARN;\n case LogLevel.ERROR:\n return SeverityNumber.ERROR;\n default:\n return SeverityNumber.ERROR;\n }\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type Attributes, type Meter, type ObservableGauge } from '@opentelemetry/api';\nimport { OTLPMetricExporter } from '@opentelemetry/exporter-metrics-otlp-http';\nimport { Resource } from '@opentelemetry/resources';\nimport { MeterProvider, PeriodicExportingMetricReader } from '@opentelemetry/sdk-metrics';\nimport { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';\n\nimport { log } from '@dxos/log';\nimport { TRACE_PROCESSOR, type MetricData } from '@dxos/tracing';\n\nimport { type OtelOptions, setDiagLogger } from './otel';\n\nconst EXPORT_INTERVAL = 60 * 1000;\n\ntype SynchronousGauge = {\n gauge: ObservableGauge<Attributes>;\n nextValue: number;\n nextTags?: any;\n};\n\nexport class OtelMetrics {\n private _meterProvider: MeterProvider;\n private _meter: Meter;\n private _gauges = new Map<string, SynchronousGauge>();\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 const resource = Resource.default().merge(\n new Resource({\n [SEMRESATTRS_SERVICE_NAME]: this.options.serviceName,\n [SEMRESATTRS_SERVICE_VERSION]: this.options.serviceVersion,\n }),\n );\n\n const grafanaMetricReader = new PeriodicExportingMetricReader({\n exporter: new OTLPMetricExporter({\n url: this.options.endpoint + '/v1/metrics',\n headers: {\n Authorization: this.options.authorizationHeader,\n },\n }),\n exportIntervalMillis: EXPORT_INTERVAL,\n });\n\n this._meterProvider = new MeterProvider({\n 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", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { trace, type Tracer } from '@opentelemetry/api';\nimport { getWebAutoInstrumentations } from '@opentelemetry/auto-instrumentations-web';\nimport { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';\nimport { registerInstrumentations } from '@opentelemetry/instrumentation';\nimport { Resource } from '@opentelemetry/resources';\nimport { ConsoleSpanExporter, SimpleSpanProcessor, BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';\nimport { WebTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';\n\nimport { log } from '@dxos/log';\nimport { TRACE_PROCESSOR, type StartSpanOptions } from '@dxos/tracing';\n\nimport { type OtelOptions } from './otel';\n\nexport class OtelTraces {\n private _tracer: Tracer;\n constructor(private readonly options: OtelOptions) {\n const resource = Resource.default().merge(\n new Resource({\n [SEMRESATTRS_SERVICE_NAME]: this.options.serviceName,\n [SEMRESATTRS_SERVICE_VERSION]: this.options.serviceVersion,\n }),\n );\n\n const tracerProvider = new WebTracerProvider({ resource });\n tracerProvider.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter()));\n tracerProvider.addSpanProcessor(\n new BatchSpanProcessor(\n new OTLPTraceExporter({\n url: this.options.endpoint + '/v1/traces',\n headers: {\n Authorization: this.options.authorizationHeader,\n },\n concurrencyLimit: 10, // an optional limit on pending requests\n }),\n ),\n );\n // TODO(nf): ContextManager? Propogator?\n tracerProvider.register({});\n this._tracer = trace.getTracer('dxos-observability', this.options.serviceVersion);\n }\n\n public start(): void {\n registerInstrumentations({\n instrumentations: [getWebAutoInstrumentations()],\n });\n log('trace processor registered');\n TRACE_PROCESSOR.remoteTracing.registerProcessor({\n startSpan: (options: StartSpanOptions) => {\n log('begin otel trace', { options });\n return this._tracer.startSpan(options.name, options);\n },\n });\n }\n}\n"],
5
- "mappings": "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",
6
- "names": ["diag", "DiagConsoleLogger", "DiagLogLevel", "setDiagLogger", "level", "logLevel", "DiagLogLevel", "diag", "setLogger", "DiagConsoleLogger", "SeverityNumber", "OTLPLogExporter", "Resource", "BatchLogRecordProcessor", "LoggerProvider", "SEMRESATTRS_SERVICE_NAME", "SEMRESATTRS_SERVICE_VERSION", "getContextFromEntry", "getRelativeFilename", "LogLevel", "jsonlogify", "OtelLogs", "options", "logProcessor", "config", "entry", "logger", "_loggerProvider", "getLogger", "serviceVersion", "level", "logLevel", "includeSharedWorkerLogs", "meta", "S", "remoteSessionId", "record", "file", "getRelativeFilename", "F", "line", "L", "context", "jsonlogify", "getContextFromEntry", "emit", "severityNumber", "convertLevel", "body", "JSON", "stringify", "attributes", "getTags", "setDiagLogger", "consoleDiagLogLevel", "resource", "Resource", "default", "merge", "SEMRESATTRS_SERVICE_NAME", "serviceName", "SEMRESATTRS_SERVICE_VERSION", "logExporter", "OTLPLogExporter", "url", "endpoint", "headers", "Authorization", "authorizationHeader", "concurrencyLimit", "LoggerProvider", "addLogRecordProcessor", "BatchLogRecordProcessor", "flush", "forceFlush", "close", "shutdown", "LogLevel", "DEBUG", "SeverityNumber", "VERBOSE", "INFO", "WARN", "ERROR", "OTLPMetricExporter", "Resource", "MeterProvider", "PeriodicExportingMetricReader", "SEMRESATTRS_SERVICE_NAME", "SEMRESATTRS_SERVICE_VERSION", "log", "TRACE_PROCESSOR", "EXPORT_INTERVAL", "OtelMetrics", "options", "_gauges", "Map", "setDiagLogger", "consoleDiagLogLevel", "resource", "Resource", "default", "merge", "SEMRESATTRS_SERVICE_NAME", "serviceName", "SEMRESATTRS_SERVICE_VERSION", "serviceVersion", "grafanaMetricReader", "PeriodicExportingMetricReader", "exporter", "OTLPMetricExporter", "url", "endpoint", "headers", "Authorization", "authorizationHeader", "exportIntervalMillis", "_meterProvider", "MeterProvider", "readers", "_meter", "getMeter", "metrics", "increment", "name", "value", "data", "convertTags", "distribution", "set", "gauge", "TRACE_PROCESSOR", "remoteMetrics", "registerProcessor", "tags", "createGauge", "log", "getTags", "record", "counter", "createCounter", "add", "createHistogram", "flush", "forceFlush", "close", "shutdown", "Object", "entries", "reduce", "obj", "key", "trace", "getWebAutoInstrumentations", "OTLPTraceExporter", "registerInstrumentations", "Resource", "ConsoleSpanExporter", "SimpleSpanProcessor", "BatchSpanProcessor", "WebTracerProvider", "SEMRESATTRS_SERVICE_NAME", "SEMRESATTRS_SERVICE_VERSION", "log", "TRACE_PROCESSOR", "OtelTraces", "options", "resource", "default", "merge", "serviceName", "serviceVersion", "tracerProvider", "addSpanProcessor", "url", "endpoint", "headers", "Authorization", "authorizationHeader", "concurrencyLimit", "register", "_tracer", "getTracer", "start", "instrumentations", "remoteTracing", "registerProcessor", "startSpan", "name"]
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { DiagConsoleLogger, DiagLogLevel, diag } from '@opentelemetry/api';\n\nexport type OtelOptions = {\n endpoint: string;\n authorizationHeader: string;\n serviceName: string; // For the Otel API, the name of the entity for which signals (metrics or trace) are collected.\n serviceVersion: string; // For the Otel API, The name of the entity for which signals (metrics or trace) are collected.\n getTags: () => { [key: string]: string };\n consoleDiagLogLevel?: string;\n};\n\nexport const setDiagLogger = (level?: string) => {\n const logLevel = DiagLogLevel[level as keyof typeof DiagLogLevel];\n if (logLevel) {\n diag.setLogger(new DiagConsoleLogger(), logLevel);\n }\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { SeverityNumber } from '@opentelemetry/api-logs';\nimport { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http';\nimport { Resource } from '@opentelemetry/resources';\nimport { BatchLogRecordProcessor, LoggerProvider } from '@opentelemetry/sdk-logs';\nimport { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';\n\nimport {\n type LogConfig,\n type LogEntry,\n LogLevel,\n type LogProcessor,\n getContextFromEntry,\n getRelativeFilename,\n} from '@dxos/log';\nimport { jsonlogify } from '@dxos/util';\n\nimport { type OtelOptions, setDiagLogger } from './otel';\n\nexport type OtelLogOptions = OtelOptions & {\n logLevel: LogLevel;\n /**\n * Set `true` to capture logs sent through LoggingService from shared worker.\n * Better to set to `false` because shared worker is initializing its own logger.\n */\n includeSharedWorkerLogs: boolean;\n};\n\nexport class OtelLogs {\n private _loggerProvider: LoggerProvider;\n constructor(private readonly options: OtelLogOptions) {\n setDiagLogger(options.consoleDiagLogLevel);\n const resource = Resource.default().merge(\n new Resource({\n [SEMRESATTRS_SERVICE_NAME]: this.options.serviceName,\n [SEMRESATTRS_SERVICE_VERSION]: this.options.serviceVersion,\n }),\n );\n const logExporter = new OTLPLogExporter({\n url: this.options.endpoint + '/v1/logs',\n headers: {\n Authorization: this.options.authorizationHeader,\n },\n concurrencyLimit: 10, // an optional limit on pending requests\n });\n this._loggerProvider = new LoggerProvider({ resource });\n this._loggerProvider.addLogRecordProcessor(new BatchLogRecordProcessor(logExporter));\n }\n\n public readonly logProcessor: LogProcessor = (config: LogConfig, entry: LogEntry) => {\n const logger = this._loggerProvider.getLogger('dxos-observability', this.options.serviceVersion);\n\n if (\n entry.level < this.options.logLevel ||\n (!this.options.includeSharedWorkerLogs && entry.meta?.S?.remoteSessionId)\n ) {\n return;\n }\n\n const record = {\n ...entry,\n ...(entry.meta ? { meta: { file: getRelativeFilename(entry.meta.F), line: entry.meta.L } } : {}),\n context: jsonlogify(getContextFromEntry(entry)),\n };\n\n logger.emit({\n severityNumber: convertLevel(entry.level),\n body: JSON.stringify(record),\n attributes: this.options.getTags(),\n });\n };\n\n flush(): Promise<void> {\n return this._loggerProvider.forceFlush();\n }\n\n close(): Promise<void> {\n return this._loggerProvider.shutdown();\n }\n}\n\nconst convertLevel = (level: LogLevel): SeverityNumber => {\n switch (level) {\n case LogLevel.DEBUG:\n return SeverityNumber.DEBUG;\n case LogLevel.VERBOSE:\n return SeverityNumber.INFO;\n case LogLevel.INFO:\n return SeverityNumber.INFO;\n case LogLevel.WARN:\n return SeverityNumber.WARN;\n case LogLevel.ERROR:\n return SeverityNumber.ERROR;\n default:\n return SeverityNumber.ERROR;\n }\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type Attributes, type Meter, type ObservableGauge } from '@opentelemetry/api';\nimport { OTLPMetricExporter } from '@opentelemetry/exporter-metrics-otlp-http';\nimport { Resource } from '@opentelemetry/resources';\nimport { MeterProvider, PeriodicExportingMetricReader } from '@opentelemetry/sdk-metrics';\nimport { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';\n\nimport { log } from '@dxos/log';\nimport { type MetricData, TRACE_PROCESSOR } from '@dxos/tracing';\n\nimport { type OtelOptions, setDiagLogger } from './otel';\n\nconst EXPORT_INTERVAL = 60 * 1000;\n\ntype SynchronousGauge = {\n gauge: ObservableGauge<Attributes>;\n nextValue: number;\n nextTags?: any;\n};\n\nexport class OtelMetrics {\n private _meterProvider: MeterProvider;\n private _meter: Meter;\n private _gauges = new Map<string, SynchronousGauge>();\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 const resource = Resource.default().merge(\n new Resource({\n [SEMRESATTRS_SERVICE_NAME]: this.options.serviceName,\n [SEMRESATTRS_SERVICE_VERSION]: this.options.serviceVersion,\n }),\n );\n\n const grafanaMetricReader = new PeriodicExportingMetricReader({\n exporter: new OTLPMetricExporter({\n url: this.options.endpoint + '/v1/metrics',\n headers: {\n Authorization: this.options.authorizationHeader,\n },\n }),\n exportIntervalMillis: EXPORT_INTERVAL,\n });\n\n this._meterProvider = new MeterProvider({\n 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", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type Tracer, trace } from '@opentelemetry/api';\nimport { getWebAutoInstrumentations } from '@opentelemetry/auto-instrumentations-web';\nimport { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';\nimport { registerInstrumentations } from '@opentelemetry/instrumentation';\nimport { Resource } from '@opentelemetry/resources';\nimport { BatchSpanProcessor, ConsoleSpanExporter, SimpleSpanProcessor } from '@opentelemetry/sdk-trace-base';\nimport { WebTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';\n\nimport { log } from '@dxos/log';\nimport { type StartSpanOptions, TRACE_PROCESSOR } from '@dxos/tracing';\n\nimport { type OtelOptions } from './otel';\n\nexport class OtelTraces {\n private _tracer: Tracer;\n constructor(private readonly options: OtelOptions) {\n const resource = Resource.default().merge(\n new Resource({\n [SEMRESATTRS_SERVICE_NAME]: this.options.serviceName,\n [SEMRESATTRS_SERVICE_VERSION]: this.options.serviceVersion,\n }),\n );\n\n const tracerProvider = new WebTracerProvider({ resource });\n tracerProvider.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter()));\n tracerProvider.addSpanProcessor(\n new BatchSpanProcessor(\n new OTLPTraceExporter({\n url: this.options.endpoint + '/v1/traces',\n headers: {\n Authorization: this.options.authorizationHeader,\n },\n concurrencyLimit: 10, // an optional limit on pending requests\n }),\n ),\n );\n // TODO(nf): ContextManager? Propogator?\n tracerProvider.register({});\n this._tracer = trace.getTracer('dxos-observability', this.options.serviceVersion);\n }\n\n public start(): void {\n registerInstrumentations({\n instrumentations: [getWebAutoInstrumentations()],\n });\n log('trace processor registered');\n TRACE_PROCESSOR.remoteTracing.registerProcessor({\n startSpan: (options: StartSpanOptions) => {\n log('begin otel trace', { options });\n return this._tracer.startSpan(options.name, options);\n },\n });\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["DiagConsoleLogger", "DiagLogLevel", "diag", "setDiagLogger", "level", "logLevel", "DiagLogLevel", "diag", "setLogger", "DiagConsoleLogger", "SeverityNumber", "OTLPLogExporter", "Resource", "BatchLogRecordProcessor", "LoggerProvider", "SEMRESATTRS_SERVICE_NAME", "SEMRESATTRS_SERVICE_VERSION", "LogLevel", "getContextFromEntry", "getRelativeFilename", "jsonlogify", "OtelLogs", "_loggerProvider", "options", "logProcessor", "config", "entry", "logger", "getLogger", "serviceVersion", "level", "logLevel", "includeSharedWorkerLogs", "meta", "S", "remoteSessionId", "record", "file", "getRelativeFilename", "F", "line", "L", "context", "jsonlogify", "getContextFromEntry", "emit", "severityNumber", "convertLevel", "body", "JSON", "stringify", "attributes", "getTags", "setDiagLogger", "consoleDiagLogLevel", "resource", "Resource", "default", "merge", "SEMRESATTRS_SERVICE_NAME", "serviceName", "SEMRESATTRS_SERVICE_VERSION", "logExporter", "OTLPLogExporter", "url", "endpoint", "headers", "Authorization", "authorizationHeader", "concurrencyLimit", "LoggerProvider", "addLogRecordProcessor", "BatchLogRecordProcessor", "flush", "forceFlush", "close", "shutdown", "LogLevel", "DEBUG", "SeverityNumber", "VERBOSE", "INFO", "WARN", "ERROR", "OTLPMetricExporter", "Resource", "MeterProvider", "PeriodicExportingMetricReader", "SEMRESATTRS_SERVICE_NAME", "SEMRESATTRS_SERVICE_VERSION", "log", "TRACE_PROCESSOR", "EXPORT_INTERVAL", "OtelMetrics", "_meterProvider", "_meter", "_gauges", "options", "Map", "setDiagLogger", "consoleDiagLogLevel", "resource", "Resource", "default", "merge", "SEMRESATTRS_SERVICE_NAME", "serviceName", "SEMRESATTRS_SERVICE_VERSION", "serviceVersion", "grafanaMetricReader", "PeriodicExportingMetricReader", "exporter", "OTLPMetricExporter", "url", "endpoint", "headers", "Authorization", "authorizationHeader", "exportIntervalMillis", "MeterProvider", "readers", "getMeter", "metrics", "increment", "name", "value", "data", "convertTags", "distribution", "set", "gauge", "TRACE_PROCESSOR", "remoteMetrics", "registerProcessor", "tags", "createGauge", "log", "getTags", "record", "counter", "createCounter", "add", "createHistogram", "flush", "forceFlush", "close", "shutdown", "Object", "entries", "reduce", "obj", "key", "trace", "getWebAutoInstrumentations", "OTLPTraceExporter", "registerInstrumentations", "Resource", "BatchSpanProcessor", "ConsoleSpanExporter", "SimpleSpanProcessor", "WebTracerProvider", "SEMRESATTRS_SERVICE_NAME", "SEMRESATTRS_SERVICE_VERSION", "log", "TRACE_PROCESSOR", "OtelTraces", "_tracer", "options", "resource", "default", "merge", "serviceName", "serviceVersion", "tracerProvider", "addSpanProcessor", "url", "endpoint", "headers", "Authorization", "authorizationHeader", "concurrencyLimit", "register", "getTracer", "start", "instrumentations", "remoteTracing", "registerProcessor", "startSpan", "name"]
7
7
  }
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  SegmentTelemetry,
3
3
  TelemetryEvent
4
- } from "../chunk-G6EE7HFV.mjs";
5
- import "../chunk-KDP3SESE.mjs";
6
- import "../chunk-JA5VJRKF.mjs";
4
+ } from "../chunk-4PRNMJKD.mjs";
5
+ import "../chunk-5ICT2XF2.mjs";
6
+ import "../chunk-LJO63BXO.mjs";
7
7
  export {
8
8
  SegmentTelemetry,
9
9
  TelemetryEvent
@@ -1,4 +1,4 @@
1
- import "../chunk-KDP3SESE.mjs";
1
+ import "../chunk-5ICT2XF2.mjs";
2
2
  import {
3
3
  addBreadcrumb,
4
4
  captureException,
@@ -9,7 +9,7 @@ import {
9
9
  setTags,
10
10
  setUser,
11
11
  withScope
12
- } from "../chunk-JA5VJRKF.mjs";
12
+ } from "../chunk-LJO63BXO.mjs";
13
13
  export {
14
14
  addBreadcrumb,
15
15
  captureException,
@@ -2,68 +2,67 @@ import {
2
2
  captureException,
3
3
  captureMessage,
4
4
  withScope
5
- } from "./chunk-JA5VJRKF.mjs";
5
+ } from "./chunk-LJO63BXO.mjs";
6
6
 
7
- // packages/sdk/observability/src/sentry/sentry-log-processor.ts
7
+ // src/sentry/sentry-log-processor.ts
8
8
  import { InvariantViolation } from "@dxos/invariant";
9
9
  import { LogLevel, shouldLog } from "@dxos/log";
10
10
  import { CircularBuffer, getDebugName } from "@dxos/util";
11
11
  var MAX_LOG_BREADCRUMBS = 150;
12
12
  var SentryLogProcessor = class {
13
- constructor() {
14
- this._breadcrumbs = new CircularBuffer(MAX_LOG_BREADCRUMBS);
15
- this.logProcessor = (config, entry) => {
16
- const { level, meta, error } = entry;
17
- if (!shouldLog(entry, config.captureFilters) || meta?.S?.remoteSessionId) {
18
- if (entry.level > LogLevel.DEBUG) {
19
- this._addBreadcrumb(void 0, entry.message, convertLevel(entry.level), void 0);
13
+ _breadcrumbs = new CircularBuffer(MAX_LOG_BREADCRUMBS);
14
+ logProcessor = (config, entry) => {
15
+ const { level, meta, error } = entry;
16
+ if (!shouldLog(entry, config.captureFilters) || meta?.S?.remoteSessionId) {
17
+ if (entry.level > LogLevel.DEBUG) {
18
+ this._addBreadcrumb(void 0, entry.message ?? (entry.error ? entry.error.message ?? String(entry.error) : ""), convertLevel(entry.level), void 0);
19
+ }
20
+ return;
21
+ }
22
+ if (entry.level !== LogLevel.WARN && entry.level !== LogLevel.ERROR) {
23
+ return;
24
+ }
25
+ withScope((scope) => {
26
+ const severity = convertLevel(level);
27
+ scope.setLevel(severity);
28
+ scope.setContext("dxoslog", entry.context ?? null);
29
+ if (meta) {
30
+ scope.setTag("transaction", `${getRelativeFilename(meta.F)}:${meta.L}`);
31
+ if (meta.S?.hostSessionId) {
32
+ scope.setTags({
33
+ service_host_issue: true,
34
+ service_host_session: meta.S?.hostSessionId
35
+ });
36
+ }
37
+ if (!Number.isNaN(meta.S?.uptimeSeconds)) {
38
+ scope.setExtra("uptime_seconds", meta.S?.uptimeSeconds);
20
39
  }
21
- return;
22
40
  }
23
- if (entry.level !== LogLevel.WARN && entry.level !== LogLevel.ERROR) {
24
- return;
41
+ const extendedMessage = formatMessageForSentry(entry);
42
+ let capturedError = error;
43
+ if (capturedError == null && entry.level === LogLevel.ERROR) {
44
+ capturedError = Object.values(entry.context ?? {}).find((v) => v instanceof Error);
25
45
  }
26
- withScope((scope) => {
27
- const severity = convertLevel(level);
28
- scope.setLevel(severity);
29
- scope.setContext("dxoslog", entry.context ?? null);
30
- if (meta) {
31
- scope.setTag("transaction", `${getRelativeFilename(meta.F)}:${meta.L}`);
32
- if (meta.S?.hostSessionId) {
33
- scope.setTags({
34
- service_host_issue: true,
35
- service_host_session: meta.S?.hostSessionId
36
- });
37
- }
38
- if (!Number.isNaN(meta.S?.uptimeSeconds)) {
39
- scope.setExtra("uptime_seconds", meta.S?.uptimeSeconds);
40
- }
41
- }
42
- const extendedMessage = formatMessageForSentry(entry);
43
- let capturedError = error;
44
- if (capturedError == null && entry.level === LogLevel.ERROR) {
45
- capturedError = Object.values(entry.context ?? {}).find((v) => v instanceof Error);
46
+ if (capturedError) {
47
+ if (capturedError instanceof InvariantViolation) {
48
+ scope.setExtra("invariant_violation", true);
46
49
  }
47
- if (capturedError) {
48
- if (capturedError instanceof InvariantViolation) {
49
- scope.setExtra("invariant_violation", true);
50
- }
51
- const isMessageDifferentFromStackTrace = error == null;
52
- if (isMessageDifferentFromStackTrace) {
53
- scope.setExtra("message", extendedMessage);
54
- }
55
- const eventId2 = captureException(capturedError);
56
- this._addBreadcrumb(eventId2, extendedMessage, severity, entry.context);
57
- return;
50
+ const isMessageDifferentFromStackTrace = error == null;
51
+ if (isMessageDifferentFromStackTrace) {
52
+ scope.setExtra("message", extendedMessage);
58
53
  }
59
- scope.setFingerprint([
60
- entry.message
61
- ]);
62
- const eventId = captureMessage(extendedMessage);
63
- this._addBreadcrumb(eventId, extendedMessage, severity, entry.context);
64
- });
65
- };
66
- }
54
+ const eventId2 = captureException(capturedError);
55
+ this._addBreadcrumb(eventId2, extendedMessage, severity, entry.context);
56
+ return;
57
+ }
58
+ const message = entry.message ?? (entry.error ? entry.error.message ?? String(entry.error) : "");
59
+ scope.setFingerprint([
60
+ message
61
+ ]);
62
+ const eventId = captureMessage(extendedMessage);
63
+ this._addBreadcrumb(eventId, extendedMessage, severity, entry.context);
64
+ });
65
+ };
67
66
  addLogBreadcrumbsTo(event) {
68
67
  event.breadcrumbs ??= [];
69
68
  for (const breadcrumb of this._breadcrumbs) {
@@ -101,16 +100,17 @@ var SentryLogProcessor = class {
101
100
  }
102
101
  };
103
102
  var formatMessageForSentry = (entry) => {
103
+ const message = entry.message ?? (entry.error ? entry.error.message ?? String(entry.error) : "");
104
104
  let scopePrefix;
105
105
  if (entry.meta?.S) {
106
106
  const scope = entry.meta?.S;
107
107
  scopePrefix = scope.name || getDebugName(scope);
108
108
  }
109
109
  if (scopePrefix == null) {
110
- return entry.message;
110
+ return message;
111
111
  }
112
112
  const workerPrefix = entry.meta?.S?.hostSessionId ? "[worker] " : "";
113
- return `${workerPrefix}${scopePrefix} ${entry.message}`;
113
+ return `${workerPrefix}${scopePrefix} ${message}`;
114
114
  };
115
115
  var convertLevel = (level) => {
116
116
  switch (level) {
@@ -143,4 +143,4 @@ var getRelativeFilename = (filename) => {
143
143
  export {
144
144
  SentryLogProcessor
145
145
  };
146
- //# sourceMappingURL=sentry-log-processor-625AISXI.mjs.map
146
+ //# sourceMappingURL=sentry-log-processor-JLBMJ2SF.mjs.map