@dxos/observability 0.4.8-next.fff1521 → 0.4.8

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 (34) hide show
  1. package/dist/lib/browser/{chunk-Y66LFYI5.mjs → chunk-3SZHNHIM.mjs} +19 -16
  2. package/dist/lib/browser/chunk-3SZHNHIM.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +1 -1
  4. package/dist/lib/browser/meta.json +1 -1
  5. package/dist/lib/browser/{observability-A5P77DUJ.mjs → observability-RLZUQBHE.mjs} +2 -2
  6. package/dist/lib/browser/segment/index.mjs +2 -0
  7. package/dist/lib/browser/segment/index.mjs.map +3 -3
  8. package/dist/lib/node/{chunk-3OQ7O6O7.cjs → chunk-5HYYCHWD.cjs} +22 -19
  9. package/dist/lib/node/chunk-5HYYCHWD.cjs.map +7 -0
  10. package/dist/lib/node/index.cjs +15 -15
  11. package/dist/lib/node/index.cjs.map +1 -1
  12. package/dist/lib/node/meta.json +1 -1
  13. package/dist/lib/node/{observability-T3HIK77L.cjs → observability-NTJAGFQP.cjs} +6 -6
  14. package/dist/lib/node/{observability-T3HIK77L.cjs.map → observability-NTJAGFQP.cjs.map} +2 -2
  15. package/dist/lib/node/segment/index.cjs +12 -23
  16. package/dist/lib/node/segment/index.cjs.map +3 -3
  17. package/dist/types/src/observability.d.ts.map +1 -1
  18. package/dist/types/src/observability.js +3 -0
  19. package/dist/types/src/observability.js.map +1 -1
  20. package/dist/types/src/segment/browser.d.ts +1 -0
  21. package/dist/types/src/segment/browser.d.ts.map +1 -1
  22. package/dist/types/src/segment/browser.js +1 -0
  23. package/dist/types/src/segment/browser.js.map +1 -1
  24. package/dist/types/src/segment/node.d.ts +1 -0
  25. package/dist/types/src/segment/node.d.ts.map +1 -1
  26. package/dist/types/src/segment/node.js +12 -10
  27. package/dist/types/src/segment/node.js.map +1 -1
  28. package/package.json +15 -16
  29. package/src/observability.ts +3 -0
  30. package/src/segment/browser.ts +2 -0
  31. package/src/segment/node.ts +13 -7
  32. package/dist/lib/browser/chunk-Y66LFYI5.mjs.map +0 -7
  33. package/dist/lib/node/chunk-3OQ7O6O7.cjs.map +0 -7
  34. /package/dist/lib/browser/{observability-A5P77DUJ.mjs.map → observability-RLZUQBHE.mjs.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/segment/node.ts"],
4
- "sourcesContent": ["//\n// Copyright 2022 DXOS.org\n//\n\nimport Analytics from 'analytics-node';\n\nimport { invariant } from '@dxos/invariant';\nimport { log } from '@dxos/log';\n\nimport type { EventOptions, SegmentTelemetryOptions, PageOptions } from './types';\nimport { captureException } from '../sentry';\n\nexport class SegmentTelemetry {\n private _analytics?: Analytics;\n private _getTags: () => { [key: string]: string };\n\n constructor({ apiKey, batchSize, getTags }: SegmentTelemetryOptions) {\n this._getTags = getTags;\n try {\n invariant(apiKey, 'Key required to send telemetry');\n\n this._analytics = new Analytics(apiKey, {\n flushAt: batchSize,\n enable: true,\n });\n } catch (err) {\n log.catch('Failed to initialize telemetry', err);\n }\n }\n\n /**\n * Track a page view.\n */\n page({ installationId: anonymousId, identityId: userId, ...options }: PageOptions = {}) {\n if (!this._analytics) {\n log('Analytics not initialized', { action: 'page' });\n return;\n }\n\n try {\n this._analytics.page({\n ...options,\n userId,\n anonymousId: anonymousId!,\n });\n } catch (err) {\n log.catch('Failed to track page', err);\n }\n }\n\n /**\n * Track an event.\n */\n event({ installationId: anonymousId, identityId: userId, name: event, ...options }: EventOptions) {\n log('sending event to telemetry', { event, options, tags: this._getTags() });\n if (!this._analytics) {\n log('Analytics not initialized', { action: 'event' });\n return;\n }\n\n try {\n this._analytics.track({\n ...options,\n properties: { ...options.properties, ...this._getTags() },\n userId,\n anonymousId: anonymousId!,\n event,\n });\n } catch (err) {\n log.catch('Failed to track event', err);\n }\n }\n\n /**\n * Flush the event queue.\n */\n async flush() {\n if (!this._analytics) {\n log('Analytics not initialized', { action: 'flush' });\n return;\n }\n\n try {\n await this._analytics.flush((err) => {\n captureException(err);\n });\n } catch (err) {\n log.catch('Failed to flush', err);\n }\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,4BAAsB;AAEtB,uBAA0B;AAC1B,iBAAoB;;AAKb,IAAMA,mBAAN,MAAMA;EAIXC,YAAY,EAAEC,QAAQC,WAAWC,QAAO,GAA6B;AACnE,SAAKC,WAAWD;AAChB,QAAI;AACFE,sCAAUJ,QAAQ,kCAAA;;;;;;;;;AAElB,WAAKK,aAAa,IAAIC,sBAAAA,QAAUN,QAAQ;QACtCO,SAASN;QACTO,QAAQ;MACV,CAAA;IACF,SAASC,KAAK;AACZC,qBAAIC,MAAM,kCAAkCF,KAAAA;;;;;;IAC9C;EACF;;;;EAKAG,KAAK,EAAEC,gBAAgBC,aAAaC,YAAYC,QAAQ,GAAGC,QAAAA,IAAyB,CAAC,GAAG;AACtF,QAAI,CAAC,KAAKZ,YAAY;AACpBK,0BAAI,6BAA6B;QAAEQ,QAAQ;MAAO,GAAA;;;;;;AAClD;IACF;AAEA,QAAI;AACF,WAAKb,WAAWO,KAAK;QACnB,GAAGK;QACHD;QACAF;MACF,CAAA;IACF,SAASL,KAAK;AACZC,qBAAIC,MAAM,wBAAwBF,KAAAA;;;;;;IACpC;EACF;;;;EAKAU,MAAM,EAAEN,gBAAgBC,aAAaC,YAAYC,QAAQI,MAAMD,OAAO,GAAGF,QAAAA,GAAyB;AAChGP,wBAAI,8BAA8B;MAAES;MAAOF;MAASI,MAAM,KAAKlB,SAAQ;IAAG,GAAA;;;;;;AAC1E,QAAI,CAAC,KAAKE,YAAY;AACpBK,0BAAI,6BAA6B;QAAEQ,QAAQ;MAAQ,GAAA;;;;;;AACnD;IACF;AAEA,QAAI;AACF,WAAKb,WAAWiB,MAAM;QACpB,GAAGL;QACHM,YAAY;UAAE,GAAGN,QAAQM;UAAY,GAAG,KAAKpB,SAAQ;QAAG;QACxDa;QACAF;QACAK;MACF,CAAA;IACF,SAASV,KAAK;AACZC,qBAAIC,MAAM,yBAAyBF,KAAAA;;;;;;IACrC;EACF;;;;EAKA,MAAMe,QAAQ;AACZ,QAAI,CAAC,KAAKnB,YAAY;AACpBK,0BAAI,6BAA6B;QAAEQ,QAAQ;MAAQ,GAAA;;;;;;AACnD;IACF;AAEA,QAAI;AACF,YAAM,KAAKb,WAAWmB,MAAM,CAACf,QAAAA;AAC3BgB,oDAAiBhB,GAAAA;MACnB,CAAA;IACF,SAASA,KAAK;AACZC,qBAAIC,MAAM,mBAAmBF,KAAAA;;;;;;IAC/B;EACF;AACF;",
6
- "names": ["SegmentTelemetry", "constructor", "apiKey", "batchSize", "getTags", "_getTags", "invariant", "_analytics", "Analytics", "flushAt", "enable", "err", "log", "catch", "page", "installationId", "anonymousId", "identityId", "userId", "options", "action", "event", "name", "tags", "track", "properties", "flush", "captureException"]
4
+ "sourcesContent": ["//\n// Copyright 2022 DXOS.org\n//\n\nimport { Analytics } from '@segment/analytics-node';\n\nimport { invariant } from '@dxos/invariant';\nimport { log } from '@dxos/log';\n\nimport type { EventOptions, SegmentTelemetryOptions, PageOptions } from './types';\nimport { captureException } from '../sentry';\n\nexport class SegmentTelemetry {\n private _analytics?: Analytics;\n private _getTags: () => { [key: string]: string };\n\n constructor({ apiKey, batchSize, getTags }: SegmentTelemetryOptions) {\n this._getTags = getTags;\n try {\n invariant(apiKey, 'Key required to send telemetry');\n\n this._analytics = new Analytics({\n writeKey: apiKey,\n flushAt: batchSize,\n });\n } catch (err) {\n log.catch('Failed to initialize telemetry', err);\n }\n }\n\n /**\n * Track a page view.\n */\n page({ installationId: anonymousId, identityId: userId, ...options }: PageOptions = {}) {\n if (!this._analytics) {\n log('Analytics not initialized', { action: 'page' });\n return;\n }\n\n try {\n this._analytics.page({\n ...options,\n userId,\n anonymousId: anonymousId!,\n });\n } catch (err) {\n log.catch('Failed to track page', err);\n }\n }\n\n /**\n * Track an event.\n */\n event({ installationId: anonymousId, identityId: userId, name: event, ...options }: EventOptions) {\n log('sending event to telemetry', { event, options, tags: this._getTags() });\n if (!this._analytics) {\n log('Analytics not initialized', { action: 'event' });\n return;\n }\n\n try {\n this._analytics.track({\n ...options,\n properties: { ...options.properties, ...this._getTags() },\n userId,\n anonymousId: anonymousId!,\n event,\n });\n } catch (err) {\n log.catch('Failed to track event', err);\n }\n }\n\n /**\n * Flush the event queue.\n */\n async flush() {\n if (!this._analytics) {\n log('Analytics not initialized', { action: 'flush' });\n return;\n }\n\n try {\n await this._analytics.flush();\n } catch (err) {\n // are these errors worth capturing?\n captureException(err);\n }\n }\n\n async close() {\n if (!this._analytics) {\n return;\n }\n await this._analytics.closeAndFlush();\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAIA,4BAA0B;AAE1B,uBAA0B;AAC1B,iBAAoB;;AAKb,IAAMA,mBAAN,MAAMA;EAIXC,YAAY,EAAEC,QAAQC,WAAWC,QAAO,GAA6B;AACnE,SAAKC,WAAWD;AAChB,QAAI;AACFE,sCAAUJ,QAAQ,kCAAA;;;;;;;;;AAElB,WAAKK,aAAa,IAAIC,gCAAU;QAC9BC,UAAUP;QACVQ,SAASP;MACX,CAAA;IACF,SAASQ,KAAK;AACZC,qBAAIC,MAAM,kCAAkCF,KAAAA;;;;;;IAC9C;EACF;;;;EAKAG,KAAK,EAAEC,gBAAgBC,aAAaC,YAAYC,QAAQ,GAAGC,QAAAA,IAAyB,CAAC,GAAG;AACtF,QAAI,CAAC,KAAKZ,YAAY;AACpBK,0BAAI,6BAA6B;QAAEQ,QAAQ;MAAO,GAAA;;;;;;AAClD;IACF;AAEA,QAAI;AACF,WAAKb,WAAWO,KAAK;QACnB,GAAGK;QACHD;QACAF;MACF,CAAA;IACF,SAASL,KAAK;AACZC,qBAAIC,MAAM,wBAAwBF,KAAAA;;;;;;IACpC;EACF;;;;EAKAU,MAAM,EAAEN,gBAAgBC,aAAaC,YAAYC,QAAQI,MAAMD,OAAO,GAAGF,QAAAA,GAAyB;AAChGP,wBAAI,8BAA8B;MAAES;MAAOF;MAASI,MAAM,KAAKlB,SAAQ;IAAG,GAAA;;;;;;AAC1E,QAAI,CAAC,KAAKE,YAAY;AACpBK,0BAAI,6BAA6B;QAAEQ,QAAQ;MAAQ,GAAA;;;;;;AACnD;IACF;AAEA,QAAI;AACF,WAAKb,WAAWiB,MAAM;QACpB,GAAGL;QACHM,YAAY;UAAE,GAAGN,QAAQM;UAAY,GAAG,KAAKpB,SAAQ;QAAG;QACxDa;QACAF;QACAK;MACF,CAAA;IACF,SAASV,KAAK;AACZC,qBAAIC,MAAM,yBAAyBF,KAAAA;;;;;;IACrC;EACF;;;;EAKA,MAAMe,QAAQ;AACZ,QAAI,CAAC,KAAKnB,YAAY;AACpBK,0BAAI,6BAA6B;QAAEQ,QAAQ;MAAQ,GAAA;;;;;;AACnD;IACF;AAEA,QAAI;AACF,YAAM,KAAKb,WAAWmB,MAAK;IAC7B,SAASf,KAAK;AAEZgB,kDAAiBhB,GAAAA;IACnB;EACF;EAEA,MAAMiB,QAAQ;AACZ,QAAI,CAAC,KAAKrB,YAAY;AACpB;IACF;AACA,UAAM,KAAKA,WAAWsB,cAAa;EACrC;AACF;",
6
+ "names": ["SegmentTelemetry", "constructor", "apiKey", "batchSize", "getTags", "_getTags", "invariant", "_analytics", "Analytics", "writeKey", "flushAt", "err", "log", "catch", "page", "installationId", "anonymousId", "identityId", "userId", "options", "action", "event", "name", "tags", "track", "properties", "flush", "captureException", "close", "closeAndFlush"]
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../../../src/observability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../../../src/observability.ts"],"names":[],"mappings":"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"}
@@ -110,6 +110,9 @@ class Observability {
110
110
  await this._initErrorLogs();
111
111
  }
112
112
  async close() {
113
+ if (this._telemetry) {
114
+ await this._telemetry.close();
115
+ }
113
116
  await this._ctx.dispose();
114
117
  // TODO(wittjosiah): Remove telemetry, etc. scripts.
115
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"observability.js","sourceRoot":"","sources":["../../../src/observability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observability.js","sourceRoot":"","sources":["../../../src/observability.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,6 @@ export declare class SegmentTelemetry {
5
5
  page({ identityId: userId, ...options }?: PageOptions): void;
6
6
  event({ identityId, name: event, ...options }: EventOptions): void;
7
7
  flush(): Promise<void>;
8
+ close(): Promise<void>;
8
9
  }
9
10
  //# sourceMappingURL=browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../src/segment/browser.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGlF,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAkC;gBAEtC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,uBAAuB;IAgBnE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,GAAE,WAAgB;IAYzD,KAAK,CAAC,EAAE,UAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,EAAE,YAAY;IAe7D,KAAK;CASZ"}
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../../src/segment/browser.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGlF,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAkC;gBAEtC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,uBAAuB;IAgBnE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,GAAE,WAAgB;IAYzD,KAAK,CAAC,EAAE,UAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,EAAE,YAAY;IAe7D,KAAK;IAUL,KAAK;CACZ"}
@@ -66,6 +66,7 @@ class SegmentTelemetry {
66
66
  log_1.log.catch('Failed to flush telemetry', err);
67
67
  }
68
68
  }
69
+ async close() { }
69
70
  }
70
71
  exports.SegmentTelemetry = SegmentTelemetry;
71
72
  //# sourceMappingURL=browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../../src/segment/browser.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,+DAAuC;AAEvC,mCAAgC;AAGhC,sCAA6C;AAE7C,MAAa,gBAAgB;IAG3B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAA2B;QACjE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI;YACF,MAAM,QAAQ,GAAG,iBAAO,CAAC,GAAG,CAAC;gBAC3B,MAAM;gBACN,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC9B;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;SAClD;IACH,CAAC;IAED,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,KAAkB,EAAE;;QACvD,IAAI;YACF,MAAC,MAAc,CAAC,SAAS,0CAAE,IAAI,CAAC;gBAC9B,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACxB,GAAG,OAAO;gBACV,MAAM;aACP,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;SACxC;IACH,CAAC;IAED,KAAK,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAgB;;QACjE,IAAI;YACF,OAAO,CAAC,UAAU,GAAG;gBACnB,GAAG,OAAO,CAAC,UAAU;gBACrB,GAAG,IAAI,CAAC,QAAQ,EAAE;aACnB,CAAC;YACF,MAAC,MAAc,CAAC,SAAS,0CAAE,KAAK,CAAC;gBAC/B,GAAG,OAAO;gBACV,KAAK;aACN,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;SACzC;IACH,CAAC;IAED,KAAK,CAAC,KAAK;;QACT,IAAI;YACF,MAAM,CAAA,MAAC,MAAc,CAAC,SAAS,0CAAE,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE;gBAClD,IAAA,yBAAgB,EAAC,GAAG,CAAC,CAAC;YACxB,CAAC,CAAC,CAAA,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;SAC7C;IACH,CAAC;CACF;AAvDD,4CAuDC"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../../src/segment/browser.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,+DAAuC;AAEvC,mCAAgC;AAGhC,sCAA6C;AAE7C,MAAa,gBAAgB;IAG3B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAA2B;QACjE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI;YACF,MAAM,QAAQ,GAAG,iBAAO,CAAC,GAAG,CAAC;gBAC3B,MAAM;gBACN,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC9B;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;SAClD;IACH,CAAC;IAED,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,KAAkB,EAAE;;QACvD,IAAI;YACF,MAAC,MAAc,CAAC,SAAS,0CAAE,IAAI,CAAC;gBAC9B,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACxB,GAAG,OAAO;gBACV,MAAM;aACP,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;SACxC;IACH,CAAC;IAED,KAAK,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAgB;;QACjE,IAAI;YACF,OAAO,CAAC,UAAU,GAAG;gBACnB,GAAG,OAAO,CAAC,UAAU;gBACrB,GAAG,IAAI,CAAC,QAAQ,EAAE;aACnB,CAAC;YACF,MAAC,MAAc,CAAC,SAAS,0CAAE,KAAK,CAAC;gBAC/B,GAAG,OAAO;gBACV,KAAK;aACN,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;SACzC;IACH,CAAC;IAED,KAAK,CAAC,KAAK;;QACT,IAAI;YACF,MAAM,CAAA,MAAC,MAAc,CAAC,SAAS,0CAAE,KAAK,CAAC,CAAC,GAAQ,EAAE,EAAE;gBAClD,IAAA,yBAAgB,EAAC,GAAG,CAAC,CAAC;YACxB,CAAC,CAAC,CAAA,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;SAC7C;IACH,CAAC;IAED,KAAK,CAAC,KAAK,KAAI,CAAC;CACjB;AAzDD,4CAyDC"}
@@ -15,5 +15,6 @@ export declare class SegmentTelemetry {
15
15
  * Flush the event queue.
16
16
  */
17
17
  flush(): Promise<void>;
18
+ close(): Promise<void>;
18
19
  }
19
20
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../src/segment/node.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGlF,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,QAAQ,CAAkC;gBAEtC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,uBAAuB;IAcnE;;OAEG;IACH,IAAI,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,GAAE,WAAgB;IAiBtF;;OAEG;IACH,KAAK,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,EAAE,YAAY;IAoBhG;;OAEG;IACG,KAAK;CAcZ"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../src/segment/node.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGlF,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,QAAQ,CAAkC;gBAEtC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,uBAAuB;IAcnE;;OAEG;IACH,IAAI,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,GAAE,WAAgB;IAiBtF;;OAEG;IACH,KAAK,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,EAAE,YAAY;IAoBhG;;OAEG;IACG,KAAK;IAcL,KAAK;CAMZ"}
@@ -2,12 +2,9 @@
2
2
  //
3
3
  // Copyright 2022 DXOS.org
4
4
  //
5
- var __importDefault = (this && this.__importDefault) || function (mod) {
6
- return (mod && mod.__esModule) ? mod : { "default": mod };
7
- };
8
5
  Object.defineProperty(exports, "__esModule", { value: true });
9
6
  exports.SegmentTelemetry = void 0;
10
- const analytics_node_1 = __importDefault(require("analytics-node"));
7
+ const analytics_node_1 = require("@segment/analytics-node");
11
8
  const invariant_1 = require("@dxos/invariant");
12
9
  const log_1 = require("@dxos/log");
13
10
  const sentry_1 = require("../sentry");
@@ -16,9 +13,9 @@ class SegmentTelemetry {
16
13
  this._getTags = getTags;
17
14
  try {
18
15
  (0, invariant_1.invariant)(apiKey, 'Key required to send telemetry');
19
- this._analytics = new analytics_node_1.default(apiKey, {
16
+ this._analytics = new analytics_node_1.Analytics({
17
+ writeKey: apiKey,
20
18
  flushAt: batchSize,
21
- enable: true,
22
19
  });
23
20
  }
24
21
  catch (err) {
@@ -75,13 +72,18 @@ class SegmentTelemetry {
75
72
  return;
76
73
  }
77
74
  try {
78
- await this._analytics.flush((err) => {
79
- (0, sentry_1.captureException)(err);
80
- });
75
+ await this._analytics.flush();
81
76
  }
82
77
  catch (err) {
83
- log_1.log.catch('Failed to flush', err);
78
+ // are these errors worth capturing?
79
+ (0, sentry_1.captureException)(err);
80
+ }
81
+ }
82
+ async close() {
83
+ if (!this._analytics) {
84
+ return;
84
85
  }
86
+ await this._analytics.closeAndFlush();
85
87
  }
86
88
  }
87
89
  exports.SegmentTelemetry = SegmentTelemetry;
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../../../src/segment/node.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,oEAAuC;AAEvC,+CAA4C;AAC5C,mCAAgC;AAGhC,sCAA6C;AAE7C,MAAa,gBAAgB;IAI3B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAA2B;QACjE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI;YACF,IAAA,qBAAS,EAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;YAEpD,IAAI,CAAC,UAAU,GAAG,IAAI,wBAAS,CAAC,MAAM,EAAE;gBACtC,OAAO,EAAE,SAAS;gBAClB,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;SAClD;IACH,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,KAAkB,EAAE;QACpF,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAA,SAAG,EAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACrD,OAAO;SACR;QAED,IAAI;YACF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBACnB,GAAG,OAAO;gBACV,MAAM;gBACN,WAAW,EAAE,WAAY;aAC1B,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;SACxC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAgB;QAC9F,IAAA,SAAG,EAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAA,SAAG,EAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YACtD,OAAO;SACR;QAED,IAAI;YACF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;gBACpB,GAAG,OAAO;gBACV,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE;gBACzD,MAAM;gBACN,WAAW,EAAE,WAAY;gBACzB,KAAK;aACN,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;SACzC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAA,SAAG,EAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YACtD,OAAO;SACR;QAED,IAAI;YACF,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAClC,IAAA,yBAAgB,EAAC,GAAG,CAAC,CAAC;YACxB,CAAC,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;SACnC;IACH,CAAC;CACF;AA9ED,4CA8EC"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../../../src/segment/node.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,4DAAoD;AAEpD,+CAA4C;AAC5C,mCAAgC;AAGhC,sCAA6C;AAE7C,MAAa,gBAAgB;IAI3B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAA2B;QACjE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI;YACF,IAAA,qBAAS,EAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC;YAEpD,IAAI,CAAC,UAAU,GAAG,IAAI,0BAAS,CAAC;gBAC9B,QAAQ,EAAE,MAAM;gBAChB,OAAO,EAAE,SAAS;aACnB,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;SAClD;IACH,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,KAAkB,EAAE;QACpF,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAA,SAAG,EAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACrD,OAAO;SACR;QAED,IAAI;YACF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBACnB,GAAG,OAAO;gBACV,MAAM;gBACN,WAAW,EAAE,WAAY;aAC1B,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;SACxC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAgB;QAC9F,IAAA,SAAG,EAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAA,SAAG,EAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YACtD,OAAO;SACR;QAED,IAAI;YACF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;gBACpB,GAAG,OAAO;gBACV,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE;gBACzD,MAAM;gBACN,WAAW,EAAE,WAAY;gBACzB,KAAK;aACN,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,SAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;SACzC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAA,SAAG,EAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YACtD,OAAO;SACR;QAED,IAAI;YACF,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;SAC/B;QAAC,OAAO,GAAG,EAAE;YACZ,oCAAoC;YACpC,IAAA,yBAAgB,EAAC,GAAG,CAAC,CAAC;SACvB;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,OAAO;SACR;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;IACxC,CAAC;CACF;AApFD,4CAoFC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/observability",
3
- "version": "0.4.8-next.fff1521",
3
+ "version": "0.4.8",
4
4
  "description": "Provides a common interface for app and platform observability",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -58,34 +58,33 @@
58
58
  "src"
59
59
  ],
60
60
  "dependencies": {
61
+ "@segment/analytics-node": "^2.1.0",
61
62
  "@segment/snippet": "^4.15.3",
62
63
  "@sentry/browser": "^7.100.1",
63
64
  "@sentry/integrations": "7.100.1",
64
65
  "@sentry/node": "^7.100.1",
65
66
  "@sentry/tracing": "^7.100.1",
66
- "analytics-node": "^6.2.0",
67
67
  "datadog-metrics": "^0.11.1",
68
68
  "debug": "^4.3.4",
69
69
  "js-yaml": "^4.1.0",
70
70
  "localforage": "^1.10.0",
71
71
  "uuid": "^8.3.2",
72
- "@dxos/async": "0.4.8-next.fff1521",
73
- "@dxos/client-protocol": "0.4.8-next.fff1521",
74
- "@dxos/client-services": "0.4.8-next.fff1521",
75
- "@dxos/context": "0.4.8-next.fff1521",
76
- "@dxos/config": "0.4.8-next.fff1521",
77
- "@dxos/debug": "0.4.8-next.fff1521",
78
- "@dxos/invariant": "0.4.8-next.fff1521",
79
- "@dxos/log": "0.4.8-next.fff1521",
80
- "@dxos/network-manager": "0.4.8-next.fff1521",
81
- "@dxos/node-std": "0.4.8-next.fff1521",
82
- "@dxos/protocols": "0.4.8-next.fff1521",
83
- "@dxos/react-client": "0.4.8-next.fff1521",
84
- "@dxos/util": "0.4.8-next.fff1521"
72
+ "@dxos/async": "0.4.8",
73
+ "@dxos/client-protocol": "0.4.8",
74
+ "@dxos/client-services": "0.4.8",
75
+ "@dxos/config": "0.4.8",
76
+ "@dxos/context": "0.4.8",
77
+ "@dxos/debug": "0.4.8",
78
+ "@dxos/log": "0.4.8",
79
+ "@dxos/node-std": "0.4.8",
80
+ "@dxos/network-manager": "0.4.8",
81
+ "@dxos/protocols": "0.4.8",
82
+ "@dxos/util": "0.4.8",
83
+ "@dxos/invariant": "0.4.8",
84
+ "@dxos/react-client": "0.4.8"
85
85
  },
86
86
  "devDependencies": {
87
87
  "@sentry/types": "^7.100.1",
88
- "@types/analytics-node": "^3.1.9",
89
88
  "@types/debug": "^4.1.10",
90
89
  "@types/js-yaml": "^4.0.5",
91
90
  "sentry-testkit": "^5.0.5"
@@ -150,6 +150,9 @@ export class Observability {
150
150
  }
151
151
 
152
152
  async close() {
153
+ if (this._telemetry) {
154
+ await this._telemetry.close();
155
+ }
153
156
  await this._ctx.dispose();
154
157
 
155
158
  // TODO(wittjosiah): Remove telemetry, etc. scripts.
@@ -64,4 +64,6 @@ export class SegmentTelemetry {
64
64
  log.catch('Failed to flush telemetry', err);
65
65
  }
66
66
  }
67
+
68
+ async close() {}
67
69
  }
@@ -2,7 +2,7 @@
2
2
  // Copyright 2022 DXOS.org
3
3
  //
4
4
 
5
- import Analytics from 'analytics-node';
5
+ import { Analytics } from '@segment/analytics-node';
6
6
 
7
7
  import { invariant } from '@dxos/invariant';
8
8
  import { log } from '@dxos/log';
@@ -19,9 +19,9 @@ export class SegmentTelemetry {
19
19
  try {
20
20
  invariant(apiKey, 'Key required to send telemetry');
21
21
 
22
- this._analytics = new Analytics(apiKey, {
22
+ this._analytics = new Analytics({
23
+ writeKey: apiKey,
23
24
  flushAt: batchSize,
24
- enable: true,
25
25
  });
26
26
  } catch (err) {
27
27
  log.catch('Failed to initialize telemetry', err);
@@ -81,11 +81,17 @@ export class SegmentTelemetry {
81
81
  }
82
82
 
83
83
  try {
84
- await this._analytics.flush((err) => {
85
- captureException(err);
86
- });
84
+ await this._analytics.flush();
87
85
  } catch (err) {
88
- log.catch('Failed to flush', err);
86
+ // are these errors worth capturing?
87
+ captureException(err);
88
+ }
89
+ }
90
+
91
+ async close() {
92
+ if (!this._analytics) {
93
+ return;
89
94
  }
95
+ await this._analytics.closeAndFlush();
90
96
  }
91
97
  }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/observability.ts", "../../../src/cli-observability-secrets.json", "../../../src/helpers/browser-observability.ts", "../../../src/helpers/common.ts", "../../../src/helpers/node-observability.ts", "../../../src/helpers/map-spaces.ts", "../../../src/helpers/setup-telemetry-listeners.ts", "../../../src/sentry/sentry-log-processor.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Event, scheduleTaskInterval } from '@dxos/async';\nimport { type Client, type Config } from '@dxos/client';\nimport { type Space } from '@dxos/client-protocol';\nimport { Context } from '@dxos/context';\nimport { invariant } from '@dxos/invariant';\nimport { log } from '@dxos/log';\nimport { ConnectionState } from '@dxos/network-manager';\nimport { DeviceKind, type NetworkStatus, Platform } from '@dxos/protocols/proto/dxos/client/services';\nimport { isNode } from '@dxos/util';\n\nimport buildSecrets from './cli-observability-secrets.json';\nimport { type DatadogMetrics } from './datadog';\nimport { type IPData, getTelemetryIdentifier, mapSpaces } from './helpers';\nimport { type SegmentTelemetry, type EventOptions, type PageOptions } from './segment';\nimport { type InitOptions, type captureException as SentryCaptureException } from './sentry';\nimport { SentryLogProcessor } from './sentry/sentry-log-processor';\n\nconst SPACE_METRICS_MIN_INTERVAL = 1000 * 60;\nconst NETWORK_METRICS_MIN_INTERVAL = 1000 * 60 * 5;\n\n// Secrets? EnvironmentConfig?\n\nexport type ObservabilitySecrets = {\n DX_ENVIRONMENT: string | null;\n DX_RELEASE: string | null;\n SENTRY_DESTINATION: string | null;\n TELEMETRY_API_KEY: string | null;\n IPDATA_API_KEY: string | null;\n DATADOG_API_KEY: string | null;\n DATADOG_APP_KEY: string | null;\n};\n\nexport type Mode = 'basic' | 'full' | 'disabled';\nexport type TagScope = 'errors' | 'telemetry' | 'metrics' | 'all';\n\nexport type ObservabilityOptions = {\n /// The webapp (e.g. 'composer.dxos.org'), 'cli', or 'agent'.\n namespace: string;\n mode: Mode;\n // TODO(nf): make platform a required extension?\n // platform: Platform;\n release?: string;\n environment?: string;\n config?: Config;\n secrets?: Record<string, string>;\n group?: string;\n\n telemetry?: {\n batchSize?: number;\n };\n\n errorLog?: {\n sentryInitOptions?: InitOptions;\n };\n};\n\n/*\n * Observability provides a common interface for error logging, metrics, and telemetry.\n * It currently provides these capabilities using Sentry, Datadog, and Segment.\n */\nexport class Observability {\n // TODO(wittjosiah): Generic metrics interface.\n private _metrics?: DatadogMetrics;\n // TODO(wittjosiah): Generic telemetry interface.\n private _telemetryBatchSize: number;\n private _telemetry?: SegmentTelemetry;\n // TODO(wittjosiah): Generic error logging interface.\n private _errorReportingOptions?: InitOptions;\n private _captureException?: typeof SentryCaptureException;\n private _setTag?: (key: string, value: string) => void;\n\n private _secrets: ObservabilitySecrets;\n private _namespace: string;\n private _mode: Mode;\n private _config?: Config;\n private _group?: string;\n // TODO(nf): accept upstream context?\n private _ctx = new Context();\n private _tags = new Map<string, { value: string; scope: TagScope }>();\n private _lastNetworkStatus?: NetworkStatus;\n\n // TODO(nf): make platform a required extension?\n constructor({\n namespace,\n environment,\n release,\n config,\n secrets,\n group,\n mode,\n telemetry,\n errorLog,\n }: ObservabilityOptions) {\n this._namespace = namespace;\n this._mode = mode;\n this._config = config;\n this._group = group;\n this._secrets = this._loadSecrets(config, secrets);\n this._telemetryBatchSize = telemetry?.batchSize ?? 30;\n this._errorReportingOptions = errorLog?.sentryInitOptions;\n\n if (this._group) {\n this.setTag('group', this._group);\n }\n this.setTag('namespace', this._namespace);\n environment && this.setTag('environment', environment);\n release && this.setTag('release', release);\n this.setTag('mode', this._mode);\n }\n\n private _loadSecrets(config: Config | undefined, secrets?: Record<string, string>) {\n if (isNode()) {\n const mergedSecrets = {\n ...(buildSecrets as ObservabilitySecrets),\n ...secrets,\n };\n\n process.env.DX_ENVIRONMENT && (mergedSecrets.DX_ENVIRONMENT = process.env.DX_ENVIRONMENT);\n process.env.DX_RELEASE && (mergedSecrets.DX_RELEASE = process.env.DX_RELEASE);\n process.env.SENTRY_DESTINATION && (mergedSecrets.SENTRY_DESTINATION = process.env.SENTRY_DESTINATION);\n process.env.TELEMETRY_API_KEY && (mergedSecrets.TELEMETRY_API_KEY = process.env.TELEMETRY_API_KEY);\n process.env.IPDATA_API_KEY && (mergedSecrets.IPDATA_API_KEY = process.env.IPDATA_API_KEY);\n process.env.DATADOG_API_KEY && (mergedSecrets.DATADOG_API_KEY = process.env.DATADOG_API_KEY);\n process.env.DATADOG_APP_KEY && (mergedSecrets.DATADOG_APP_KEY = process.env.DATADOG_APP_KEY);\n\n return mergedSecrets;\n } else {\n log('config', { rtc: this._secrets, config });\n return {\n DX_ENVIRONMENT: config?.get('runtime.app.env.DX_ENVIRONMENT'),\n DX_RELEASE: config?.get('runtime.app.env.DX_RELEASE'),\n SENTRY_DESTINATION: config?.get('runtime.app.env.DX_SENTRY_DESTINATION'),\n TELEMETRY_API_KEY: config?.get('runtime.app.env.DX_TELEMETRY_API_KEY'),\n IPDATA_API_KEY: config?.get('runtime.app.env.DX_IPDATA_API_KEY'),\n DATADOG_API_KEY: config?.get('runtime.app.env.DX_DATADOG_API_KEY'),\n DATADOG_APP_KEY: config?.get('runtime.app.env.DX_DATADOG_APP_KEY'),\n ...secrets,\n };\n }\n }\n\n async initialize() {\n await this._initMetrics();\n await this._initTelemetry();\n await this._initErrorLogs();\n }\n\n async close() {\n await this._ctx.dispose();\n\n // TODO(wittjosiah): Remove telemetry, etc. scripts.\n }\n\n setMode(mode: Mode) {\n this._mode = mode;\n }\n\n get mode() {\n return this._mode;\n }\n\n get group() {\n return this._group;\n }\n\n get enabled() {\n return this._mode !== 'disabled';\n }\n\n //\n // Tags\n //\n\n setTag(key: string, value: string, scope?: TagScope) {\n if (this.enabled && (scope === undefined || scope === 'all' || scope === 'errors')) {\n this._setTag?.(key, value);\n }\n if (!scope) {\n scope = 'all';\n }\n this._tags.set(key, { value, scope });\n }\n\n getTag(key: string) {\n return this._tags.get(key);\n }\n\n addIPDataTelemetryTags = (ipData: IPData) => {\n this.setTag('city', ipData.city, 'telemetry');\n this.setTag('region', ipData.region, 'telemetry');\n this.setTag('country', ipData.country, 'telemetry');\n ipData.latitude && this.setTag('latitude', ipData.latitude.toString(), 'telemetry');\n ipData.longitude && this.setTag('longitude', ipData.longitude.toString(), 'telemetry');\n };\n\n // TODO(wittjosiah): Improve privacy of telemetry identifiers. See `getTelemetryIdentifier`.\n async setIdentityTags(client: Client) {\n client.services.services.IdentityService!.queryIdentity().subscribe((idqr) => {\n if (!idqr?.identity?.identityKey) {\n log('empty response from identity service', { idqr });\n return;\n }\n\n this.setTag('identityKey', idqr.identity.identityKey.truncate());\n });\n\n client.services.services.DevicesService!.queryDevices().subscribe((dqr) => {\n if (!dqr || !dqr.devices || dqr.devices.length === 0) {\n log('empty response from device service', { device: dqr });\n return;\n }\n invariant(dqr, 'empty response from device service');\n\n const thisDevice = dqr.devices.find((device) => device.kind === DeviceKind.CURRENT);\n if (!thisDevice) {\n log('no current device', { device: dqr });\n return;\n }\n this.setTag('deviceKey', thisDevice.deviceKey.truncate());\n if (thisDevice.profile?.label) {\n this.setTag('deviceProfile', thisDevice.profile.label);\n }\n });\n }\n\n //\n // Metrics\n //\n\n private async _initMetrics() {\n if (this.enabled && this._secrets.DATADOG_API_KEY) {\n const { DatadogMetrics } = await import('./datadog');\n this._metrics = new DatadogMetrics({\n apiKey: this._secrets.DATADOG_API_KEY,\n getTags: () =>\n Object.fromEntries(\n Array.from(this._tags)\n .filter(([key, value]) => {\n return value.scope === 'all' || value.scope === 'metrics';\n })\n .map(([key, value]) => [key, value.value]),\n ),\n // TODO(nf): move/refactor from telemetryContext, needed to read CORS proxy\n config: this._config!,\n });\n } else {\n log('datadog disabled');\n }\n }\n\n /**\n * Gauge metric.\n *\n * The default implementation uses Datadog.\n */\n gauge(name: string, value: number | any, extraTags?: any) {\n this._metrics?.gauge(name, value, extraTags);\n }\n\n // TODO(nf): Refactor into ObservabilityExtensions.\n\n startNetworkMetrics(client: Client) {\n // TODO(nf): support type in debounce()\n const updateSignalMetrics = new Event<NetworkStatus>().debounce(NETWORK_METRICS_MIN_INTERVAL);\n updateSignalMetrics.on(this._ctx, async () => {\n log('send signal metrics');\n (this._lastNetworkStatus?.signaling as NetworkStatus.Signal[]).forEach(({ server, state }) => {\n this.gauge('dxos.client.network.signal.connectionState', state, { server });\n });\n\n let swarmCount = 0;\n const connectionStates = new Map<string, number>();\n for (const state in ConnectionState) {\n connectionStates.set(state, 0);\n }\n\n let totalReadBufferSize = 0;\n let totalWriteBufferSize = 0;\n let totalChannelBufferSize = 0;\n\n this._lastNetworkStatus?.connectionInfo?.forEach((connectionInfo) => {\n swarmCount++;\n\n for (const conn of connectionInfo.connections ?? []) {\n connectionStates.set(conn.state, (connectionStates.get(conn.state) ?? 0) + 1);\n totalReadBufferSize += conn.readBufferSize ?? 0;\n totalWriteBufferSize += conn.writeBufferSize ?? 0;\n\n for (const stream of conn.streams ?? []) {\n totalChannelBufferSize += stream.writeBufferSize ?? 0;\n }\n }\n\n this.gauge('dxos.client.network.swarm.count', swarmCount);\n for (const state in ConnectionState) {\n this.gauge('dxos.client.network.connection.count', connectionStates.get(state) ?? 0, { state });\n }\n this.gauge('dxos.client.network.totalReadBufferSize', totalReadBufferSize);\n this.gauge('dxos.client.network.totalWriteBufferSize', totalWriteBufferSize);\n this.gauge('dxos.client.network.totalChannelBufferSize', totalChannelBufferSize);\n });\n });\n\n client.services.services.NetworkService?.queryStatus().subscribe((networkStatus) => {\n this._lastNetworkStatus = networkStatus;\n updateSignalMetrics.emit();\n });\n\n scheduleTaskInterval(this._ctx, async () => updateSignalMetrics.emit(), NETWORK_METRICS_MIN_INTERVAL);\n }\n\n startSpacesMetrics(client: Client, namespace: string) {\n // TODO(nf): update subscription on new spaces\n const spaces = client.spaces.get();\n const subscriptions = new Map<string, { unsubscribe: () => void }>();\n this._ctx.onDispose(() => subscriptions.forEach((subscription) => subscription.unsubscribe()));\n\n const updateSpaceMetrics = new Event<Space>().debounce(SPACE_METRICS_MIN_INTERVAL);\n updateSpaceMetrics.on(this._ctx, async () => {\n log('send space update');\n for (const data of mapSpaces(spaces, { truncateKeys: true })) {\n // Metrics\n this.gauge('dxos.client.space.members', data.members, { key: data.key });\n this.gauge('dxos.client.space.objects', data.objects, { key: data.key });\n this.gauge('dxos.client.space.epoch', data.epoch, { key: data.key });\n this.gauge('dxos.client.space.currentDataMutations', data.currentDataMutations, { key: data.key });\n\n // Telemetry\n this.event({\n identityId: getTelemetryIdentifier(client),\n name: `${namespace}.space.update`,\n properties: data,\n });\n }\n });\n\n const subscribeToSpaceUpdate = (space: Space) =>\n space.pipeline.subscribe({\n next: () => {\n updateSpaceMetrics.emit();\n },\n });\n\n spaces.forEach((space) => {\n subscriptions.set(space.key.toHex(), subscribeToSpaceUpdate(space));\n });\n\n client.spaces.subscribe({\n next: async (spaces) => {\n spaces\n .filter((space) => !subscriptions.has(space.key.toHex()))\n .forEach((space) => {\n subscriptions.set(space.key.toHex(), subscribeToSpaceUpdate(space));\n });\n },\n });\n\n scheduleTaskInterval(this._ctx, async () => updateSpaceMetrics.emit(), NETWORK_METRICS_MIN_INTERVAL);\n }\n\n async startRuntimeMetrics(client: Client, frequency: number = NETWORK_METRICS_MIN_INTERVAL) {\n const platform = await client.services.services.SystemService?.getPlatform();\n invariant(platform, 'platform is required');\n\n this.setTag('platform_type', Platform.PLATFORM_TYPE[platform.type as number].toLowerCase());\n if (this._mode === 'full') {\n // platform[foo] does not work?\n if (platform.platform) {\n this.setTag('platform', platform.platform);\n }\n if (platform.arch) {\n this.setTag('arch', platform.arch);\n }\n if (platform.runtime) {\n this.setTag('runtime', platform.runtime);\n }\n }\n scheduleTaskInterval(\n this._ctx,\n async () => {\n log('platform');\n client.services.services.SystemService?.getPlatform()\n .then((platform) => {\n log('platform', { platform });\n if (platform.memory) {\n this.gauge('dxos.client.runtime.rss', platform.memory.rss);\n this.gauge('dxos.client.runtime.heapTotal', platform.memory.heapTotal);\n this.gauge('dxos.client.runtime.heapUsed', platform.memory.heapUsed);\n }\n })\n .catch((error) => log('platform error', { error }));\n },\n frequency,\n );\n }\n\n //\n // Telemetry\n //\n\n private async _initTelemetry() {\n if (this._secrets.TELEMETRY_API_KEY && this._mode !== 'disabled') {\n const { SegmentTelemetry } = await import('./segment');\n this._telemetry = new SegmentTelemetry({\n apiKey: this._secrets.TELEMETRY_API_KEY,\n batchSize: this._telemetryBatchSize,\n getTags: () =>\n Object.fromEntries(\n Array.from(this._tags)\n .filter(([key, value]) => {\n return value.scope === 'all' || value.scope === 'telemetry';\n })\n .map(([key, value]) => [key, value.value]),\n ),\n });\n } else {\n log('segment disabled');\n }\n }\n\n /**\n * A telemetry event.\n *\n * The default implementation uses Segment.\n */\n event(options: EventOptions) {\n this._telemetry?.event(options);\n }\n\n /**\n * A telemetry page view.\n *\n * The default implementation uses Segment.\n */\n page(options: PageOptions) {\n this._telemetry?.page(options);\n }\n\n //\n // Error Logs\n //\n\n private async _initErrorLogs() {\n if (this._secrets.SENTRY_DESTINATION && this._mode !== 'disabled') {\n const { captureException, configureTracing, init, setTag } = await import('./sentry');\n this._captureException = captureException;\n this._setTag = setTag;\n\n // TODO(nf): refactor package into this one?\n log.info('Initializing Sentry', {\n dest: this._secrets.SENTRY_DESTINATION,\n options: this._errorReportingOptions,\n });\n\n const logProcessor = new SentryLogProcessor();\n init({\n ...this._errorReportingOptions,\n destination: this._secrets.SENTRY_DESTINATION,\n scrubFilenames: this._mode !== 'full',\n onError: (event) => logProcessor.addLogBreadcrumbsTo(event),\n });\n if (this._errorReportingOptions?.tracing) {\n configureTracing();\n }\n\n // TODO(nf): set platform at instantiation? needed for node.\n log.runtimeConfig.processors.push(logProcessor.logProcessor);\n\n // TODO(nf): is this different than passing as properties in options?\n this._tags.forEach((v, k) => {\n if (v.scope === 'all' || v.scope === 'errors') {\n setTag(k, v.value);\n }\n });\n } else {\n log('sentry disabled');\n }\n }\n\n /**\n * Manually capture an exception.\n *\n * The default implementation uses Sentry.\n */\n captureException(err: any) {\n if (this.enabled) {\n this._captureException?.(err);\n }\n }\n}\n", "{\n \"SENTRY_DESTINATION\": \"https://2647916221e643869965e78469479aa4@o4504012000067584.ingest.sentry.io/4504012027265029\",\n \"TELEMETRY_API_KEY\": \"B00QG6PtJJrJ0VVFe0H5a6bcUUShKyZM\",\n \"IPDATA_API_KEY\": \"73dfdecdf979c18f07d50cf841bbdd9e589f237256326ac8cca23786\",\n \"DATADOG_API_KEY\": null,\n \"DATADOG_APP_KEY\": null\n}", "//\n// Copyright 2022 DXOS.org\n//\n\n// NOTE: localStorage is not available in web workers.\nimport * as localForage from 'localforage';\n\n// import { type Platform } from '@dxos/client-services';\n// import { type InitOptions as TelemetryInitOptions } from '@dxos/telemetry';\n\nimport type { Config } from '@dxos/client';\nimport { log } from '@dxos/log';\n\nimport type { IPData } from './common';\nimport type { Mode, Observability } from '../observability';\n\nexport const OBSERVABILITY_DISABLED_KEY = 'observability-disabled';\nexport const OBSERVABILITY_GROUP_KEY = 'observability-group';\n\nexport const isObservabilityDisabled = async (namespace: string): Promise<boolean> => {\n try {\n return (await localForage.getItem(`${namespace}:${OBSERVABILITY_DISABLED_KEY}`)) === 'true';\n } catch (err) {\n log.catch('Failed to check if observability is disabled, assuming it is', err);\n return true;\n }\n};\n\nexport const storeObservabilityDisabled = async (namespace: string, value: boolean) => {\n try {\n await localForage.setItem(`${namespace}:${OBSERVABILITY_DISABLED_KEY}`, String(value));\n } catch (err) {\n log.catch('Failed to store observability disabled', err);\n }\n};\n\nexport const getObservabilityGroup = async (namespace: string): Promise<string | undefined> => {\n try {\n return (await localForage.getItem(`${namespace}:${OBSERVABILITY_GROUP_KEY}`)) ?? undefined;\n } catch (err) {\n log.catch('Failed to get observability group', err);\n }\n};\n\nexport const storeObservabilityGroup = async (namespace: string, value: string) => {\n try {\n await localForage.setItem(`${namespace}:${OBSERVABILITY_GROUP_KEY}`, value);\n } catch (err) {\n log.catch('Failed to store observability group', err);\n }\n};\n\nexport type AppObservabilityOptions = {\n namespace: string;\n config: Config;\n mode?: Mode;\n tracingEnable?: boolean;\n replayEnable?: boolean;\n // TODO(nf): options for providers?\n};\n\n// TODO(wittjosiah): Store preference for disabling observability.\n// At minimum should be stored locally (i.e., localstorage), possibly in halo preference.\n// Needs to be hooked up to settings page for user visibility.\nexport const initializeAppObservability = async ({\n namespace,\n config,\n mode = 'basic',\n tracingEnable = true,\n replayEnable = true,\n}: AppObservabilityOptions): Promise<Observability> => {\n log('initializeAppObservability', { config });\n\n /*\n const platform = (await client.services.services.SystemService?.getPlatform()) as Platform;\n if (!platform) {\n log.error('failed to get platform, could not initialize observability');\n return undefined;\n }\n */\n\n const group = (await getObservabilityGroup(namespace)) ?? undefined;\n const release = `${namespace}@${config.get('runtime.app.build.version')}`;\n const environment = config.get('runtime.app.env.DX_ENVIRONMENT');\n\n const observabilityDisabled = await isObservabilityDisabled(namespace);\n\n const { Observability } = await import('../observability');\n\n // TODO(nf): configure mode\n const observability = new Observability({\n namespace,\n release,\n environment,\n group,\n mode,\n config,\n errorLog: {\n sentryInitOptions: {\n environment,\n release,\n tracing: tracingEnable,\n replay: replayEnable,\n // TODO(wittjosiah): Configure these.\n sampleRate: 1.0,\n replaySampleRate: 0.1,\n replaySampleRateOnError: 1.0,\n },\n },\n });\n\n // global kill switch\n if (observabilityDisabled) {\n observability.setMode('disabled');\n log.info('observability disabled');\n return observability;\n }\n\n try {\n const getIPData = async (config: Config): Promise<IPData | void> => {\n const IP_DATA_CACHE_TIMEOUT = 6 * 60 * 60 * 1000; // 6 hours\n type CachedIPData = {\n data: IPData;\n timestamp: number;\n };\n\n // Check cache first.\n const cachedData: null | CachedIPData = await localForage.getItem('dxos:observability:ipdata');\n if (cachedData && cachedData.timestamp > Date.now() - IP_DATA_CACHE_TIMEOUT) {\n return cachedData.data;\n }\n\n // Fetch data if not cached.\n const IPDATA_API_KEY = config.get('runtime.app.env.DX_IPDATA_API_KEY');\n if (IPDATA_API_KEY) {\n return fetch(`https://api.ipdata.co?api-key=${IPDATA_API_KEY}`)\n .then((res) => res.json())\n .then((data) => {\n // Cache data.\n localForage\n .setItem('dxos:observability:ipdata', {\n data,\n timestamp: Date.now(),\n })\n .catch((err) => observability.captureException(err));\n\n return data;\n })\n .catch((err) => observability.captureException(err));\n }\n };\n\n // TODO(nf): plugin state?\n\n // TODO(nf): should provide capability to init Sentry earlier in booting process to capture errors during initialization.\n\n await observability.initialize();\n\n const ipData = await getIPData(config);\n\n ipData && observability.addIPDataTelemetryTags(ipData);\n\n if (typeof navigator !== 'undefined' && navigator.storage?.estimate) {\n setInterval(async () => {\n try {\n const storageEstimate = await navigator.storage.estimate();\n storageEstimate.usage && observability.setTag('storageUsage', storageEstimate.usage.toString(), 'telemetry');\n storageEstimate.quota && observability.setTag('storageQuota', storageEstimate.quota.toString(), 'telemetry');\n } catch (error) {\n log.warn('Failed to run estimate()', error);\n }\n }, 10e3);\n }\n } catch (err: any) {\n log.error('Failed to initialize app observability', err);\n }\n\n return observability;\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport type { Client } from '@dxos/client';\n\n// TODO(wittjosiah): Improve privacy of telemetry identifiers.\n// - Identifier should be generated client-side with no attachment to identity.\n// - Identifier can then be reset by user.\n// - Identifier can be synced via HALO to allow for correlation of events bewteen devices.\n// - Identifier should also be stored outside of HALO such that it is available immediately on startup.\nexport const getTelemetryIdentifier = (client: Client) => {\n if (!client?.initialized) {\n return undefined;\n }\n\n const identity = client.halo.identity.get();\n if (identity) {\n return identity.identityKey.truncate();\n }\n\n return undefined;\n};\n\nexport type IPData = { city: string; region: string; country: string; latitude: number; longitude: number };\n", "//\n// Copyright 2022 DXOS.org\n//\nimport yaml from 'js-yaml';\nimport { existsSync, statSync } from 'node:fs';\nimport { mkdir, readFile, writeFile } from 'node:fs/promises';\nimport { join } from 'node:path';\nimport { v4 as uuid, validate as validateUuid } from 'uuid';\n\nimport type { Config } from '@dxos/client';\nimport { log } from '@dxos/log';\n\nimport { Observability, type Mode } from '../observability';\n\n/**\n * Print observability banner once per installation.\n */\nexport const showObservabilityBanner = async (configDir: string, bannercb: (input: string) => void) => {\n const path = join(configDir, '.observability-banner-printed');\n if (existsSync(path)) {\n return;\n }\n bannercb(\n // eslint-disable-next-line no-multi-str\n 'Basic observability data will be sent to the DXOS team in order to improve the product. This includes \\\n performance metrics, error logs, and usage data. No personally identifiable information, other than your \\\n public key, is included with this data and no private data ever leaves your devices. To disable sending \\\n observability data, set the environment variable DX_DISABLE_OBSERVABILITY=true.',\n );\n\n await writeFile(path, '', 'utf-8');\n};\n\nexport const getObservabilityState = async (configDir: string): Promise<PersistentObservabilityState> => {\n // check whether configDir exists and if it's a directory\n\n if (existsSync(configDir)) {\n if (!statSync(configDir).isDirectory()) {\n throw new Error(`Config directory ${configDir} exists but is not a directory`);\n }\n } else {\n await mkdir(configDir, { recursive: true });\n }\n\n const idPath = join(configDir, 'observability.yml');\n if (existsSync(idPath)) {\n const context = await readFile(idPath, 'utf-8');\n return validate(context) ?? initializeState(idPath);\n }\n\n return initializeState(idPath);\n};\n\nexport type PersistentObservabilityState = {\n installationId: string;\n group?: string;\n mode: Mode;\n};\n\n// create initial state and write to file, using environment variables to override defaults.\nconst initializeState = async (idPath: string): Promise<PersistentObservabilityState> => {\n // TODO(nf): read initial values from config or seed file\n const observabilityState = {\n installationId: uuid(),\n group: process.env.DX_OBSERVABILITY_GROUP ?? undefined,\n mode: (process.env.DX_DISABLE_OBSERVABILITY ? 'disabled' : process.env.DX_OBSERVABILITY_MODE ?? 'basic') as Mode,\n };\n\n await writeFile(\n idPath,\n '# This file is automatically generated by the @dxos/cli.\\n' + yaml.dump(observabilityState),\n 'utf-8',\n );\n\n return observabilityState;\n};\n\nconst validate = (contextString: string) => {\n const context = yaml.load(contextString) as PersistentObservabilityState;\n if (Boolean(context.installationId) && validateUuid(context.installationId!)) {\n return {\n ...context,\n mode: process.env.DX_DISABLE_OBSERVABILITY ? 'disabled' : context.mode ?? 'basic',\n };\n }\n};\n\nexport type NodeObservabilityOptions = {\n installationId: string;\n group?: string;\n namespace: string;\n version: string;\n config: Config;\n mode?: Mode;\n tracingEnable?: boolean;\n replayEnable?: boolean;\n // TODO(nf): options for providers?\n};\n\nexport const initializeNodeObservability = async ({\n namespace,\n version,\n config,\n installationId,\n group,\n mode = 'basic',\n tracingEnable = true,\n replayEnable = true,\n}: NodeObservabilityOptions): Promise<Observability> => {\n log('initializeCliObservability', { config });\n\n // TODO(nf): make CLI build populate runtime.app.build config?\n const release = `${namespace}@${version}`;\n const environment = process.env.DX_ENVIRONMENT ?? 'unknown';\n\n const observability = new Observability({\n namespace,\n release,\n environment,\n group,\n mode,\n errorLog: {\n sentryInitOptions: {\n environment,\n release,\n // TODO(wittjosiah): Configure this.\n sampleRate: 1.0,\n },\n },\n });\n\n observability.setTag('installationId', installationId);\n\n // TODO(nf): cache ipdata to avoid repeated requests\n const IPDATA_API_KEY = config.get('runtime.app.env.DX_IPDATA_API_KEY');\n try {\n const res = await fetch(`https://api.ipdata.co/?api-key=${IPDATA_API_KEY}`);\n const ipData = await res.json();\n ipData && observability.addIPDataTelemetryTags(ipData);\n } catch (err) {\n observability?.captureException(err);\n }\n return observability;\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { Space } from '@dxos/client-protocol';\n\nexport type MapSpacesOptions = {\n verbose?: boolean;\n truncateKeys?: boolean;\n};\n\nexport const mapSpaces = (spaces: Space[], options: MapSpacesOptions = { verbose: false, truncateKeys: false }) => {\n return spaces.map((space) => {\n // TODO(burdon): Factor out.\n // TODO(burdon): Agent needs to restart before `ready` is available.\n const { open, ready } = space.internal.data.metrics ?? {};\n const startup = open && ready && ready.getTime() - open.getTime();\n\n // TODO(burdon): Get feeds from client-services if verbose (factor out from devtools/diagnostics).\n // const host = client.services.services.DevtoolsHost!;\n const pipeline = space.internal.data.pipeline;\n const startDataMutations = pipeline?.currentEpoch?.subject.assertion.timeframe.totalMessages() ?? 0;\n const epoch = pipeline?.currentEpoch?.subject.assertion.number;\n // const appliedEpoch = pipeline?.appliedEpoch?.subject.assertion.number;\n const currentDataMutations = pipeline?.currentDataTimeframe?.totalMessages() ?? 0;\n const totalDataMutations = pipeline?.targetDataTimeframe?.totalMessages() ?? 0;\n\n return {\n // TODO(nf): truncate keys for DD?\n key: space.key.truncate(),\n open: space.isOpen,\n members: space.members.get().length,\n objects: space.db.query().objects.length,\n startup,\n epoch,\n // appliedEpoch,\n startDataMutations,\n currentDataMutations,\n totalDataMutations,\n\n // TODO(burdon): Negative?\n progress: (\n Math.min(Math.abs((currentDataMutations - startDataMutations) / (totalDataMutations - startDataMutations)), 1) *\n 100\n ).toFixed(0),\n };\n });\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport type { Client } from '@dxos/client';\n\nimport { getTelemetryIdentifier } from './common';\nimport type { Observability } from '../observability';\n\nlet lastFocusEvent = new Date();\nlet totalTime = 0;\n\nexport const setupTelemetryListeners = (namespace: string, client: Client, observability: Observability) => {\n const clickCallback = (event: any) => {\n setTimeout(() =>\n observability.event({\n identityId: getTelemetryIdentifier(client),\n name: `${namespace}.window.click`,\n properties: {\n href: window.location.href,\n id: (event.target as HTMLElement)?.id,\n path: (event.path as HTMLElement[])\n ?.filter((el) => Boolean(el.tagName))\n .map((el) => `${el.tagName.toLowerCase()}${el.id ? `#${el.id}` : ''}`)\n .reverse()\n .join('>'),\n },\n }),\n );\n };\n\n const focusCallback = () => {\n const now = new Date();\n setTimeout(() =>\n observability.event({\n identityId: getTelemetryIdentifier(client),\n name: `${namespace}.window.focus`,\n properties: {\n href: window.location.href,\n timeAway: now.getTime() - lastFocusEvent.getTime(),\n },\n }),\n );\n lastFocusEvent = now;\n };\n\n const blurCallback = () => {\n const now = new Date();\n const timeSpent = now.getTime() - lastFocusEvent.getTime();\n setTimeout(() =>\n observability.event({\n identityId: getTelemetryIdentifier(client),\n name: `${namespace}.window.blur`,\n properties: {\n href: window.location.href,\n timeSpent,\n },\n }),\n );\n lastFocusEvent = now;\n totalTime = totalTime + timeSpent;\n };\n\n const unloadCallback = () => {\n setTimeout(() =>\n observability.event({\n identityId: getTelemetryIdentifier(client),\n name: `${namespace}.page.unload`,\n properties: {\n href: window.location.href,\n timeSpent: totalTime,\n },\n }),\n );\n };\n\n const errorCallback = (event: ErrorEvent) => {\n setTimeout(() =>\n observability.event({\n identityId: getTelemetryIdentifier(client),\n name: `${namespace}.window.error`,\n properties: {\n href: window.location.href,\n message: event.message,\n filename: event.filename,\n stack: (event.error as Error).stack,\n },\n }),\n );\n };\n\n window.addEventListener('click', clickCallback, true);\n window.addEventListener('focus', focusCallback);\n window.addEventListener('blur', blurCallback);\n window.addEventListener('beforeunload', unloadCallback);\n window.addEventListener('error', errorCallback);\n\n return () => {\n window.removeEventListener('click', clickCallback, true);\n window.removeEventListener('focus', focusCallback);\n window.removeEventListener('blur', blurCallback);\n window.removeEventListener('beforeunload', unloadCallback);\n window.removeEventListener('error', errorCallback);\n };\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport type { Breadcrumb, SeverityLevel, Event } from '@sentry/types';\n\nimport { type LogConfig, type LogEntry, LogLevel, type LogProcessor, shouldLog } from '@dxos/log';\nimport { CircularBuffer, getDebugName } from '@dxos/util';\n\nimport { withScope, captureException, captureMessage } from './';\n\nconst MAX_LOG_BREADCRUMBS = 80;\n\nexport class SentryLogProcessor {\n private _breadcrumbs = new CircularBuffer<Breadcrumb>(MAX_LOG_BREADCRUMBS);\n\n public readonly logProcessor: LogProcessor = (config: LogConfig, entry: LogEntry) => {\n const { level, meta, error } = entry;\n if (!shouldLog(entry, config.captureFilters)) {\n return;\n }\n if (entry.level !== LogLevel.WARN && entry.level !== LogLevel.ERROR) {\n return;\n }\n // TODO(nf): add rate limiting to avoid spamming Sentry/consuming excessive quota.\n withScope((scope) => {\n const severity = convertLevel(level);\n scope.setLevel(severity);\n scope.setContext('dxoslog', entry.context ?? null);\n if (meta) {\n scope.setTag('transaction', `${getRelativeFilename(meta.F)}:${meta.L}`);\n\n if (meta.S?.hostSessionId) {\n scope.setTags({\n service_host_issue: true,\n service_host_session: meta.S?.hostSessionId,\n });\n }\n\n if (!Number.isNaN(meta.S?.uptimeSeconds)) {\n scope.setExtra('uptime_seconds', meta.S?.uptimeSeconds);\n }\n }\n\n const extendedMessage = formatMessageForSentry(entry);\n let capturedError = error;\n if (capturedError == null && entry.level === LogLevel.ERROR) {\n capturedError = Object.values(entry.context ?? {}).find((v): v is Error => v instanceof Error);\n }\n if (capturedError) {\n const isMessageDifferentFromStackTrace = error == null;\n if (isMessageDifferentFromStackTrace) {\n scope.setExtra('message', extendedMessage);\n }\n const eventId = captureException(capturedError);\n this._addBreadcrumb(eventId, extendedMessage, severity, entry.context);\n return;\n }\n\n scope.setFingerprint([entry.message]);\n const eventId = captureMessage(extendedMessage);\n this._addBreadcrumb(eventId, extendedMessage, severity, entry.context);\n });\n };\n\n public addLogBreadcrumbsTo(event: Event) {\n event.breadcrumbs ??= [];\n for (const breadcrumb of this._breadcrumbs) {\n event.breadcrumbs.push(breadcrumb);\n }\n event.breadcrumbs.sort((b1, b2) => {\n if (b1.timestamp === undefined || b2.timestamp === undefined) {\n return b1.timestamp === b2.timestamp ? 0 : b1.timestamp === undefined ? -1 : 1;\n }\n return b1.timestamp - b2.timestamp;\n });\n }\n\n private _addBreadcrumb(\n eventId: string,\n message: string,\n severity: SeverityLevel,\n context: { [key: string]: any } | undefined,\n ): void {\n const breadcrumb: Breadcrumb = {\n type: 'console',\n level: severity,\n event_id: eventId,\n category: 'log',\n message,\n data: context,\n timestamp: Math.floor(Date.now() / 1000),\n };\n const lastRecorded = this._breadcrumbs.getLast();\n if (lastRecorded && lastRecorded.message === breadcrumb.message) {\n const firstBreadcrumbData = lastRecorded.data?.firstBreadcrumbData ?? lastRecorded.data ?? {};\n const mergedBreadcrumbCount = Number.isNaN(lastRecorded.data?.mergedBreadcrumbCount)\n ? 1\n : Number(lastRecorded.data?.mergedBreadcrumbCount);\n lastRecorded.data = {\n mergedBreadcrumbCount: mergedBreadcrumbCount + 1,\n firstBreadcrumbData,\n lastBreadcrumbData: breadcrumb.data,\n };\n return;\n }\n this._breadcrumbs.push(breadcrumb);\n }\n}\n\nconst formatMessageForSentry = (entry: LogEntry) => {\n let scopePrefix: string | undefined;\n if (entry.meta?.S) {\n const scope = entry.meta?.S;\n scopePrefix = scope.name || getDebugName(scope);\n }\n if (scopePrefix == null) {\n return entry.message;\n }\n const workerPrefix = entry.meta?.S?.hostSessionId ? '[worker] ' : '';\n return `${workerPrefix}${scopePrefix} ${entry.message}`;\n};\n\nconst convertLevel = (level: LogLevel): SeverityLevel => {\n if (level === LogLevel.TRACE) {\n return 'debug';\n }\n if (level === LogLevel.WARN) {\n return 'warning';\n }\n return LogLevel[level].toLowerCase() as SeverityLevel;\n};\n\nconst getRelativeFilename = (filename: string) => {\n // TODO(burdon): Hack uses \"packages\" as an anchor (pre-parse NX?)\n // Including `packages/` part of the path so that excluded paths (e.g. from dist) are clickable in vscode.\n const match = filename.match(/.+\\/(packages\\/.+\\/.+)/);\n if (match) {\n const [, filePath] = match;\n return filePath;\n }\n\n return filename;\n};\n"],
5
- "mappings": "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",
6
- "names": ["Event", "scheduleTaskInterval", "Context", "invariant", "log", "ConnectionState", "DeviceKind", "Platform", "isNode", "localForage", "log", "OBSERVABILITY_DISABLED_KEY", "OBSERVABILITY_GROUP_KEY", "isObservabilityDisabled", "namespace", "getItem", "err", "catch", "storeObservabilityDisabled", "value", "setItem", "String", "getObservabilityGroup", "undefined", "storeObservabilityGroup", "initializeAppObservability", "config", "mode", "tracingEnable", "replayEnable", "group", "release", "get", "environment", "observabilityDisabled", "Observability", "observability", "errorLog", "sentryInitOptions", "tracing", "replay", "sampleRate", "replaySampleRate", "replaySampleRateOnError", "setMode", "info", "getIPData", "IP_DATA_CACHE_TIMEOUT", "cachedData", "timestamp", "Date", "now", "data", "IPDATA_API_KEY", "fetch", "then", "res", "json", "captureException", "initialize", "ipData", "addIPDataTelemetryTags", "navigator", "storage", "estimate", "setInterval", "storageEstimate", "usage", "setTag", "toString", "quota", "error", "warn", "getTelemetryIdentifier", "client", "initialized", "undefined", "identity", "halo", "get", "identityKey", "truncate", "yaml", "existsSync", "statSync", "mkdir", "readFile", "writeFile", "join", "v4", "uuid", "validate", "validateUuid", "log", "showObservabilityBanner", "configDir", "bannercb", "path", "join", "existsSync", "writeFile", "getObservabilityState", "statSync", "isDirectory", "Error", "mkdir", "recursive", "idPath", "context", "readFile", "validate", "initializeState", "observabilityState", "installationId", "uuid", "group", "process", "env", "DX_OBSERVABILITY_GROUP", "undefined", "mode", "DX_DISABLE_OBSERVABILITY", "DX_OBSERVABILITY_MODE", "yaml", "dump", "contextString", "load", "Boolean", "validateUuid", "initializeNodeObservability", "namespace", "version", "config", "tracingEnable", "replayEnable", "log", "release", "environment", "DX_ENVIRONMENT", "observability", "Observability", "errorLog", "sentryInitOptions", "sampleRate", "setTag", "IPDATA_API_KEY", "get", "res", "fetch", "ipData", "json", "addIPDataTelemetryTags", "err", "captureException", "mapSpaces", "spaces", "options", "verbose", "truncateKeys", "map", "space", "open", "ready", "internal", "data", "metrics", "startup", "getTime", "pipeline", "startDataMutations", "currentEpoch", "subject", "assertion", "timeframe", "totalMessages", "epoch", "number", "currentDataMutations", "currentDataTimeframe", "totalDataMutations", "targetDataTimeframe", "key", "truncate", "isOpen", "members", "get", "length", "objects", "db", "query", "progress", "Math", "min", "abs", "toFixed", "lastFocusEvent", "Date", "totalTime", "setupTelemetryListeners", "namespace", "client", "observability", "clickCallback", "event", "setTimeout", "identityId", "getTelemetryIdentifier", "name", "properties", "href", "window", "location", "id", "target", "path", "filter", "el", "Boolean", "tagName", "map", "toLowerCase", "reverse", "join", "focusCallback", "now", "timeAway", "getTime", "blurCallback", "timeSpent", "unloadCallback", "errorCallback", "message", "filename", "stack", "error", "addEventListener", "removeEventListener", "LogLevel", "shouldLog", "CircularBuffer", "getDebugName", "MAX_LOG_BREADCRUMBS", "SentryLogProcessor", "_breadcrumbs", "CircularBuffer", "logProcessor", "config", "entry", "level", "meta", "error", "shouldLog", "captureFilters", "LogLevel", "WARN", "ERROR", "withScope", "scope", "severity", "convertLevel", "setLevel", "setContext", "context", "setTag", "getRelativeFilename", "F", "L", "S", "hostSessionId", "setTags", "service_host_issue", "service_host_session", "Number", "isNaN", "uptimeSeconds", "setExtra", "extendedMessage", "formatMessageForSentry", "capturedError", "Object", "values", "find", "v", "Error", "isMessageDifferentFromStackTrace", "eventId", "captureException", "_addBreadcrumb", "setFingerprint", "message", "captureMessage", "addLogBreadcrumbsTo", "event", "breadcrumbs", "breadcrumb", "push", "sort", "b1", "b2", "timestamp", "undefined", "type", "event_id", "category", "data", "Math", "floor", "Date", "now", "lastRecorded", "getLast", "firstBreadcrumbData", "mergedBreadcrumbCount", "lastBreadcrumbData", "scopePrefix", "name", "getDebugName", "workerPrefix", "TRACE", "toLowerCase", "filename", "match", "filePath", "SPACE_METRICS_MIN_INTERVAL", "NETWORK_METRICS_MIN_INTERVAL", "Observability", "constructor", "namespace", "environment", "release", "config", "secrets", "group", "mode", "telemetry", "errorLog", "_ctx", "Context", "_tags", "Map", "addIPDataTelemetryTags", "ipData", "setTag", "city", "region", "country", "latitude", "toString", "longitude", "_namespace", "_mode", "_config", "_group", "_secrets", "_loadSecrets", "_telemetryBatchSize", "batchSize", "_errorReportingOptions", "sentryInitOptions", "isNode", "mergedSecrets", "buildSecrets", "process", "env", "DX_ENVIRONMENT", "DX_RELEASE", "SENTRY_DESTINATION", "TELEMETRY_API_KEY", "IPDATA_API_KEY", "DATADOG_API_KEY", "DATADOG_APP_KEY", "log", "rtc", "get", "initialize", "_initMetrics", "_initTelemetry", "_initErrorLogs", "close", "dispose", "setMode", "enabled", "key", "value", "scope", "undefined", "_setTag", "set", "getTag", "setIdentityTags", "client", "services", "IdentityService", "queryIdentity", "subscribe", "idqr", "identity", "identityKey", "truncate", "DevicesService", "queryDevices", "dqr", "devices", "length", "device", "invariant", "thisDevice", "find", "kind", "DeviceKind", "CURRENT", "deviceKey", "profile", "label", "DatadogMetrics", "_metrics", "apiKey", "getTags", "Object", "fromEntries", "Array", "from", "filter", "map", "gauge", "name", "extraTags", "startNetworkMetrics", "updateSignalMetrics", "Event", "debounce", "on", "_lastNetworkStatus", "signaling", "forEach", "server", "state", "swarmCount", "connectionStates", "ConnectionState", "totalReadBufferSize", "totalWriteBufferSize", "totalChannelBufferSize", "connectionInfo", "conn", "connections", "readBufferSize", "writeBufferSize", "stream", "streams", "NetworkService", "queryStatus", "networkStatus", "emit", "scheduleTaskInterval", "startSpacesMetrics", "spaces", "subscriptions", "onDispose", "subscription", "unsubscribe", "updateSpaceMetrics", "data", "mapSpaces", "truncateKeys", "members", "objects", "epoch", "currentDataMutations", "event", "identityId", "getTelemetryIdentifier", "properties", "subscribeToSpaceUpdate", "space", "pipeline", "next", "toHex", "has", "startRuntimeMetrics", "frequency", "platform", "SystemService", "getPlatform", "Platform", "PLATFORM_TYPE", "type", "toLowerCase", "arch", "runtime", "then", "memory", "rss", "heapTotal", "heapUsed", "catch", "error", "SegmentTelemetry", "_telemetry", "options", "page", "captureException", "configureTracing", "init", "_captureException", "info", "dest", "logProcessor", "SentryLogProcessor", "destination", "scrubFilenames", "onError", "addLogBreadcrumbsTo", "tracing", "runtimeConfig", "processors", "push", "v", "k", "err"]
7
- }