@composed-di/observability 0.5.0-alpha → 0.6.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 +19 -11
  3. package/dist/dashboardClient.d.ts.map +1 -1
  4. package/dist/dashboardClient.js +30 -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 +42 -0
  15. package/dist/dashboardInstrumentation.d.ts.map +1 -0
  16. package/dist/dashboardInstrumentation.js +116 -0
  17. package/dist/dashboardInstrumentation.js.map +1 -0
  18. package/dist/dashboardServer.d.ts +14 -8
  19. package/dist/dashboardServer.d.ts.map +1 -1
  20. package/dist/dashboardServer.js +54 -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 +96 -83
  34. package/src/dashboardHtml.ts +620 -100
  35. package/src/dashboardInstrumentation.ts +151 -0
  36. package/src/dashboardServer.ts +185 -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,42 @@
1
+ import type { DisposeContext, EventSpan, InitializeContext, MethodCallContext, ServiceInstrumentation } from '@composed-di/instrumentation-core';
2
+ import { SpanEvent } from './events';
3
+ export interface DashboardInstrumentationOptions {
4
+ /** Longest serialized value kept; longer ones are truncated. Default 200. */
5
+ maxValueLength?: number;
6
+ }
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()` delivers them — capture and redaction policy live in the
20
+ * InstrumentOptions, not here. Pass `captureArguments: true` and
21
+ * `captureResults: true` there to see values in the dashboard.
22
+ */
23
+ export declare class DashboardInstrumentation implements ServiceInstrumentation {
24
+ private readonly context;
25
+ private readonly listeners;
26
+ private nextId;
27
+ private readonly maxValueLength;
28
+ constructor({ maxValueLength }?: DashboardInstrumentationOptions);
29
+ /**
30
+ * Subscribes to span events.
31
+ *
32
+ * @returns A function that removes the subscription.
33
+ */
34
+ subscribe(listener: (event: SpanEvent) => void): () => void;
35
+ onInitialize({ key }: InitializeContext): EventSpan;
36
+ onDispose({ key }: DisposeContext): EventSpan;
37
+ onMethodCall({ key, functionName, args }: MethodCallContext): EventSpan;
38
+ private startSpan;
39
+ private serialize;
40
+ private emit;
41
+ }
42
+ //# sourceMappingURL=dashboardInstrumentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboardInstrumentation.d.ts","sourceRoot":"","sources":["../src/dashboardInstrumentation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACvB,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;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,wBAAyB,YAAW,sBAAsB;IACrE,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;IAI1E;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,GAAG,MAAM,IAAI;IAK3D,YAAY,CAAC,EAAE,GAAG,EAAE,EAAE,iBAAiB,GAAG,SAAS;IAInD,SAAS,CAAC,EAAE,GAAG,EAAE,EAAE,cAAc,GAAG,SAAS;IAI7C,YAAY,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,iBAAiB,GAAG,SAAS;IAWvE,OAAO,CAAC,SAAS;IAuDjB,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,IAAI;CAGb"}
@@ -0,0 +1,116 @@
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
+ /**
7
+ * A ServiceInstrumentation that turns service events into structured
8
+ * start/end span events for the realtime dashboard.
9
+ *
10
+ * - Uses AsyncLocalStorage to link spans to the span that was active when
11
+ * they started, which lets the dashboard draw cross-service call edges
12
+ * (e.g. UserService.getUser -> Database.query). The observed operation
13
+ * is invoked through the span's `run` wrapper, so the context is scoped
14
+ * to the operation and its async continuations.
15
+ * - Emits events synchronously to subscribers; it never buffers.
16
+ *
17
+ * Arguments and results are serialized onto spans exactly when
18
+ * `instrument()` delivers them — capture and redaction policy live in the
19
+ * InstrumentOptions, not here. Pass `captureArguments: true` and
20
+ * `captureResults: true` there to see values in the dashboard.
21
+ */
22
+ class DashboardInstrumentation {
23
+ constructor({ maxValueLength = 200 } = {}) {
24
+ this.context = new node_async_hooks_1.AsyncLocalStorage();
25
+ this.listeners = new Set();
26
+ this.nextId = 1;
27
+ this.maxValueLength = maxValueLength;
28
+ }
29
+ /**
30
+ * Subscribes to span events.
31
+ *
32
+ * @returns A function that removes the subscription.
33
+ */
34
+ subscribe(listener) {
35
+ this.listeners.add(listener);
36
+ return () => this.listeners.delete(listener);
37
+ }
38
+ onInitialize({ key }) {
39
+ return this.startSpan(key.name, 'initialize', 'initialize');
40
+ }
41
+ onDispose({ key }) {
42
+ return this.startSpan(key.name, 'dispose', 'dispose');
43
+ }
44
+ onMethodCall({ key, functionName, args }) {
45
+ // Args are present exactly when argument capture is enabled in the
46
+ // InstrumentOptions; they arrive already redacted.
47
+ return this.startSpan(key.name, functionName, 'call', args ? this.serialize(args) : undefined);
48
+ }
49
+ startSpan(service, method, kind, args) {
50
+ var _a;
51
+ const id = this.nextId++;
52
+ const parent = this.context.getStore();
53
+ this.emit({
54
+ type: 'start',
55
+ id,
56
+ parentId: (_a = parent === null || parent === void 0 ? void 0 : parent.id) !== null && _a !== void 0 ? _a : null,
57
+ name: `${service}.${method}`,
58
+ service,
59
+ method,
60
+ kind,
61
+ time: Date.now(),
62
+ args,
63
+ });
64
+ const startedAt = node_perf_hooks_1.performance.now();
65
+ let ended = false;
66
+ const end = (error, result) => {
67
+ if (ended)
68
+ return;
69
+ ended = true;
70
+ this.emit({
71
+ type: 'end',
72
+ id,
73
+ time: Date.now(),
74
+ durationMs: node_perf_hooks_1.performance.now() - startedAt,
75
+ error,
76
+ result,
77
+ });
78
+ };
79
+ return {
80
+ // Running the operation inside this span's context makes it the
81
+ // parent of any spans started within.
82
+ run: (fn) => this.context.run({ id }, fn),
83
+ end: (outcome) => {
84
+ if (outcome.type === 'failure') {
85
+ end(errorMessage(outcome.error));
86
+ }
87
+ else {
88
+ // A value is present exactly when result capture is enabled in
89
+ // the InstrumentOptions; it arrives already redacted.
90
+ end(null, 'value' in outcome ? this.serialize(outcome.value) : undefined);
91
+ }
92
+ },
93
+ };
94
+ }
95
+ serialize(value) {
96
+ var _a;
97
+ let text;
98
+ try {
99
+ text = (_a = JSON.stringify(value)) !== null && _a !== void 0 ? _a : String(value);
100
+ }
101
+ catch (_b) {
102
+ text = '[unserializable]';
103
+ }
104
+ return text.length > this.maxValueLength
105
+ ? text.slice(0, this.maxValueLength) + '…'
106
+ : text;
107
+ }
108
+ emit(event) {
109
+ this.listeners.forEach((listener) => listener(event));
110
+ }
111
+ }
112
+ exports.DashboardInstrumentation = DashboardInstrumentation;
113
+ function errorMessage(error) {
114
+ return error instanceof Error ? error.message : String(error);
115
+ }
116
+ //# 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,19 @@ 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
+ * instrument(factories, {
38
+ * instrumentation: client.instrumentation,
39
+ * captureArguments: true,
40
+ * captureResults: true,
41
+ * }),
42
+ * );
37
43
  * client.attach(module);
38
44
  * ```
39
45
  */
40
46
  export declare class ServiceDashboard {
41
- /** Pass this as the second argument to ServiceModule.from. */
42
- readonly listener: DashboardEventListener;
47
+ /** Pass this to `instrument()` when composing the module. */
48
+ readonly instrumentation: DashboardInstrumentation;
43
49
  private nodes;
44
50
  private edges;
45
51
  private services;
@@ -52,10 +58,10 @@ export declare class ServiceDashboard {
52
58
  private clients;
53
59
  private server;
54
60
  private heartbeat;
55
- constructor({ recentEventLimit }?: ServiceDashboardOptions);
61
+ constructor({ recentEventLimit, ...instrumentationOptions }?: ServiceDashboardOptions);
56
62
  /**
57
63
  * 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.
64
+ * this with the module that was created with this dashboard's instrumentation.
59
65
  */
60
66
  attach(module: ServiceModule): this;
61
67
  /**
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBAAa,gBAAgB;IAC3B,6DAA6D;IAC7D,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,19 @@ 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
+ * instrument(factories, {
58
+ * instrumentation: client.instrumentation,
59
+ * captureArguments: true,
60
+ * captureResults: true,
61
+ * }),
62
+ * );
46
63
  * client.attach(module);
47
64
  * ```
48
65
  */
49
66
  class ServiceDashboard {
50
- constructor({ recentEventLimit = 200 } = {}) {
51
- /** Pass this as the second argument to ServiceModule.from. */
52
- this.listener = new dashboardEventListener_1.DashboardEventListener();
67
+ constructor(_a = {}) {
68
+ var { recentEventLimit = 200 } = _a, instrumentationOptions = __rest(_a, ["recentEventLimit"]);
53
69
  this.nodes = [];
54
70
  this.edges = [];
55
71
  this.services = new Map();
@@ -61,12 +77,13 @@ class ServiceDashboard {
61
77
  this.clients = new Set();
62
78
  this.server = null;
63
79
  this.heartbeat = null;
80
+ this.instrumentation = new dashboardInstrumentation_1.DashboardInstrumentation(instrumentationOptions);
64
81
  this.recentEventLimit = recentEventLimit;
65
- this.listener.subscribe((event) => this.onSpanEvent(event));
82
+ this.instrumentation.subscribe((event) => this.onSpanEvent(event));
66
83
  }
67
84
  /**
68
85
  * 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.
86
+ * this with the module that was created with this dashboard's instrumentation.
70
87
  */
71
88
  attach(module) {
72
89
  this.registerGraph((0, moduleGraph_1.moduleGraph)(module));
@@ -235,7 +252,7 @@ class ServiceDashboard {
235
252
  * broadcasts the enriched event to connected clients.
236
253
  */
237
254
  onSpanEvent(event) {
238
- var _a, _b, _c;
255
+ var _a, _b, _c, _d, _e;
239
256
  let wire;
240
257
  if (event.type === 'start') {
241
258
  this.openSpans.set(event.id, event);
@@ -246,8 +263,9 @@ class ServiceDashboard {
246
263
  method: event.method,
247
264
  kind: event.kind,
248
265
  parentService: this.parentServiceOf(event),
266
+ args: (_a = event.args) !== null && _a !== void 0 ? _a : null,
249
267
  // Copy so the recent-events buffer keeps at-the-time values.
250
- stats: stats ? Object.assign({}, stats) : null,
268
+ stats: stats ? copyStats(stats) : null,
251
269
  };
252
270
  }
253
271
  else {
@@ -256,11 +274,12 @@ class ServiceDashboard {
256
274
  const stats = start ? this.applyEnd(start, event) : null;
257
275
  wire = {
258
276
  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',
277
+ service: (_b = start === null || start === void 0 ? void 0 : start.service) !== null && _b !== void 0 ? _b : null,
278
+ method: (_c = start === null || start === void 0 ? void 0 : start.method) !== null && _c !== void 0 ? _c : '?',
279
+ kind: (_d = start === null || start === void 0 ? void 0 : start.kind) !== null && _d !== void 0 ? _d : 'call',
262
280
  parentService: start ? this.parentServiceOf(start) : null,
263
- stats: stats ? Object.assign({}, stats) : null,
281
+ args: (_e = start === null || start === void 0 ? void 0 : start.args) !== null && _e !== void 0 ? _e : null,
282
+ stats: stats ? copyStats(stats) : null,
264
283
  };
265
284
  }
266
285
  this.recent.push(wire);
@@ -297,8 +316,21 @@ class ServiceDashboard {
297
316
  stats.status = 'disposed';
298
317
  },
299
318
  call: () => {
319
+ var _a;
320
+ var _b, _c;
300
321
  stats.calls += 1;
301
322
  stats.totalCallMs += event.durationMs;
323
+ const method = ((_a = (_b = stats.methods)[_c = start.method]) !== null && _a !== void 0 ? _a : (_b[_c] = {
324
+ calls: 0,
325
+ errors: 0,
326
+ totalMs: 0,
327
+ lastMs: 0,
328
+ }));
329
+ method.calls += 1;
330
+ method.totalMs += event.durationMs;
331
+ method.lastMs = event.durationMs;
332
+ if (event.error !== null)
333
+ method.errors += 1;
302
334
  },
303
335
  };
304
336
  transitions[start.kind]();
@@ -325,8 +357,16 @@ function freshStats() {
325
357
  calls: 0,
326
358
  errors: 0,
327
359
  totalCallMs: 0,
360
+ methods: {},
328
361
  };
329
362
  }
363
+ /** Deep enough that the recent-events buffer keeps at-the-time values. */
364
+ function copyStats(stats) {
365
+ return Object.assign(Object.assign({}, stats), { methods: Object.fromEntries(Object.entries(stats.methods).map(([name, method]) => [
366
+ name,
367
+ Object.assign({}, method),
368
+ ])) });
369
+ }
330
370
  class BadRequestError extends Error {
331
371
  }
332
372
  const MAX_BODY_BYTES = 5 * 1024 * 1024;
@@ -1 +1 @@
1
- {"version":3,"file":"dashboardServer.js","sourceRoot":"","sources":["../src/dashboardServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashboardServer.js","sourceRoot":"","sources":["../src/dashboardServer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAKkB;AAGlB,yEAGmC;AACnC,+CAAwD;AACxD,mDAAqD;AAiBrD,MAAM,qBAAqB,GAAG,KAAM,CAAA;AAEpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAa,gBAAgB;IAkB3B,YAAY,KAGiB,EAAE;YAHnB,EACV,gBAAgB,GAAG,GAAG,OAEO,EAD1B,sBAAsB,cAFf,oBAGX,CAD0B;QAhBnB,UAAK,GAAgB,EAAE,CAAA;QACvB,UAAK,GAAgB,EAAE,CAAA;QACvB,aAAQ,GAAG,IAAI,GAAG,EAAwB,CAAA;QAClD,yEAAyE;QACjE,cAAS,GAAG,IAAI,GAAG,EAAqB,CAAA;QACxC,WAAM,GAAgB,EAAE,CAAA;QAEhC,6EAA6E;QACrE,oBAAe,GAAG,KAAK,CAAA;QAEvB,YAAO,GAAG,IAAI,GAAG,EAAkB,CAAA;QACnC,WAAM,GAAkB,IAAI,CAAA;QAC5B,cAAS,GAA0B,IAAI,CAAA;QAM7C,IAAI,CAAC,eAAe,GAAG,IAAI,mDAAwB,CAAC,sBAAsB,CAAC,CAAA;QAC3E,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;IACpE,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAqB;QAC1B,IAAI,CAAC,aAAa,CAAC,IAAA,yBAAW,EAAC,MAAM,CAAC,CAAC,CAAA;QACvC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,KAAkB;QAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAA;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;QACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAA;QAC5E,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;QACtB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC,iBAAiB,EAAE,CAAA;IAC1B,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,CAAA;gBACxC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,CAAA;gBAC9C,IAAI,CAAC,iBAAiB,EAAE,CAAA;YAC1B,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACzB,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,CAAA;IACH,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,CAAA;QAC1D,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,wBAAY,EAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;YAChD,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QACpC,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,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,CAAA;QAC9D,CAAC,EAAE,qBAAqB,CAAC,CAAA;QACzB,iEAAiE;QACjE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;QAEtB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAC5B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;gBAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAiB,CAAA;gBAC/C,MAAM,SAAS,GACb,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC1D,OAAO,CAAC,UAAU,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;YAChD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,oDAAoD;IAC9C,KAAK;;YACT,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;YACvB,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAA;YAC9C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;YACpB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;YAClB,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,CAAA;gBAC9D,CAAC,CAAC,CAAA;YACJ,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,CAAA;YACvC,MAAM,KAAK,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE,CAAA;YACzC,IAAI,CAAC;gBACH,QAAQ,KAAK,EAAE,CAAC;oBACd,KAAK,OAAO;wBACV,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE;4BACtB,cAAc,EAAE,0BAA0B;yBAC3C,CAAC,CAAA;wBACF,QAAQ,CAAC,GAAG,CAAC,IAAA,mCAAmB,GAAE,CAAC,CAAA;wBACnC,OAAM;oBACR,KAAK,aAAa;wBAChB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAA;wBAChC,OAAM;oBACR,KAAK,eAAe;wBAClB,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAA;wBAC/D,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;wBAC7C,OAAM;oBACR,KAAK,gBAAgB,CAAC,CAAC,CAAC;wBACtB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAA;wBACzC,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,CAAA;wBAChE,CAAC;wBACD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;wBACzB,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;wBACvB,QAAQ,CAAC,GAAG,EAAE,CAAA;wBACd,OAAM;oBACR,CAAC;oBACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;wBACvB,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAA;wBACxC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,EAAE,CAAC;4BACjC,MAAM,IAAI,eAAe,CAAC,yBAAyB,CAAC,CAAA;wBACtD,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,CAAA;4BACzD,QAAQ,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAA;4BACzD,OAAM;wBACR,CAAC;wBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;wBACxB,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;wBACvB,QAAQ,CAAC,GAAG,EAAE,CAAA;wBACd,OAAM;oBACR,CAAC;oBACD;wBACE,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAA;wBACzD,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;gBAC7B,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,UAAU,GAAG,KAAK,YAAY,eAAe,CAAA;gBACnD,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE;oBACzC,cAAc,EAAE,YAAY;iBAC7B,CAAC,CAAA;gBACF,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAA;YAC7D,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,CAAA;QACF,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;QACvD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC1B,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED;;;OAGG;IACK,WAAW,CAAC,KAAgB;;QAClC,IAAI,IAAe,CAAA;QAEnB,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YACnC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;YACpC,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,IAAI,EAAE,MAAA,KAAK,CAAC,IAAI,mCAAI,IAAI;gBACxB,6DAA6D;gBAC7D,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;aACvC,CAAA;QACH,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC1C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YACxD,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,IAAI,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,mCAAI,IAAI;gBACzB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;aACvC,CAAA;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACtB,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,CAAA;QACnE,CAAC;QACD,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;IACzD,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,CAAA;QAC1E,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAA;QACvB,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,KAAK,CAAC,MAAM,GAAG,cAAc,CAAA;QAC/B,CAAC;QACD,OAAO,KAAK,CAAA;IACd,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,CAAA;QAC1E,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAA;QAEvB,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACzB,KAAK,CAAC,MAAM,IAAI,CAAC,CAAA;QACnB,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,CAAA;gBACvD,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;oBAAE,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAA;YAC3D,CAAC;YACD,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;oBAAE,KAAK,CAAC,MAAM,GAAG,UAAU,CAAA;YACrD,CAAC;YACD,IAAI,EAAE,GAAG,EAAE;;;gBACT,KAAK,CAAC,KAAK,IAAI,CAAC,CAAA;gBAChB,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,UAAU,CAAA;gBACrC,MAAM,MAAM,GAAG,aAAC,KAAK,CAAC,OAAO,OAAC,KAAK,CAAC,MAAM,8CAAM;oBAC9C,KAAK,EAAE,CAAC;oBACR,MAAM,EAAE,CAAC;oBACT,OAAO,EAAE,CAAC;oBACV,MAAM,EAAE,CAAC;iBACV,EAAC,CAAA;gBACF,MAAM,CAAC,KAAK,IAAI,CAAC,CAAA;gBACjB,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC,UAAU,CAAA;gBAClC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,UAAU,CAAA;gBAChC,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;oBAAE,MAAM,CAAC,MAAM,IAAI,CAAC,CAAA;YAC9C,CAAC;SACF,CAAA;QACD,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAA;QACzB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,yEAAyE;IACjE,eAAe,CAAC,KAAgB;;QACtC,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;QACxC,OAAO,MAAA,MAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,0CAAE,OAAO,mCAAI,IAAI,CAAA;IAC5D,CAAC;IAED,6EAA6E;IACrE,iBAAiB;QACvB,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;QACvD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAA;IACzD,CAAC;CACF;AA9SD,4CA8SC;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;QACd,OAAO,EAAE,EAAE;KACZ,CAAA;AACH,CAAC;AAED,0EAA0E;AAC1E,SAAS,SAAS,CAAC,KAAmB;IACpC,uCACK,KAAK,KACR,OAAO,EAAE,MAAM,CAAC,WAAW,CACzB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;YACpD,IAAI;8BACC,MAAM;SACZ,CAAC,CACH,IACF;AACH,CAAC;AAED,MAAM,eAAgB,SAAQ,KAAK;CAAG;AAEtC,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AAEtC,SAAS,YAAY,CAAC,OAAwB;IAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACnC,IAAI,IAAI,KAAK,CAAC,MAAM,CAAA;YACpB,IAAI,IAAI,GAAG,cAAc,EAAE,CAAC;gBAC1B,MAAM,CAAC,IAAI,eAAe,CAAC,wBAAwB,CAAC,CAAC,CAAA;gBACrD,OAAO,CAAC,OAAO,EAAE,CAAA;gBACjB,OAAM;YACR,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;QACF,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,CAAA;YAC7D,CAAC;YAAC,WAAM,CAAC;gBACP,MAAM,CAAC,IAAI,eAAe,CAAC,mBAAmB,CAAC,CAAC,CAAA;YAClD,CAAC;QACH,CAAC,CAAC,CAAA;QACF,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC7B,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAa,EAAE,IAAa;IAC9C,OAAO,UAAU,KAAK,WAAW,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAA;AAC7D,CAAC"}
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.6.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.6.0-alpha",
42
+ "@composed-di/instrumentation-core": "^0.6.0-alpha"
43
+ },
43
44
  "scripts": {
44
45
  "build": "tsc --build",
45
46
  "clean": "tsc --build --clean"