@flowcore/data-pump 0.19.1 → 0.20.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/CHANGELOG.md +7 -0
- package/esm/data-pump/data-pump.d.ts +4 -0
- package/esm/data-pump/data-pump.d.ts.map +1 -1
- package/esm/data-pump/data-pump.js +2 -0
- package/esm/data-pump/pulse.d.ts +10 -0
- package/esm/data-pump/pulse.d.ts.map +1 -1
- package/esm/data-pump/pulse.js +28 -1
- package/package.json +1 -1
- package/script/data-pump/data-pump.d.ts +4 -0
- package/script/data-pump/data-pump.d.ts.map +1 -1
- package/script/data-pump/data-pump.js +2 -0
- package/script/data-pump/pulse.d.ts +10 -0
- package/script/data-pump/pulse.d.ts.map +1 -1
- package/script/data-pump/pulse.js +28 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.20.0](https://github.com/flowcore-io/data-pump/compare/v0.19.1...v0.20.0) (2026-04-08)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* configurable log levels for pulse success and failure ([#68](https://github.com/flowcore-io/data-pump/issues/68)) ([71fe82a](https://github.com/flowcore-io/data-pump/commit/71fe82a0a9976b018fd71d5fd54b98cf9b6d5017))
|
|
9
|
+
|
|
3
10
|
## [0.19.1](https://github.com/flowcore-io/data-pump/compare/v0.19.0...v0.19.1) (2026-03-31)
|
|
4
11
|
|
|
5
12
|
|
|
@@ -36,6 +36,10 @@ export interface FlowcoreDataPumpOptions {
|
|
|
36
36
|
url: string;
|
|
37
37
|
intervalMs?: number;
|
|
38
38
|
pathwayId: string;
|
|
39
|
+
/** Log level for successful pulses. Defaults to 'debug'. */
|
|
40
|
+
successLogLevel?: "debug" | "info" | "warn" | "error";
|
|
41
|
+
/** Log level for pulse failures. Defaults to 'warn'. */
|
|
42
|
+
failureLogLevel?: "debug" | "info" | "warn" | "error";
|
|
39
43
|
};
|
|
40
44
|
}
|
|
41
45
|
export declare class FlowcoreDataPump {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-pump.d.ts","sourceRoot":"","sources":["../../src/data-pump/data-pump.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAA;AAGnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAGrD,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,KAAK,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,yBAAyB,EACzB,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACf,MAAM,YAAY,CAAA;AAEnB,UAAU,mCAAmC;IAC3C,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,UAAU,wCAAwC;IAChD,IAAI,EAAE,WAAW,CAAA;CAClB;AAED,UAAU,qCAAqC;IAC7C,IAAI,EAAE,QAAQ,CAAA;IACd;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,KAAK,+BAA+B,GAChC,mCAAmC,GACnC,wCAAwC,GACxC,qCAAqC,CAAA;AAEzC,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,oBAAoB,CAAA;IAC1B,UAAU,EAAE,0BAA0B,CAAA;IACtC,YAAY,EAAE,4BAA4B,CAAA;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,SAAS,CAAC,EAAE,yBAAyB,CAAA;IACrC,QAAQ,CAAC,EAAE,+BAA+B,CAAA;IAC1C,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,KAAK,CAAC,EAAE;QACN,GAAG,EAAE,MAAM,CAAA;QACX,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,SAAS,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"data-pump.d.ts","sourceRoot":"","sources":["../../src/data-pump/data-pump.ts"],"names":[],"mappings":"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"}
|
|
@@ -215,6 +215,8 @@ export class FlowcoreDataPump {
|
|
|
215
215
|
intervalMs: options.pulse.intervalMs,
|
|
216
216
|
auth: options.auth,
|
|
217
217
|
logger: options.logger,
|
|
218
|
+
successLogLevel: options.pulse.successLogLevel,
|
|
219
|
+
failureLogLevel: options.pulse.failureLogLevel,
|
|
218
220
|
}, () => {
|
|
219
221
|
const snapshot = pump.getSnapshot();
|
|
220
222
|
if (snapshot)
|
package/esm/data-pump/pulse.d.ts
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
import type { FlowcoreDataPumpAuth, FlowcoreLogger } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Log level for pulse emitter events. Corresponds to FlowcoreLogger methods.
|
|
4
|
+
*/
|
|
5
|
+
export type PulseLogLevel = "debug" | "info" | "warn" | "error";
|
|
2
6
|
export interface PulseEmitterOptions {
|
|
3
7
|
url: string;
|
|
4
8
|
intervalMs?: number;
|
|
5
9
|
auth: FlowcoreDataPumpAuth;
|
|
6
10
|
logger?: FlowcoreLogger;
|
|
11
|
+
/** Log level for successful pulses. Defaults to 'debug'. */
|
|
12
|
+
successLogLevel?: PulseLogLevel;
|
|
13
|
+
/** Log level for pulse failures. Defaults to 'warn'. */
|
|
14
|
+
failureLogLevel?: PulseLogLevel;
|
|
7
15
|
}
|
|
8
16
|
export interface PulseSnapshot {
|
|
9
17
|
pathwayId: string;
|
|
@@ -26,6 +34,8 @@ export declare class PulseEmitter {
|
|
|
26
34
|
private startTimeout;
|
|
27
35
|
private readonly intervalMs;
|
|
28
36
|
private readonly logger?;
|
|
37
|
+
private readonly successLogLevel;
|
|
38
|
+
private readonly failureLogLevel;
|
|
29
39
|
constructor(options: PulseEmitterOptions, getSnapshot: () => PulseSnapshot | null);
|
|
30
40
|
start(): void;
|
|
31
41
|
stop(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pulse.d.ts","sourceRoot":"","sources":["../../src/data-pump/pulse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAGtE,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,oBAAoB,CAAA;IAC1B,MAAM,CAAC,EAAE,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"pulse.d.ts","sourceRoot":"","sources":["../../src/data-pump/pulse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAGtE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAE/D,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,oBAAoB,CAAA;IAC1B,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,4DAA4D;IAC5D,eAAe,CAAC,EAAE,aAAa,CAAA;IAC/B,wDAAwD;IACxD,eAAe,CAAC,EAAE,aAAa,CAAA;CAChC;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,iBAAiB,EAAE,MAAM,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,YAAY;IASrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAT9B,OAAO,CAAC,QAAQ,CAA8C;IAC9D,OAAO,CAAC,YAAY,CAA6C;IACjE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAe;IAC/C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAe;gBAG5B,OAAO,EAAE,mBAAmB,EAC5B,WAAW,EAAE,MAAM,aAAa,GAAG,IAAI;IAQ1D,KAAK,IAAI,IAAI;IAYb,IAAI,IAAI,IAAI;IAWZ,OAAO,CAAC,QAAQ;YAaF,IAAI;CAmCnB"}
|
package/esm/data-pump/pulse.js
CHANGED
|
@@ -38,8 +38,22 @@ export class PulseEmitter {
|
|
|
38
38
|
writable: true,
|
|
39
39
|
value: void 0
|
|
40
40
|
});
|
|
41
|
+
Object.defineProperty(this, "successLogLevel", {
|
|
42
|
+
enumerable: true,
|
|
43
|
+
configurable: true,
|
|
44
|
+
writable: true,
|
|
45
|
+
value: void 0
|
|
46
|
+
});
|
|
47
|
+
Object.defineProperty(this, "failureLogLevel", {
|
|
48
|
+
enumerable: true,
|
|
49
|
+
configurable: true,
|
|
50
|
+
writable: true,
|
|
51
|
+
value: void 0
|
|
52
|
+
});
|
|
41
53
|
this.intervalMs = options.intervalMs ?? 30_000;
|
|
42
54
|
this.logger = options.logger;
|
|
55
|
+
this.successLogLevel = options.successLogLevel ?? "debug";
|
|
56
|
+
this.failureLogLevel = options.failureLogLevel ?? "warn";
|
|
43
57
|
}
|
|
44
58
|
start() {
|
|
45
59
|
if (this.interval || this.startTimeout)
|
|
@@ -64,8 +78,14 @@ export class PulseEmitter {
|
|
|
64
78
|
}
|
|
65
79
|
emitSafe() {
|
|
66
80
|
this.emit().catch((err) => {
|
|
81
|
+
const snapshot = this.getSnapshot();
|
|
67
82
|
const msg = err instanceof Error ? err.message : String(err);
|
|
68
|
-
this.logger?.
|
|
83
|
+
this.logger?.[this.failureLogLevel]?.("Pulse emission failed", {
|
|
84
|
+
error: msg,
|
|
85
|
+
url: this.options.url,
|
|
86
|
+
pathwayId: snapshot?.pathwayId,
|
|
87
|
+
flowType: snapshot?.flowType,
|
|
88
|
+
});
|
|
69
89
|
});
|
|
70
90
|
}
|
|
71
91
|
async emit() {
|
|
@@ -91,5 +111,12 @@ export class PulseEmitter {
|
|
|
91
111
|
},
|
|
92
112
|
uptimeMs: snapshot.uptimeMs,
|
|
93
113
|
}));
|
|
114
|
+
this.logger?.[this.successLogLevel]?.("Pulse sent", {
|
|
115
|
+
pathwayId: snapshot.pathwayId,
|
|
116
|
+
flowType: snapshot.flowType,
|
|
117
|
+
timeBucket: snapshot.timeBucket,
|
|
118
|
+
isLive: snapshot.isLive,
|
|
119
|
+
bufferDepth: snapshot.bufferDepth,
|
|
120
|
+
});
|
|
94
121
|
}
|
|
95
122
|
}
|
package/package.json
CHANGED
|
@@ -36,6 +36,10 @@ export interface FlowcoreDataPumpOptions {
|
|
|
36
36
|
url: string;
|
|
37
37
|
intervalMs?: number;
|
|
38
38
|
pathwayId: string;
|
|
39
|
+
/** Log level for successful pulses. Defaults to 'debug'. */
|
|
40
|
+
successLogLevel?: "debug" | "info" | "warn" | "error";
|
|
41
|
+
/** Log level for pulse failures. Defaults to 'warn'. */
|
|
42
|
+
failureLogLevel?: "debug" | "info" | "warn" | "error";
|
|
39
43
|
};
|
|
40
44
|
}
|
|
41
45
|
export declare class FlowcoreDataPump {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-pump.d.ts","sourceRoot":"","sources":["../../src/data-pump/data-pump.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAA;AAGnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAGrD,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,KAAK,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,yBAAyB,EACzB,qBAAqB,EACrB,4BAA4B,EAC5B,cAAc,EACf,MAAM,YAAY,CAAA;AAEnB,UAAU,mCAAmC;IAC3C,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,UAAU,wCAAwC;IAChD,IAAI,EAAE,WAAW,CAAA;CAClB;AAED,UAAU,qCAAqC;IAC7C,IAAI,EAAE,QAAQ,CAAA;IACd;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,KAAK,+BAA+B,GAChC,mCAAmC,GACnC,wCAAwC,GACxC,qCAAqC,CAAA;AAEzC,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,oBAAoB,CAAA;IAC1B,UAAU,EAAE,0BAA0B,CAAA;IACtC,YAAY,EAAE,4BAA4B,CAAA;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,SAAS,CAAC,EAAE,yBAAyB,CAAA;IACrC,QAAQ,CAAC,EAAE,+BAA+B,CAAA;IAC1C,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,KAAK,CAAC,EAAE;QACN,GAAG,EAAE,MAAM,CAAA;QACX,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,SAAS,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"data-pump.d.ts","sourceRoot":"","sources":["../../src/data-pump/data-pump.ts"],"names":[],"mappings":"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"}
|
|
@@ -218,6 +218,8 @@ class FlowcoreDataPump {
|
|
|
218
218
|
intervalMs: options.pulse.intervalMs,
|
|
219
219
|
auth: options.auth,
|
|
220
220
|
logger: options.logger,
|
|
221
|
+
successLogLevel: options.pulse.successLogLevel,
|
|
222
|
+
failureLogLevel: options.pulse.failureLogLevel,
|
|
221
223
|
}, () => {
|
|
222
224
|
const snapshot = pump.getSnapshot();
|
|
223
225
|
if (snapshot)
|
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
import type { FlowcoreDataPumpAuth, FlowcoreLogger } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Log level for pulse emitter events. Corresponds to FlowcoreLogger methods.
|
|
4
|
+
*/
|
|
5
|
+
export type PulseLogLevel = "debug" | "info" | "warn" | "error";
|
|
2
6
|
export interface PulseEmitterOptions {
|
|
3
7
|
url: string;
|
|
4
8
|
intervalMs?: number;
|
|
5
9
|
auth: FlowcoreDataPumpAuth;
|
|
6
10
|
logger?: FlowcoreLogger;
|
|
11
|
+
/** Log level for successful pulses. Defaults to 'debug'. */
|
|
12
|
+
successLogLevel?: PulseLogLevel;
|
|
13
|
+
/** Log level for pulse failures. Defaults to 'warn'. */
|
|
14
|
+
failureLogLevel?: PulseLogLevel;
|
|
7
15
|
}
|
|
8
16
|
export interface PulseSnapshot {
|
|
9
17
|
pathwayId: string;
|
|
@@ -26,6 +34,8 @@ export declare class PulseEmitter {
|
|
|
26
34
|
private startTimeout;
|
|
27
35
|
private readonly intervalMs;
|
|
28
36
|
private readonly logger?;
|
|
37
|
+
private readonly successLogLevel;
|
|
38
|
+
private readonly failureLogLevel;
|
|
29
39
|
constructor(options: PulseEmitterOptions, getSnapshot: () => PulseSnapshot | null);
|
|
30
40
|
start(): void;
|
|
31
41
|
stop(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pulse.d.ts","sourceRoot":"","sources":["../../src/data-pump/pulse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAGtE,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,oBAAoB,CAAA;IAC1B,MAAM,CAAC,EAAE,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"pulse.d.ts","sourceRoot":"","sources":["../../src/data-pump/pulse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAGtE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAE/D,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,oBAAoB,CAAA;IAC1B,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,4DAA4D;IAC5D,eAAe,CAAC,EAAE,aAAa,CAAA;IAC/B,wDAAwD;IACxD,eAAe,CAAC,EAAE,aAAa,CAAA;CAChC;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,iBAAiB,EAAE,MAAM,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,YAAY;IASrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAT9B,OAAO,CAAC,QAAQ,CAA8C;IAC9D,OAAO,CAAC,YAAY,CAA6C;IACjE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAgB;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAe;IAC/C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAe;gBAG5B,OAAO,EAAE,mBAAmB,EAC5B,WAAW,EAAE,MAAM,aAAa,GAAG,IAAI;IAQ1D,KAAK,IAAI,IAAI;IAYb,IAAI,IAAI,IAAI;IAWZ,OAAO,CAAC,QAAQ;YAaF,IAAI;CAmCnB"}
|
|
@@ -41,8 +41,22 @@ class PulseEmitter {
|
|
|
41
41
|
writable: true,
|
|
42
42
|
value: void 0
|
|
43
43
|
});
|
|
44
|
+
Object.defineProperty(this, "successLogLevel", {
|
|
45
|
+
enumerable: true,
|
|
46
|
+
configurable: true,
|
|
47
|
+
writable: true,
|
|
48
|
+
value: void 0
|
|
49
|
+
});
|
|
50
|
+
Object.defineProperty(this, "failureLogLevel", {
|
|
51
|
+
enumerable: true,
|
|
52
|
+
configurable: true,
|
|
53
|
+
writable: true,
|
|
54
|
+
value: void 0
|
|
55
|
+
});
|
|
44
56
|
this.intervalMs = options.intervalMs ?? 30_000;
|
|
45
57
|
this.logger = options.logger;
|
|
58
|
+
this.successLogLevel = options.successLogLevel ?? "debug";
|
|
59
|
+
this.failureLogLevel = options.failureLogLevel ?? "warn";
|
|
46
60
|
}
|
|
47
61
|
start() {
|
|
48
62
|
if (this.interval || this.startTimeout)
|
|
@@ -67,8 +81,14 @@ class PulseEmitter {
|
|
|
67
81
|
}
|
|
68
82
|
emitSafe() {
|
|
69
83
|
this.emit().catch((err) => {
|
|
84
|
+
const snapshot = this.getSnapshot();
|
|
70
85
|
const msg = err instanceof Error ? err.message : String(err);
|
|
71
|
-
this.logger?.
|
|
86
|
+
this.logger?.[this.failureLogLevel]?.("Pulse emission failed", {
|
|
87
|
+
error: msg,
|
|
88
|
+
url: this.options.url,
|
|
89
|
+
pathwayId: snapshot?.pathwayId,
|
|
90
|
+
flowType: snapshot?.flowType,
|
|
91
|
+
});
|
|
72
92
|
});
|
|
73
93
|
}
|
|
74
94
|
async emit() {
|
|
@@ -94,6 +114,13 @@ class PulseEmitter {
|
|
|
94
114
|
},
|
|
95
115
|
uptimeMs: snapshot.uptimeMs,
|
|
96
116
|
}));
|
|
117
|
+
this.logger?.[this.successLogLevel]?.("Pulse sent", {
|
|
118
|
+
pathwayId: snapshot.pathwayId,
|
|
119
|
+
flowType: snapshot.flowType,
|
|
120
|
+
timeBucket: snapshot.timeBucket,
|
|
121
|
+
isLive: snapshot.isLive,
|
|
122
|
+
bufferDepth: snapshot.bufferDepth,
|
|
123
|
+
});
|
|
97
124
|
}
|
|
98
125
|
}
|
|
99
126
|
exports.PulseEmitter = PulseEmitter;
|