@kronos-ts/messaging 0.6.0 → 0.7.0
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.
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/metrics.d.ts +56 -0
- package/dist/metrics.d.ts.map +1 -0
- package/dist/metrics.js +79 -0
- package/dist/metrics.js.map +1 -0
- package/package.json +2 -2
- package/src/index.ts +12 -0
- package/src/metrics.ts +131 -0
package/dist/index.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export { type QueryHandlerDefinition, queryHandler, } from "./query-handler.js";
|
|
|
10
10
|
export { type DispatchInterceptor, type HandlerInterceptor, } from "./interceptor.js";
|
|
11
11
|
export { type RoutingStrategy, metadataRoutingStrategy, payloadFieldRoutingStrategy, } from "./routing-strategy.js";
|
|
12
12
|
export { type HandlerEnhancerDefinition, type HandlerMetadata, multiHandlerEnhancerDefinition, } from "./handler-enhancer.js";
|
|
13
|
+
export { type MetricsRecorder, type Counter, type Histogram, type MetricAttributes, type InstrumentOptions, type MeteringOptions, noOpMetricsRecorder, meteringHandlerEnhancerDefinition, } from "./metrics.js";
|
|
13
14
|
export { type CorrelationDataProvider, CORRELATION_DATA_KEY, getActiveCorrelationData, applyCorrelationData, contributeCorrelationData, messageOriginProvider, simpleCorrelationDataProvider, correlationDataHandlerInterceptor, correlationDataDispatchInterceptor, } from "./correlation-data.js";
|
|
14
15
|
export { type CommandBus } from "./command-bus.js";
|
|
15
16
|
export { type QueryBus } from "./query-bus.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,YAAY,GAClB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,OAAO,EACP,KAAK,EACL,KAAK,GACN,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,yBAAyB,EAC9B,aAAa,EACb,IAAI,EACJ,MAAM,EACN,MAAM,GACP,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EACL,KAAK,EACL,KAAK,UAAU,EAEf,EAAE,IAAI,OAAO,EACb,eAAe,EACf,QAAQ,EACR,aAAa,EACb,OAAO,EACP,YAAY,EACZ,kBAAkB,EAClB,aAAa,GACd,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,KAAK,SAAS,EACd,QAAQ,EACR,WAAW,GACZ,MAAM,mBAAmB,CAAA;AAM1B,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,EAAE,EACF,OAAO,GACR,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,KAAK,wBAAwB,EAC7B,cAAc,GACf,MAAM,sBAAsB,CAAA;AAG7B,OAAO,EACL,KAAK,sBAAsB,EAC3B,YAAY,GACb,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EACL,KAAK,sBAAsB,EAC3B,YAAY,GACb,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,GACxB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EACL,KAAK,eAAe,EACpB,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACpB,8BAA8B,GAC/B,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,mBAAmB,EACnB,iCAAiC,GAClC,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,KAAK,uBAAuB,EAC5B,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,6BAA6B,EAC7B,iCAAiC,EACjC,kCAAkC,GACnC,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAG9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAG5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAA;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AAGxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAGlE,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,aAAa,EAClB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EACL,KAAK,kBAAkB,EACvB,aAAa,EACb,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,0BAA0B,CAAA;AAGjC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAGhD,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,QAAQ,EACb,oBAAoB,GACrB,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AAGxE,OAAO,EACL,KAAK,YAAY,EACjB,kBAAkB,GACnB,MAAM,oBAAoB,CAAA;AAG3B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAG1D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,KAAK,2BAA2B,EAChC,mBAAmB,EACnB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAA;AAGtC,OAAO,EACL,KAAK,OAAO,EACZ,YAAY,EACZ,OAAO,EACP,cAAc,EACd,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,MAAM,EACN,cAAc,GACf,MAAM,cAAc,CAAA;AAGrB,OAAO,EACL,KAAK,UAAU,EACf,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,WAAW,EACX,WAAW,EACX,uBAAuB,GACxB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EACL,QAAQ,EACR,gBAAgB,GACjB,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EACL,KAAK,kBAAkB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,2BAA2B,EAC3B,8BAA8B,EAC9B,kCAAkC,EAClC,eAAe,GAChB,MAAM,kBAAkB,CAAA;AAGzB,OAAO,EACL,KAAK,WAAW,EAChB,6BAA6B,EAC7B,wBAAwB,GACzB,MAAM,2BAA2B,CAAA;AAGlC,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAG5D,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,4BAA4B,GAC7B,MAAM,gCAAgC,CAAA;AAGvC,OAAO,EACL,+BAA+B,EAC/B,uBAAuB,EACvB,KAAK,oBAAoB,GAC1B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAA;AAG1E,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,EACrC,+BAA+B,GAChC,MAAM,kCAAkC,CAAA;AAGzC,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,oBAAoB,EACzB,6BAA6B,GAC9B,MAAM,gCAAgC,CAAA;AAGvC,OAAO,EACL,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,gBAAgB,EAChB,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,wBAAwB,CAAA;AAG/B,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,qBAAqB,EAC1B,mBAAmB,GACpB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,EACL,KAAK,oBAAoB,EACzB,2BAA2B,GAC5B,MAAM,6BAA6B,CAAA;AAGpC,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EACjC,KAAK,gBAAgB,EACrB,2BAA2B,GAC5B,MAAM,8BAA8B,CAAA;AAGrC,OAAO,EACL,KAAK,kBAAkB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,2BAA2B,CAAA;AAGlC,OAAO,EACL,KAAK,gBAAgB,EACrB,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,wBAAwB,CAAA;AAG/B,OAAO,EACL,KAAK,+BAA+B,EACpC,KAAK,aAAa,EAClB,mBAAmB,EACnB,aAAa,EACb,mBAAmB,GACpB,MAAM,eAAe,CAAA;AAGtB,OAAO,EACL,KAAK,cAAc,EACnB,cAAc,EACd,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,iBAAiB,CAAA;AAGxB,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,KAAK,sBAAsB,EAC3B,4BAA4B,GAC7B,MAAM,+BAA+B,CAAA;AAGtC,OAAO,EACL,KAAK,IAAI,EACT,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,eAAe,GAChB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACL,gCAAgC,GACjC,MAAM,+BAA+B,CAAA;AAGtC,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAG1E,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAC/B,wBAAwB,EACxB,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,8BAA8B,CAAA;AAGrC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -27,6 +27,8 @@ export {} from "./interceptor.js";
|
|
|
27
27
|
export { metadataRoutingStrategy, payloadFieldRoutingStrategy, } from "./routing-strategy.js";
|
|
28
28
|
// Handler enhancers
|
|
29
29
|
export { multiHandlerEnhancerDefinition, } from "./handler-enhancer.js";
|
|
30
|
+
// Metrics
|
|
31
|
+
export { noOpMetricsRecorder, meteringHandlerEnhancerDefinition, } from "./metrics.js";
|
|
30
32
|
// Correlation data
|
|
31
33
|
export { CORRELATION_DATA_KEY, getActiveCorrelationData, applyCorrelationData, contributeCorrelationData, messageOriginProvider, simpleCorrelationDataProvider, correlationDataHandlerInterceptor, correlationDataDispatchInterceptor, } from "./correlation-data.js";
|
|
32
34
|
// Bus interfaces
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { HandlerEnhancerDefinition } from "./handler-enhancer.js";
|
|
2
|
+
/**
|
|
3
|
+
* Attribute set attached to a metric measurement. Values are restricted to the
|
|
4
|
+
* primitives supported by common metrics backends.
|
|
5
|
+
*/
|
|
6
|
+
export type MetricAttributes = Record<string, string | number | boolean>;
|
|
7
|
+
/** Options for creating an instrument. */
|
|
8
|
+
export interface InstrumentOptions {
|
|
9
|
+
/** Human-readable description of what the instrument measures. */
|
|
10
|
+
description?: string;
|
|
11
|
+
/** Unit of measure, e.g. "ms" or "1". */
|
|
12
|
+
unit?: string;
|
|
13
|
+
}
|
|
14
|
+
/** A monotonically increasing counter. */
|
|
15
|
+
export interface Counter {
|
|
16
|
+
add(value: number, attributes?: MetricAttributes): void;
|
|
17
|
+
}
|
|
18
|
+
/** A distribution of recorded values (e.g. durations). */
|
|
19
|
+
export interface Histogram {
|
|
20
|
+
record(value: number, attributes?: MetricAttributes): void;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Backend-agnostic metrics seam, analogous to {@link import("./span-factory.js").SpanFactory}
|
|
24
|
+
* for tracing. Implementations (e.g. OpenTelemetry) create the actual
|
|
25
|
+
* instruments; the framework records measurements through this interface.
|
|
26
|
+
*
|
|
27
|
+
* Instruments are expected to be idempotent by name — calling `counter("x")`
|
|
28
|
+
* twice returns instruments that write to the same series.
|
|
29
|
+
*/
|
|
30
|
+
export interface MetricsRecorder {
|
|
31
|
+
counter(name: string, options?: InstrumentOptions): Counter;
|
|
32
|
+
histogram(name: string, options?: InstrumentOptions): Histogram;
|
|
33
|
+
}
|
|
34
|
+
/** A recorder that drops every measurement. Default when no metrics are configured. */
|
|
35
|
+
export declare function noOpMetricsRecorder(): MetricsRecorder;
|
|
36
|
+
/** Options for {@link meteringHandlerEnhancerDefinition}. */
|
|
37
|
+
export interface MeteringOptions {
|
|
38
|
+
/** Metric name prefix. Default: "kronos". */
|
|
39
|
+
namespace?: string;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Handler enhancer that records metrics for every handler invocation. Composes
|
|
43
|
+
* alongside other enhancers (e.g. tracing) and fires uniformly for command,
|
|
44
|
+
* query, and event handlers.
|
|
45
|
+
*
|
|
46
|
+
* Records, attributed by `message_type` / `message_name` / `handler_group`:
|
|
47
|
+
* - `<ns>.messages.handled` (counter) — also tagged `outcome` = success | failure
|
|
48
|
+
* - `<ns>.message.handler.duration` (histogram, ms) — handler execution time
|
|
49
|
+
* - `<ns>.event.processing.lag` (histogram, ms) — for event handlers, the delay
|
|
50
|
+
* between the event's authored timestamp and the moment it was handled
|
|
51
|
+
*
|
|
52
|
+
* Note: this measures handler *invocations*. Dispatch-side counts (e.g. commands
|
|
53
|
+
* with no handler, or ignored events) are not captured here.
|
|
54
|
+
*/
|
|
55
|
+
export declare function meteringHandlerEnhancerDefinition(recorder: MetricsRecorder, options?: MeteringOptions): HandlerEnhancerDefinition;
|
|
56
|
+
//# sourceMappingURL=metrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAmB,MAAM,uBAAuB,CAAA;AAGvF;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAA;AAExE,0CAA0C;AAC1C,MAAM,WAAW,iBAAiB;IAChC,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,0CAA0C;AAC1C,MAAM,WAAW,OAAO;IACtB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;CACxD;AAED,0DAA0D;AAC1D,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;CAC3D;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAA;IAC3D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAA;CAChE;AAED,uFAAuF;AACvF,wBAAgB,mBAAmB,IAAI,eAAe,CAOrD;AAED,6DAA6D;AAC7D,MAAM,WAAW,eAAe;IAC9B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAWD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,eAAe,EACzB,OAAO,GAAE,eAAoB,GAC5B,yBAAyB,CAgD3B"}
|
package/dist/metrics.js
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/** A recorder that drops every measurement. Default when no metrics are configured. */
|
|
2
|
+
export function noOpMetricsRecorder() {
|
|
3
|
+
const counter = { add() { } };
|
|
4
|
+
const histogram = { record() { } };
|
|
5
|
+
return {
|
|
6
|
+
counter() { return counter; },
|
|
7
|
+
histogram() { return histogram; },
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
function isMessage(value) {
|
|
11
|
+
return (typeof value === "object" &&
|
|
12
|
+
value !== null &&
|
|
13
|
+
"metadata" in value &&
|
|
14
|
+
"identifier" in value);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Handler enhancer that records metrics for every handler invocation. Composes
|
|
18
|
+
* alongside other enhancers (e.g. tracing) and fires uniformly for command,
|
|
19
|
+
* query, and event handlers.
|
|
20
|
+
*
|
|
21
|
+
* Records, attributed by `message_type` / `message_name` / `handler_group`:
|
|
22
|
+
* - `<ns>.messages.handled` (counter) — also tagged `outcome` = success | failure
|
|
23
|
+
* - `<ns>.message.handler.duration` (histogram, ms) — handler execution time
|
|
24
|
+
* - `<ns>.event.processing.lag` (histogram, ms) — for event handlers, the delay
|
|
25
|
+
* between the event's authored timestamp and the moment it was handled
|
|
26
|
+
*
|
|
27
|
+
* Note: this measures handler *invocations*. Dispatch-side counts (e.g. commands
|
|
28
|
+
* with no handler, or ignored events) are not captured here.
|
|
29
|
+
*/
|
|
30
|
+
export function meteringHandlerEnhancerDefinition(recorder, options = {}) {
|
|
31
|
+
const ns = options.namespace ?? "kronos";
|
|
32
|
+
const handled = recorder.counter(`${ns}.messages.handled`, {
|
|
33
|
+
description: "Count of message handler invocations",
|
|
34
|
+
unit: "1",
|
|
35
|
+
});
|
|
36
|
+
const duration = recorder.histogram(`${ns}.message.handler.duration`, {
|
|
37
|
+
description: "Message handler execution time",
|
|
38
|
+
unit: "ms",
|
|
39
|
+
});
|
|
40
|
+
const lag = recorder.histogram(`${ns}.event.processing.lag`, {
|
|
41
|
+
description: "Delay between an event's timestamp and when it was handled",
|
|
42
|
+
unit: "ms",
|
|
43
|
+
});
|
|
44
|
+
return {
|
|
45
|
+
wrapHandler(handler, metadata) {
|
|
46
|
+
const base = {
|
|
47
|
+
message_type: metadata.messageType,
|
|
48
|
+
message_name: metadata.messageName,
|
|
49
|
+
handler_group: metadata.handlerGroup,
|
|
50
|
+
};
|
|
51
|
+
const isEvent = metadata.messageType === "event";
|
|
52
|
+
return (async (...args) => {
|
|
53
|
+
const start = performance.now();
|
|
54
|
+
let outcome = "success";
|
|
55
|
+
try {
|
|
56
|
+
return await handler(...args);
|
|
57
|
+
}
|
|
58
|
+
catch (err) {
|
|
59
|
+
outcome = "failure";
|
|
60
|
+
throw err;
|
|
61
|
+
}
|
|
62
|
+
finally {
|
|
63
|
+
duration.record(performance.now() - start, base);
|
|
64
|
+
handled.add(1, { ...base, outcome });
|
|
65
|
+
if (isEvent) {
|
|
66
|
+
const message = args[0];
|
|
67
|
+
if (isMessage(message) && typeof message.timestamp === "number") {
|
|
68
|
+
lag.record(Math.max(0, Date.now() - message.timestamp), {
|
|
69
|
+
message_name: metadata.messageName,
|
|
70
|
+
handler_group: metadata.handlerGroup,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
},
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAwCA,uFAAuF;AACvF,MAAM,UAAU,mBAAmB;IACjC,MAAM,OAAO,GAAY,EAAE,GAAG,KAAI,CAAC,EAAE,CAAA;IACrC,MAAM,SAAS,GAAc,EAAE,MAAM,KAAI,CAAC,EAAE,CAAA;IAC5C,OAAO;QACL,OAAO,KAAK,OAAO,OAAO,CAAA,CAAC,CAAC;QAC5B,SAAS,KAAK,OAAO,SAAS,CAAA,CAAC,CAAC;KACjC,CAAA;AACH,CAAC;AAQD,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,UAAU,IAAI,KAAK;QACnB,YAAY,IAAI,KAAK,CACtB,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,iCAAiC,CAC/C,QAAyB,EACzB,UAA2B,EAAE;IAE7B,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,IAAI,QAAQ,CAAA;IACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,mBAAmB,EAAE;QACzD,WAAW,EAAE,sCAAsC;QACnD,IAAI,EAAE,GAAG;KACV,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,2BAA2B,EAAE;QACpE,WAAW,EAAE,gCAAgC;QAC7C,IAAI,EAAE,IAAI;KACX,CAAC,CAAA;IACF,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,uBAAuB,EAAE;QAC3D,WAAW,EAAE,4DAA4D;QACzE,IAAI,EAAE,IAAI;KACX,CAAC,CAAA;IAEF,OAAO;QACL,WAAW,CAAoC,OAAU,EAAE,QAAyB;YAClF,MAAM,IAAI,GAAqB;gBAC7B,YAAY,EAAE,QAAQ,CAAC,WAAW;gBAClC,YAAY,EAAE,QAAQ,CAAC,WAAW;gBAClC,aAAa,EAAE,QAAQ,CAAC,YAAY;aACrC,CAAA;YACD,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,KAAK,OAAO,CAAA;YAEhD,OAAO,CAAC,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBAC/B,IAAI,OAAO,GAAG,SAAS,CAAA;gBACvB,IAAI,CAAC;oBACH,OAAO,MAAM,OAAO,CAAC,GAAG,IAAI,CAAC,CAAA;gBAC/B,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,GAAG,SAAS,CAAA;oBACnB,MAAM,GAAG,CAAA;gBACX,CAAC;wBAAS,CAAC;oBACT,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,IAAI,CAAC,CAAA;oBAChD,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;oBACpC,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;wBACvB,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;4BAChE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE;gCACtD,YAAY,EAAE,QAAQ,CAAC,WAAW;gCAClC,aAAa,EAAE,QAAQ,CAAC,YAAY;6BACrC,CAAC,CAAA;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC,CAAiB,CAAA;QACpB,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kronos-ts/messaging",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Messaging primitives for Kronos — commands, events, handlers, and event processors.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
},
|
|
62
62
|
"dependencies": {
|
|
63
63
|
"@kronos-ts/common": "0.1.1",
|
|
64
|
-
"@kronos-ts/eventsourcing": "0.2.
|
|
64
|
+
"@kronos-ts/eventsourcing": "0.2.3",
|
|
65
65
|
"zod": "^4.3.6"
|
|
66
66
|
},
|
|
67
67
|
"devDependencies": {
|
package/src/index.ts
CHANGED
|
@@ -104,6 +104,18 @@ export {
|
|
|
104
104
|
multiHandlerEnhancerDefinition,
|
|
105
105
|
} from "./handler-enhancer.js"
|
|
106
106
|
|
|
107
|
+
// Metrics
|
|
108
|
+
export {
|
|
109
|
+
type MetricsRecorder,
|
|
110
|
+
type Counter,
|
|
111
|
+
type Histogram,
|
|
112
|
+
type MetricAttributes,
|
|
113
|
+
type InstrumentOptions,
|
|
114
|
+
type MeteringOptions,
|
|
115
|
+
noOpMetricsRecorder,
|
|
116
|
+
meteringHandlerEnhancerDefinition,
|
|
117
|
+
} from "./metrics.js"
|
|
118
|
+
|
|
107
119
|
// Correlation data
|
|
108
120
|
export {
|
|
109
121
|
type CorrelationDataProvider,
|
package/src/metrics.ts
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import type { HandlerEnhancerDefinition, HandlerMetadata } from "./handler-enhancer.js"
|
|
2
|
+
import type { Message } from "./message.js"
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Attribute set attached to a metric measurement. Values are restricted to the
|
|
6
|
+
* primitives supported by common metrics backends.
|
|
7
|
+
*/
|
|
8
|
+
export type MetricAttributes = Record<string, string | number | boolean>
|
|
9
|
+
|
|
10
|
+
/** Options for creating an instrument. */
|
|
11
|
+
export interface InstrumentOptions {
|
|
12
|
+
/** Human-readable description of what the instrument measures. */
|
|
13
|
+
description?: string
|
|
14
|
+
/** Unit of measure, e.g. "ms" or "1". */
|
|
15
|
+
unit?: string
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/** A monotonically increasing counter. */
|
|
19
|
+
export interface Counter {
|
|
20
|
+
add(value: number, attributes?: MetricAttributes): void
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/** A distribution of recorded values (e.g. durations). */
|
|
24
|
+
export interface Histogram {
|
|
25
|
+
record(value: number, attributes?: MetricAttributes): void
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Backend-agnostic metrics seam, analogous to {@link import("./span-factory.js").SpanFactory}
|
|
30
|
+
* for tracing. Implementations (e.g. OpenTelemetry) create the actual
|
|
31
|
+
* instruments; the framework records measurements through this interface.
|
|
32
|
+
*
|
|
33
|
+
* Instruments are expected to be idempotent by name — calling `counter("x")`
|
|
34
|
+
* twice returns instruments that write to the same series.
|
|
35
|
+
*/
|
|
36
|
+
export interface MetricsRecorder {
|
|
37
|
+
counter(name: string, options?: InstrumentOptions): Counter
|
|
38
|
+
histogram(name: string, options?: InstrumentOptions): Histogram
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/** A recorder that drops every measurement. Default when no metrics are configured. */
|
|
42
|
+
export function noOpMetricsRecorder(): MetricsRecorder {
|
|
43
|
+
const counter: Counter = { add() {} }
|
|
44
|
+
const histogram: Histogram = { record() {} }
|
|
45
|
+
return {
|
|
46
|
+
counter() { return counter },
|
|
47
|
+
histogram() { return histogram },
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/** Options for {@link meteringHandlerEnhancerDefinition}. */
|
|
52
|
+
export interface MeteringOptions {
|
|
53
|
+
/** Metric name prefix. Default: "kronos". */
|
|
54
|
+
namespace?: string
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
function isMessage(value: unknown): value is Message {
|
|
58
|
+
return (
|
|
59
|
+
typeof value === "object" &&
|
|
60
|
+
value !== null &&
|
|
61
|
+
"metadata" in value &&
|
|
62
|
+
"identifier" in value
|
|
63
|
+
)
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Handler enhancer that records metrics for every handler invocation. Composes
|
|
68
|
+
* alongside other enhancers (e.g. tracing) and fires uniformly for command,
|
|
69
|
+
* query, and event handlers.
|
|
70
|
+
*
|
|
71
|
+
* Records, attributed by `message_type` / `message_name` / `handler_group`:
|
|
72
|
+
* - `<ns>.messages.handled` (counter) — also tagged `outcome` = success | failure
|
|
73
|
+
* - `<ns>.message.handler.duration` (histogram, ms) — handler execution time
|
|
74
|
+
* - `<ns>.event.processing.lag` (histogram, ms) — for event handlers, the delay
|
|
75
|
+
* between the event's authored timestamp and the moment it was handled
|
|
76
|
+
*
|
|
77
|
+
* Note: this measures handler *invocations*. Dispatch-side counts (e.g. commands
|
|
78
|
+
* with no handler, or ignored events) are not captured here.
|
|
79
|
+
*/
|
|
80
|
+
export function meteringHandlerEnhancerDefinition(
|
|
81
|
+
recorder: MetricsRecorder,
|
|
82
|
+
options: MeteringOptions = {},
|
|
83
|
+
): HandlerEnhancerDefinition {
|
|
84
|
+
const ns = options.namespace ?? "kronos"
|
|
85
|
+
const handled = recorder.counter(`${ns}.messages.handled`, {
|
|
86
|
+
description: "Count of message handler invocations",
|
|
87
|
+
unit: "1",
|
|
88
|
+
})
|
|
89
|
+
const duration = recorder.histogram(`${ns}.message.handler.duration`, {
|
|
90
|
+
description: "Message handler execution time",
|
|
91
|
+
unit: "ms",
|
|
92
|
+
})
|
|
93
|
+
const lag = recorder.histogram(`${ns}.event.processing.lag`, {
|
|
94
|
+
description: "Delay between an event's timestamp and when it was handled",
|
|
95
|
+
unit: "ms",
|
|
96
|
+
})
|
|
97
|
+
|
|
98
|
+
return {
|
|
99
|
+
wrapHandler<T extends (...args: any[]) => any>(handler: T, metadata: HandlerMetadata): T {
|
|
100
|
+
const base: MetricAttributes = {
|
|
101
|
+
message_type: metadata.messageType,
|
|
102
|
+
message_name: metadata.messageName,
|
|
103
|
+
handler_group: metadata.handlerGroup,
|
|
104
|
+
}
|
|
105
|
+
const isEvent = metadata.messageType === "event"
|
|
106
|
+
|
|
107
|
+
return (async (...args: any[]) => {
|
|
108
|
+
const start = performance.now()
|
|
109
|
+
let outcome = "success"
|
|
110
|
+
try {
|
|
111
|
+
return await handler(...args)
|
|
112
|
+
} catch (err) {
|
|
113
|
+
outcome = "failure"
|
|
114
|
+
throw err
|
|
115
|
+
} finally {
|
|
116
|
+
duration.record(performance.now() - start, base)
|
|
117
|
+
handled.add(1, { ...base, outcome })
|
|
118
|
+
if (isEvent) {
|
|
119
|
+
const message = args[0]
|
|
120
|
+
if (isMessage(message) && typeof message.timestamp === "number") {
|
|
121
|
+
lag.record(Math.max(0, Date.now() - message.timestamp), {
|
|
122
|
+
message_name: metadata.messageName,
|
|
123
|
+
handler_group: metadata.handlerGroup,
|
|
124
|
+
})
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}) as unknown as T
|
|
129
|
+
},
|
|
130
|
+
}
|
|
131
|
+
}
|