@dxos/tracing 0.8.4-main.67995b8 → 0.8.4-main.70d3990

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.
@@ -27,6 +27,10 @@ var createId = () => Math.random().toString(36).slice(2);
27
27
  var __dxlog_file = "/__w/dxos/dxos/packages/common/tracing/src/diagnostic.ts";
28
28
  var DIAGNOSTICS_TIMEOUT = 1e4;
29
29
  var TraceDiagnosticImpl = class {
30
+ id;
31
+ fetch;
32
+ name;
33
+ _onUnregister;
30
34
  constructor(id, fetch, name, _onUnregister) {
31
35
  this.id = id;
32
36
  this.fetch = fetch;
@@ -38,11 +42,9 @@ var TraceDiagnosticImpl = class {
38
42
  }
39
43
  };
40
44
  var DiagnosticsManager = class {
41
- constructor() {
42
- this.instanceId = createId();
43
- this.registry = /* @__PURE__ */ new Map();
44
- this._instanceTag = null;
45
- }
45
+ instanceId = createId();
46
+ registry = /* @__PURE__ */ new Map();
47
+ _instanceTag = null;
46
48
  get instanceTag() {
47
49
  return this._instanceTag;
48
50
  }
@@ -115,17 +117,19 @@ var __dxlog_file2 = "/__w/dxos/dxos/packages/common/tracing/src/diagnostics-chan
115
117
  var DEFAULT_CHANNEL_NAME = "dxos-diagnostics";
116
118
  var DISCOVER_TIME = 500;
117
119
  var DiagnosticsChannel = class _DiagnosticsChannel {
120
+ _channelName;
118
121
  static get supported() {
119
122
  return globalThis.BroadcastChannel != null;
120
123
  }
124
+ _ctx = new Context(void 0, {
125
+ F: __dxlog_file2,
126
+ L: 46
127
+ });
128
+ // Separate channels becauase the client and server may be in the same process.
129
+ _serveChannel = void 0;
130
+ _clientChannel = void 0;
121
131
  constructor(_channelName = DEFAULT_CHANNEL_NAME) {
122
132
  this._channelName = _channelName;
123
- this._ctx = new Context(void 0, {
124
- F: __dxlog_file2,
125
- L: 46
126
- });
127
- this._serveChannel = void 0;
128
- this._clientChannel = void 0;
129
133
  if (_DiagnosticsChannel.supported) {
130
134
  this._serveChannel = new BroadcastChannel(_channelName);
131
135
  this._clientChannel = new BroadcastChannel(_channelName);
@@ -260,9 +264,7 @@ var DiagnosticsChannel = class _DiagnosticsChannel {
260
264
 
261
265
  // src/remote/metrics.ts
262
266
  var RemoteMetrics = class {
263
- constructor() {
264
- this._metrics = /* @__PURE__ */ new Set();
265
- }
267
+ _metrics = /* @__PURE__ */ new Set();
266
268
  registerProcessor(processor) {
267
269
  this._metrics.add(processor);
268
270
  }
@@ -282,9 +284,8 @@ var RemoteMetrics = class {
282
284
 
283
285
  // src/remote/tracing.ts
284
286
  var RemoteTracing = class {
285
- constructor() {
286
- this._spanMap = /* @__PURE__ */ new Map();
287
- }
287
+ _tracing;
288
+ _spanMap = /* @__PURE__ */ new Map();
288
289
  registerProcessor(processor) {
289
290
  this._tracing = processor;
290
291
  }
@@ -312,6 +313,7 @@ var RemoteTracing = class {
312
313
  // src/trace-sender.ts
313
314
  import { Stream } from "@dxos/codec-protobuf/stream";
314
315
  var TraceSender = class {
316
+ _traceProcessor;
315
317
  constructor(_traceProcessor) {
316
318
  this._traceProcessor = _traceProcessor;
317
319
  }
@@ -412,6 +414,15 @@ var WeakRef = globalThis.WeakRef ?? WeakRefMock;
412
414
  // src/trace-processor.ts
413
415
  var __dxlog_file3 = "/__w/dxos/dxos/packages/common/tracing/src/trace-processor.ts";
414
416
  var ResourceEntry = class {
417
+ data;
418
+ instance;
419
+ annotation;
420
+ /**
421
+ * Sometimes bundlers mangle class names: WebFile -> WebFile2.
422
+ *
423
+ * We use a heuristic to remove the suffix.
424
+ */
425
+ sanitizedClassName;
415
426
  constructor(data, instance, annotation) {
416
427
  this.data = data;
417
428
  this.instance = instance;
@@ -429,50 +440,19 @@ var REFRESH_INTERVAL = 1e3;
429
440
  var MAX_INFO_OBJECT_DEPTH = 8;
430
441
  var IS_CLOUDFLARE_WORKERS = !!globalThis?.navigator?.userAgent?.includes("Cloudflare-Workers");
431
442
  var TraceProcessor = class {
443
+ diagnostics = new DiagnosticsManager();
444
+ diagnosticsChannel = new DiagnosticsChannel();
445
+ remoteMetrics = new RemoteMetrics();
446
+ remoteTracing = new RemoteTracing();
447
+ subscriptions = /* @__PURE__ */ new Set();
448
+ resources = /* @__PURE__ */ new Map();
449
+ resourceInstanceIndex = /* @__PURE__ */ new WeakMap();
450
+ resourceIdList = [];
451
+ spans = /* @__PURE__ */ new Map();
452
+ spanIdList = [];
453
+ logs = [];
454
+ _instanceTag = null;
432
455
  constructor() {
433
- this.diagnostics = new DiagnosticsManager();
434
- this.diagnosticsChannel = new DiagnosticsChannel();
435
- this.remoteMetrics = new RemoteMetrics();
436
- this.remoteTracing = new RemoteTracing();
437
- this.subscriptions = /* @__PURE__ */ new Set();
438
- this.resources = /* @__PURE__ */ new Map();
439
- this.resourceInstanceIndex = /* @__PURE__ */ new WeakMap();
440
- this.resourceIdList = [];
441
- this.spans = /* @__PURE__ */ new Map();
442
- this.spanIdList = [];
443
- this.logs = [];
444
- this._instanceTag = null;
445
- this._logProcessor = (config, entry) => {
446
- switch (entry.level) {
447
- case LogLevel.ERROR:
448
- case LogLevel.WARN:
449
- case LogLevel.TRACE: {
450
- const scope = entry.meta?.S;
451
- const resource2 = this.resourceInstanceIndex.get(scope);
452
- if (!resource2) {
453
- return;
454
- }
455
- const context = getContextFromEntry(entry) ?? {};
456
- for (const key of Object.keys(context)) {
457
- context[key] = sanitizeValue(context[key], 0, this);
458
- }
459
- const entryToPush = {
460
- level: entry.level,
461
- message: entry.message ?? (entry.error ? entry.error.message ?? String(entry.error) : ""),
462
- context,
463
- timestamp: /* @__PURE__ */ new Date(),
464
- meta: {
465
- file: entry.meta?.F ?? "",
466
- line: entry.meta?.L ?? 0,
467
- resourceId: resource2.data.id
468
- }
469
- };
470
- this._pushLog(entryToPush);
471
- break;
472
- }
473
- default:
474
- }
475
- };
476
456
  log.addProcessor(this._logProcessor.bind(this), void 0, {
477
457
  F: __dxlog_file3,
478
458
  L: 103,
@@ -656,18 +636,54 @@ var TraceProcessor = class {
656
636
  subscription.newLogs.push(log2);
657
637
  }
658
638
  }
639
+ _logProcessor = (config, entry) => {
640
+ switch (entry.level) {
641
+ case LogLevel.ERROR:
642
+ case LogLevel.WARN:
643
+ case LogLevel.TRACE: {
644
+ const scope = entry.meta?.S;
645
+ const resource2 = this.resourceInstanceIndex.get(scope);
646
+ if (!resource2) {
647
+ return;
648
+ }
649
+ const context = getContextFromEntry(entry) ?? {};
650
+ for (const key of Object.keys(context)) {
651
+ context[key] = sanitizeValue(context[key], 0, this);
652
+ }
653
+ const entryToPush = {
654
+ level: entry.level,
655
+ message: entry.message ?? (entry.error ? entry.error.message ?? String(entry.error) : ""),
656
+ context,
657
+ timestamp: /* @__PURE__ */ new Date(),
658
+ meta: {
659
+ file: entry.meta?.F ?? "",
660
+ line: entry.meta?.L ?? 0,
661
+ resourceId: resource2.data.id
662
+ }
663
+ };
664
+ this._pushLog(entryToPush);
665
+ break;
666
+ }
667
+ default:
668
+ }
669
+ };
659
670
  };
660
671
  var TracingSpan = class _TracingSpan {
661
- static {
662
- this.nextId = 0;
663
- }
672
+ _traceProcessor;
673
+ static nextId = 0;
674
+ id;
675
+ parentId = null;
676
+ methodName;
677
+ resourceId = null;
678
+ op;
679
+ attributes;
680
+ startTs;
681
+ endTs = null;
682
+ error = null;
683
+ _showInBrowserTimeline;
684
+ _ctx = null;
664
685
  constructor(_traceProcessor, params) {
665
686
  this._traceProcessor = _traceProcessor;
666
- this.parentId = null;
667
- this.resourceId = null;
668
- this.endTs = null;
669
- this.error = null;
670
- this._ctx = null;
671
687
  this.id = _TracingSpan.nextId++;
672
688
  this.methodName = params.methodName;
673
689
  this.resourceId = _traceProcessor.getResourceId(params.instance);
@@ -901,6 +917,11 @@ var trace = {
901
917
 
902
918
  // src/metrics/base.ts
903
919
  var BaseCounter = class {
920
+ /**
921
+ * @internal
922
+ */
923
+ _instance;
924
+ name;
904
925
  /**
905
926
  * @internal
906
927
  */
@@ -914,9 +935,10 @@ var BaseCounter = class {
914
935
 
915
936
  // src/metrics/unary-counter.ts
916
937
  var UnaryCounter = class extends BaseCounter {
938
+ value = 0;
939
+ units;
917
940
  constructor({ units } = {}) {
918
941
  super();
919
- this.value = 0;
920
942
  this.units = units;
921
943
  }
922
944
  inc(by = 1) {
@@ -936,11 +958,12 @@ var UnaryCounter = class extends BaseCounter {
936
958
  // src/metrics/time-series-counter.ts
937
959
  var MAX_BUCKETS = 60;
938
960
  var TimeSeriesCounter = class extends BaseCounter {
961
+ _currentValue = 0;
962
+ _totalValue = 0;
963
+ _buckets = [];
964
+ units;
939
965
  constructor({ units } = {}) {
940
966
  super();
941
- this._currentValue = 0;
942
- this._totalValue = 0;
943
- this._buckets = [];
944
967
  this.units = units;
945
968
  }
946
969
  inc(by = 1) {
@@ -976,13 +999,10 @@ var TimeSeriesCounter = class extends BaseCounter {
976
999
  // src/metrics/time-usage-counter.ts
977
1000
  var MAX_BUCKETS2 = 60;
978
1001
  var TimeUsageCounter = class extends BaseCounter {
979
- constructor() {
980
- super(...arguments);
981
- this._currentValue = 0;
982
- this._totalValue = 0;
983
- this._buckets = [];
984
- this._lastTickTime = performance.now();
985
- }
1002
+ _currentValue = 0;
1003
+ _totalValue = 0;
1004
+ _buckets = [];
1005
+ _lastTickTime = performance.now();
986
1006
  record(time) {
987
1007
  this._currentValue += time;
988
1008
  this._totalValue += time;
@@ -1027,9 +1047,10 @@ var TimeUsageCounter = class extends BaseCounter {
1027
1047
 
1028
1048
  // src/metrics/map-counter.ts
1029
1049
  var MapCounter = class extends BaseCounter {
1050
+ values = /* @__PURE__ */ new Map();
1051
+ units;
1030
1052
  constructor({ units } = {}) {
1031
1053
  super();
1032
- this.values = /* @__PURE__ */ new Map();
1033
1054
  this.units = units;
1034
1055
  }
1035
1056
  inc(key, by = 1) {
@@ -1052,6 +1073,7 @@ var MapCounter = class extends BaseCounter {
1052
1073
 
1053
1074
  // src/metrics/custom-counter.ts
1054
1075
  var CustomCounter = class extends BaseCounter {
1076
+ _getData;
1055
1077
  constructor(_getData) {
1056
1078
  super(), this._getData = _getData;
1057
1079
  }