@nsshunt/stsappframework 3.3.104 → 3.3.106
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/commonTypes.js +11 -15
- package/dist/commonTypes.js.map +1 -1
- package/dist/controller/stscontrollerbase.js +1 -5
- package/dist/controller/stscontrollerbase.js.map +1 -1
- package/dist/controller/stslatencycontroller.js +5 -9
- package/dist/controller/stslatencycontroller.js.map +1 -1
- package/dist/grpc/grpcServer.js +24 -64
- package/dist/grpc/grpcServer.js.map +1 -1
- package/dist/index.js +15 -31
- package/dist/index.js.map +1 -1
- package/dist/logger/socketClientLogPublisher.js +26 -33
- package/dist/logger/socketClientLogPublisher.js.map +1 -1
- package/dist/logger/stsTransportLoggerSocket.js +4 -11
- package/dist/logger/stsTransportLoggerSocket.js.map +1 -1
- package/dist/logger/stsTransportLoggerWinston.js +2 -9
- package/dist/logger/stsTransportLoggerWinston.js.map +1 -1
- package/dist/logger/stsTransportWinston.js +3 -11
- package/dist/logger/stsTransportWinston.js.map +1 -1
- package/dist/middleware/serverNetworkMiddleware.js +28 -35
- package/dist/middleware/serverNetworkMiddleware.js.map +1 -1
- package/dist/network.js +4 -11
- package/dist/network.js.map +1 -1
- package/dist/process/masterprocessbase.js +95 -102
- package/dist/process/masterprocessbase.js.map +1 -1
- package/dist/process/processbase.js +63 -70
- package/dist/process/processbase.js.map +1 -1
- package/dist/process/serverprocessbase.js +47 -54
- package/dist/process/serverprocessbase.js.map +1 -1
- package/dist/process/singleprocessbase.js +10 -17
- package/dist/process/singleprocessbase.js.map +1 -1
- package/dist/process/workerprocessbase.js +26 -33
- package/dist/process/workerprocessbase.js.map +1 -1
- package/dist/publishertransports/publishTransportUtils.js +10 -14
- package/dist/publishertransports/publishTransportUtils.js.map +1 -1
- package/dist/route/stslatencyroute.js +4 -8
- package/dist/route/stslatencyroute.js.map +1 -1
- package/dist/route/stsrouterbase.js +3 -7
- package/dist/route/stsrouterbase.js.map +1 -1
- package/dist/server.test.js +5 -7
- package/dist/server.test.js.map +1 -1
- package/dist/stsexpressserver.js +32 -39
- package/dist/stsexpressserver.js.map +1 -1
- package/dist/validation/errors.js +1 -4
- package/dist/validation/errors.js.map +1 -1
- package/package.json +10 -9
- package/types/middleware/serverNetworkMiddleware.d.ts +3 -2
- package/types/middleware/serverNetworkMiddleware.d.ts.map +1 -1
- package/types/process/processbase.d.ts +1 -2
- package/types/process/processbase.d.ts.map +1 -1
|
@@ -1,28 +1,22 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ProcessBase = void 0;
|
|
7
1
|
/* eslint @typescript-eslint/no-explicit-any: 0, @typescript-eslint/no-unused-vars: 0 */ // --> OFF
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
class ProcessBase extends
|
|
2
|
+
import pidusage from 'pidusage';
|
|
3
|
+
import { memoryUsage } from 'process';
|
|
4
|
+
import cluster from 'node:cluster';
|
|
5
|
+
import si from 'systeminformation'; // https://systeminformation.io/
|
|
6
|
+
import { GetFirstNetworkInterface } from './../network.js';
|
|
7
|
+
import chalk from 'chalk';
|
|
8
|
+
import { Gauge } from '@nsshunt/stsobservability';
|
|
9
|
+
import { accessLayerType, DBAccessLayerManager, IDBAccessLayerEvents } from '@nsshunt/stsdatamanagement';
|
|
10
|
+
import { goptions } from '@nsshunt/stsconfig';
|
|
11
|
+
import { createAgentManager } from '@nsshunt/stsutils';
|
|
12
|
+
import { StatusCodes } from 'http-status-codes';
|
|
13
|
+
import { PublishInstrumentController, TransportType, GetInstruments } from '@nsshunt/stsinstrumentmanagerclient';
|
|
14
|
+
import os from 'os';
|
|
15
|
+
import { CreateServiceProcessContext } from './../commonTypes.js';
|
|
16
|
+
import { TinyEmitter } from 'tiny-emitter';
|
|
17
|
+
import http from 'node:http';
|
|
18
|
+
import https from 'node:https';
|
|
19
|
+
export class ProcessBase extends TinyEmitter {
|
|
26
20
|
#options;
|
|
27
21
|
#instrumentController = null;
|
|
28
22
|
#systemInformationInterval = null;
|
|
@@ -33,37 +27,37 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
33
27
|
constructor(options) {
|
|
34
28
|
super();
|
|
35
29
|
this.#options = options;
|
|
36
|
-
this.#instrumentControllerAgentManager =
|
|
30
|
+
this.#instrumentControllerAgentManager = createAgentManager({
|
|
37
31
|
agentOptions: {
|
|
38
32
|
keepAlive: false, // Use basic defaults. This agent will not use keep-alive.
|
|
39
|
-
maxFreeSockets:
|
|
40
|
-
maxSockets:
|
|
41
|
-
maxTotalSockets:
|
|
42
|
-
timeout:
|
|
43
|
-
rejectUnauthorized:
|
|
33
|
+
maxFreeSockets: goptions.maxFreeSockets,
|
|
34
|
+
maxSockets: goptions.maxSockets,
|
|
35
|
+
maxTotalSockets: goptions.maxTotalSockets,
|
|
36
|
+
timeout: goptions.timeout,
|
|
37
|
+
rejectUnauthorized: goptions.isProduction // Allows self-signed certificates if non-production
|
|
44
38
|
},
|
|
45
39
|
httpAgentFactory(options) {
|
|
46
|
-
return new
|
|
40
|
+
return new http.Agent(options);
|
|
47
41
|
},
|
|
48
42
|
httpsAgentFactory(options) {
|
|
49
|
-
return new
|
|
43
|
+
return new https.Agent(options);
|
|
50
44
|
}
|
|
51
45
|
});
|
|
52
46
|
if (options.serviceName) {
|
|
53
|
-
this.options.serviceProcessContext =
|
|
47
|
+
this.options.serviceProcessContext = CreateServiceProcessContext(options.serviceName, options.serviceVersion, options.serviceInstanceId, os.hostname(), process.pid, options.isMaster ? process.pid : process.ppid);
|
|
54
48
|
}
|
|
55
49
|
}
|
|
56
50
|
#GetFormattedLogMessage(message) {
|
|
57
51
|
let prefix = '';
|
|
58
52
|
let col = null;
|
|
59
53
|
const appName = this.options.serviceName;
|
|
60
|
-
if (
|
|
54
|
+
if (cluster.isPrimary) {
|
|
61
55
|
prefix = 'M';
|
|
62
|
-
col =
|
|
56
|
+
col = chalk.bold.cyan;
|
|
63
57
|
}
|
|
64
58
|
else {
|
|
65
59
|
prefix = 'W';
|
|
66
|
-
col =
|
|
60
|
+
col = chalk.green;
|
|
67
61
|
}
|
|
68
62
|
return col(`${prefix}(${process.pid}) [${appName}]: ${message}`);
|
|
69
63
|
}
|
|
@@ -77,7 +71,7 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
77
71
|
this.options.logger.warn(this.#GetFormattedLogMessage(message));
|
|
78
72
|
}
|
|
79
73
|
LogMessageToLoggerInstrument(message) {
|
|
80
|
-
this.UpdateInstrument(
|
|
74
|
+
this.UpdateInstrument(Gauge.LOGGER, {
|
|
81
75
|
LogMessage: this.#GetFormattedLogMessage(message)
|
|
82
76
|
});
|
|
83
77
|
}
|
|
@@ -92,10 +86,10 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
92
86
|
return;
|
|
93
87
|
}
|
|
94
88
|
let publishTransportOptions = null;
|
|
95
|
-
if (
|
|
89
|
+
if (goptions.observabilityPublishMode.localeCompare('PROXY') === 0) {
|
|
96
90
|
publishTransportOptions = {
|
|
97
|
-
transportType:
|
|
98
|
-
url: `${
|
|
91
|
+
transportType: TransportType.RESTAPI,
|
|
92
|
+
url: `${goptions.imendpoint}:${goptions.import}${goptions.imapiroot}/publishmessage`,
|
|
99
93
|
agentManager: this.#instrumentControllerAgentManager,
|
|
100
94
|
// socketPath: '/var/run/sts/stsrest01.sock'
|
|
101
95
|
logger: this.options.publisherLogger
|
|
@@ -105,7 +99,7 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
105
99
|
// Currently, now other types are supported
|
|
106
100
|
return;
|
|
107
101
|
}
|
|
108
|
-
const httpServer = (
|
|
102
|
+
const httpServer = (goptions.STSServerType.localeCompare('EXPRESS') === 0) || (goptions.STSServerType.localeCompare('EXPRESS_TLS') === 0);
|
|
109
103
|
//const fileName = './dist/publishInstrumentsWebWorker.js';
|
|
110
104
|
//const worker = new Worker(fileName);
|
|
111
105
|
const instrumentControllerOptions = {
|
|
@@ -119,7 +113,7 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
119
113
|
logger: this.options.publisherLogger,
|
|
120
114
|
publishInterval: this.options.publishInterval,
|
|
121
115
|
publishPostFailInterval: 5000, //@@
|
|
122
|
-
instrumentDefinitions:
|
|
116
|
+
instrumentDefinitions: GetInstruments('service'),
|
|
123
117
|
publishTransportBaseOptions: publishTransportOptions,
|
|
124
118
|
autoStart: true
|
|
125
119
|
/*
|
|
@@ -129,7 +123,7 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
129
123
|
]
|
|
130
124
|
*/
|
|
131
125
|
};
|
|
132
|
-
this.#instrumentController = new
|
|
126
|
+
this.#instrumentController = new PublishInstrumentController(instrumentControllerOptions);
|
|
133
127
|
}
|
|
134
128
|
/*
|
|
135
129
|
#GetDefaultServiceInstruments(httpServer: boolean): InstrumentDefinitions {
|
|
@@ -199,7 +193,7 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
199
193
|
if (this.#instrumentController) {
|
|
200
194
|
let useStatsCpu;
|
|
201
195
|
try {
|
|
202
|
-
const stats = await (
|
|
196
|
+
const stats = await pidusage(process.pid);
|
|
203
197
|
useStatsCpu = stats.cpu;
|
|
204
198
|
if (useStatsCpu < 0.01) {
|
|
205
199
|
useStatsCpu = 0.01; //@@ Endure we record something about 0. 0's are filtered from monitoring tools.
|
|
@@ -209,7 +203,7 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
209
203
|
this.LogWarnMessage(`ProcessBase:ProcessStartup:ExecuteGetStats():pidusage(): Error: [${error}]`);
|
|
210
204
|
useStatsCpu = 0.01; //@@ Endure we record something about 0. 0's are filtered from monitoring tools.
|
|
211
205
|
}
|
|
212
|
-
this.#instrumentController.UpdateInstrument(
|
|
206
|
+
this.#instrumentController.UpdateInstrument(Gauge.CPU_LOAD_GAUGE, {
|
|
213
207
|
val: useStatsCpu
|
|
214
208
|
});
|
|
215
209
|
}
|
|
@@ -228,7 +222,7 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
228
222
|
});
|
|
229
223
|
*/
|
|
230
224
|
// https://nodejs.org/api/process.html#processmemoryusage
|
|
231
|
-
const usage =
|
|
225
|
+
const usage = memoryUsage();
|
|
232
226
|
const telemetry = {
|
|
233
227
|
r: usage.rss,
|
|
234
228
|
t: usage.heapTotal,
|
|
@@ -236,15 +230,15 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
236
230
|
x: usage.external,
|
|
237
231
|
a: usage.arrayBuffers,
|
|
238
232
|
};
|
|
239
|
-
this.UpdateInstrument(
|
|
233
|
+
this.UpdateInstrument(Gauge.OBJECT_GAUGE, {
|
|
240
234
|
val: telemetry
|
|
241
235
|
});
|
|
242
236
|
this.CollectAdditionalTelemetry();
|
|
243
237
|
const totalTime = performance.now() - startTime;
|
|
244
|
-
const nextLoopTime =
|
|
238
|
+
const nextLoopTime = goptions.systemInformationInterval - totalTime;
|
|
245
239
|
this.#systemInformationInterval = setTimeout(ExecuteGetStats, nextLoopTime).unref();
|
|
246
240
|
};
|
|
247
|
-
this.#systemInformationInterval = setTimeout(ExecuteGetStats,
|
|
241
|
+
this.#systemInformationInterval = setTimeout(ExecuteGetStats, goptions.systemInformationInterval).unref();
|
|
248
242
|
if (this.options.useDatabase) {
|
|
249
243
|
// Get the accessLayer to force DB connection test
|
|
250
244
|
const accessLayer = this.accessLayer;
|
|
@@ -322,13 +316,13 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
322
316
|
}
|
|
323
317
|
*/
|
|
324
318
|
#UpdatePGPoolManagerInstrument = (data) => {
|
|
325
|
-
this.UpdateInstrument(
|
|
319
|
+
this.UpdateInstrument(Gauge.CONNECTION_POOL_TOTAL_GAUGE, {
|
|
326
320
|
val: data.totalCount
|
|
327
321
|
});
|
|
328
|
-
this.UpdateInstrument(
|
|
322
|
+
this.UpdateInstrument(Gauge.CONNECTION_POOL_IDLE_GAUGE, {
|
|
329
323
|
val: data.idleCount
|
|
330
324
|
});
|
|
331
|
-
this.UpdateInstrument(
|
|
325
|
+
this.UpdateInstrument(Gauge.CONNECTION_POOL_WAITING_GAUGE, {
|
|
332
326
|
val: data.waitingCount
|
|
333
327
|
});
|
|
334
328
|
};
|
|
@@ -336,33 +330,33 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
336
330
|
if (this.#accessLayer) {
|
|
337
331
|
const logPrefix = `ProcessBase:TerminateDatabase():${process.pid}:`;
|
|
338
332
|
this.LogInfoMessage(`${logPrefix} Ending database connections and pools.`);
|
|
339
|
-
this.#accessLayer.off(
|
|
333
|
+
this.#accessLayer.off(IDBAccessLayerEvents.UpdateInstruments, this.#UpdatePGPoolManagerInstrument);
|
|
340
334
|
await this.#accessLayer.EndDatabase();
|
|
341
335
|
}
|
|
342
336
|
}
|
|
343
337
|
get accessLayer() {
|
|
344
338
|
if (this.options.useDatabase) {
|
|
345
339
|
if (this.#accessLayer === null) {
|
|
346
|
-
this.#accessLayer = new
|
|
347
|
-
accessLayerType:
|
|
340
|
+
this.#accessLayer = new DBAccessLayerManager().CreateAccessLayer({
|
|
341
|
+
accessLayerType: accessLayerType.postgresql,
|
|
348
342
|
accessLayerOptions: {
|
|
349
343
|
logger: this.options.logger,
|
|
350
344
|
usedefaultdb: false
|
|
351
345
|
}
|
|
352
346
|
});
|
|
353
|
-
this.#accessLayer.on(
|
|
347
|
+
this.#accessLayer.on(IDBAccessLayerEvents.UpdateInstruments, this.#UpdatePGPoolManagerInstrument);
|
|
354
348
|
(async () => {
|
|
355
349
|
try {
|
|
356
350
|
const retVal = await this.accessLayer.GetResourceCount();
|
|
357
|
-
if (retVal.status !==
|
|
358
|
-
this.LogInfoMessage(
|
|
351
|
+
if (retVal.status !== StatusCodes.OK) {
|
|
352
|
+
this.LogInfoMessage(chalk.red(`Unable to get resources from the database. Is the database running? [${JSON.stringify(retVal)}]`));
|
|
359
353
|
}
|
|
360
354
|
else {
|
|
361
|
-
this.LogInfoMessage(
|
|
355
|
+
this.LogInfoMessage(chalk.green(`Database connection successful. Resources: [${retVal.detail}]`));
|
|
362
356
|
}
|
|
363
357
|
}
|
|
364
358
|
catch (error) {
|
|
365
|
-
this.LogInfoMessage(
|
|
359
|
+
this.LogInfoMessage(chalk.red(`Unable to get resources from the database. Is the database running? Error: [${error}]`));
|
|
366
360
|
}
|
|
367
361
|
})();
|
|
368
362
|
}
|
|
@@ -375,14 +369,14 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
375
369
|
const valueObject = {
|
|
376
370
|
cpu: '*'
|
|
377
371
|
};
|
|
378
|
-
const sysinfo = await
|
|
372
|
+
const sysinfo = await si.get(valueObject);
|
|
379
373
|
let numCPUs = 2;
|
|
380
|
-
if (
|
|
381
|
-
if (
|
|
382
|
-
numCPUs =
|
|
374
|
+
if (goptions.useCPUs > 0) {
|
|
375
|
+
if (goptions.useCPUs >= 1) {
|
|
376
|
+
numCPUs = goptions.useCPUs;
|
|
383
377
|
}
|
|
384
378
|
else {
|
|
385
|
-
numCPUs = Math.round(sysinfo.cpu.cores *
|
|
379
|
+
numCPUs = Math.round(sysinfo.cpu.cores * goptions.useCPUs);
|
|
386
380
|
}
|
|
387
381
|
}
|
|
388
382
|
else {
|
|
@@ -398,10 +392,10 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
398
392
|
cpu: '*',
|
|
399
393
|
mem: '*'
|
|
400
394
|
};
|
|
401
|
-
const sysinfo = await
|
|
395
|
+
const sysinfo = await si.get(valueObject);
|
|
402
396
|
const numCPUs = await this.GetNumCPUs();
|
|
403
397
|
const hostname = sysinfo.osInfo.hostname;
|
|
404
|
-
const hostaddr =
|
|
398
|
+
const hostaddr = GetFirstNetworkInterface();
|
|
405
399
|
if (hostaddr !== null) {
|
|
406
400
|
this.LogInfoMessage(`Host Address: ${hostaddr}`);
|
|
407
401
|
}
|
|
@@ -418,10 +412,10 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
418
412
|
GetSignalColour = (signal) => {
|
|
419
413
|
let msgcolor = null;
|
|
420
414
|
if (signal === 'SIGINT') {
|
|
421
|
-
msgcolor =
|
|
415
|
+
msgcolor = chalk.yellow;
|
|
422
416
|
}
|
|
423
417
|
else {
|
|
424
|
-
msgcolor =
|
|
418
|
+
msgcolor = chalk.red;
|
|
425
419
|
}
|
|
426
420
|
return msgcolor;
|
|
427
421
|
};
|
|
@@ -438,5 +432,4 @@ class ProcessBase extends tiny_emitter_1.TinyEmitter {
|
|
|
438
432
|
return this;
|
|
439
433
|
}
|
|
440
434
|
}
|
|
441
|
-
exports.ProcessBase = ProcessBase;
|
|
442
435
|
//# sourceMappingURL=processbase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processbase.js","sourceRoot":"","sources":["../../src/process/processbase.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"processbase.js","sourceRoot":"","sources":["../../src/process/processbase.ts"],"names":[],"mappings":"AAAA,wFAAwF,CAAE,UAAU;AACpG,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,MAAM,mBAAmB,CAAA,CAAC,gCAAgC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAE1D,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAwG,MAAM,2BAA2B,CAAA;AAEvJ,OAAO,EAAkB,eAAe,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AAExH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAE7C,OAAO,EAA6B,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,2BAA2B,EAChC,aAAa,EAAsC,cAAc,EAAE,MAAM,qCAAqC,CAAA;AAElH,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAgB,2BAA2B,EAAsC,MAAM,qBAAqB,CAAA;AAEnH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,KAAK,MAAM,YAAY,CAAA;AAE9B,MAAM,OAAgB,WAAY,SAAQ,WAAW;IACjD,QAAQ,CAAiB;IACzB,qBAAqB,GAAuC,IAAI,CAAC;IACjE,0BAA0B,GAA0B,IAAI,CAAC;IACzD,+HAA+H;IAC/H,YAAY,GAA0B,IAAI,CAAC;IAC3C,iCAAiC,CAAgB;IACjD,0DAA0D;IAE1D,YAAY,OAAuB;QAC/B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAExB,IAAI,CAAC,iCAAiC,GAAG,kBAAkB,CAAC;YACxD,YAAY,EAAE;gBACV,SAAS,EAAE,KAAK,EAAE,0DAA0D;gBAC5E,cAAc,EAAE,QAAQ,CAAC,cAAc;gBACvC,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,eAAe,EAAE,QAAQ,CAAC,eAAe;gBACzC,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,kBAAkB,EAAE,QAAQ,CAAC,YAAY,CAAC,oDAAoD;aACjG;YACD,gBAAgB,CAAC,OAAO;gBACpB,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACnC,CAAC;YACD,iBAAiB,CAAC,OAAO;gBACrB,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,qBAAqB,GAAG,2BAA2B,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,iBAAiB,EACnI,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAClF,CAAC;IACL,CAAC;IAED,uBAAuB,CAAC,OAAe;QACnC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAEzC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,GAAG,GAAG,CAAC;YACb,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1B,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,GAAG,CAAC;YACb,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC;QACtB,CAAC;QACD,OAAO,GAAG,CAAC,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,MAAM,OAAO,MAAM,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,eAAe,CAAC,OAAY;QACxB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,cAAc,CAAC,OAAY;QACvB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,cAAc,CAAC,OAAY;QACvB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,4BAA4B,CAAC,OAAY;QACrC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE;YAChC,UAAU,EAAE,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC;SAC1B,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAA0B,CAAC;IAC3C,CAAC;IAED,IAAI,YAAY;QACZ,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,oBAAoB;QAChB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YACtC,OAAO;QACX,CAAC;QAED,IAAI,uBAAuB,GAA8C,IAAI,CAAC;QAC9E,IAAI,QAAQ,CAAC,wBAAwB,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACjE,uBAAuB,GAAG;gBACtB,aAAa,EAAE,aAAa,CAAC,OAAO;gBACpC,GAAG,EAAE,GAAG,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,SAAS,iBAAiB;gBACpF,YAAY,EAAE,IAAI,CAAC,iCAAiC;gBACpD,4CAA4C;gBAC5C,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;aACvC,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,2CAA2C;YAC3C,OAAO;QACX,CAAC;QAED,MAAM,UAAU,GAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QAEnJ,2DAA2D;QAC3D,sCAAsC;QAEtC,MAAM,2BAA2B,GAAwC;YAErE,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,qBAAqB;YAClD,6CAA6C;YAC7C,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc;YAC3C,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB;YACjD,UAAU;YACV,kCAAkC,EAAE,IAAI,CAAC,OAAO,CAAC,kCAAkC;YACnF,yBAAyB,EAAE,IAAI,CAAC,OAAO,CAAC,yBAAyB;YACjE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;YACpC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;YAC7C,uBAAuB,EAAE,IAAI,EAAE,IAAI;YACnC,qBAAqB,EAAE,cAAc,CAAC,SAAS,CAAC;YAChD,2BAA2B,EAAE,uBAAuB;YACpD,SAAS,EAAE,IAAI;YACf;;;;;cAKE;SACL,CAAA;QAED,IAAI,CAAC,qBAAqB,GAAG,IAAI,2BAA2B,CAAC,2BAA2B,CAAC,CAAC;IAC9F,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAqDE;IAEF,wBAAwB;QACpB,OAAO,EAAG,CAAC;IACf,CAAC;IAED,0BAA0B;IAE1B,CAAC;IAED,cAAc,GAAG,GAAG,EAAE;QAClB,mBAAmB;QACnB,mEAAmE;QACnE,gFAAgF;QAEhF,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;YAC/B,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAEpC,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC7B,IAAI,WAAW,CAAC;gBAChB,IAAI,CAAC;oBACD,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;oBACzC,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC;oBACxB,IAAI,WAAW,GAAG,IAAI,EAAE,CAAC;wBACrB,WAAW,GAAG,IAAI,CAAC,CAAC,gFAAgF;oBACxG,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,IAAI,CAAC,cAAc,CAAC,oEAAoE,KAAK,GAAG,CAAC,CAAA;oBACjG,WAAW,GAAG,IAAI,CAAC,CAAC,gFAAgF;gBACxG,CAAC;gBACD,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,KAAK,CAAC,cAAc,EAAE;oBAC9D,GAAG,EAAE,WAAW;iBACS,CAAC,CAAC;YACnC,CAAC;YAAA,CAAC;YAEF;;;;;;;;;;;;cAYE;YAEF,yDAAyD;YACzD,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAe;gBAC1B,CAAC,EAAE,KAAK,CAAC,GAAG;gBACZ,CAAC,EAAE,KAAK,CAAC,SAAS;gBAClB,CAAC,EAAE,KAAK,CAAC,QAAQ;gBACjB,CAAC,EAAE,KAAK,CAAC,QAAQ;gBACjB,CAAC,EAAE,KAAK,CAAC,YAAY;aACxB,CAAA;YAED,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,YAAY,EAAE;gBACtC,GAAG,EAAE,SAAS;aACY,CAAC,CAAC;YAEhC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAElC,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAChD,MAAM,YAAY,GAAG,QAAQ,CAAC,yBAAyB,GAAG,SAAS,CAAC;YAEpE,IAAI,CAAC,0BAA0B,GAAG,UAAU,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC;QACxF,CAAC,CAAA;QAED,IAAI,CAAC,0BAA0B,GAAG,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,yBAAyB,CAAC,CAAC,KAAK,EAAE,CAAC;QAE1G,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC3B,kDAAkD;YAClD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACzC,CAAC;QAED,mGAAmG;IACvG,CAAC,CAAA;IAED,gBAAgB,GAAG,CAAC,cAAqB,EAAE,SAAkC,EAAE,EAAE;QAC7E,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC7B,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAC3E,CAAC;IACL,CAAC,CAAA;IAED,WAAW,GAAG,CAAC,gBAAwB,EAAE,EAAE;QACvC,IAAI,IAAI,CAAC,OAAO,CAAC,sBAAsB,IAAI,IAAI,CAAC,OAAO,CAAC,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACtF,UAAU,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,cAAc,CAAC,6BAA6B,CAAC,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,gDAAgD;QAC1E,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,cAAc,CAAC,yCAAyC,CAAC,CAAC;QACnE,CAAC;IACL,CAAC,CAAA;IAED,6BAA6B,GAAG,GAAG,EAAE;QACjC,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,IAAI,CAAC,cAAc,CAAC,6CAA6C,CAAC,CAAC;YACnE,UAAU,CAAC,KAAK,IAAI,EAAE;gBAClB,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC5B,MAAM,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,CAAC;oBAC7C,UAAU,CAAC,GAAG,EAAE;wBACZ,IAAI,CAAC,iCAAiC,CAAC,SAAS,EAAE,CAAC;oBACvD,CAAC,EAAE,EAAE,CAAC,CAAC;gBACX,CAAC;YACL,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,CAAC;IACL,CAAC,CAAA;IAED,IAAI,oBAAoB;QACpB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACtC,CAAC;IAED,gBAAgB,CAAC,cAAqB;QAElC,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,qBAAqB,GAAG,GAAG,EAAE;QACzB,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC;YAClC,IAAI,CAAC,cAAc,CAAC,6EAA6E,CAAC,CAAC;YACnG,IAAI,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE,CAAC;QACvC,CAAC;IACL,CAAC,CAAA;IAED,KAAK,CAAC,gBAAgB;QAClB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE9B,IAAI,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,YAAY,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;QAEvC,sCAAsC;IAC1C,CAAC;IAED;;;OAGA;IACA,eAAe;QACX,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;;;;;;MAUE;IAEF,8BAA8B,GAAG,CAAC,IAAS,EAAE,EAAE;QAC3C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,2BAA2B,EAAE;YACrD,GAAG,EAAE,IAAI,CAAC,UAAU;SACK,CAAC,CAAC;QAE/B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,0BAA0B,EAAE;YACpD,GAAG,EAAE,IAAI,CAAC,SAAS;SACM,CAAC,CAAC;QAE/B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,6BAA6B,EAAE;YACvD,GAAG,EAAE,IAAI,CAAC,YAAY;SACG,CAAC,CAAC;IACnC,CAAC,CAAA;IAED,KAAK,CAAC,iBAAiB;QACnB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,MAAM,SAAS,GAAG,mCAAmC,OAAO,CAAC,GAAG,GAAG,CAAC;YACpE,IAAI,CAAC,cAAc,CAAC,GAAG,SAAS,yCAAyC,CAAC,CAAC;YAC3E,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,IAAI,CAAC,8BAA8B,CAAC,CAAA;YAClG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;QAC1C,CAAC;IACL,CAAC;IAED,IAAI,WAAW;QAEX,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;gBAE7B,IAAI,CAAC,YAAY,GAAG,IAAI,oBAAoB,EAAE,CAAC,iBAAiB,CAAC;oBAC7D,eAAe,EAAE,eAAe,CAAC,UAAU;oBAC3C,kBAAkB,EAAE;wBAChB,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;wBAC3B,YAAY,EAAE,KAAK;qBACtB;iBACJ,CAAC,CAAC;gBAEH,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBAElG,CAAC,KAAK,IAAI,EAAE;oBACR,IAAI,CAAC;wBACD,MAAM,MAAM,GAAG,MAAO,IAAI,CAAC,WAA8B,CAAC,gBAAgB,EAAE,CAAC;wBAC7E,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,CAAC,EAAE,EAAE,CAAC;4BACnC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,wEAAwE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;wBACtI,CAAC;6BAAM,CAAC;4BACJ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,+CAA+C,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBACtG,CAAC;oBACL,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACb,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,+EAA+E,KAAK,GAAG,CAAC,CAAC,CAAC;oBAC5H,CAAC;gBACL,CAAC,CAAC,EAAE,CAAC;YACT,CAAC;YACD,OAAO,IAAI,CAAC,YAAY,CAAC;QAC7B,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,UAAU,GAAG,KAAK,IAAqB,EAAE;QACrC,gCAAgC;QAChC,MAAM,WAAW,GAAG;YAChB,GAAG,EAAE,GAAG;SACX,CAAA;QAED,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,QAAQ,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,QAAQ,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC;gBACxB,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACJ,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC/D,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;QACxC,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC,CAAA;IAED,kBAAkB,GAAG,KAAK,IAAI,EAAE;QAC5B,gCAAgC;QAChC,MAAM,WAAW,GAAG;YAChB,MAAM,EAAE,GAAG;YACX,MAAM,EAAE,GAAG;YACX,GAAG,EAAE,GAAG;YACR,GAAG,EAAE,GAAG;SACX,CAAA;QAED,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;QAEzC,MAAM,QAAQ,GAAG,wBAAwB,EAAE,CAAC;QAC5C,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC,cAAc,CAAC,iBAAiB,QAAQ,EAAE,CAAC,CAAC;QACrD,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,wBAAwB,OAAO,gBAAgB,CAAC,CAAC;QAErE,IAAI,CAAC,cAAc,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,cAAc,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,cAAc,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3D,IAAI,CAAC,cAAc,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC,CAAA;IAED,eAAe,GAAG,CAAC,MAAW,EAAE,EAAE;QAC9B,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtB,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,CAAC;aAAM,CAAC;YACJ,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC;QACzB,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC,CAAC;IAEF,IAAI,CAAqC,KAAQ,EAAE,GAAG,GAA0B;QAC5E,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,EAAE,CAAqC,KAAQ,EAAE,QAAiD;QAC9F,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,GAAG,CAAqC,KAAQ,EAAE,QAAiD;QAC/F,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;CAOJ"}
|
|
@@ -1,36 +1,30 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ServerProcessBase = void 0;
|
|
7
1
|
/* eslint @typescript-eslint/no-explicit-any: 0, @typescript-eslint/no-unused-vars: 0 */ // --> OFF
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { goptions } from '@nsshunt/stsconfig';
|
|
4
|
+
import fs from 'node:fs';
|
|
5
|
+
import { Sleep } from '@nsshunt/stsutils';
|
|
6
|
+
import { ProcessBase } from './processbase.js';
|
|
7
|
+
import { register, Counter, collectDefaultMetrics, AggregatorRegistry } from 'prom-client';
|
|
8
|
+
import { createServer as createServerHttps } from 'node:https';
|
|
9
|
+
import { createServer } from 'node:http';
|
|
10
|
+
import tls from 'node:tls';
|
|
11
|
+
import { Server } from "socket.io";
|
|
12
|
+
import { STSExpressServer } from './../stsexpressserver.js';
|
|
13
|
+
import { createAdapter as clusterCreateAdapter } from '@socket.io/cluster-adapter';
|
|
14
|
+
import { createAdapter } from "@socket.io/redis-streams-adapter";
|
|
21
15
|
//import { ClusterAdapterWithHeartbeat } from 'socket.io-adaptor';
|
|
22
16
|
//import { createAdapter } from "@socket.io/redis-adapter";
|
|
23
17
|
//import { createClient, RedisClientType } from 'redis';
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
18
|
+
import { Redis } from 'ioredis';
|
|
19
|
+
import jayson from 'jayson';
|
|
20
|
+
import { STSTransportLoggerWinston } from './../logger/stsTransportLoggerWinston.js';
|
|
27
21
|
/**
|
|
28
22
|
* todo
|
|
29
23
|
* @typedef {Object} options - todo
|
|
30
24
|
* @property {boolean} [wssServer=false] - Create a web socket server on this worker instance
|
|
31
25
|
*/
|
|
32
|
-
class ServerProcessBase extends
|
|
33
|
-
#masterProcessExitTime =
|
|
26
|
+
export class ServerProcessBase extends ProcessBase {
|
|
27
|
+
#masterProcessExitTime = goptions.masterProcessExitTime;
|
|
34
28
|
#io = null;
|
|
35
29
|
//#redisClient: RedisClientType | Redis | null = null;
|
|
36
30
|
#redisClient = null;
|
|
@@ -56,13 +50,13 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
56
50
|
// Setup server to Prometheus scrapes:
|
|
57
51
|
#SetupPrometheusEndPoints = (expressServer) => {
|
|
58
52
|
// AggregatorRegistry is required here in the worker as well as the master in order for prom-client to work correctly.
|
|
59
|
-
new
|
|
53
|
+
new AggregatorRegistry();
|
|
60
54
|
const prefix = 'sts_';
|
|
61
|
-
|
|
55
|
+
collectDefaultMetrics({
|
|
62
56
|
labels: { NODE_APP_INSTANCE: process.pid },
|
|
63
57
|
prefix: prefix
|
|
64
58
|
});
|
|
65
|
-
const c = new
|
|
59
|
+
const c = new Counter({
|
|
66
60
|
name: 'sts_test_counter',
|
|
67
61
|
help: 'Example of a counter',
|
|
68
62
|
labelNames: ['code'],
|
|
@@ -76,8 +70,8 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
76
70
|
}, 500).unref();
|
|
77
71
|
expressServer.get('/metrics', async (req, res) => {
|
|
78
72
|
try {
|
|
79
|
-
res.set('Content-Type',
|
|
80
|
-
res.end(await
|
|
73
|
+
res.set('Content-Type', register.contentType);
|
|
74
|
+
res.end(await register.metrics());
|
|
81
75
|
}
|
|
82
76
|
catch (ex) {
|
|
83
77
|
res.status(500).end(ex);
|
|
@@ -85,8 +79,8 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
85
79
|
});
|
|
86
80
|
expressServer.get('/metrics/counter', async (req, res) => {
|
|
87
81
|
try {
|
|
88
|
-
res.set('Content-Type',
|
|
89
|
-
res.end(await
|
|
82
|
+
res.set('Content-Type', register.contentType);
|
|
83
|
+
res.end(await register.getSingleMetricAsString('test_counter'));
|
|
90
84
|
}
|
|
91
85
|
catch (ex) {
|
|
92
86
|
res.status(500).end(ex);
|
|
@@ -140,7 +134,7 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
140
134
|
options.path = this.options.wssCustomPath;
|
|
141
135
|
}
|
|
142
136
|
//this.#io = require("socket.io")(this.#httpServer, options);
|
|
143
|
-
this.#io = new
|
|
137
|
+
this.#io = new Server(this.#httpServer, options);
|
|
144
138
|
if (this.options.useSocketIoRedisAdaptor) {
|
|
145
139
|
/*
|
|
146
140
|
// This uses redis client
|
|
@@ -157,13 +151,13 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
157
151
|
await this.#redisClient.connect();
|
|
158
152
|
*/
|
|
159
153
|
// This uses ioredis client
|
|
160
|
-
this.#redisClient = new
|
|
161
|
-
this.#io.adapter(
|
|
154
|
+
this.#redisClient = new Redis(this.options.socketIoRedisAdaptorUrl);
|
|
155
|
+
this.#io.adapter(createAdapter(this.#redisClient));
|
|
162
156
|
this.LogInfoMessage(`Redis successfully connected.`);
|
|
163
157
|
}
|
|
164
158
|
else {
|
|
165
159
|
if (this.options.clusterMode) {
|
|
166
|
-
this.#io.adapter((
|
|
160
|
+
this.#io.adapter(clusterCreateAdapter());
|
|
167
161
|
this.LogInfoMessage(`Using nodejs cluster mode for socket.io cluster management`);
|
|
168
162
|
}
|
|
169
163
|
else {
|
|
@@ -183,16 +177,16 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
183
177
|
};
|
|
184
178
|
#GetTLSOptions = () => {
|
|
185
179
|
return {
|
|
186
|
-
key:
|
|
187
|
-
cert:
|
|
180
|
+
key: fs.readFileSync(this.options.httpsServerKeyPath),
|
|
181
|
+
cert: fs.readFileSync(this.options.httpsServerCertificatePath)
|
|
188
182
|
};
|
|
189
183
|
};
|
|
190
184
|
#SetupExpressServer = async (useTls) => {
|
|
191
185
|
if (useTls) {
|
|
192
|
-
this.#httpServer = (
|
|
186
|
+
this.#httpServer = createServerHttps(this.#GetTLSOptions(), this.#expressServer.App);
|
|
193
187
|
}
|
|
194
188
|
else {
|
|
195
|
-
this.#httpServer =
|
|
189
|
+
this.#httpServer = createServer(this.#expressServer.App);
|
|
196
190
|
}
|
|
197
191
|
if (this.options.prometheusSupport === true) {
|
|
198
192
|
this.#SetupPrometheusEndPoints(this.#expressServer.App);
|
|
@@ -211,7 +205,7 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
211
205
|
};
|
|
212
206
|
#SetupTCPRawServer = async () => {
|
|
213
207
|
// The second parameter is the automatic listener for the secureConnection event from the tls.Server class
|
|
214
|
-
this.#httpServer =
|
|
208
|
+
this.#httpServer = tls.createServer(this.#GetTLSOptions(), this.#SetupTLSServer);
|
|
215
209
|
this.#httpServer.listen(this.options.listenPort, 'stscore.stsmda.org', () => {
|
|
216
210
|
this.LogInfoMessage('TCP Server is running on port ' + this.options.listenPort + '.');
|
|
217
211
|
}).on('listening', () => {
|
|
@@ -219,7 +213,7 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
219
213
|
});
|
|
220
214
|
};
|
|
221
215
|
#SetupJSONRPCServer = async () => {
|
|
222
|
-
const jaysonServer = new
|
|
216
|
+
const jaysonServer = new jayson.server();
|
|
223
217
|
// Supported methods here - move somewhere else ...
|
|
224
218
|
jaysonServer.method("add", function (args, callback) {
|
|
225
219
|
callback(null, args[0] + args[1]);
|
|
@@ -239,14 +233,14 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
239
233
|
if (this.options.wssServer === true && this.#io !== null) {
|
|
240
234
|
const logPrefix = `ServerProcessBase:TerminateSockets():${process.pid}:`;
|
|
241
235
|
this.LogInfoMessage(`${logPrefix} Disconnect SocketIO Sockets (Sleeping...)`);
|
|
242
|
-
await
|
|
236
|
+
await Sleep(250);
|
|
243
237
|
this.LogInfoMessage(`${logPrefix} this.#io.of('/').adapter.close()`);
|
|
244
238
|
await this.#io?.of('/').adapter.close();
|
|
245
239
|
if (this.#redisClient) {
|
|
246
240
|
this.LogInfoMessage(`${logPrefix} this.#redisClient.disconnect()`);
|
|
247
241
|
this.#redisClient.disconnect();
|
|
248
242
|
this.LogInfoMessage(`${logPrefix} after this.#redisClient.disconnect() (Sleeping...)`);
|
|
249
|
-
await
|
|
243
|
+
await Sleep(50);
|
|
250
244
|
}
|
|
251
245
|
// boot all current connections
|
|
252
246
|
this.LogInfoMessage(`${logPrefix} this.#io.disconnectSockets()`);
|
|
@@ -280,9 +274,9 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
280
274
|
TerminateHTTPServer = async () => {
|
|
281
275
|
const logPrefix = `ServerProcessBase:TerminateHTTPServer():${process.pid}:`;
|
|
282
276
|
if (this.#httpServer !== null) {
|
|
283
|
-
if (
|
|
277
|
+
if (goptions.STSServerType.localeCompare('TCPRAW_TLS') === 0) {
|
|
284
278
|
this.#sockets.forEach((socket, index, array) => {
|
|
285
|
-
this.LogInfoMessage(
|
|
279
|
+
this.LogInfoMessage(chalk.yellow(`${logPrefix} TCP Socket destroy, remote address: [${socket.remoteAddress}], remote port: [${socket.remotePort}]`));
|
|
286
280
|
socket.destroy();
|
|
287
281
|
//socket.end();
|
|
288
282
|
});
|
|
@@ -330,7 +324,7 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
330
324
|
// without return here, socket.io cluster adaptor terminates in an error state
|
|
331
325
|
// as the implementation relies on cluster.on to send messages to worker threads
|
|
332
326
|
// but these have already been closed from the process.exit(0) below.
|
|
333
|
-
await
|
|
327
|
+
await Sleep(1000); // Allow socket.io time to clean-up
|
|
334
328
|
if (this.options.clusterMode === true) {
|
|
335
329
|
if (clusterPerformExit === true) {
|
|
336
330
|
setTimeout(() => {
|
|
@@ -366,7 +360,7 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
366
360
|
});
|
|
367
361
|
}
|
|
368
362
|
ProcessStarted() {
|
|
369
|
-
const transport = new
|
|
363
|
+
const transport = new STSTransportLoggerWinston({
|
|
370
364
|
stsApp: this
|
|
371
365
|
});
|
|
372
366
|
setTimeout(() => {
|
|
@@ -374,10 +368,10 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
374
368
|
}, 0);
|
|
375
369
|
}
|
|
376
370
|
async SetupServerEx() {
|
|
377
|
-
this.LogInfoMessage(
|
|
371
|
+
this.LogInfoMessage(chalk.green(`ServerProcessBase:SetupServerEx(): Main Process:${process.pid} Starting ...`));
|
|
378
372
|
this.ProcessStartup();
|
|
379
373
|
if (this.options.expressServerRouteFactory || this.options.expressServerRouteStaticFactory) {
|
|
380
|
-
this.expressServer = new
|
|
374
|
+
this.expressServer = new STSExpressServer(this.options, this);
|
|
381
375
|
}
|
|
382
376
|
this.LogInfoMessage(`ServerProcessBase:SetupServerEx(): Worker instance starting. Service instance Id: [${this.options.serviceInstanceId}]`);
|
|
383
377
|
// Signal Codes
|
|
@@ -392,20 +386,20 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
392
386
|
});
|
|
393
387
|
process.on('exit', (code) => {
|
|
394
388
|
if (code === 0) {
|
|
395
|
-
this.LogInfoMessage(
|
|
389
|
+
this.LogInfoMessage(chalk.green(`ServerProcessBase:SetupServerEx(): Process: ${process.pid} terminated gracefully with code: ${code}`));
|
|
396
390
|
}
|
|
397
391
|
else {
|
|
398
|
-
this.LogInfoMessage(
|
|
392
|
+
this.LogInfoMessage(chalk.red(`ServerProcessBase:SetupServerEx(): Process: ${process.pid} terminated with code: ${code}`));
|
|
399
393
|
}
|
|
400
394
|
});
|
|
401
395
|
await this.SetupSTSServer();
|
|
402
396
|
this.ProcessStarted();
|
|
403
|
-
this.LogInfoMessage(
|
|
397
|
+
this.LogInfoMessage(chalk.green(`ServerProcessBase:SetupServerEx(): Main Process:${process.pid} Started`));
|
|
404
398
|
return true;
|
|
405
399
|
}
|
|
406
400
|
;
|
|
407
401
|
SetupSTSServer = async () => {
|
|
408
|
-
switch (
|
|
402
|
+
switch (goptions.STSServerType) {
|
|
409
403
|
case 'EXPRESS':
|
|
410
404
|
await this.#SetupExpressServer(false);
|
|
411
405
|
break;
|
|
@@ -421,5 +415,4 @@ class ServerProcessBase extends processbase_js_1.ProcessBase {
|
|
|
421
415
|
}
|
|
422
416
|
};
|
|
423
417
|
}
|
|
424
|
-
exports.ServerProcessBase = ServerProcessBase;
|
|
425
418
|
//# sourceMappingURL=serverprocessbase.js.map
|