@dxos/observability 0.3.11-main.e19f39d → 0.3.11-main.e28df4f

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 (55) hide show
  1. package/dist/lib/browser/chunk-ROSK6U3K.mjs +83 -0
  2. package/dist/lib/browser/chunk-ROSK6U3K.mjs.map +7 -0
  3. package/dist/lib/browser/chunk-STWCJK52.mjs +748 -0
  4. package/dist/lib/browser/chunk-STWCJK52.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +28 -553
  6. package/dist/lib/browser/index.mjs.map +4 -4
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/observability-XIDFB6PJ.mjs +10 -0
  9. package/dist/lib/browser/observability-XIDFB6PJ.mjs.map +7 -0
  10. package/dist/lib/browser/segment/index.mjs +8 -0
  11. package/dist/lib/browser/segment/index.mjs.map +7 -0
  12. package/dist/lib/node/chunk-ARUBPK2W.cjs +170 -0
  13. package/dist/lib/node/chunk-ARUBPK2W.cjs.map +7 -0
  14. package/dist/lib/node/chunk-DE7OVD7T.cjs +769 -0
  15. package/dist/lib/node/chunk-DE7OVD7T.cjs.map +7 -0
  16. package/dist/lib/node/index.cjs +26 -602
  17. package/dist/lib/node/index.cjs.map +4 -4
  18. package/dist/lib/node/meta.json +1 -1
  19. package/dist/lib/node/observability-YMIQHLME.cjs +32 -0
  20. package/dist/lib/node/observability-YMIQHLME.cjs.map +7 -0
  21. package/dist/lib/node/segment/index.cjs +30 -0
  22. package/dist/lib/node/segment/index.cjs.map +7 -0
  23. package/dist/types/src/helpers/app-observability.d.ts +19 -0
  24. package/dist/types/src/helpers/app-observability.d.ts.map +1 -0
  25. package/dist/types/src/helpers/app-observability.js +195 -0
  26. package/dist/types/src/helpers/app-observability.js.map +1 -0
  27. package/dist/types/src/helpers/index.d.ts +4 -0
  28. package/dist/types/src/helpers/index.d.ts.map +1 -0
  29. package/dist/types/src/helpers/index.js +23 -0
  30. package/dist/types/src/helpers/index.js.map +1 -0
  31. package/dist/types/src/{util.d.ts → helpers/map-spaces.d.ts} +2 -3
  32. package/dist/types/src/helpers/map-spaces.d.ts.map +1 -0
  33. package/dist/types/src/{util.js → helpers/map-spaces.js} +1 -2
  34. package/dist/types/src/helpers/map-spaces.js.map +1 -0
  35. package/dist/types/src/helpers/setup-telemetry-listeners.d.ts +4 -0
  36. package/dist/types/src/helpers/setup-telemetry-listeners.d.ts.map +1 -0
  37. package/dist/types/src/helpers/setup-telemetry-listeners.js +96 -0
  38. package/dist/types/src/helpers/setup-telemetry-listeners.js.map +1 -0
  39. package/dist/types/src/index.d.ts +1 -0
  40. package/dist/types/src/index.d.ts.map +1 -1
  41. package/dist/types/src/index.js +1 -0
  42. package/dist/types/src/index.js.map +1 -1
  43. package/dist/types/src/observability.d.ts +3 -4
  44. package/dist/types/src/observability.d.ts.map +1 -1
  45. package/dist/types/src/observability.js +26 -25
  46. package/dist/types/src/observability.js.map +1 -1
  47. package/package.json +15 -14
  48. package/src/helpers/app-observability.ts +205 -0
  49. package/src/helpers/index.ts +7 -0
  50. package/src/{util.ts → helpers/map-spaces.ts} +1 -2
  51. package/src/helpers/setup-telemetry-listeners.ts +115 -0
  52. package/src/index.ts +1 -0
  53. package/src/observability.ts +26 -24
  54. package/dist/types/src/util.d.ts.map +0 -1
  55. package/dist/types/src/util.js.map +0 -1
@@ -0,0 +1,83 @@
1
+ import {
2
+ captureException
3
+ } from "./chunk-6KUJPLEH.mjs";
4
+
5
+ // packages/sdk/observability/src/segment/browser.ts
6
+ import snippet from "@segment/snippet";
7
+ import { log } from "@dxos/log";
8
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/sdk/observability/src/segment/browser.ts";
9
+ var SegmentTelemetry = class {
10
+ constructor({ apiKey, batchSize, getTags }) {
11
+ this._getTags = getTags;
12
+ try {
13
+ const contents = snippet.min({
14
+ apiKey,
15
+ page: false
16
+ });
17
+ const script = document.createElement("script");
18
+ script.innerHTML = contents;
19
+ document.body.append(script);
20
+ } catch (err) {
21
+ log.catch("Failed to initialize telemetry", err, {
22
+ F: __dxlog_file,
23
+ L: 27,
24
+ S: this,
25
+ C: (f, a) => f(...a)
26
+ });
27
+ }
28
+ }
29
+ page({ identityId: userId, ...options } = {}) {
30
+ try {
31
+ window.analytics?.page({
32
+ context: Object.fromEntries(this._getTags().entries()),
33
+ ...options,
34
+ userId
35
+ });
36
+ } catch (err) {
37
+ log.catch("Failed to track page", err, {
38
+ F: __dxlog_file,
39
+ L: 39,
40
+ S: this,
41
+ C: (f, a) => f(...a)
42
+ });
43
+ }
44
+ }
45
+ event({ identityId: userId, name: event, ...options }) {
46
+ try {
47
+ options.properties = {
48
+ ...options.properties,
49
+ ...Object.fromEntries(this._getTags().entries())
50
+ };
51
+ window.analytics?.track({
52
+ ...options,
53
+ event
54
+ });
55
+ } catch (err) {
56
+ log.catch("Failed to track event", err, {
57
+ F: __dxlog_file,
58
+ L: 54,
59
+ S: this,
60
+ C: (f, a) => f(...a)
61
+ });
62
+ }
63
+ }
64
+ async flush() {
65
+ try {
66
+ await window.analytics?.flush((err) => {
67
+ captureException(err);
68
+ });
69
+ } catch (err) {
70
+ log.catch("Failed to flush telemetry", err, {
71
+ F: __dxlog_file,
72
+ L: 64,
73
+ S: this,
74
+ C: (f, a) => f(...a)
75
+ });
76
+ }
77
+ }
78
+ };
79
+
80
+ export {
81
+ SegmentTelemetry
82
+ };
83
+ //# sourceMappingURL=chunk-ROSK6U3K.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/segment/browser.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2022 DXOS.org\n//\n\nimport snippet from '@segment/snippet';\n\nimport { log } from '@dxos/log';\n\nimport type { EventOptions, SegmentTelemetryOptions, PageOptions } from './types';\nimport { captureException } from '../sentry';\n\nexport class SegmentTelemetry {\n private _getTags: () => Map<string, string>;\n\n constructor({ apiKey, batchSize, getTags }: SegmentTelemetryOptions) {\n this._getTags = getTags;\n try {\n const contents = snippet.min({\n apiKey,\n page: false,\n });\n\n const script = document.createElement('script');\n script.innerHTML = contents;\n document.body.append(script);\n } catch (err) {\n log.catch('Failed to initialize telemetry', err);\n }\n }\n\n page({ identityId: userId, ...options }: PageOptions = {}) {\n try {\n (window as any).analytics?.page({\n context: Object.fromEntries(this._getTags().entries()),\n ...options,\n userId,\n });\n } catch (err) {\n log.catch('Failed to track page', err);\n }\n }\n\n event({ identityId: userId, name: event, ...options }: EventOptions) {\n try {\n options.properties = {\n ...options.properties,\n ...Object.fromEntries(this._getTags().entries()),\n };\n (window as any).analytics?.track({\n ...options,\n event,\n });\n } catch (err) {\n log.catch('Failed to track event', err);\n }\n }\n\n async flush() {\n try {\n await (window as any).analytics?.flush((err: any) => {\n captureException(err);\n });\n } catch (err) {\n log.catch('Failed to flush telemetry', err);\n }\n }\n}\n"],
5
+ "mappings": ";;;;;AAIA,OAAOA,aAAa;AAEpB,SAASC,WAAW;;AAKb,IAAMC,mBAAN,MAAMA;EAGXC,YAAY,EAAEC,QAAQC,WAAWC,QAAO,GAA6B;AACnE,SAAKC,WAAWD;AAChB,QAAI;AACF,YAAME,WAAWC,QAAQC,IAAI;QAC3BN;QACAO,MAAM;MACR,CAAA;AAEA,YAAMC,SAASC,SAASC,cAAc,QAAA;AACtCF,aAAOG,YAAYP;AACnBK,eAASG,KAAKC,OAAOL,MAAAA;IACvB,SAASM,KAAK;AACZC,UAAIC,MAAM,kCAAkCF,KAAAA;;;;;;IAC9C;EACF;EAEAP,KAAK,EAAEU,YAAYC,QAAQ,GAAGC,QAAAA,IAAyB,CAAC,GAAG;AACzD,QAAI;AACDC,aAAeC,WAAWd,KAAK;QAC9Be,SAASC,OAAOC,YAAY,KAAKrB,SAAQ,EAAGsB,QAAO,CAAA;QACnD,GAAGN;QACHD;MACF,CAAA;IACF,SAASJ,KAAK;AACZC,UAAIC,MAAM,wBAAwBF,KAAAA;;;;;;IACpC;EACF;EAEAY,MAAM,EAAET,YAAYC,QAAQS,MAAMD,OAAO,GAAGP,QAAAA,GAAyB;AACnE,QAAI;AACFA,cAAQS,aAAa;QACnB,GAAGT,QAAQS;QACX,GAAGL,OAAOC,YAAY,KAAKrB,SAAQ,EAAGsB,QAAO,CAAA;MAC/C;AACCL,aAAeC,WAAWQ,MAAM;QAC/B,GAAGV;QACHO;MACF,CAAA;IACF,SAASZ,KAAK;AACZC,UAAIC,MAAM,yBAAyBF,KAAAA;;;;;;IACrC;EACF;EAEA,MAAMgB,QAAQ;AACZ,QAAI;AACF,YAAOV,OAAeC,WAAWS,MAAM,CAAChB,QAAAA;AACtCiB,yBAAiBjB,GAAAA;MACnB,CAAA;IACF,SAASA,KAAK;AACZC,UAAIC,MAAM,6BAA6BF,KAAAA;;;;;;IACzC;EACF;AACF;",
6
+ "names": ["snippet", "log", "SegmentTelemetry", "constructor", "apiKey", "batchSize", "getTags", "_getTags", "contents", "snippet", "min", "page", "script", "document", "createElement", "innerHTML", "body", "append", "err", "log", "catch", "identityId", "userId", "options", "window", "analytics", "context", "Object", "fromEntries", "entries", "event", "name", "properties", "track", "flush", "captureException"]
7
+ }