@composed-di/observability 0.5.0-alpha → 0.7.0-alpha

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 (40) hide show
  1. package/dist/cli.js.map +1 -1
  2. package/dist/dashboardClient.d.ts +17 -11
  3. package/dist/dashboardClient.d.ts.map +1 -1
  4. package/dist/dashboardClient.js +28 -11
  5. package/dist/dashboardClient.js.map +1 -1
  6. package/dist/dashboardEventListener.d.ts +27 -8
  7. package/dist/dashboardEventListener.d.ts.map +1 -1
  8. package/dist/dashboardEventListener.js +38 -16
  9. package/dist/dashboardEventListener.js.map +1 -1
  10. package/dist/dashboardHtml.d.ts +6 -0
  11. package/dist/dashboardHtml.d.ts.map +1 -1
  12. package/dist/dashboardHtml.js +618 -98
  13. package/dist/dashboardHtml.js.map +1 -1
  14. package/dist/dashboardInstrumentation.d.ts +44 -0
  15. package/dist/dashboardInstrumentation.d.ts.map +1 -0
  16. package/dist/dashboardInstrumentation.js +119 -0
  17. package/dist/dashboardInstrumentation.js.map +1 -0
  18. package/dist/dashboardServer.d.ts +12 -8
  19. package/dist/dashboardServer.d.ts.map +1 -1
  20. package/dist/dashboardServer.js +52 -14
  21. package/dist/dashboardServer.js.map +1 -1
  22. package/dist/events.d.ts +20 -1
  23. package/dist/events.d.ts.map +1 -1
  24. package/dist/events.js +1 -1
  25. package/dist/index.d.ts +1 -1
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +1 -1
  28. package/dist/index.js.map +1 -1
  29. package/dist/moduleGraph.d.ts.map +1 -1
  30. package/dist/moduleGraph.js.map +1 -1
  31. package/package.json +24 -23
  32. package/src/cli.ts +19 -19
  33. package/src/dashboardClient.ts +94 -83
  34. package/src/dashboardHtml.ts +620 -100
  35. package/src/dashboardInstrumentation.ts +153 -0
  36. package/src/dashboardServer.ts +183 -148
  37. package/src/events.ts +55 -35
  38. package/src/index.ts +5 -5
  39. package/src/moduleGraph.ts +9 -9
  40. package/src/dashboardEventListener.ts +0 -104
@@ -1 +1 @@
1
- {"version":3,"file":"dashboardHtml.js","sourceRoot":"","sources":["../src/dashboardHtml.ts"],"names":[],"mappings":";;AASA,kDAEC;AAXD;;;;;;;;GAQG;AACH,SAAgB,mBAAmB;IACjC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqoBZ,CAAC"}
1
+ {"version":3,"file":"dashboardHtml.js","sourceRoot":"","sources":["../src/dashboardHtml.ts"],"names":[],"mappings":";;AAeA,kDAEC;AAjBD;;;;;;;;;;;;;;GAcG;AACH,SAAgB,mBAAmB;IACjC,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuoCZ,CAAA"}
@@ -0,0 +1,44 @@
1
+ import { ServiceInstrumentation } from '@composed-di/instrumentation-core';
2
+ import type { DisposeContext, OperationSpan, InitializeContext, MethodCallContext } from '@composed-di/instrumentation-core';
3
+ import { SpanEvent } from './events';
4
+ export interface DashboardInstrumentationOptions {
5
+ /** Longest serialized value kept; longer ones are truncated. Default 200. */
6
+ maxValueLength?: number;
7
+ }
8
+ /**
9
+ * A ServiceInstrumentation that turns service events into structured
10
+ * start/end span events for the realtime dashboard.
11
+ *
12
+ * - Uses AsyncLocalStorage to link spans to the span that was active when
13
+ * they started, which lets the dashboard draw cross-service call edges
14
+ * (e.g. UserService.getUser -> Database.query). The observed operation
15
+ * is invoked through the span's `run` wrapper, so the context is scoped
16
+ * to the operation and its async continuations.
17
+ * - Emits events synchronously to subscribers; it never buffers.
18
+ *
19
+ * Arguments and results are serialized onto spans exactly when
20
+ * `instrument()` (inherited from ServiceInstrumentation) delivers them —
21
+ * capture and redaction policy live in the InstrumentOptions, not here.
22
+ * Pass `capture: { arguments: true, results: true }` there to see values
23
+ * in the dashboard.
24
+ */
25
+ export declare class DashboardInstrumentation extends ServiceInstrumentation {
26
+ private readonly context;
27
+ private readonly listeners;
28
+ private nextId;
29
+ private readonly maxValueLength;
30
+ constructor({ maxValueLength }?: DashboardInstrumentationOptions);
31
+ /**
32
+ * Subscribes to span events.
33
+ *
34
+ * @returns A function that removes the subscription.
35
+ */
36
+ subscribe(listener: (event: SpanEvent) => void): () => void;
37
+ onInitialize({ key }: InitializeContext): OperationSpan;
38
+ onDispose({ key }: DisposeContext): OperationSpan;
39
+ onMethodCall({ key, methodName, args }: MethodCallContext): OperationSpan;
40
+ private startSpan;
41
+ private serialize;
42
+ private emit;
43
+ }
44
+ //# sourceMappingURL=dashboardInstrumentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboardInstrumentation.d.ts","sourceRoot":"","sources":["../src/dashboardInstrumentation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAY,MAAM,UAAU,CAAA;AAO9C,MAAM,WAAW,+BAA+B;IAC9C,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,wBAAyB,SAAQ,sBAAsB;IAClE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuC;IAC/D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwC;IAClE,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;gBAE3B,EAAE,cAAoB,EAAE,GAAE,+BAAoC;IAK1E;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,GAAG,MAAM,IAAI;IAK3D,YAAY,CAAC,EAAE,GAAG,EAAE,EAAE,iBAAiB,GAAG,aAAa;IAIvD,SAAS,CAAC,EAAE,GAAG,EAAE,EAAE,cAAc,GAAG,aAAa;IAIjD,YAAY,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,iBAAiB,GAAG,aAAa;IAWzE,OAAO,CAAC,SAAS;IAuDjB,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,IAAI;CAGb"}
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DashboardInstrumentation = void 0;
4
+ const node_async_hooks_1 = require("node:async_hooks");
5
+ const node_perf_hooks_1 = require("node:perf_hooks");
6
+ const instrumentation_core_1 = require("@composed-di/instrumentation-core");
7
+ /**
8
+ * A ServiceInstrumentation that turns service events into structured
9
+ * start/end span events for the realtime dashboard.
10
+ *
11
+ * - Uses AsyncLocalStorage to link spans to the span that was active when
12
+ * they started, which lets the dashboard draw cross-service call edges
13
+ * (e.g. UserService.getUser -> Database.query). The observed operation
14
+ * is invoked through the span's `run` wrapper, so the context is scoped
15
+ * to the operation and its async continuations.
16
+ * - Emits events synchronously to subscribers; it never buffers.
17
+ *
18
+ * Arguments and results are serialized onto spans exactly when
19
+ * `instrument()` (inherited from ServiceInstrumentation) delivers them —
20
+ * capture and redaction policy live in the InstrumentOptions, not here.
21
+ * Pass `capture: { arguments: true, results: true }` there to see values
22
+ * in the dashboard.
23
+ */
24
+ class DashboardInstrumentation extends instrumentation_core_1.ServiceInstrumentation {
25
+ constructor({ maxValueLength = 200 } = {}) {
26
+ super();
27
+ this.context = new node_async_hooks_1.AsyncLocalStorage();
28
+ this.listeners = new Set();
29
+ this.nextId = 1;
30
+ this.maxValueLength = maxValueLength;
31
+ }
32
+ /**
33
+ * Subscribes to span events.
34
+ *
35
+ * @returns A function that removes the subscription.
36
+ */
37
+ subscribe(listener) {
38
+ this.listeners.add(listener);
39
+ return () => this.listeners.delete(listener);
40
+ }
41
+ onInitialize({ key }) {
42
+ return this.startSpan(key.name, 'initialize', 'initialize');
43
+ }
44
+ onDispose({ key }) {
45
+ return this.startSpan(key.name, 'dispose', 'dispose');
46
+ }
47
+ onMethodCall({ key, methodName, args }) {
48
+ // Args are present exactly when argument capture is enabled in the
49
+ // InstrumentOptions; they arrive already redacted.
50
+ return this.startSpan(key.name, methodName, 'call', args ? this.serialize(args) : undefined);
51
+ }
52
+ startSpan(service, method, kind, args) {
53
+ var _a;
54
+ const id = this.nextId++;
55
+ const parent = this.context.getStore();
56
+ this.emit({
57
+ type: 'start',
58
+ id,
59
+ parentId: (_a = parent === null || parent === void 0 ? void 0 : parent.id) !== null && _a !== void 0 ? _a : null,
60
+ name: `${service}.${method}`,
61
+ service,
62
+ method,
63
+ kind,
64
+ time: Date.now(),
65
+ args,
66
+ });
67
+ const startedAt = node_perf_hooks_1.performance.now();
68
+ let ended = false;
69
+ const end = (error, result) => {
70
+ if (ended)
71
+ return;
72
+ ended = true;
73
+ this.emit({
74
+ type: 'end',
75
+ id,
76
+ time: Date.now(),
77
+ durationMs: node_perf_hooks_1.performance.now() - startedAt,
78
+ error,
79
+ result,
80
+ });
81
+ };
82
+ return {
83
+ // Running the operation inside this span's context makes it the
84
+ // parent of any spans started within.
85
+ run: (fn) => this.context.run({ id }, fn),
86
+ end: (outcome) => {
87
+ if (outcome.type === 'failure') {
88
+ end(errorMessage(outcome.error));
89
+ }
90
+ else {
91
+ // A value is present exactly when result capture is enabled in
92
+ // the InstrumentOptions; it arrives already redacted.
93
+ end(null, 'value' in outcome ? this.serialize(outcome.value) : undefined);
94
+ }
95
+ },
96
+ };
97
+ }
98
+ serialize(value) {
99
+ var _a;
100
+ let text;
101
+ try {
102
+ text = (_a = JSON.stringify(value)) !== null && _a !== void 0 ? _a : String(value);
103
+ }
104
+ catch (_b) {
105
+ text = '[unserializable]';
106
+ }
107
+ return text.length > this.maxValueLength
108
+ ? text.slice(0, this.maxValueLength) + '…'
109
+ : text;
110
+ }
111
+ emit(event) {
112
+ this.listeners.forEach((listener) => listener(event));
113
+ }
114
+ }
115
+ exports.DashboardInstrumentation = DashboardInstrumentation;
116
+ function errorMessage(error) {
117
+ return error instanceof Error ? error.message : String(error);
118
+ }
119
+ //# sourceMappingURL=dashboardInstrumentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboardInstrumentation.js","sourceRoot":"","sources":["../src/dashboardInstrumentation.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { ServiceModule } from '@composed-di/core';
2
- import { DashboardEventListener } from './dashboardEventListener';
2
+ import { DashboardInstrumentation, DashboardInstrumentationOptions } from './dashboardInstrumentation';
3
3
  import { ModuleGraph } from './moduleGraph';
4
4
  import { DashboardSnapshot, SpanEvent } from './events';
5
- export interface ServiceDashboardOptions {
5
+ export interface ServiceDashboardOptions extends DashboardInstrumentationOptions {
6
6
  /** How many recent events to keep for late-joining clients. Default 200. */
7
7
  recentEventLimit?: number;
8
8
  }
@@ -22,7 +22,7 @@ export interface ServiceDashboardOptions {
22
22
  * accepts `POST /v1/graph` (the dependency graph) and `POST /v1/events`
23
23
  * (batched span events).
24
24
  *
25
- * **In-process:** create the module with `dashboard.listener`, call
25
+ * **In-process:** create the module with `dashboard.instrumentation`, call
26
26
  * `dashboard.attach(module)`, and `listen` from the same process.
27
27
  *
28
28
  * @example
@@ -33,13 +33,17 @@ export interface ServiceDashboardOptions {
33
33
  *
34
34
  * // application process
35
35
  * const client = new DashboardClient({ url: 'http://localhost:4321' });
36
- * const module = ServiceModule.from(factories, client.listener);
36
+ * const module = ServiceModule.from(
37
+ * client.instrumentation.instrument(factories, {
38
+ * capture: { arguments: true, results: true },
39
+ * }),
40
+ * );
37
41
  * client.attach(module);
38
42
  * ```
39
43
  */
40
44
  export declare class ServiceDashboard {
41
- /** Pass this as the second argument to ServiceModule.from. */
42
- readonly listener: DashboardEventListener;
45
+ /** Call `.instrument()` on this to wrap the factories composing the module. */
46
+ readonly instrumentation: DashboardInstrumentation;
43
47
  private nodes;
44
48
  private edges;
45
49
  private services;
@@ -52,10 +56,10 @@ export declare class ServiceDashboard {
52
56
  private clients;
53
57
  private server;
54
58
  private heartbeat;
55
- constructor({ recentEventLimit }?: ServiceDashboardOptions);
59
+ constructor({ recentEventLimit, ...instrumentationOptions }?: ServiceDashboardOptions);
56
60
  /**
57
61
  * In-process mode: reads the dependency graph out of the module. Call
58
- * this with the module that was created with this dashboard's listener.
62
+ * this with the module that was created with this dashboard's instrumentation.
59
63
  */
60
64
  attach(module: ServiceModule): this;
61
65
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"dashboardServer.d.ts","sourceRoot":"","sources":["../src/dashboardServer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAe,MAAM,eAAe,CAAC;AAEzD,OAAO,EACL,iBAAiB,EAIjB,SAAS,EAIV,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,uBAAuB;IACtC,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,gBAAgB;IAC3B,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,yBAAgC;IAEjD,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,QAAQ,CAAmC;IACnD,yEAAyE;IACzE,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,6EAA6E;IAC7E,OAAO,CAAC,eAAe,CAAS;IAEhC,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAA+B;gBAEpC,EAAE,gBAAsB,EAAE,GAAE,uBAA4B;IAKpE;;;OAGG;IACH,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAKnC;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAYvC;;;;OAIG;IACH,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI;IAejC,4EAA4E;IAC5E,QAAQ,IAAI,iBAAiB;IAS7B;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,SAAO,EAAE,IAAI,SAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAyBxD,oDAAoD;IAC9C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAgBd,KAAK;IA6DnB,OAAO,CAAC,iBAAiB;IAWzB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAqCnB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,QAAQ;IA2BhB,yEAAyE;IACzE,OAAO,CAAC,eAAe;IAKvB,6EAA6E;IAC7E,OAAO,CAAC,iBAAiB;CAI1B"}
1
+ {"version":3,"file":"dashboardServer.d.ts","sourceRoot":"","sources":["../src/dashboardServer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EACL,wBAAwB,EACxB,+BAA+B,EAChC,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,WAAW,EAAe,MAAM,eAAe,CAAA;AAExD,OAAO,EACL,iBAAiB,EAIjB,SAAS,EAIV,MAAM,UAAU,CAAA;AAEjB,MAAM,WAAW,uBAAwB,SAAQ,+BAA+B;IAC9E,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,gBAAgB;IAC3B,+EAA+E;IAC/E,QAAQ,CAAC,eAAe,EAAE,wBAAwB,CAAA;IAElD,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,QAAQ,CAAkC;IAClD,yEAAyE;IACzE,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;IACzC,6EAA6E;IAC7E,OAAO,CAAC,eAAe,CAAQ;IAE/B,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,SAAS,CAA8B;gBAEnC,EACV,gBAAsB,EACtB,GAAG,sBAAsB,EAC1B,GAAE,uBAA4B;IAM/B;;;OAGG;IACH,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAKnC;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAUvC;;;;OAIG;IACH,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI;IAejC,4EAA4E;IAC5E,QAAQ,IAAI,iBAAiB;IAS7B;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,SAAO,EAAE,IAAI,SAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAyBxD,oDAAoD;IAC9C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAgBd,KAAK;IA6DnB,OAAO,CAAC,iBAAiB;IAWzB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAuCnB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,QAAQ;IAqChB,yEAAyE;IACzE,OAAO,CAAC,eAAe;IAKvB,6EAA6E;IAC7E,OAAO,CAAC,iBAAiB;CAI1B"}
@@ -8,10 +8,21 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __rest = (this && this.__rest) || function (s, e) {
12
+ var t = {};
13
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
+ t[p] = s[p];
15
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
+ t[p[i]] = s[p[i]];
19
+ }
20
+ return t;
21
+ };
11
22
  Object.defineProperty(exports, "__esModule", { value: true });
12
23
  exports.ServiceDashboard = void 0;
13
24
  const node_http_1 = require("node:http");
14
- const dashboardEventListener_1 = require("./dashboardEventListener");
25
+ const dashboardInstrumentation_1 = require("./dashboardInstrumentation");
15
26
  const moduleGraph_1 = require("./moduleGraph");
16
27
  const dashboardHtml_1 = require("./dashboardHtml");
17
28
  const HEARTBEAT_INTERVAL_MS = 15000;
@@ -31,7 +42,7 @@ const HEARTBEAT_INTERVAL_MS = 15000;
31
42
  * accepts `POST /v1/graph` (the dependency graph) and `POST /v1/events`
32
43
  * (batched span events).
33
44
  *
34
- * **In-process:** create the module with `dashboard.listener`, call
45
+ * **In-process:** create the module with `dashboard.instrumentation`, call
35
46
  * `dashboard.attach(module)`, and `listen` from the same process.
36
47
  *
37
48
  * @example
@@ -42,14 +53,17 @@ const HEARTBEAT_INTERVAL_MS = 15000;
42
53
  *
43
54
  * // application process
44
55
  * const client = new DashboardClient({ url: 'http://localhost:4321' });
45
- * const module = ServiceModule.from(factories, client.listener);
56
+ * const module = ServiceModule.from(
57
+ * client.instrumentation.instrument(factories, {
58
+ * capture: { arguments: true, results: true },
59
+ * }),
60
+ * );
46
61
  * client.attach(module);
47
62
  * ```
48
63
  */
49
64
  class ServiceDashboard {
50
- constructor({ recentEventLimit = 200 } = {}) {
51
- /** Pass this as the second argument to ServiceModule.from. */
52
- this.listener = new dashboardEventListener_1.DashboardEventListener();
65
+ constructor(_a = {}) {
66
+ var { recentEventLimit = 200 } = _a, instrumentationOptions = __rest(_a, ["recentEventLimit"]);
53
67
  this.nodes = [];
54
68
  this.edges = [];
55
69
  this.services = new Map();
@@ -61,12 +75,13 @@ class ServiceDashboard {
61
75
  this.clients = new Set();
62
76
  this.server = null;
63
77
  this.heartbeat = null;
78
+ this.instrumentation = new dashboardInstrumentation_1.DashboardInstrumentation(instrumentationOptions);
64
79
  this.recentEventLimit = recentEventLimit;
65
- this.listener.subscribe((event) => this.onSpanEvent(event));
80
+ this.instrumentation.subscribe((event) => this.onSpanEvent(event));
66
81
  }
67
82
  /**
68
83
  * In-process mode: reads the dependency graph out of the module. Call
69
- * this with the module that was created with this dashboard's listener.
84
+ * this with the module that was created with this dashboard's instrumentation.
70
85
  */
71
86
  attach(module) {
72
87
  this.registerGraph((0, moduleGraph_1.moduleGraph)(module));
@@ -235,7 +250,7 @@ class ServiceDashboard {
235
250
  * broadcasts the enriched event to connected clients.
236
251
  */
237
252
  onSpanEvent(event) {
238
- var _a, _b, _c;
253
+ var _a, _b, _c, _d, _e;
239
254
  let wire;
240
255
  if (event.type === 'start') {
241
256
  this.openSpans.set(event.id, event);
@@ -246,8 +261,9 @@ class ServiceDashboard {
246
261
  method: event.method,
247
262
  kind: event.kind,
248
263
  parentService: this.parentServiceOf(event),
264
+ args: (_a = event.args) !== null && _a !== void 0 ? _a : null,
249
265
  // Copy so the recent-events buffer keeps at-the-time values.
250
- stats: stats ? Object.assign({}, stats) : null,
266
+ stats: stats ? copyStats(stats) : null,
251
267
  };
252
268
  }
253
269
  else {
@@ -256,11 +272,12 @@ class ServiceDashboard {
256
272
  const stats = start ? this.applyEnd(start, event) : null;
257
273
  wire = {
258
274
  span: event,
259
- service: (_a = start === null || start === void 0 ? void 0 : start.service) !== null && _a !== void 0 ? _a : null,
260
- method: (_b = start === null || start === void 0 ? void 0 : start.method) !== null && _b !== void 0 ? _b : '?',
261
- kind: (_c = start === null || start === void 0 ? void 0 : start.kind) !== null && _c !== void 0 ? _c : 'call',
275
+ service: (_b = start === null || start === void 0 ? void 0 : start.service) !== null && _b !== void 0 ? _b : null,
276
+ method: (_c = start === null || start === void 0 ? void 0 : start.method) !== null && _c !== void 0 ? _c : '?',
277
+ kind: (_d = start === null || start === void 0 ? void 0 : start.kind) !== null && _d !== void 0 ? _d : 'call',
262
278
  parentService: start ? this.parentServiceOf(start) : null,
263
- stats: stats ? Object.assign({}, stats) : null,
279
+ args: (_e = start === null || start === void 0 ? void 0 : start.args) !== null && _e !== void 0 ? _e : null,
280
+ stats: stats ? copyStats(stats) : null,
264
281
  };
265
282
  }
266
283
  this.recent.push(wire);
@@ -297,8 +314,21 @@ class ServiceDashboard {
297
314
  stats.status = 'disposed';
298
315
  },
299
316
  call: () => {
317
+ var _a;
318
+ var _b, _c;
300
319
  stats.calls += 1;
301
320
  stats.totalCallMs += event.durationMs;
321
+ const method = ((_a = (_b = stats.methods)[_c = start.method]) !== null && _a !== void 0 ? _a : (_b[_c] = {
322
+ calls: 0,
323
+ errors: 0,
324
+ totalMs: 0,
325
+ lastMs: 0,
326
+ }));
327
+ method.calls += 1;
328
+ method.totalMs += event.durationMs;
329
+ method.lastMs = event.durationMs;
330
+ if (event.error !== null)
331
+ method.errors += 1;
302
332
  },
303
333
  };
304
334
  transitions[start.kind]();
@@ -325,8 +355,16 @@ function freshStats() {
325
355
  calls: 0,
326
356
  errors: 0,
327
357
  totalCallMs: 0,
358
+ methods: {},
328
359
  };
329
360
  }
361
+ /** Deep enough that the recent-events buffer keeps at-the-time values. */
362
+ function copyStats(stats) {
363
+ return Object.assign(Object.assign({}, stats), { methods: Object.fromEntries(Object.entries(stats.methods).map(([name, method]) => [
364
+ name,
365
+ Object.assign({}, method),
366
+ ])) });
367
+ }
330
368
  class BadRequestError extends Error {
331
369
  }
332
370
  const MAX_BODY_BYTES = 5 * 1024 * 1024;
@@ -1 +1 @@
1
- {"version":3,"file":"dashboardServer.js","sourceRoot":"","sources":["../src/dashboardServer.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAKmB;AAGnB,qEAAkE;AAClE,+CAAyD;AACzD,mDAAsD;AAiBtD,MAAM,qBAAqB,GAAG,KAAM,CAAC;AAErC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAa,gBAAgB;IAkB3B,YAAY,EAAE,gBAAgB,GAAG,GAAG,KAA8B,EAAE;QAjBpE,8DAA8D;QACrD,aAAQ,GAAG,IAAI,+CAAsB,EAAE,CAAC;QAEzC,UAAK,GAAgB,EAAE,CAAC;QACxB,UAAK,GAAgB,EAAE,CAAC;QACxB,aAAQ,GAAG,IAAI,GAAG,EAAwB,CAAC;QACnD,yEAAyE;QACjE,cAAS,GAAG,IAAI,GAAG,EAAqB,CAAC;QACzC,WAAM,GAAgB,EAAE,CAAC;QAEjC,6EAA6E;QACrE,oBAAe,GAAG,KAAK,CAAC;QAExB,YAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;QACpC,WAAM,GAAkB,IAAI,CAAC;QAC7B,cAAS,GAA0B,IAAI,CAAC;QAG9C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAqB;QAC1B,IAAI,CAAC,aAAa,CAAC,IAAA,yBAAW,EAAC,MAAM,CAAC,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,KAAkB;QAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,CACrB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CACpD,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAmB;QACxB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IACE,KAAK,CAAC,IAAI,KAAK,OAAO;gBACtB,KAAK,CAAC,OAAO,KAAK,IAAI;gBACtB,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EACjC,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACzC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;gBAC/C,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,QAAQ;QACN,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC3C,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,WAAW;QACpC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,wBAAY,EAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;YAChD,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;QAC/D,CAAC,EAAE,qBAAqB,CAAC,CAAC;QAC1B,iEAAiE;QACjE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAEvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;gBAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAiB,CAAC;gBAChD,MAAM,SAAS,GACb,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC3D,OAAO,CAAC,UAAU,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,oDAAoD;IAC9C,KAAK;;YACT,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACxB,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC1C,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;KAAA;IAEa,KAAK,CACjB,OAAwB,EACxB,QAAwB;;;YAExB,MAAM,IAAI,GAAG,MAAA,OAAO,CAAC,GAAG,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,QAAQ,KAAK,EAAE,CAAC;oBACd,KAAK,OAAO;wBACV,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE;4BACtB,cAAc,EAAE,0BAA0B;yBAC3C,CAAC,CAAC;wBACH,QAAQ,CAAC,GAAG,CAAC,IAAA,mCAAmB,GAAE,CAAC,CAAC;wBACpC,OAAO;oBACT,KAAK,aAAa;wBAChB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;wBACjC,OAAO;oBACT,KAAK,eAAe;wBAClB,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;wBAChE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBAC9C,OAAO;oBACT,KAAK,gBAAgB,CAAC,CAAC,CAAC;wBACtB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;wBAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,EAAE,CAAC;4BACjE,MAAM,IAAI,eAAe,CAAC,mCAAmC,CAAC,CAAC;wBACjE,CAAC;wBACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;wBAC1B,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;wBACxB,QAAQ,CAAC,GAAG,EAAE,CAAC;wBACf,OAAO;oBACT,CAAC;oBACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;wBACvB,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;wBACzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,EAAE,CAAC;4BACjC,MAAM,IAAI,eAAe,CAAC,yBAAyB,CAAC,CAAC;wBACvD,CAAC;wBACD,kEAAkE;wBAClE,8DAA8D;wBAC9D,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;4BAC1B,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;4BAC1D,QAAQ,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;4BAC1D,OAAO;wBACT,CAAC;wBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACzB,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;wBACxB,QAAQ,CAAC,GAAG,EAAE,CAAC;wBACf,OAAO;oBACT,CAAC;oBACD;wBACE,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;wBAC1D,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,UAAU,GAAG,KAAK,YAAY,eAAe,CAAC;gBACpD,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE;oBACzC,cAAc,EAAE,YAAY;iBAC7B,CAAC,CAAC;gBACH,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;KAAA;IAEO,iBAAiB,CAAC,QAAwB;QAChD,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE;YACtB,cAAc,EAAE,mBAAmB;YACnC,eAAe,EAAE,UAAU;YAC3B,UAAU,EAAE,YAAY;SACzB,CAAC,CAAC;QACH,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3B,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;OAGG;IACK,WAAW,CAAC,KAAgB;;QAClC,IAAI,IAAe,CAAC;QAEpB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,GAAG;gBACL,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;gBAC1C,6DAA6D;gBAC7D,KAAK,EAAE,KAAK,CAAC,CAAC,mBAAM,KAAK,EAAG,CAAC,CAAC,IAAI;aACnC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACzD,IAAI,GAAG;gBACL,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,mCAAI,IAAI;gBAC/B,MAAM,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,mCAAI,GAAG;gBAC5B,IAAI,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,MAAM;gBAC3B,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;gBACzD,KAAK,EAAE,KAAK,CAAC,CAAC,mBAAM,KAAK,EAAG,CAAC,CAAC,IAAI;aACnC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACpE,CAAC;QACD,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,CAAC;IAEO,UAAU,CAAC,KAAgB;QACjC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3E,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACxB,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,KAAK,CAAC,MAAM,GAAG,cAAc,CAAC;QAChC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,QAAQ,CACd,KAAgB,EAChB,KAAmD;QAEnD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3E,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAExB,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACzB,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;QACpB,CAAC;QACD,MAAM,WAAW,GAAiC;YAChD,UAAU,EAAE,GAAG,EAAE;gBACf,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;gBACxD,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;oBAAE,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC;YAC5D,CAAC;YACD,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;oBAAE,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC;YACtD,CAAC;YACD,IAAI,EAAE,GAAG,EAAE;gBACT,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;gBACjB,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,UAAU,CAAC;YACxC,CAAC;SACF,CAAC;QACF,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,yEAAyE;IACjE,eAAe,CAAC,KAAgB;;QACtC,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACzC,OAAO,MAAA,MAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,0CAAE,OAAO,mCAAI,IAAI,CAAC;IAC7D,CAAC;IAED,6EAA6E;IACrE,iBAAiB;QACvB,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,CAAC;CACF;AAhSD,4CAgSC;AAED,SAAS,UAAU;IACjB,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,WAAW,EAAE,CAAC;KACf,CAAC;AACJ,CAAC;AAED,MAAM,eAAgB,SAAQ,KAAK;CAAG;AAEtC,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAEvC,SAAS,YAAY,CAAC,OAAwB;IAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACnC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC;YACrB,IAAI,IAAI,GAAG,cAAc,EAAE,CAAC;gBAC1B,MAAM,CAAC,IAAI,eAAe,CAAC,wBAAwB,CAAC,CAAC,CAAC;gBACtD,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO;YACT,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACrB,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;YAAC,WAAM,CAAC;gBACP,MAAM,CAAC,IAAI,eAAe,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,KAAa,EAAE,IAAa;IAC9C,OAAO,UAAU,KAAK,WAAW,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"dashboardServer.js","sourceRoot":"","sources":["../src/dashboardServer.ts"],"names":[],"mappings":"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"}
package/dist/events.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Event and state types shared between the dashboard event listener, the
2
+ * Event and state types shared between the dashboard instrumentation, the
3
3
  * dashboard server, and the browser client (over the SSE wire).
4
4
  */
5
5
  /** Classifies what a span represents in the service lifecycle. */
@@ -20,6 +20,8 @@ export interface SpanStart {
20
20
  kind: SpanKind;
21
21
  /** Epoch milliseconds. */
22
22
  time: number;
23
+ /** Method arguments serialized to JSON, when capture is enabled. */
24
+ args?: string;
23
25
  }
24
26
  /** Emitted when a traced function finishes (or throws/rejects). */
25
27
  export interface SpanEnd {
@@ -31,9 +33,22 @@ export interface SpanEnd {
31
33
  durationMs: number;
32
34
  /** The error message when the traced function threw or rejected. */
33
35
  error: string | null;
36
+ /** Return / resolved value serialized to JSON, when capture is enabled. */
37
+ result?: string;
34
38
  }
35
39
  export type SpanEvent = SpanStart | SpanEnd;
36
40
  export type ServiceStatus = 'pending' | 'initializing' | 'ready' | 'error' | 'disposed';
41
+ /** Aggregated counters for a single method of a service. */
42
+ export interface MethodStats {
43
+ /** Number of completed call spans for this method. */
44
+ calls: number;
45
+ /** Number of those calls that ended with an error. */
46
+ errors: number;
47
+ /** Sum of completed call durations, for averaging. */
48
+ totalMs: number;
49
+ /** Duration of the most recently completed call. */
50
+ lastMs: number;
51
+ }
37
52
  /** Aggregated per-service counters maintained by the dashboard. */
38
53
  export interface ServiceStats {
39
54
  status: ServiceStatus;
@@ -45,6 +60,8 @@ export interface ServiceStats {
45
60
  errors: number;
46
61
  /** Sum of completed method-call durations, for averaging. */
47
62
  totalCallMs: number;
63
+ /** Per-method call breakdown, keyed by method name. */
64
+ methods: Record<string, MethodStats>;
48
65
  }
49
66
  export interface GraphNode {
50
67
  name: string;
@@ -67,6 +84,8 @@ export interface WireEvent {
67
84
  kind: SpanKind;
68
85
  /** Service of the parent span, when the span was started by another service. */
69
86
  parentService: string | null;
87
+ /** Serialized arguments; on end events resolved from the matching start. */
88
+ args: string | null;
70
89
  /** Updated stats for `service`, present when the event changed them. */
71
90
  stats: ServiceStats | null;
72
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,kEAAkE;AAClE,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,SAAS,GAAG,MAAM,CAAC;AAEzD,uDAAuD;AACvD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,2DAA2D;IAC3D,EAAE,EAAE,MAAM,CAAC;IACX,oEAAoE;IACpE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,kEAAkE;IAClE,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,mEAAmE;AACnE,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,KAAK,CAAC;IACZ,qDAAqD;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAE5C,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,cAAc,GACd,OAAO,GACP,OAAO,GACP,UAAU,CAAC;AAEf,mEAAmE;AACnE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,aAAa,CAAC;IACtB,8DAA8D;IAC9D,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,iDAAiD;AACjD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,2EAA2E;IAC3E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,gFAAgF;IAChF,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,wEAAwE;IACxE,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;CAC5B;AAED,oDAAoD;AACpD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACvC,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,kEAAkE;AAClE,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,SAAS,GAAG,MAAM,CAAA;AAExD,uDAAuD;AACvD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,CAAA;IACb,2DAA2D;IAC3D,EAAE,EAAE,MAAM,CAAA;IACV,oEAAoE;IACpE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAA;IACZ,8EAA8E;IAC9E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,kEAAkE;IAClE,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,QAAQ,CAAA;IACd,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,mEAAmE;AACnE,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,KAAK,CAAA;IACX,qDAAqD;IACrD,EAAE,EAAE,MAAM,CAAA;IACV,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,oEAAoE;IACpE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,CAAA;AAE3C,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,cAAc,GACd,OAAO,GACP,OAAO,GACP,UAAU,CAAA;AAEd,4DAA4D;AAC5D,MAAM,WAAW,WAAW;IAC1B,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAA;IACb,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAA;IACd,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAA;IACf,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAA;CACf;AAED,mEAAmE;AACnE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,aAAa,CAAA;IACrB,8DAA8D;IAC9D,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAA;IACd,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAA;IACnB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;CACrC;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,iDAAiD;AACjD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;CACX;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAA;IACf,2EAA2E;IAC3E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,QAAQ,CAAA;IACd,gFAAgF;IAChF,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,4EAA4E;IAC5E,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,wEAAwE;IACxE,KAAK,EAAE,YAAY,GAAG,IAAI,CAAA;CAC3B;AAED,oDAAoD;AACpD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACtC,MAAM,EAAE,SAAS,EAAE,CAAA;CACpB"}
package/dist/events.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * Event and state types shared between the dashboard event listener, the
3
+ * Event and state types shared between the dashboard instrumentation, the
4
4
  * dashboard server, and the browser client (over the SSE wire).
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export * from './events';
2
- export * from './dashboardEventListener';
2
+ export * from './dashboardInstrumentation';
3
3
  export * from './dashboardClient';
4
4
  export * from './dashboardServer';
5
5
  export * from './moduleGraph';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA"}
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./events"), exports);
18
- __exportStar(require("./dashboardEventListener"), exports);
18
+ __exportStar(require("./dashboardInstrumentation"), exports);
19
19
  __exportStar(require("./dashboardClient"), exports);
20
20
  __exportStar(require("./dashboardServer"), exports);
21
21
  __exportStar(require("./moduleGraph"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,2DAAyC;AACzC,oDAAkC;AAClC,oDAAkC;AAClC,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,6DAA0C;AAC1C,oDAAiC;AACjC,oDAAiC;AACjC,gDAA6B"}
@@ -1 +1 @@
1
- {"version":3,"file":"moduleGraph.d.ts","sourceRoot":"","sources":["../src/moduleGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,WAAW,CAmB9D"}
1
+ {"version":3,"file":"moduleGraph.d.ts","sourceRoot":"","sources":["../src/moduleGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEd,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE/C,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,KAAK,EAAE,SAAS,EAAE,CAAA;CACnB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,WAAW,CAmB9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"moduleGraph.js","sourceRoot":"","sources":["../src/moduleGraph.ts"],"names":[],"mappings":";;AAiBA,kCAmBC;AApCD,4CAI2B;AAQ3B;;;;GAIG;AACH,SAAgB,WAAW,CAAC,MAAqB;IAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC/C,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;KAC5B,CAAC,CAAC,CAAC;IAEJ,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACjD,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,UAA+B,EAAE,EAAE;QAC5D,MAAM,OAAO,GACX,UAAU,YAAY,yBAAkB;YACtC,CAAC,CAAC,UAAU,CAAC,MAAM;YACnB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACnB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC9B,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;YAC3B,EAAE,EAAE,MAAM,CAAC,IAAI;SAChB,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"moduleGraph.js","sourceRoot":"","sources":["../src/moduleGraph.ts"],"names":[],"mappings":";;AAiBA,kCAmBC;AApCD,4CAI0B;AAQ1B;;;;GAIG;AACH,SAAgB,WAAW,CAAC,MAAqB;IAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC/C,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;KAC5B,CAAC,CAAC,CAAA;IAEH,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACjD,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,UAA+B,EAAE,EAAE;QAC5D,MAAM,OAAO,GACX,UAAU,YAAY,yBAAkB;YACtC,CAAC,CAAC,UAAU,CAAC,MAAM;YACnB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;QAClB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC9B,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;YAC3B,EAAE,EAAE,MAAM,CAAC,IAAI;SAChB,CAAC,CAAC,CAAA;IACL,CAAC,CAAC,CACH,CAAA;IAED,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;AACzB,CAAC"}
package/package.json CHANGED
@@ -1,45 +1,46 @@
1
1
  {
2
2
  "name": "@composed-di/observability",
3
+ "version": "0.7.0-alpha",
3
4
  "private": false,
4
- "version": "0.5.0-alpha",
5
- "author": "Juan Herrera juanhr454@gmail.com",
6
- "type": "commonjs",
7
- "main": "./dist/index.js",
8
- "types": "./dist/index.d.ts",
9
- "exports": {
10
- ".": {
11
- "types": "./dist/index.d.ts",
12
- "require": "./dist/index.js",
13
- "default": "./dist/index.js"
14
- }
15
- },
16
- "bin": {
17
- "composed-di-dashboard": "./dist/cli.js"
18
- },
19
- "files": [
20
- "dist",
21
- "src"
22
- ],
23
- "sideEffects": false,
24
5
  "keywords": [
6
+ "dashboard",
25
7
  "dependency injection",
26
8
  "di",
27
9
  "observability",
28
- "dashboard",
29
10
  "tracing"
30
11
  ],
31
12
  "license": "MIT",
13
+ "author": "Juan Herrera juanhr454@gmail.com",
32
14
  "repository": {
33
15
  "type": "git",
34
16
  "url": "git+https://github.com/imherrera/composed-di.git",
35
17
  "directory": "packages/observability"
36
18
  },
37
- "dependencies": {
38
- "@composed-di/core": "0.5.0-alpha"
19
+ "bin": {
20
+ "composed-di-dashboard": "./dist/cli.js"
21
+ },
22
+ "files": [
23
+ "dist",
24
+ "src"
25
+ ],
26
+ "type": "commonjs",
27
+ "sideEffects": false,
28
+ "main": "./dist/index.js",
29
+ "types": "./dist/index.d.ts",
30
+ "exports": {
31
+ ".": {
32
+ "types": "./dist/index.d.ts",
33
+ "require": "./dist/index.js",
34
+ "default": "./dist/index.js"
35
+ }
39
36
  },
40
37
  "publishConfig": {
41
38
  "access": "public"
42
39
  },
40
+ "dependencies": {
41
+ "@composed-di/core": "^0.7.0-alpha",
42
+ "@composed-di/instrumentation-core": "^0.7.0-alpha"
43
+ },
43
44
  "scripts": {
44
45
  "build": "tsc --build",
45
46
  "clean": "tsc --build --clean"