cry-ebus2 4.0.13 → 4.0.16
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/broker.mjs +1 -1
- package/dist/broker.mjs.map +1 -1
- package/dist/echoWorker.d.mts.map +1 -1
- package/dist/echoWorker.mjs +1 -4
- package/dist/echoWorker.mjs.map +1 -1
- package/dist/typesOnly.d.mts +67 -0
- package/dist/typesOnly.d.mts.map +1 -0
- package/dist/typesOnly.mjs +9 -0
- package/dist/typesOnly.mjs.map +1 -0
- package/dist/worker.d.mts +1 -0
- package/dist/worker.d.mts.map +1 -1
- package/dist/worker.mjs +28 -27
- package/dist/worker.mjs.map +1 -1
- package/package.json +11 -1
- package/src/broker.mts +1 -1
- package/src/echoWorker.mts +1 -4
- package/src/typesOnly.mts +107 -0
- package/src/worker.mts +29 -27
package/dist/broker.mjs
CHANGED
|
@@ -45,7 +45,7 @@ export class Broker {
|
|
|
45
45
|
if (since > this.configuration.brokerHeartbeatTimeout) {
|
|
46
46
|
const worker = service.workers.get(key);
|
|
47
47
|
if (worker) {
|
|
48
|
-
console.warn(`broker removing timed-out worker for ${service.name}`);
|
|
48
|
+
console.warn(`broker removing timed-out worker [${key}] for ${service.name} (lastHeartbeat=${since}ms ago, brokerHeartbeatTimeout=${this.configuration.brokerHeartbeatTimeout}ms)`);
|
|
49
49
|
this.deregister(worker);
|
|
50
50
|
this.publishWorkersAndServices();
|
|
51
51
|
}
|
package/dist/broker.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"broker.mjs","sourceRoot":"","sources":["../src/broker.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"broker.mjs","sourceRoot":"","sources":["../src/broker.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echoWorker.d.mts","sourceRoot":"","sources":["../src/echoWorker.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"echoWorker.d.mts","sourceRoot":"","sources":["../src/echoWorker.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,qBAAa,UAAW,SAAQ,MAAM;IAClC,OAAO,SAAS;IAEV,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;CAGxC"}
|
package/dist/echoWorker.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// AI modified: 2026-05-13 (removed parseInt+sleep — delay-and-echo is a separate concern handled by DelayWorker; pure echo here)
|
|
2
2
|
import { Worker } from "./worker.mjs";
|
|
3
3
|
export class EchoWorker extends Worker {
|
|
4
4
|
constructor() {
|
|
@@ -6,9 +6,6 @@ export class EchoWorker extends Worker {
|
|
|
6
6
|
this.service = "echo";
|
|
7
7
|
}
|
|
8
8
|
async process(msg) {
|
|
9
|
-
let num = Number.parseInt(msg);
|
|
10
|
-
if (!isNaN(num))
|
|
11
|
-
await sleep(num);
|
|
12
9
|
return msg;
|
|
13
10
|
}
|
|
14
11
|
}
|
package/dist/echoWorker.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echoWorker.mjs","sourceRoot":"","sources":["../src/echoWorker.mts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"echoWorker.mjs","sourceRoot":"","sources":["../src/echoWorker.mts"],"names":[],"mappings":"AAAA,iIAAiI;AACjI,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,MAAM,OAAO,UAAW,SAAQ,MAAM;IAAtC;;QACI,YAAO,GAAG,MAAM,CAAA;IAKpB,CAAC;IAHG,KAAK,CAAC,OAAO,CAAC,GAAQ;QAClB,OAAO,GAAG,CAAA;IACd,CAAC;CACJ"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types-only export for browser / type-only consumers.
|
|
3
|
+
* No runtime code, no dependencies — safe for `import type` in any environment.
|
|
4
|
+
*
|
|
5
|
+
* Usage:
|
|
6
|
+
* import type { EbusConfiguration, EbusRequestOptions, ... } from "cry-ebus2/typesOnly"
|
|
7
|
+
*/
|
|
8
|
+
export interface EbusConfiguration {
|
|
9
|
+
address: string;
|
|
10
|
+
pubAddress: string;
|
|
11
|
+
sendHighWaterMark: number;
|
|
12
|
+
sendTimeout: number;
|
|
13
|
+
port: number;
|
|
14
|
+
pubPort: number;
|
|
15
|
+
server: string;
|
|
16
|
+
receiveTimeout: number;
|
|
17
|
+
heartbeatInterval: number;
|
|
18
|
+
heartbeatTimeout: number;
|
|
19
|
+
brokerHeartbeatTimeout: number;
|
|
20
|
+
clientChecksBrokerWithHeartbeat: boolean;
|
|
21
|
+
brokerChecksWorkersWithHeartbeat: boolean;
|
|
22
|
+
requestQueueSizeLimit: number;
|
|
23
|
+
}
|
|
24
|
+
export interface EbusRequestOptions {
|
|
25
|
+
receiveTimeout: number;
|
|
26
|
+
zip: boolean;
|
|
27
|
+
raw: boolean;
|
|
28
|
+
prepacked: boolean;
|
|
29
|
+
returningError?: boolean;
|
|
30
|
+
/** Milliseconds to hold the request on the broker before dispatching to a worker. Expiry is extended by this amount. */
|
|
31
|
+
delayMs?: number;
|
|
32
|
+
}
|
|
33
|
+
export interface EbusClientEvents {
|
|
34
|
+
"ebus/start": () => void;
|
|
35
|
+
"ebus/stop": () => void;
|
|
36
|
+
}
|
|
37
|
+
export type EbusRejectReason = "timeout" | "reject" | "error";
|
|
38
|
+
export interface EbusRejectError extends Error {
|
|
39
|
+
rejectMessage?: string;
|
|
40
|
+
reason: EbusRejectReason;
|
|
41
|
+
more: any;
|
|
42
|
+
}
|
|
43
|
+
export interface EbusUnpackedResult<T = any> {
|
|
44
|
+
opts: Partial<EbusRequestOptions>;
|
|
45
|
+
data: T;
|
|
46
|
+
unpack: (data: any, opts: Partial<EbusRequestOptions>) => any;
|
|
47
|
+
type: "reply" | "error" | "reject" | "timeout" | "unknown";
|
|
48
|
+
}
|
|
49
|
+
/** Wire protocol header byte. C01 = client, W01 = worker. */
|
|
50
|
+
export type Header = "C01" | "W01";
|
|
51
|
+
/** Wire protocol message type byte. */
|
|
52
|
+
export type Message = "\x00" | "\x01" | "\x02" | "\x03" | "\x04" | "\x05" | "\x06" | "\x07" | "\x08" | "\x10" | "\x11" | "\x12" | "\x13" | "\x14" | "\x15" | "\x16";
|
|
53
|
+
export interface DelayRequest {
|
|
54
|
+
delay: number;
|
|
55
|
+
block: boolean;
|
|
56
|
+
}
|
|
57
|
+
export interface ErrorRequest {
|
|
58
|
+
more: any;
|
|
59
|
+
delay: number;
|
|
60
|
+
message: string;
|
|
61
|
+
}
|
|
62
|
+
export interface RejectRequest {
|
|
63
|
+
more: any;
|
|
64
|
+
delay: number;
|
|
65
|
+
message: string;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=typesOnly.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typesOnly.d.mts","sourceRoot":"","sources":["../src/typesOnly.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,+BAA+B,EAAE,OAAO,CAAC;IACzC,gCAAgC,EAAE,OAAO,CAAC;IAC1C,qBAAqB,EAAE,MAAM,CAAC;CACjC;AAID,MAAM,WAAW,kBAAkB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,OAAO,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wHAAwH;IACxH,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAID,MAAM,WAAW,gBAAgB;IAC7B,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,IAAI,CAAC;CAC3B;AAID,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE9D,MAAM,WAAW,eAAgB,SAAQ,KAAK;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,gBAAgB,CAAC;IACzB,IAAI,EAAE,GAAG,CAAC;CACb;AAID,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,GAAG;IACvC,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAClC,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAAK,GAAG,CAAC;IAC9D,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;CAC9D;AAID,6DAA6D;AAC7D,MAAM,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AAEnC,uCAAuC;AACvC,MAAM,MAAM,OAAO,GACb,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,CAAC;AAIb,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,GAAG,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,GAAG,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types-only export for browser / type-only consumers.
|
|
3
|
+
* No runtime code, no dependencies — safe for `import type` in any environment.
|
|
4
|
+
*
|
|
5
|
+
* Usage:
|
|
6
|
+
* import type { EbusConfiguration, EbusRequestOptions, ... } from "cry-ebus2/typesOnly"
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=typesOnly.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typesOnly.mjs","sourceRoot":"","sources":["../src/typesOnly.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
package/dist/worker.d.mts
CHANGED
|
@@ -4,6 +4,7 @@ import { EbusRequestOptions } from "./EbusRequestOptions.mjs";
|
|
|
4
4
|
export declare class Worker {
|
|
5
5
|
address: string;
|
|
6
6
|
service: string;
|
|
7
|
+
workerId: string;
|
|
7
8
|
socket: Dealer | undefined;
|
|
8
9
|
configuration: EbusConfiguration;
|
|
9
10
|
interval: ReturnType<typeof setInterval> | undefined;
|
package/dist/worker.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.mts","sourceRoot":"","sources":["../src/worker.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAU7D,qBAAa,MAAM;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,SAAK;IACZ,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,aAAa,EAAE,iBAAiB,CAAA;IAChC,QAAQ,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,GAAG,SAAS,CAAA;IACpD,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,mBAAmB,CAAQ;IACnC,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;gBAE/C,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAM;
|
|
1
|
+
{"version":3,"file":"worker.d.mts","sourceRoot":"","sources":["../src/worker.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAU7D,qBAAa,MAAM;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,SAAK;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,aAAa,EAAE,iBAAiB,CAAA;IAChC,QAAQ,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,GAAG,SAAS,CAAA;IACpD,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,mBAAmB,CAAQ;IACnC,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;gBAE/C,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAM;IAahE,IAAI;IAYV,cAAc;IAgCR,KAAK;IAyFE,OAAO,CAAC,GAAG,EAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;YAKnC,cAAc;YA2Dd,WAAW;YAkBX,gBAAgB;IA8B9B,yFAAyF;IACnF,IAAI;IAwBV,6DAA6D;IACvD,QAAQ;IAQR,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;IAerC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAG,OAAO,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,GAAG,GAAG;QAAC,IAAI,EAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAC,CAAC;CAG9H"}
|
package/dist/worker.mjs
CHANGED
|
@@ -14,6 +14,7 @@ export class Worker {
|
|
|
14
14
|
this.stopped = false;
|
|
15
15
|
this.onExit = async () => { await this.exit(); };
|
|
16
16
|
this.service = service || this.service;
|
|
17
|
+
this.workerId = `${this.service || "worker"}-${Date.now()}-${Math.random().toString(36).slice(2, 6)}`;
|
|
17
18
|
this.configuration = loadConfiguration(prefixes, config);
|
|
18
19
|
this.address = this.configuration.address;
|
|
19
20
|
this.lastHeartbeat = Date.now();
|
|
@@ -24,12 +25,12 @@ export class Worker {
|
|
|
24
25
|
}
|
|
25
26
|
async exit() {
|
|
26
27
|
setTimeout(() => {
|
|
27
|
-
log.error(`worker for ${this.service} stopped forcefully`);
|
|
28
|
+
log.error(`worker [${this.workerId}] for ${this.service} stopped forcefully`);
|
|
28
29
|
process.exit(1);
|
|
29
30
|
}, 1000);
|
|
30
31
|
try {
|
|
31
32
|
await this.shutdown();
|
|
32
|
-
log.status(`worker for ${this.service} stopped`);
|
|
33
|
+
log.status(`worker [${this.workerId}] for ${this.service} stopped`);
|
|
33
34
|
process.exit(0);
|
|
34
35
|
}
|
|
35
36
|
catch (_a) { }
|
|
@@ -48,43 +49,43 @@ export class Worker {
|
|
|
48
49
|
}
|
|
49
50
|
}
|
|
50
51
|
catch (err) {
|
|
51
|
-
log.error(
|
|
52
|
+
log.error(`worker [${this.workerId}] send heartbeat error`);
|
|
52
53
|
log.error(err);
|
|
53
54
|
}
|
|
54
55
|
const timeSinceLast = Date.now() - this.lastHeartbeat;
|
|
55
56
|
if (timeSinceLast > this.configuration.heartbeatTimeout) {
|
|
56
|
-
console.warn(
|
|
57
|
+
console.warn(`worker [${this.workerId}] missed heartbeats from broker, restarting (lastHeartbeat=${timeSinceLast}ms ago, heartbeatTimeout=${this.configuration.heartbeatTimeout}ms)`);
|
|
57
58
|
await this.stop();
|
|
58
59
|
}
|
|
59
60
|
}
|
|
60
61
|
catch (err) {
|
|
61
|
-
log.error(`worker for ${this.service} heartbeat error`);
|
|
62
|
+
log.error(`worker [${this.workerId}] for ${this.service} heartbeat error`);
|
|
62
63
|
log.error(err);
|
|
63
64
|
}
|
|
64
65
|
}, this.configuration.heartbeatInterval);
|
|
65
66
|
}
|
|
66
67
|
async start() {
|
|
67
68
|
this.stopped = false;
|
|
68
|
-
log.debug(`worker for ${this.service} is starting`);
|
|
69
|
+
log.debug(`worker [${this.workerId}] for ${this.service} is starting`);
|
|
69
70
|
const loop = async () => {
|
|
70
|
-
this.socket = new Dealer();
|
|
71
|
+
this.socket = new Dealer({ routingId: this.workerId });
|
|
71
72
|
this.socket.reconnectInterval = 100;
|
|
72
73
|
await this.socket.connect(this.configuration.address);
|
|
73
74
|
await this.socket.send([null, Header.Worker, Message.Ready, this.service]);
|
|
74
|
-
log.status(`started worker for ${this.service} on ${this.configuration.address}`);
|
|
75
|
+
log.status(`started worker [${this.workerId}] for ${this.service} on ${this.configuration.address}`);
|
|
75
76
|
this.startHeartbeat();
|
|
76
77
|
for await (const [blank1, header, type, client, blank2, reqId, optBuff, req] of this.socket) {
|
|
77
78
|
this.lastHeartbeat = Date.now();
|
|
78
79
|
try {
|
|
79
80
|
switch (type.toString()) {
|
|
80
81
|
case Message.Shutdown:
|
|
81
|
-
log.status(`worker for ${this.service} received broker shutdown signal`);
|
|
82
|
+
log.status(`worker [${this.workerId}] for ${this.service} received broker shutdown signal`);
|
|
82
83
|
break;
|
|
83
84
|
case Message.Heartbeat:
|
|
84
|
-
log.trace(`worker for ${this.service} received heartbeat from broker`);
|
|
85
|
+
log.trace(`worker [${this.workerId}] for ${this.service} received heartbeat from broker`);
|
|
85
86
|
break;
|
|
86
87
|
case Message.ShutdownAndRestart:
|
|
87
|
-
log.status(`worker for ${this.service} received ShutdownAndRestart from broker`);
|
|
88
|
+
log.status(`worker [${this.workerId}] for ${this.service} received ShutdownAndRestart from broker`);
|
|
88
89
|
process.exit(1);
|
|
89
90
|
break;
|
|
90
91
|
case Message.Request:
|
|
@@ -93,12 +94,12 @@ export class Worker {
|
|
|
93
94
|
this.processing = false;
|
|
94
95
|
break;
|
|
95
96
|
default:
|
|
96
|
-
log.error(`worker for ${this.service} cannot process message type ${type}`, [blank1, header, type, client, blank2, reqId, optBuff, req]);
|
|
97
|
+
log.error(`worker [${this.workerId}] for ${this.service} cannot process message type ${type}`, [blank1, header, type, client, blank2, reqId, optBuff, req]);
|
|
97
98
|
log.error([blank1, header, type, client, blank2, reqId, optBuff, req]);
|
|
98
99
|
}
|
|
99
100
|
}
|
|
100
101
|
catch (err) {
|
|
101
|
-
log.error(`error in worker for '${this.service}' processing message`);
|
|
102
|
+
log.error(`error in worker [${this.workerId}] for '${this.service}' processing message`);
|
|
102
103
|
log.error(err);
|
|
103
104
|
}
|
|
104
105
|
}
|
|
@@ -108,7 +109,7 @@ export class Worker {
|
|
|
108
109
|
await loop();
|
|
109
110
|
}
|
|
110
111
|
catch (err) {
|
|
111
|
-
log.error(`worker for '${this.service} error in internal loop`);
|
|
112
|
+
log.error(`worker [${this.workerId}] for '${this.service} error in internal loop`);
|
|
112
113
|
log.error(err);
|
|
113
114
|
}
|
|
114
115
|
if (this.stopped)
|
|
@@ -117,10 +118,10 @@ export class Worker {
|
|
|
117
118
|
await this.stop();
|
|
118
119
|
}
|
|
119
120
|
catch (err) {
|
|
120
|
-
log.error(`worker for '${this.service} error closing internal loop`);
|
|
121
|
+
log.error(`worker [${this.workerId}] for '${this.service} error closing internal loop`);
|
|
121
122
|
log.error(err);
|
|
122
123
|
}
|
|
123
|
-
log.status(`worker for ${this.service} reconnecting`);
|
|
124
|
+
log.status(`worker [${this.workerId}] for ${this.service} reconnecting`);
|
|
124
125
|
}
|
|
125
126
|
}
|
|
126
127
|
// to be implemented at the actual worker
|
|
@@ -129,7 +130,7 @@ export class Worker {
|
|
|
129
130
|
}
|
|
130
131
|
async processRequest(reqId, optBuff, type, req, client) {
|
|
131
132
|
let opts = serialize.unpack(optBuff);
|
|
132
|
-
log.debug(`worker for ${this.service} received request ${type} with opts`, opts);
|
|
133
|
+
log.debug(`worker [${this.workerId}] for ${this.service} received request ${type} with opts`, opts);
|
|
133
134
|
const requestedTimeout = opts.receiveTimeout || this.configuration.receiveTimeout;
|
|
134
135
|
const dispatchedAt = opts._dispatchedAt || Date.now();
|
|
135
136
|
const elapsed = Date.now() - dispatchedAt;
|
|
@@ -143,7 +144,7 @@ export class Worker {
|
|
|
143
144
|
try {
|
|
144
145
|
rep = await Promise.race(promises);
|
|
145
146
|
if (rep instanceof EbusRejectError && rep.reason === "timeout") {
|
|
146
|
-
log.warn(`request expired at worker for '${this.service}' after ${timeout} ms with opts ${serialize.pack(opts)}`);
|
|
147
|
+
log.warn(`request expired at worker [${this.workerId}] for '${this.service}' after ${timeout} ms with opts ${serialize.pack(opts)}`);
|
|
147
148
|
log.warn(unpack(req, opts));
|
|
148
149
|
responseMessageType = Message.Timeout;
|
|
149
150
|
this.onError("timeout", unpack(req, opts), opts);
|
|
@@ -171,7 +172,7 @@ export class Worker {
|
|
|
171
172
|
opts = response.opts;
|
|
172
173
|
data = response.data;
|
|
173
174
|
}
|
|
174
|
-
log.trace(`worker for ${this.service} sending reply ${responseMessageType}`, rep, opts);
|
|
175
|
+
log.trace(`worker [${this.workerId}] for ${this.service} sending reply ${responseMessageType}`, rep, opts);
|
|
175
176
|
await this.returnReply(responseMessageType, client, reqId, opts, data);
|
|
176
177
|
if (responseMessageType === Message.Timeout || responseMessageType === Message.Error)
|
|
177
178
|
await this.exitAfterTimeout();
|
|
@@ -190,7 +191,7 @@ export class Worker {
|
|
|
190
191
|
]);
|
|
191
192
|
}
|
|
192
193
|
catch (err) {
|
|
193
|
-
console.error(`unable to send reply for ${this.configuration.address}`, err);
|
|
194
|
+
console.error(`unable to send reply for ${this.configuration.address} from worker [${this.workerId}]`, err);
|
|
194
195
|
throw err;
|
|
195
196
|
}
|
|
196
197
|
}
|
|
@@ -198,7 +199,7 @@ export class Worker {
|
|
|
198
199
|
if (this.exitingAfterTimeout)
|
|
199
200
|
return;
|
|
200
201
|
this.exitingAfterTimeout = true;
|
|
201
|
-
log.warn(`worker for ${this.service} timed out while processing request; notifying broker and exiting`);
|
|
202
|
+
log.warn(`worker [${this.workerId}] for ${this.service} timed out while processing request; notifying broker and exiting`);
|
|
202
203
|
try {
|
|
203
204
|
if (this.socket && !this.socket.closed) {
|
|
204
205
|
await this.socket.send([
|
|
@@ -210,21 +211,21 @@ export class Worker {
|
|
|
210
211
|
}
|
|
211
212
|
}
|
|
212
213
|
catch (err) {
|
|
213
|
-
log.error(`worker for ${this.service} failed to notify broker about timeout shutdown`);
|
|
214
|
+
log.error(`worker [${this.workerId}] for ${this.service} failed to notify broker about timeout shutdown`);
|
|
214
215
|
log.error(err);
|
|
215
216
|
}
|
|
216
217
|
try {
|
|
217
218
|
await this.stop();
|
|
218
219
|
}
|
|
219
220
|
catch (err) {
|
|
220
|
-
log.error(`worker for ${this.service} error while stopping after timeout`);
|
|
221
|
+
log.error(`worker [${this.workerId}] for ${this.service} error while stopping after timeout`);
|
|
221
222
|
log.error(err);
|
|
222
223
|
}
|
|
223
224
|
process.nextTick(() => process.exit(1));
|
|
224
225
|
}
|
|
225
226
|
/** Closes the current connection. Worker will reconnect unless shutdown() was called. */
|
|
226
227
|
async stop() {
|
|
227
|
-
log.debug(`worker for ${this.service} is stopping`);
|
|
228
|
+
log.debug(`worker [${this.workerId}] for ${this.service} is stopping`);
|
|
228
229
|
if (this.interval)
|
|
229
230
|
clearInterval(this.interval);
|
|
230
231
|
this.interval = undefined;
|
|
@@ -238,9 +239,9 @@ export class Worker {
|
|
|
238
239
|
]);
|
|
239
240
|
}
|
|
240
241
|
catch (_a) {
|
|
241
|
-
log.debug(`worker for ${this.service} disconnect send failed (expected during shutdown)`);
|
|
242
|
+
log.debug(`worker [${this.workerId}] for ${this.service} disconnect send failed (expected during shutdown)`);
|
|
242
243
|
}
|
|
243
|
-
log.debug(`worker for ${this.service} is closing socket`);
|
|
244
|
+
log.debug(`worker [${this.workerId}] for ${this.service} is closing socket`);
|
|
244
245
|
this.socket.close();
|
|
245
246
|
}
|
|
246
247
|
this.socket = undefined;
|
|
@@ -255,7 +256,7 @@ export class Worker {
|
|
|
255
256
|
}
|
|
256
257
|
async publish(channel, message) {
|
|
257
258
|
if (!this.socket) {
|
|
258
|
-
log.error(`worker for '${this.service}' not connected, cannot publish to ${channel}`, message);
|
|
259
|
+
log.error(`worker [${this.workerId}] for '${this.service}' not connected, cannot publish to ${channel}`, message);
|
|
259
260
|
return;
|
|
260
261
|
}
|
|
261
262
|
await this.socket.send([null, Header.Worker, Message.Publish, channel, pack(message, {})]);
|
package/dist/worker.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.mjs","sourceRoot":"","sources":["../src/worker.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worker.mjs","sourceRoot":"","sources":["../src/worker.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAG,SAAS,EAAC,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAG/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD,MAAM,QAAQ,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;AACxC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAA;AAE7B,MAAM,OAAO,MAAM;IAaf,YAAY,OAAgB,EAAE,SAAsC,EAAE;QAXtE,YAAO,GAAG,EAAE,CAAA;QAOJ,wBAAmB,GAAG,KAAK,CAAA;QAC3B,YAAO,GAAG,KAAK,CAAA;QACN,WAAM,GAAG,KAAK,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC,CAAA;QAGvD,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;QACrG,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,QAAQ,EAAC,MAAM,CAAC,CAAA;QACvD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAA;QACzC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC/B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;QAEvB,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACjC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAClC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IACtC,CAAC;IAED,KAAK,CAAC,IAAI;QACN,UAAU,CAAC,GAAG,EAAE;YACZ,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,qBAAqB,CAAC,CAAA;YAC7E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC,EAAE,IAAI,CAAC,CAAA;QACR,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,UAAU,CAAC,CAAA;YACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAAC,WAAM,CAAC,CAAC,CAAC;IACf,CAAC;IAED,cAAc;QACV,IAAI,IAAI,CAAC,QAAQ;YAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAE/B,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;YAEnC,IAAI,IAAI,CAAC,UAAU;gBAAE,OAAO;YAE5B,IAAI,CAAC;gBAED,IAAI,CAAC;oBACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;wBACd,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;oBAC9F,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,wBAAwB,CAAC,CAAA;oBAC3D,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAClB,CAAC;gBAED,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;gBACtD,IAAI,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;oBACtD,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,8DAA8D,aAAa,4BAA4B,IAAI,CAAC,aAAa,CAAC,gBAAgB,KAAK,CAAC,CAAA;oBACrL,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;gBACrB,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,kBAAkB,CAAC,CAAA;gBAC1E,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,CAAC;QAEL,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAE,CAAA;IAC7C,CAAC;IAED,KAAK,CAAC,KAAK;QAEP,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;QACpB,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,cAAc,CAAC,CAAA;QAEtE,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;YAEpB,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;YACtD,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,GAAG,CAAA;YACnC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACrD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;YAC1E,GAAG,CAAC,MAAM,CAAC,mBAAmB,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAA;YAEpG,IAAI,CAAC,cAAc,EAAE,CAAA;YAErB,IAAI,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAE1F,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAE/B,IAAI,CAAC;oBAED,QAAQ,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;wBACtB,KAAK,OAAO,CAAC,QAAQ;4BAEjB,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,kCAAkC,CAAC,CAAA;4BAC3F,MAAM;wBAEV,KAAK,OAAO,CAAC,SAAS;4BAElB,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,iCAAiC,CAAC,CAAA;4BACzF,MAAM;wBAEV,KAAK,OAAO,CAAC,kBAAkB;4BAE3B,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,0CAA0C,CAAC,CAAA;4BACnG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;4BACf,MAAM;wBAEV,KAAK,OAAO,CAAC,OAAO;4BAEhB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;4BACtB,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAA;4BAC5D,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;4BACvB,MAAM;wBAEV;4BAEI,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,gCAAgC,IAAI,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;4BAC3J,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;oBAE9E,CAAC;gBAIL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,GAAG,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,QAAQ,UAAU,IAAI,CAAC,OAAO,sBAAsB,CAAC,CAAA;oBACxF,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAClB,CAAC;YAEL,CAAC;QAGL,CAAC,CAAA;QAED,SAAU,CAAC;YAEP,IAAI,CAAC;gBACD,MAAM,IAAI,EAAE,CAAA;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,UAAU,IAAI,CAAC,OAAO,yBAAyB,CAAC,CAAA;gBAClF,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,CAAC;YAED,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAK;YAEvB,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;YACrB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,UAAU,IAAI,CAAC,OAAO,8BAA8B,CAAC,CAAA;gBACvF,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,CAAC;YAED,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,eAAe,CAAC,CAAA;QAE5E,CAAC;IAEL,CAAC;IAED,yCAAyC;IAClC,KAAK,CAAC,OAAO,CAAC,GAAO,EAAE,GAAQ,EAAE,IAAS;QAE7C,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,KAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC5E,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,OAAe,EAAE,IAAY,EAAE,GAAW,EAAE,MAAc;QAElG,IAAI,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAA6D,CAAA;QAChG,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,qBAAqB,IAAI,YAAY,EAAE,IAAI,CAAC,CAAA;QACnG,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,aAAa,CAAC,cAAc,CAAA;QACjF,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAA;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,CAAA;QACvD,IAAI,mBAAmB,GAAqE,OAAO,CAAC,KAAK,CAAA;QAEzG,MAAM,QAAQ,GAAG;YACb,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC;YACrC,KAAK,CAAC,OAAO,EAAE,IAAI,eAAe,CAAC,SAAS,EAAE,0BAA0B,IAAI,CAAC,OAAO,WAAW,gBAAgB,QAAQ,OAAO,gBAAgB,OAAO,eAAe,EAAE,IAAI,CAAC,CAAC;SAC/K,CAAA;QAED,IAAI,GAAQ,CAAA;QAEZ,IAAI,CAAC;YACD,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAClC,IAAI,GAAG,YAAY,eAAe,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC7D,GAAG,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,QAAQ,UAAU,IAAI,CAAC,OAAO,WAAW,OAAO,iBAAiB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBACpI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAA;gBAC3B,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAA;gBACrC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;QAAC,OAAO,GAAO,EAAE,CAAC;YACf,GAAG,GAAG,GAAG,CAAA;YACT,IAAI,CAAC,CAAC,GAAG,YAAY,eAAe,CAAC,EAAE,CAAC;gBACpC,GAAG,GAAG,IAAI,eAAe,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,OAAO,sBAAsB,GAAG,CAAC,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC;gBAClH,mBAAmB,GAAG,OAAO,CAAC,KAAK,CAAC;YACxC,CAAC;YACD,IAAI,GAAG,YAAY,eAAe,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;gBAC1D,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAA;YACzC,IAAI,GAAG,YAAY,eAAe,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ;gBACzD,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAA;YACxC,IAAI,GAAG,YAAY,eAAe,IAAI,GAAG,CAAC,MAAM,KAAK,OAAO;gBACxD,mBAAmB,GAAG,OAAO,CAAC,KAAK,CAAA;YAEvC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,CAAE,CAAC;QAChD,CAAC;QAED,IAAI,IAAI,GAAG,GAAG,CAAC;QAEf,IAAI,GAAG,YAAY,eAAe;YAC9B,IAAI,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,GAAG,CAAA;QAE5D,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,MAAK,SAAS,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,IAAI,MAAK,SAAS,EAAE,CAAC;YACrD,MAAM,QAAQ,GAAG,GAAuD,CAAA;YACxE,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;YACpB,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;QACxB,CAAC;QAED,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,kBAAkB,mBAAmB,EAAE,EAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAEzG,MAAM,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAEtE,IAAI,mBAAmB,KAAK,OAAO,CAAC,OAAO,IAAI,mBAAmB,KAAK,OAAO,CAAC,KAAK;YAAE,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACxH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,mBAA4B,EAAE,MAAc,EAAE,KAAa,EAAE,IAAiC,EAAE,IAAS;QAC/H,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,MAAO,CAAC,IAAI,CAAC;gBACpB,IAAI;gBACJ,MAAM,CAAC,MAAM;gBACb,mBAAmB;gBACnB,MAAM;gBACN,IAAI;gBACJ,KAAK;gBACL,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;gBACpB,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;aACnB,CAAC,CAAA;QACN,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,4BAA4B,IAAI,CAAC,aAAa,CAAC,OAAO,iBAAiB,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,CAAA;YAC3G,MAAM,GAAG,CAAA;QACb,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC1B,IAAI,IAAI,CAAC,mBAAmB;YAAE,OAAM;QACpC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAA;QAE/B,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,mEAAmE,CAAC,CAAA;QAE1H,IAAI,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACrC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACnB,IAAI;oBACJ,MAAM,CAAC,MAAM;oBACb,OAAO,CAAC,QAAQ;oBAChB,IAAI,CAAC,OAAO;iBACf,CAAC,CAAA;YACN,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,iDAAiD,CAAC,CAAA;YACzG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAClB,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,qCAAqC,CAAC,CAAA;YAC7F,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAClB,CAAC;QAED,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3C,CAAC;IAED,yFAAyF;IACzF,KAAK,CAAC,IAAI;QAEN,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,cAAc,CAAC,CAAA;QAEtE,IAAI,IAAI,CAAC,QAAQ;YAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAA;QAEzB,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACrC,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACnB,IAAI;oBACJ,MAAM,CAAC,MAAM;oBACb,OAAO,CAAC,UAAU;oBAClB,IAAI,CAAC,OAAO;iBACf,CAAC,CAAA;YACN,CAAC;YAAC,WAAM,CAAC;gBACL,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,oDAAoD,CAAC,CAAA;YAChH,CAAC;YACD,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,OAAO,oBAAoB,CAAC,CAAA;YAC5E,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QACvB,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;IAC3B,CAAC;IAED,6DAA6D;IAC7D,KAAK,CAAC,QAAQ;QACV,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QACnB,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAClC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACnC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACnC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;IACrB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,OAAY;QACvC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,UAAU,IAAI,CAAC,OAAO,sCAAsC,OAAO,EAAE,EAAC,OAAO,CAAC,CAAA;YAChH,OAAO;QACX,CAAC;QACD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;QAC1F,GAAG,CAAC,KAAK,CAAC,6BAA6B,OAAO,GAAG,EAAE,OAAO,CAAC,CAAC;QAE5D,6BAA6B;QAC7B,mDAAmD;QACnD,kFAAkF;QAClF,+DAA+D;QAC/D,yEAAyE;IAC7E,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAQ,EAAE,IAAkC;QACtD,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,CAAC,OAAO,2BAA2B,CAAC,CAAA;IAClF,CAAC;CACJ"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cry-ebus2",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.16",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "./dist/index.mjs",
|
|
6
6
|
"types": "./dist/index.d.mts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./dist/index.d.mts",
|
|
10
|
+
"default": "./dist/index.mjs"
|
|
11
|
+
},
|
|
12
|
+
"./typesOnly": {
|
|
13
|
+
"types": "./dist/typesOnly.d.mts",
|
|
14
|
+
"default": "./dist/typesOnly.mjs"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
7
17
|
"type": "module",
|
|
8
18
|
"scripts": {
|
|
9
19
|
"build": "tsc",
|
package/src/broker.mts
CHANGED
|
@@ -58,7 +58,7 @@ export class Broker {
|
|
|
58
58
|
if (since > this.configuration.brokerHeartbeatTimeout) {
|
|
59
59
|
const worker = service.workers.get(key)
|
|
60
60
|
if (worker) {
|
|
61
|
-
console.warn(`broker removing timed-out worker for ${service.name}`)
|
|
61
|
+
console.warn(`broker removing timed-out worker [${key}] for ${service.name} (lastHeartbeat=${since}ms ago, brokerHeartbeatTimeout=${this.configuration.brokerHeartbeatTimeout}ms)`)
|
|
62
62
|
this.deregister(worker)
|
|
63
63
|
this.publishWorkersAndServices()
|
|
64
64
|
} else {
|
package/src/echoWorker.mts
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
// AI modified: 2026-05-13 (removed parseInt+sleep — delay-and-echo is a separate concern handled by DelayWorker; pure echo here)
|
|
2
2
|
import { Worker } from "./worker.mjs"
|
|
3
3
|
|
|
4
|
-
|
|
5
4
|
export class EchoWorker extends Worker {
|
|
6
5
|
service = "echo"
|
|
7
6
|
|
|
8
7
|
async process(msg: any): Promise<any> {
|
|
9
|
-
let num = Number.parseInt(msg)
|
|
10
|
-
if (!isNaN(num)) await sleep(num)
|
|
11
8
|
return msg
|
|
12
9
|
}
|
|
13
10
|
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types-only export for browser / type-only consumers.
|
|
3
|
+
* No runtime code, no dependencies — safe for `import type` in any environment.
|
|
4
|
+
*
|
|
5
|
+
* Usage:
|
|
6
|
+
* import type { EbusConfiguration, EbusRequestOptions, ... } from "cry-ebus2/typesOnly"
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
// ── Configuration ──────────────────────────────────────────────────────────────
|
|
10
|
+
|
|
11
|
+
export interface EbusConfiguration {
|
|
12
|
+
address: string;
|
|
13
|
+
pubAddress: string;
|
|
14
|
+
sendHighWaterMark: number;
|
|
15
|
+
sendTimeout: number;
|
|
16
|
+
port: number;
|
|
17
|
+
pubPort: number;
|
|
18
|
+
server: string;
|
|
19
|
+
receiveTimeout: number;
|
|
20
|
+
heartbeatInterval: number;
|
|
21
|
+
heartbeatTimeout: number;
|
|
22
|
+
brokerHeartbeatTimeout: number;
|
|
23
|
+
clientChecksBrokerWithHeartbeat: boolean;
|
|
24
|
+
brokerChecksWorkersWithHeartbeat: boolean;
|
|
25
|
+
requestQueueSizeLimit: number;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
// ── Request options ───────────────────────────────────────────────────────────
|
|
29
|
+
|
|
30
|
+
export interface EbusRequestOptions {
|
|
31
|
+
receiveTimeout: number;
|
|
32
|
+
zip: boolean;
|
|
33
|
+
raw: boolean;
|
|
34
|
+
prepacked: boolean;
|
|
35
|
+
returningError?: boolean;
|
|
36
|
+
/** Milliseconds to hold the request on the broker before dispatching to a worker. Expiry is extended by this amount. */
|
|
37
|
+
delayMs?: number;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// ── Events ────────────────────────────────────────────────────────────────────
|
|
41
|
+
|
|
42
|
+
export interface EbusClientEvents {
|
|
43
|
+
"ebus/start": () => void;
|
|
44
|
+
"ebus/stop": () => void;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// ── Reject types ──────────────────────────────────────────────────────────────
|
|
48
|
+
|
|
49
|
+
export type EbusRejectReason = "timeout" | "reject" | "error";
|
|
50
|
+
|
|
51
|
+
export interface EbusRejectError extends Error {
|
|
52
|
+
rejectMessage?: string;
|
|
53
|
+
reason: EbusRejectReason;
|
|
54
|
+
more: any;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
// ── Unpacked result ───────────────────────────────────────────────────────────
|
|
58
|
+
|
|
59
|
+
export interface EbusUnpackedResult<T = any> {
|
|
60
|
+
opts: Partial<EbusRequestOptions>;
|
|
61
|
+
data: T;
|
|
62
|
+
unpack: (data: any, opts: Partial<EbusRequestOptions>) => any;
|
|
63
|
+
type: "reply" | "error" | "reject" | "timeout" | "unknown";
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
// ── Wire protocol enums ───────────────────────────────────────────────────────
|
|
67
|
+
|
|
68
|
+
/** Wire protocol header byte. C01 = client, W01 = worker. */
|
|
69
|
+
export type Header = "C01" | "W01";
|
|
70
|
+
|
|
71
|
+
/** Wire protocol message type byte. */
|
|
72
|
+
export type Message =
|
|
73
|
+
| "\x00" // None
|
|
74
|
+
| "\x01" // Ready
|
|
75
|
+
| "\x02" // Request
|
|
76
|
+
| "\x03" // Reply
|
|
77
|
+
| "\x04" // Error
|
|
78
|
+
| "\x05" // Reject
|
|
79
|
+
| "\x06" // Timeout
|
|
80
|
+
| "\x07" // Heartbeat
|
|
81
|
+
| "\x08" // Disconnect
|
|
82
|
+
| "\x10" // Services
|
|
83
|
+
| "\x11" // Workers
|
|
84
|
+
| "\x12" // Subscribe
|
|
85
|
+
| "\x13" // Publish
|
|
86
|
+
| "\x14" // Shutdown
|
|
87
|
+
| "\x15" // ShutdownAndRestart
|
|
88
|
+
| "\x16"; // RestartAllWorkers
|
|
89
|
+
|
|
90
|
+
// ── Worker request interfaces ─────────────────────────────────────────────────
|
|
91
|
+
|
|
92
|
+
export interface DelayRequest {
|
|
93
|
+
delay: number;
|
|
94
|
+
block: boolean;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export interface ErrorRequest {
|
|
98
|
+
more: any;
|
|
99
|
+
delay: number;
|
|
100
|
+
message: string;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export interface RejectRequest {
|
|
104
|
+
more: any;
|
|
105
|
+
delay: number;
|
|
106
|
+
message: string;
|
|
107
|
+
}
|
package/src/worker.mts
CHANGED
|
@@ -14,6 +14,7 @@ const log = new Log(prefixes)
|
|
|
14
14
|
export class Worker {
|
|
15
15
|
address: string
|
|
16
16
|
service = ""
|
|
17
|
+
workerId: string
|
|
17
18
|
socket: Dealer | undefined
|
|
18
19
|
configuration: EbusConfiguration
|
|
19
20
|
interval: ReturnType<typeof setInterval> | undefined
|
|
@@ -25,6 +26,7 @@ export class Worker {
|
|
|
25
26
|
|
|
26
27
|
constructor(service?: string, config: Partial<EbusConfiguration> = {}) {
|
|
27
28
|
this.service = service || this.service;
|
|
29
|
+
this.workerId = `${this.service || "worker"}-${Date.now()}-${Math.random().toString(36).slice(2, 6)}`
|
|
28
30
|
this.configuration = loadConfiguration(prefixes,config)
|
|
29
31
|
this.address = this.configuration.address
|
|
30
32
|
this.lastHeartbeat = Date.now()
|
|
@@ -37,12 +39,12 @@ export class Worker {
|
|
|
37
39
|
|
|
38
40
|
async exit() {
|
|
39
41
|
setTimeout(() => {
|
|
40
|
-
log.error(`worker for ${this.service} stopped forcefully`)
|
|
42
|
+
log.error(`worker [${this.workerId}] for ${this.service} stopped forcefully`)
|
|
41
43
|
process.exit(1)
|
|
42
44
|
}, 1000)
|
|
43
45
|
try {
|
|
44
46
|
await this.shutdown();
|
|
45
|
-
log.status(`worker for ${this.service} stopped`)
|
|
47
|
+
log.status(`worker [${this.workerId}] for ${this.service} stopped`)
|
|
46
48
|
process.exit(0);
|
|
47
49
|
} catch { }
|
|
48
50
|
}
|
|
@@ -62,17 +64,17 @@ export class Worker {
|
|
|
62
64
|
await this.socket.send([null, Header.Worker, Message.Heartbeat, this.service, null, null])
|
|
63
65
|
}
|
|
64
66
|
} catch (err) {
|
|
65
|
-
log.error(
|
|
67
|
+
log.error(`worker [${this.workerId}] send heartbeat error`)
|
|
66
68
|
log.error(err)
|
|
67
69
|
}
|
|
68
70
|
|
|
69
71
|
const timeSinceLast = Date.now() - this.lastHeartbeat;
|
|
70
72
|
if (timeSinceLast > this.configuration.heartbeatTimeout) {
|
|
71
|
-
console.warn(
|
|
73
|
+
console.warn(`worker [${this.workerId}] missed heartbeats from broker, restarting (lastHeartbeat=${timeSinceLast}ms ago, heartbeatTimeout=${this.configuration.heartbeatTimeout}ms)`)
|
|
72
74
|
await this.stop()
|
|
73
75
|
}
|
|
74
76
|
} catch (err) {
|
|
75
|
-
log.error(`worker for ${this.service} heartbeat error`)
|
|
77
|
+
log.error(`worker [${this.workerId}] for ${this.service} heartbeat error`)
|
|
76
78
|
log.error(err)
|
|
77
79
|
}
|
|
78
80
|
|
|
@@ -82,15 +84,15 @@ export class Worker {
|
|
|
82
84
|
async start() {
|
|
83
85
|
|
|
84
86
|
this.stopped = false
|
|
85
|
-
log.debug(`worker for ${this.service} is starting`)
|
|
87
|
+
log.debug(`worker [${this.workerId}] for ${this.service} is starting`)
|
|
86
88
|
|
|
87
89
|
const loop = async () => {
|
|
88
90
|
|
|
89
|
-
this.socket = new Dealer()
|
|
91
|
+
this.socket = new Dealer({ routingId: this.workerId })
|
|
90
92
|
this.socket.reconnectInterval = 100
|
|
91
93
|
await this.socket.connect(this.configuration.address)
|
|
92
94
|
await this.socket.send([null, Header.Worker, Message.Ready, this.service])
|
|
93
|
-
log.status(`started worker for ${this.service} on ${this.configuration.address}`)
|
|
95
|
+
log.status(`started worker [${this.workerId}] for ${this.service} on ${this.configuration.address}`)
|
|
94
96
|
|
|
95
97
|
this.startHeartbeat()
|
|
96
98
|
|
|
@@ -103,17 +105,17 @@ export class Worker {
|
|
|
103
105
|
switch (type.toString()) {
|
|
104
106
|
case Message.Shutdown:
|
|
105
107
|
|
|
106
|
-
log.status(`worker for ${this.service} received broker shutdown signal`)
|
|
108
|
+
log.status(`worker [${this.workerId}] for ${this.service} received broker shutdown signal`)
|
|
107
109
|
break;
|
|
108
110
|
|
|
109
111
|
case Message.Heartbeat:
|
|
110
112
|
|
|
111
|
-
log.trace(`worker for ${this.service} received heartbeat from broker`)
|
|
113
|
+
log.trace(`worker [${this.workerId}] for ${this.service} received heartbeat from broker`)
|
|
112
114
|
break;
|
|
113
115
|
|
|
114
116
|
case Message.ShutdownAndRestart:
|
|
115
117
|
|
|
116
|
-
log.status(`worker for ${this.service} received ShutdownAndRestart from broker`)
|
|
118
|
+
log.status(`worker [${this.workerId}] for ${this.service} received ShutdownAndRestart from broker`)
|
|
117
119
|
process.exit(1)
|
|
118
120
|
break;
|
|
119
121
|
|
|
@@ -126,7 +128,7 @@ export class Worker {
|
|
|
126
128
|
|
|
127
129
|
default:
|
|
128
130
|
|
|
129
|
-
log.error(`worker for ${this.service} cannot process message type ${type}`, [blank1, header, type, client, blank2, reqId, optBuff, req])
|
|
131
|
+
log.error(`worker [${this.workerId}] for ${this.service} cannot process message type ${type}`, [blank1, header, type, client, blank2, reqId, optBuff, req])
|
|
130
132
|
log.error([blank1, header, type, client, blank2, reqId, optBuff, req])
|
|
131
133
|
|
|
132
134
|
}
|
|
@@ -134,7 +136,7 @@ export class Worker {
|
|
|
134
136
|
|
|
135
137
|
|
|
136
138
|
} catch (err) {
|
|
137
|
-
log.error(`error in worker for '${this.service}' processing message`)
|
|
139
|
+
log.error(`error in worker [${this.workerId}] for '${this.service}' processing message`)
|
|
138
140
|
log.error(err)
|
|
139
141
|
}
|
|
140
142
|
|
|
@@ -148,7 +150,7 @@ export class Worker {
|
|
|
148
150
|
try {
|
|
149
151
|
await loop()
|
|
150
152
|
} catch (err) {
|
|
151
|
-
log.error(`worker for '${this.service} error in internal loop`)
|
|
153
|
+
log.error(`worker [${this.workerId}] for '${this.service} error in internal loop`)
|
|
152
154
|
log.error(err)
|
|
153
155
|
}
|
|
154
156
|
|
|
@@ -157,11 +159,11 @@ export class Worker {
|
|
|
157
159
|
try {
|
|
158
160
|
await this.stop()
|
|
159
161
|
} catch (err) {
|
|
160
|
-
log.error(`worker for '${this.service} error closing internal loop`)
|
|
162
|
+
log.error(`worker [${this.workerId}] for '${this.service} error closing internal loop`)
|
|
161
163
|
log.error(err)
|
|
162
164
|
}
|
|
163
165
|
|
|
164
|
-
log.status(`worker for ${this.service} reconnecting`)
|
|
166
|
+
log.status(`worker [${this.workerId}] for ${this.service} reconnecting`)
|
|
165
167
|
|
|
166
168
|
}
|
|
167
169
|
|
|
@@ -176,7 +178,7 @@ export class Worker {
|
|
|
176
178
|
private async processRequest(reqId: Buffer, optBuff: Buffer, type: Buffer, req: Buffer, client: Buffer) {
|
|
177
179
|
|
|
178
180
|
let opts = serialize.unpack(optBuff) as Partial<EbusRequestOptions> & { _dispatchedAt?: number }
|
|
179
|
-
log.debug(`worker for ${this.service} received request ${type} with opts`, opts)
|
|
181
|
+
log.debug(`worker [${this.workerId}] for ${this.service} received request ${type} with opts`, opts)
|
|
180
182
|
const requestedTimeout = opts.receiveTimeout || this.configuration.receiveTimeout
|
|
181
183
|
const dispatchedAt = opts._dispatchedAt || Date.now()
|
|
182
184
|
const elapsed = Date.now() - dispatchedAt
|
|
@@ -193,7 +195,7 @@ export class Worker {
|
|
|
193
195
|
try {
|
|
194
196
|
rep = await Promise.race(promises)
|
|
195
197
|
if (rep instanceof EbusRejectError && rep.reason === "timeout") {
|
|
196
|
-
log.warn(`request expired at worker for '${this.service}' after ${timeout} ms with opts ${serialize.pack(opts)}`)
|
|
198
|
+
log.warn(`request expired at worker [${this.workerId}] for '${this.service}' after ${timeout} ms with opts ${serialize.pack(opts)}`)
|
|
197
199
|
log.warn(unpack(req, opts))
|
|
198
200
|
responseMessageType = Message.Timeout
|
|
199
201
|
this.onError("timeout", unpack(req, opts), opts);
|
|
@@ -225,7 +227,7 @@ export class Worker {
|
|
|
225
227
|
data = response.data
|
|
226
228
|
}
|
|
227
229
|
|
|
228
|
-
log.trace(`worker for ${this.service} sending reply ${responseMessageType}`,rep, opts)
|
|
230
|
+
log.trace(`worker [${this.workerId}] for ${this.service} sending reply ${responseMessageType}`,rep, opts)
|
|
229
231
|
|
|
230
232
|
await this.returnReply(responseMessageType, client, reqId, opts, data)
|
|
231
233
|
|
|
@@ -245,7 +247,7 @@ export class Worker {
|
|
|
245
247
|
pack(data, opts),
|
|
246
248
|
])
|
|
247
249
|
} catch (err) {
|
|
248
|
-
console.error(`unable to send reply for ${this.configuration.address}`, err)
|
|
250
|
+
console.error(`unable to send reply for ${this.configuration.address} from worker [${this.workerId}]`, err)
|
|
249
251
|
throw err
|
|
250
252
|
}
|
|
251
253
|
}
|
|
@@ -254,7 +256,7 @@ export class Worker {
|
|
|
254
256
|
if (this.exitingAfterTimeout) return
|
|
255
257
|
this.exitingAfterTimeout = true
|
|
256
258
|
|
|
257
|
-
log.warn(`worker for ${this.service} timed out while processing request; notifying broker and exiting`)
|
|
259
|
+
log.warn(`worker [${this.workerId}] for ${this.service} timed out while processing request; notifying broker and exiting`)
|
|
258
260
|
|
|
259
261
|
try {
|
|
260
262
|
if (this.socket && !this.socket.closed) {
|
|
@@ -266,14 +268,14 @@ export class Worker {
|
|
|
266
268
|
])
|
|
267
269
|
}
|
|
268
270
|
} catch (err) {
|
|
269
|
-
log.error(`worker for ${this.service} failed to notify broker about timeout shutdown`)
|
|
271
|
+
log.error(`worker [${this.workerId}] for ${this.service} failed to notify broker about timeout shutdown`)
|
|
270
272
|
log.error(err)
|
|
271
273
|
}
|
|
272
274
|
|
|
273
275
|
try {
|
|
274
276
|
await this.stop()
|
|
275
277
|
} catch (err) {
|
|
276
|
-
log.error(`worker for ${this.service} error while stopping after timeout`)
|
|
278
|
+
log.error(`worker [${this.workerId}] for ${this.service} error while stopping after timeout`)
|
|
277
279
|
log.error(err)
|
|
278
280
|
}
|
|
279
281
|
|
|
@@ -283,7 +285,7 @@ export class Worker {
|
|
|
283
285
|
/** Closes the current connection. Worker will reconnect unless shutdown() was called. */
|
|
284
286
|
async stop() {
|
|
285
287
|
|
|
286
|
-
log.debug(`worker for ${this.service} is stopping`)
|
|
288
|
+
log.debug(`worker [${this.workerId}] for ${this.service} is stopping`)
|
|
287
289
|
|
|
288
290
|
if (this.interval) clearInterval(this.interval);
|
|
289
291
|
this.interval = undefined
|
|
@@ -297,9 +299,9 @@ export class Worker {
|
|
|
297
299
|
this.service,
|
|
298
300
|
])
|
|
299
301
|
} catch {
|
|
300
|
-
log.debug(`worker for ${this.service} disconnect send failed (expected during shutdown)`)
|
|
302
|
+
log.debug(`worker [${this.workerId}] for ${this.service} disconnect send failed (expected during shutdown)`)
|
|
301
303
|
}
|
|
302
|
-
log.debug(`worker for ${this.service} is closing socket`)
|
|
304
|
+
log.debug(`worker [${this.workerId}] for ${this.service} is closing socket`)
|
|
303
305
|
this.socket.close()
|
|
304
306
|
}
|
|
305
307
|
this.socket = undefined
|
|
@@ -316,7 +318,7 @@ export class Worker {
|
|
|
316
318
|
|
|
317
319
|
async publish(channel: string, message: any) {
|
|
318
320
|
if (!this.socket) {
|
|
319
|
-
log.error(`worker for '${this.service}' not connected, cannot publish to ${channel}`,message)
|
|
321
|
+
log.error(`worker [${this.workerId}] for '${this.service}' not connected, cannot publish to ${channel}`,message)
|
|
320
322
|
return;
|
|
321
323
|
}
|
|
322
324
|
await this.socket.send([null, Header.Worker, Message.Publish, channel, pack(message, {})])
|