@nsshunt/stsappframework 3.3.186 → 4.0.1
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 +1 -12
- package/dist/commonTypes.js.map +1 -1
- package/dist/exampleapp/app.js +238 -0
- package/dist/exampleapp/app.js.map +1 -0
- package/dist/index.js +11 -7
- package/dist/index.js.map +1 -1
- package/dist/logger/stsTransportLoggerSocket.js +0 -1
- package/dist/logger/stsTransportLoggerSocket.js.map +1 -1
- package/dist/{process → plugins}/clusterworkermanager.js +37 -36
- package/dist/plugins/clusterworkermanager.js.map +1 -0
- package/dist/plugins/pgpoolmanager.js +186 -0
- package/dist/plugins/pgpoolmanager.js.map +1 -0
- package/dist/{process → plugins}/servertypes/serverUtils.js.map +1 -1
- package/dist/{process → plugins}/servertypes/stsexpressserver.js +44 -19
- package/dist/plugins/servertypes/stsexpressserver.js.map +1 -0
- package/dist/{process → plugins}/servertypes/stsjsonrpcserver.js +2 -3
- package/dist/plugins/servertypes/stsjsonrpcserver.js.map +1 -0
- package/dist/{process → plugins}/servertypes/stsserverfactory.js +2 -2
- package/dist/plugins/servertypes/stsserverfactory.js.map +1 -0
- package/dist/{process → plugins}/servertypes/ststcprawserver.js +2 -2
- package/dist/plugins/servertypes/ststcprawserver.js.map +1 -0
- package/dist/plugins/stsclusterworkermanagerplugin.js +54 -0
- package/dist/plugins/stsclusterworkermanagerplugin.js.map +1 -0
- package/dist/{process/plugins → plugins}/stsconfigplugin.js +2 -2
- package/dist/plugins/stsconfigplugin.js.map +1 -0
- package/dist/plugins/stsexpresscontrollerplugin.js +47 -0
- package/dist/plugins/stsexpresscontrollerplugin.js.map +1 -0
- package/dist/{process/plugins/stsmetricsplugin.js → plugins/stsinstrumentmanagerplugin.js} +36 -23
- package/dist/plugins/stsinstrumentmanagerplugin.js.map +1 -0
- package/dist/plugins/stslatencymanager.js +122 -0
- package/dist/plugins/stslatencymanager.js.map +1 -0
- package/dist/plugins/stslatencyplugin.js +29 -0
- package/dist/plugins/stslatencyplugin.js.map +1 -0
- package/dist/plugins/stslifecycleplugin.js +48 -0
- package/dist/plugins/stslifecycleplugin.js.map +1 -0
- package/dist/plugins/stsloggerplugin.js +60 -0
- package/dist/plugins/stsloggerplugin.js.map +1 -0
- package/dist/{process/metrics.js → plugins/stsmetricsplugin.js} +33 -9
- package/dist/plugins/stsmetricsplugin.js.map +1 -0
- package/dist/plugins/stspgpoolmanagerplugin.js +67 -0
- package/dist/plugins/stspgpoolmanagerplugin.js.map +1 -0
- package/dist/plugins/stsserverplugin.js +89 -0
- package/dist/plugins/stsserverplugin.js.map +1 -0
- package/dist/route/stsrootroute.js +10 -0
- package/dist/route/stsrootroute.js.map +1 -0
- package/dist/stsapp.js +190 -0
- package/dist/stsapp.js.map +1 -0
- package/package.json +15 -22
- package/types/commonTypes.d.ts +28 -203
- package/types/commonTypes.d.ts.map +1 -1
- package/types/exampleapp/app.d.ts +2 -0
- package/types/exampleapp/app.d.ts.map +1 -0
- package/types/index.d.ts +11 -7
- package/types/index.d.ts.map +1 -1
- package/types/logger/stsTransportLoggerSocket.d.ts.map +1 -1
- package/types/{process → plugins}/clusterworkermanager.d.ts +5 -1
- package/types/plugins/clusterworkermanager.d.ts.map +1 -0
- package/types/plugins/pgpoolmanager.d.ts +34 -0
- package/types/plugins/pgpoolmanager.d.ts.map +1 -0
- package/types/{process → plugins}/servertypes/serverUtils.d.ts.map +1 -1
- package/types/plugins/servertypes/stsexpressserver.d.ts +22 -0
- package/types/plugins/servertypes/stsexpressserver.d.ts.map +1 -0
- package/types/{process → plugins}/servertypes/stsjsonrpcserver.d.ts +1 -9
- package/types/plugins/servertypes/stsjsonrpcserver.d.ts.map +1 -0
- package/types/{process → plugins}/servertypes/stsserverfactory.d.ts +2 -4
- package/types/plugins/servertypes/stsserverfactory.d.ts.map +1 -0
- package/types/{process → plugins}/servertypes/ststcprawserver.d.ts +1 -9
- package/types/plugins/servertypes/ststcprawserver.d.ts.map +1 -0
- package/types/plugins/stsclusterworkermanagerplugin.d.ts +16 -0
- package/types/plugins/stsclusterworkermanagerplugin.d.ts.map +1 -0
- package/types/{process/plugins → plugins}/stsconfigplugin.d.ts +1 -1
- package/types/plugins/stsconfigplugin.d.ts.map +1 -0
- package/types/plugins/stsexpresscontrollerplugin.d.ts +25 -0
- package/types/plugins/stsexpresscontrollerplugin.d.ts.map +1 -0
- package/types/plugins/stsinstrumentmanagerplugin.d.ts +31 -0
- package/types/plugins/stsinstrumentmanagerplugin.d.ts.map +1 -0
- package/types/plugins/stslatencymanager.d.ts +24 -0
- package/types/plugins/stslatencymanager.d.ts.map +1 -0
- package/types/plugins/stslatencyplugin.d.ts +12 -0
- package/types/plugins/stslatencyplugin.d.ts.map +1 -0
- package/types/plugins/stslifecycleplugin.d.ts +25 -0
- package/types/plugins/stslifecycleplugin.d.ts.map +1 -0
- package/types/plugins/stsloggerplugin.d.ts +19 -0
- package/types/plugins/stsloggerplugin.d.ts.map +1 -0
- package/types/{process/metrics.d.ts → plugins/stsmetricsplugin.d.ts} +12 -5
- package/types/plugins/stsmetricsplugin.d.ts.map +1 -0
- package/types/plugins/stspgpoolmanagerplugin.d.ts +14 -0
- package/types/plugins/stspgpoolmanagerplugin.d.ts.map +1 -0
- package/types/plugins/stsserverplugin.d.ts +16 -0
- package/types/plugins/stsserverplugin.d.ts.map +1 -0
- package/types/route/stsrootroute.d.ts +5 -0
- package/types/route/stsrootroute.d.ts.map +1 -0
- package/types/{process/stsapp.d.ts → stsapp.d.ts} +6 -2
- package/types/stsapp.d.ts.map +1 -0
- package/dist/grpc/grpcServer.js +0 -415
- package/dist/grpc/grpcServer.js.map +0 -1
- package/dist/process/appConfig.js +0 -103
- package/dist/process/appConfig.js.map +0 -1
- package/dist/process/clusterworkermanager.js.map +0 -1
- package/dist/process/datamanager.js +0 -78
- package/dist/process/datamanager.js.map +0 -1
- package/dist/process/latencyManager.js +0 -56
- package/dist/process/latencyManager.js.map +0 -1
- package/dist/process/logManager.js +0 -36
- package/dist/process/logManager.js.map +0 -1
- package/dist/process/masterprocessbase.js +0 -154
- package/dist/process/masterprocessbase.js.map +0 -1
- package/dist/process/metrics.js.map +0 -1
- package/dist/process/plugins/plugintypes.js +0 -2
- package/dist/process/plugins/plugintypes.js.map +0 -1
- package/dist/process/plugins/stsconfigplugin.js.map +0 -1
- package/dist/process/plugins/stsloggerplugin.js +0 -26
- package/dist/process/plugins/stsloggerplugin.js.map +0 -1
- package/dist/process/plugins/stsmetricsplugin.js.map +0 -1
- package/dist/process/plugins/ststestplugin.js +0 -26
- package/dist/process/plugins/ststestplugin.js.map +0 -1
- package/dist/process/processbase.js +0 -203
- package/dist/process/processbase.js.map +0 -1
- package/dist/process/prometheusmanager.js +0 -112
- package/dist/process/prometheusmanager.js.map +0 -1
- package/dist/process/server.js +0 -4
- package/dist/process/server.js.map +0 -1
- package/dist/process/serverprocessbase.js +0 -204
- package/dist/process/serverprocessbase.js.map +0 -1
- package/dist/process/servertypes/stsexpressserver.js.map +0 -1
- package/dist/process/servertypes/stsjsonrpcserver.js.map +0 -1
- package/dist/process/servertypes/stsserverfactory.js.map +0 -1
- package/dist/process/servertypes/ststcprawserver.js.map +0 -1
- package/dist/process/singleprocessbase.js +0 -48
- package/dist/process/singleprocessbase.js.map +0 -1
- package/dist/process/stsapp.js +0 -48
- package/dist/process/stsapp.js.map +0 -1
- package/dist/process/sysinfo.js +0 -56
- package/dist/process/sysinfo.js.map +0 -1
- package/dist/process/workerprocessbase.js +0 -35
- package/dist/process/workerprocessbase.js.map +0 -1
- package/dist/publishertransports/publishTransportUtils.js +0 -43
- package/dist/publishertransports/publishTransportUtils.js.map +0 -1
- package/dist/sysinfo/network.js +0 -31
- package/dist/sysinfo/network.js.map +0 -1
- package/types/grpc/grpcServer.d.ts +0 -31
- package/types/grpc/grpcServer.d.ts.map +0 -1
- package/types/process/appConfig.d.ts +0 -3
- package/types/process/appConfig.d.ts.map +0 -1
- package/types/process/clusterworkermanager.d.ts.map +0 -1
- package/types/process/datamanager.d.ts +0 -15
- package/types/process/datamanager.d.ts.map +0 -1
- package/types/process/latencyManager.d.ts +0 -10
- package/types/process/latencyManager.d.ts.map +0 -1
- package/types/process/logManager.d.ts +0 -9
- package/types/process/logManager.d.ts.map +0 -1
- package/types/process/masterprocessbase.d.ts +0 -13
- package/types/process/masterprocessbase.d.ts.map +0 -1
- package/types/process/metrics.d.ts.map +0 -1
- package/types/process/plugins/plugintypes.d.ts +0 -7
- package/types/process/plugins/plugintypes.d.ts.map +0 -1
- package/types/process/plugins/stsconfigplugin.d.ts.map +0 -1
- package/types/process/plugins/stsloggerplugin.d.ts +0 -14
- package/types/process/plugins/stsloggerplugin.d.ts.map +0 -1
- package/types/process/plugins/stsmetricsplugin.d.ts +0 -19
- package/types/process/plugins/stsmetricsplugin.d.ts.map +0 -1
- package/types/process/plugins/ststestplugin.d.ts +0 -10
- package/types/process/plugins/ststestplugin.d.ts.map +0 -1
- package/types/process/processbase.d.ts +0 -19
- package/types/process/processbase.d.ts.map +0 -1
- package/types/process/prometheusmanager.d.ts +0 -10
- package/types/process/prometheusmanager.d.ts.map +0 -1
- package/types/process/server.d.ts +0 -5
- package/types/process/server.d.ts.map +0 -1
- package/types/process/serverprocessbase.d.ts +0 -18
- package/types/process/serverprocessbase.d.ts.map +0 -1
- package/types/process/servertypes/stsexpressserver.d.ts +0 -34
- package/types/process/servertypes/stsexpressserver.d.ts.map +0 -1
- package/types/process/servertypes/stsjsonrpcserver.d.ts.map +0 -1
- package/types/process/servertypes/stsserverfactory.d.ts.map +0 -1
- package/types/process/servertypes/ststcprawserver.d.ts.map +0 -1
- package/types/process/singleprocessbase.d.ts +0 -14
- package/types/process/singleprocessbase.d.ts.map +0 -1
- package/types/process/stsapp.d.ts.map +0 -1
- package/types/process/sysinfo.d.ts +0 -8
- package/types/process/sysinfo.d.ts.map +0 -1
- package/types/process/workerprocessbase.d.ts +0 -8
- package/types/process/workerprocessbase.d.ts.map +0 -1
- package/types/publishertransports/publishTransportUtils.d.ts +0 -5
- package/types/publishertransports/publishTransportUtils.d.ts.map +0 -1
- package/types/sysinfo/network.d.ts +0 -4
- package/types/sysinfo/network.d.ts.map +0 -1
- /package/dist/{process → plugins}/servertypes/serverUtils.js +0 -0
- /package/types/{process → plugins}/servertypes/serverUtils.d.ts +0 -0
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
// prometheusmanager.ts
|
|
2
|
-
/* eslint @typescript-eslint/no-explicit-any: 0, @typescript-eslint/no-unused-vars: 0 */ // --> OFF
|
|
3
|
-
import fs from "node:fs";
|
|
4
|
-
import { createServer as createServerHttps } from "node:https";
|
|
5
|
-
import { createServer } from "node:http";
|
|
6
|
-
import { goptions } from "@nsshunt/stsconfig";
|
|
7
|
-
import { LogManagerToken, ProcessOptionsToken } from "./../commonTypes.js";
|
|
8
|
-
import { inject } from "@nsshunt/stsutils";
|
|
9
|
-
import { TinyEmitter } from "tiny-emitter";
|
|
10
|
-
import express from "express";
|
|
11
|
-
import { register, Counter, collectDefaultMetrics, AggregatorRegistry, } from "prom-client";
|
|
12
|
-
const PROMETHEUS_CLUSTER_PATH = "/cluster_metrics";
|
|
13
|
-
export class PrometheusManager extends TinyEmitter {
|
|
14
|
-
#httpServer = null; // Prometheus cluster server. See https://github.com/siimon/prom-client/blob/master/example/cluster.js
|
|
15
|
-
#metricsServer = null;
|
|
16
|
-
#aggregatorRegistry = null;
|
|
17
|
-
options = inject(ProcessOptionsToken);
|
|
18
|
-
logManager = inject(LogManagerToken);
|
|
19
|
-
constructor() {
|
|
20
|
-
super();
|
|
21
|
-
}
|
|
22
|
-
// https://github.com/siimon/prom-client/blob/master/example/cluster.js
|
|
23
|
-
SetupPrometheusForMaster = () => {
|
|
24
|
-
this.#metricsServer = express();
|
|
25
|
-
this.#aggregatorRegistry = new AggregatorRegistry();
|
|
26
|
-
switch (goptions.STSServerType) {
|
|
27
|
-
case "EXPRESS_TLS":
|
|
28
|
-
{
|
|
29
|
-
const options = {
|
|
30
|
-
key: fs.readFileSync(this.options.httpsServerKeyPath),
|
|
31
|
-
cert: fs.readFileSync(this.options.httpsServerCertificatePath),
|
|
32
|
-
};
|
|
33
|
-
this.#httpServer = createServerHttps(options, this.#metricsServer);
|
|
34
|
-
}
|
|
35
|
-
break;
|
|
36
|
-
case "EXPRESS": {
|
|
37
|
-
this.#httpServer = createServer(this.#metricsServer);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
this.#metricsServer.get(PROMETHEUS_CLUSTER_PATH, async (req, res) => {
|
|
41
|
-
try {
|
|
42
|
-
const metrics = await this.#aggregatorRegistry.clusterMetrics();
|
|
43
|
-
res.set("Content-Type", this.#aggregatorRegistry.contentType);
|
|
44
|
-
res.send(metrics);
|
|
45
|
-
}
|
|
46
|
-
catch (ex) {
|
|
47
|
-
res.statusCode = 500;
|
|
48
|
-
res.send(ex.message);
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
try {
|
|
52
|
-
// https://stackoverflow.com/questions/21342828/node-express-unix-domain-socket-permissions
|
|
53
|
-
//@@httpServer.listen('/tmp/stsrest01.sock').on('listening', () =>
|
|
54
|
-
//@@httpServer.listen('/var/run/sts/stsrest01.sock').on('listening', () =>
|
|
55
|
-
//@@httpServer.listen('/var/lib/sts/stsrest01.sock').on('listening', () =>
|
|
56
|
-
this.#httpServer
|
|
57
|
-
.listen(this.options.prometheusClusterPort, () => {
|
|
58
|
-
//@@chmodSync(this.options.port, 511);
|
|
59
|
-
})
|
|
60
|
-
.on("listening", () => {
|
|
61
|
-
this.emit("prometheusScrapesListening", `${this.options.endpoint}:${this.options.prometheusClusterPort}${PROMETHEUS_CLUSTER_PATH}`, this.options.endpoint, this.options.prometheusClusterPort);
|
|
62
|
-
this.logManager.LogInfoMessage(`Prometheus scrapes ready and live on ${this.options.endpoint}:${this.options.prometheusClusterPort}${PROMETHEUS_CLUSTER_PATH}`);
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
catch (error) {
|
|
66
|
-
this.logManager.LogErrorMessage(`SetupPrometheusForMaster(): Error: [${error}]`);
|
|
67
|
-
throw error;
|
|
68
|
-
}
|
|
69
|
-
this.SetupPrometheusEndPoints(this.#metricsServer);
|
|
70
|
-
};
|
|
71
|
-
// Setup server to Prometheus scrapes:
|
|
72
|
-
SetupPrometheusEndPoints = (expressServer) => {
|
|
73
|
-
// AggregatorRegistry is required here in the worker as well as the master in order for prom-client to work correctly.
|
|
74
|
-
new AggregatorRegistry();
|
|
75
|
-
const prefix = "sts_";
|
|
76
|
-
collectDefaultMetrics({
|
|
77
|
-
labels: { NODE_APP_INSTANCE: process.pid },
|
|
78
|
-
prefix: prefix,
|
|
79
|
-
});
|
|
80
|
-
const c = new Counter({
|
|
81
|
-
name: "sts_test_counter",
|
|
82
|
-
help: "Example of a counter",
|
|
83
|
-
labelNames: ["code"],
|
|
84
|
-
});
|
|
85
|
-
setInterval(() => {
|
|
86
|
-
c.inc({ code: 200 });
|
|
87
|
-
}, 1000).unref();
|
|
88
|
-
setInterval(() => {
|
|
89
|
-
c.inc({ code: 400 });
|
|
90
|
-
c.inc({ code: "worker_" + process.pid });
|
|
91
|
-
}, 500).unref();
|
|
92
|
-
expressServer.get("/metrics", async (req, res) => {
|
|
93
|
-
try {
|
|
94
|
-
res.set("Content-Type", register.contentType);
|
|
95
|
-
res.end(await register.metrics());
|
|
96
|
-
}
|
|
97
|
-
catch (ex) {
|
|
98
|
-
res.status(500).end(ex);
|
|
99
|
-
}
|
|
100
|
-
});
|
|
101
|
-
expressServer.get("/metrics/counter", async (req, res) => {
|
|
102
|
-
try {
|
|
103
|
-
res.set("Content-Type", register.contentType);
|
|
104
|
-
res.end(await register.getSingleMetricAsString("test_counter"));
|
|
105
|
-
}
|
|
106
|
-
catch (ex) {
|
|
107
|
-
res.status(500).end(ex);
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
//# sourceMappingURL=prometheusmanager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prometheusmanager.js","sourceRoot":"","sources":["../../src/process/prometheusmanager.ts"],"names":[],"mappings":"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"}
|
package/dist/process/server.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/process/server.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,sBAAsB;IAC/B,YAAY,GAAoB,IAAG,CAAC;CACvC"}
|
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
// serverprocessbase.ts
|
|
2
|
-
/* eslint @typescript-eslint/no-explicit-any: 0, @typescript-eslint/no-unused-vars: 0 */ // --> OFF
|
|
3
|
-
import chalk from "chalk";
|
|
4
|
-
import { goptions } from "@nsshunt/stsconfig";
|
|
5
|
-
import { Sleep } from "@nsshunt/stsutils";
|
|
6
|
-
import { STSServerToken, STSTransportLoggerWinstonToken, DataManagerToken, PublishInstrumentControllerToken, LogManagerToken, } from "./../commonTypes.js";
|
|
7
|
-
import { ProcessBase } from "./processbase.js";
|
|
8
|
-
import { CreateSTSServer } from "./servertypes/stsserverfactory.js";
|
|
9
|
-
import { Gauge } from "@nsshunt/stsobservability";
|
|
10
|
-
/**
|
|
11
|
-
* todo
|
|
12
|
-
* @typedef {Object} options - todo
|
|
13
|
-
* @property {boolean} [wssServer=false] - Create a web socket server on this worker instance
|
|
14
|
-
*/
|
|
15
|
-
export class ServerProcessBase extends ProcessBase {
|
|
16
|
-
#masterProcessExitTime = goptions.masterProcessExitTime;
|
|
17
|
-
#shuttingDown = false;
|
|
18
|
-
#CORE_DOMAIN = "stscore.stsmda.org";
|
|
19
|
-
#serverProcessInjector;
|
|
20
|
-
#logManager;
|
|
21
|
-
constructor(options) {
|
|
22
|
-
super(options);
|
|
23
|
-
this.#serverProcessInjector = this.ProcessBaseInjector().createChild([
|
|
24
|
-
{
|
|
25
|
-
provide: STSServerToken,
|
|
26
|
-
useFactory: () => {
|
|
27
|
-
return this.#SetupSTSServer();
|
|
28
|
-
},
|
|
29
|
-
},
|
|
30
|
-
]);
|
|
31
|
-
this.#logManager = this.ProcessBaseInjector().get(LogManagerToken);
|
|
32
|
-
}
|
|
33
|
-
ServerProcessInjector() {
|
|
34
|
-
return this.#serverProcessInjector;
|
|
35
|
-
}
|
|
36
|
-
get shuttingDown() {
|
|
37
|
-
return this.#shuttingDown;
|
|
38
|
-
}
|
|
39
|
-
// Terminate in order;
|
|
40
|
-
// forked worker threads (send signal)
|
|
41
|
-
// De-Register service
|
|
42
|
-
// systeminformation observers
|
|
43
|
-
// instrument timers (gauge etc.)
|
|
44
|
-
// publisher
|
|
45
|
-
// terminate UI (if loaded)
|
|
46
|
-
Terminate = async (clusterPerformExit, signal) => {
|
|
47
|
-
const logPrefix = `ServerProcessBase:Terminate():${process.pid}:`;
|
|
48
|
-
if (this.#shuttingDown === false) {
|
|
49
|
-
this.#shuttingDown = true;
|
|
50
|
-
if (signal) {
|
|
51
|
-
this.#logManager?.LogInfoMessage(this.GetSignalColour(signal)(`${logPrefix} Received signal: ${signal}`));
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
this.#logManager?.LogInfoMessage(this.GetSignalColour(null)(`${logPrefix} Received Terminate without signal.`));
|
|
55
|
-
}
|
|
56
|
-
await this.ProcessTerminate();
|
|
57
|
-
await this.ProcessBaseInjector()
|
|
58
|
-
.get(DataManagerToken)
|
|
59
|
-
?.TerminateDatabase();
|
|
60
|
-
// Output final messages here (before TerminateInstrumentController)
|
|
61
|
-
if (this.options.clusterMode) {
|
|
62
|
-
this.#logManager?.LogInfoMessage(`${logPrefix} clusterPerformExit value: [${clusterPerformExit}]`);
|
|
63
|
-
if (clusterPerformExit) {
|
|
64
|
-
this.#logManager?.LogInfoMessage(`${logPrefix} Process will self terminate with process.exit(0).`);
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
this.#logManager?.LogInfoMessage(`${logPrefix} Child process will not self terminate. Terminate will be handled by master process.`);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
this.TerminateInstrumentController();
|
|
71
|
-
//@@ always return here appears to always cleanly exit
|
|
72
|
-
// and cleanly exit from socket.io cluster adaptor
|
|
73
|
-
// without return here, socket.io cluster adaptor terminates in an error state
|
|
74
|
-
// as the implementation relies on cluster.on to send messages to worker threads
|
|
75
|
-
// but these have already been closed from the process.exit(0) below.
|
|
76
|
-
await Sleep(1000); // Allow socket.io time to clean-up
|
|
77
|
-
if (this.options.clusterMode === true) {
|
|
78
|
-
if (clusterPerformExit === true) {
|
|
79
|
-
setTimeout(() => {
|
|
80
|
-
process.exit(0);
|
|
81
|
-
}, 0);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
else {
|
|
85
|
-
this.ProcessExit(this.#masterProcessExitTime);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
this.#logManager?.LogInfoMessage(`${logPrefix} Process already terminating.`);
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
ProcessStarted() {
|
|
93
|
-
const transport = this.ProcessBaseInjector().get(STSTransportLoggerWinstonToken);
|
|
94
|
-
setTimeout(() => {
|
|
95
|
-
this.options.logger.add(transport);
|
|
96
|
-
}, 0);
|
|
97
|
-
}
|
|
98
|
-
async SetupServer() {
|
|
99
|
-
this.#logManager?.LogInfoMessage(chalk.green(`ServerProcessBase:SetupServerEx(): Main Process:${process.pid} Starting ...`));
|
|
100
|
-
this.ProcessStartup();
|
|
101
|
-
this.#logManager?.LogInfoMessage(`ServerProcessBase:SetupServerEx(): Worker instance starting. Service instance Id: [${this.options.serviceInstanceId}]`);
|
|
102
|
-
this.#SetupProcessEvents();
|
|
103
|
-
this.#serverProcessInjector.get(STSServerToken);
|
|
104
|
-
this.#CollectAdditionalTelemetry();
|
|
105
|
-
this.ProcessStarted();
|
|
106
|
-
this.#logManager?.LogInfoMessage(chalk.green(`ServerProcessBase:SetupServerEx(): Main Process:${process.pid} Started`));
|
|
107
|
-
return true;
|
|
108
|
-
}
|
|
109
|
-
#SetupProcessEvents = () => {
|
|
110
|
-
// Signal Codes
|
|
111
|
-
// https://en.wikipedia.org/wiki/Signal_(IPC)
|
|
112
|
-
process.on("SIGTERM", async () => {
|
|
113
|
-
this.#logManager?.LogInfoMessage(`ServerProcessBase:SetupServerEx(): SIGTERM signal received for worker: ${process.pid}`);
|
|
114
|
-
await this.Terminate(true, "SIGTERM");
|
|
115
|
-
});
|
|
116
|
-
process.on("SIGINT", async () => {
|
|
117
|
-
this.#logManager?.LogInfoMessage(`ServerProcessBase:SetupServerEx(): SIGINT signal received for worker: ${process.pid}`);
|
|
118
|
-
await this.Terminate(true, "SIGINT");
|
|
119
|
-
});
|
|
120
|
-
process.on("exit", (code) => {
|
|
121
|
-
if (code === 0) {
|
|
122
|
-
this.#logManager?.LogInfoMessage(chalk.green(`ServerProcessBase:SetupServerEx(): Process: ${process.pid} terminated gracefully with code: ${code}`));
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
this.#logManager?.LogInfoMessage(chalk.red(`ServerProcessBase:SetupServerEx(): Process: ${process.pid} terminated with code: ${code}`));
|
|
126
|
-
}
|
|
127
|
-
});
|
|
128
|
-
};
|
|
129
|
-
#CollectAdditionalTelemetry() {
|
|
130
|
-
const server = this.#serverProcessInjector.get(STSServerToken);
|
|
131
|
-
const im = this.ProcessBaseInjector().get(PublishInstrumentControllerToken);
|
|
132
|
-
try {
|
|
133
|
-
server
|
|
134
|
-
?.GetHttpServer()
|
|
135
|
-
?.getConnections((error, count) => {
|
|
136
|
-
im.UpdateInstrument(Gauge.CONNECTION_COUNT_GAUGE, {
|
|
137
|
-
val: count,
|
|
138
|
-
});
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
catch (error) { }
|
|
142
|
-
}
|
|
143
|
-
#SetupSTSServer = () => {
|
|
144
|
-
const expressConfig = {
|
|
145
|
-
useTls: false,
|
|
146
|
-
apiRoot: this.options.apiRoot,
|
|
147
|
-
clusterMode: this.options.clusterMode,
|
|
148
|
-
endpoint: this.options.endpoint,
|
|
149
|
-
listenPort: parseInt(this.options.listenPort),
|
|
150
|
-
prometheusSupport: this.options.prometheusSupport,
|
|
151
|
-
serviceName: this.options.serviceName,
|
|
152
|
-
useSocketIoRedisAdaptor: this.options.useSocketIoRedisAdaptor,
|
|
153
|
-
wssServer: this.options.wssServer,
|
|
154
|
-
expressServerRouteFactory: this.options.expressServerRouteFactory,
|
|
155
|
-
expressServerRouteStaticFactory: this.options.expressServerRouteStaticFactory,
|
|
156
|
-
httpsServerCertificatePath: this.options.httpsServerCertificatePath,
|
|
157
|
-
httpsServerKeyPath: this.options.httpsServerKeyPath,
|
|
158
|
-
socketIoRedisAdaptorUrl: this.options.socketIoRedisAdaptorUrl,
|
|
159
|
-
wssCustomPath: this.options.wssCustomPath,
|
|
160
|
-
};
|
|
161
|
-
switch (goptions.STSServerType) {
|
|
162
|
-
case "EXPRESS":
|
|
163
|
-
expressConfig.useTls = false;
|
|
164
|
-
return CreateSTSServer({
|
|
165
|
-
serverType: "EXPRESS",
|
|
166
|
-
options: expressConfig,
|
|
167
|
-
});
|
|
168
|
-
case "EXPRESS_TLS":
|
|
169
|
-
expressConfig.useTls = true;
|
|
170
|
-
return CreateSTSServer({
|
|
171
|
-
serverType: "EXPRESS_TLS",
|
|
172
|
-
options: expressConfig,
|
|
173
|
-
});
|
|
174
|
-
case "TCPRAW_TLS":
|
|
175
|
-
return CreateSTSServer({
|
|
176
|
-
serverType: "TCPRAW_TLS",
|
|
177
|
-
options: {
|
|
178
|
-
httpsServerKeyPath: this.options.httpsServerKeyPath,
|
|
179
|
-
httpsServerCertificatePath: this.options.httpsServerCertificatePath,
|
|
180
|
-
listenPort: parseInt(this.options.listenPort),
|
|
181
|
-
endpoint: this.options.endpoint,
|
|
182
|
-
apiRoot: this.options.apiRoot,
|
|
183
|
-
coreDomain: this.#CORE_DOMAIN,
|
|
184
|
-
},
|
|
185
|
-
});
|
|
186
|
-
case "JSONRPC2_TLS":
|
|
187
|
-
return CreateSTSServer({
|
|
188
|
-
serverType: "JSONRPC2_TLS",
|
|
189
|
-
options: {
|
|
190
|
-
httpsServerKeyPath: this.options.httpsServerKeyPath,
|
|
191
|
-
httpsServerCertificatePath: this.options.httpsServerCertificatePath,
|
|
192
|
-
listenPort: parseInt(this.options.listenPort),
|
|
193
|
-
endpoint: this.options.endpoint,
|
|
194
|
-
apiRoot: this.options.apiRoot,
|
|
195
|
-
coreDomain: this.#CORE_DOMAIN,
|
|
196
|
-
},
|
|
197
|
-
});
|
|
198
|
-
case "NONE":
|
|
199
|
-
return undefined;
|
|
200
|
-
}
|
|
201
|
-
throw new Error(`SetupSTSServer(): Unknown server type: [${goptions.STSServerType}]`);
|
|
202
|
-
};
|
|
203
|
-
}
|
|
204
|
-
//# sourceMappingURL=serverprocessbase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serverprocessbase.js","sourceRoot":"","sources":["../../src/process/serverprocessbase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stsexpressserver.js","sourceRoot":"","sources":["../../../src/process/servertypes/stsexpressserver.ts"],"names":[],"mappings":"AAAA,wFAAwF,CAAC,UAAU;AACnG,OAAO,OAAqD,MAAM,SAAS,CAAC;AAE5E,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,OAAO,EACH,uBAAuB,EACvB,gCAAgC,GACnC,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EACH,cAAc,EACd,gCAAgC,GAInC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACH,KAAK,GAIR,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAEH,uBAAuB,EACvB,gCAAgC,GACnC,MAAM,+CAA+C,CAAC;AACvD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EACH,YAAY,IAAI,iBAAiB,GAEpC,MAAM,YAAY,CAAC;AACpB,OAAO,EACH,YAAY,IAAI,gBAAgB,GAEnC,MAAM,WAAW,CAAC;AAsBnB,MAAM,OAAO,gBAAgB;IACzB,QAAQ,CAA2B;IACnC,wBAAwB,GAAW,IAAI,CAAC;IAChC,UAAU,CAA4B;IAC9C,WAAW,GAAwB,EAAE,CAAC;IAErB,2BAA2B,GAAG,MAAM,CACjD,gCAAgC,CACnC,CAAC;IAEe,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IAEjD,YAAY,OAAiC;QACzC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,6BAA6B,GAAG,GAA4B,EAAE;QAC1D,wDAAwD;QACxD,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,CAAC;YACxD,cAAc,EAAE,QAAQ,CAAC,cAAc;SAC1C,CAAC,CAAC;QAEH,uBAAuB,CAAC,EAAE,CACtB,gCAAgC,CAAC,uBAAuB,EACxD,GAAG,EAAE;YACD,IAAI,CAAC,2BAA4B,CAAC,gBAAgB,CAC9C,KAAK,CAAC,oBAAoB,EAC1B;gBACI,GAAG,EAAE,CAAC;aACmB,CAChC,CAAC;QACN,CAAC,CACJ,CAAC;QAEF,uBAAuB,CAAC,EAAE,CACtB,gCAAgC,CAAC,uBAAuB,EACxD,GAAG,EAAE;YACD,IAAI,CAAC,2BAA4B,CAAC,gBAAgB,CAC9C,KAAK,CAAC,oBAAoB,EAC1B;gBACI,GAAG,EAAE,CAAC;aACmB,CAChC,CAAC;QACN,CAAC,CACJ,CAAC;QAEF,uBAAuB,CAAC,EAAE,CACtB,gCAAgC,CAAC,uBAAuB,EACxD,CAAC,QAAQ,EAAE,EAAE;YACT,IAAI,CAAC,2BAA4B,CAAC,gBAAgB,CAC9C,KAAK,CAAC,wBAAwB,EAC9B;gBACI,GAAG,EAAE,QAAQ;aACgB,CACpC,CAAC;QACN,CAAC,CACJ,CAAC;QAEF,uBAAuB,CAAC,EAAE,CACtB,gCAAgC,CAAC,sBAAsB,EACvD,CAAC,UAAe,EAAE,EAAE;YAChB,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC;YAEhC,IAAI,CAAC,2BAA4B,CAAC,gBAAgB,CAC9C,KAAK,CAAC,cAAc,EACpB;gBACI,GAAG,EAAE,QAAQ;aACgB,CACpC,CAAC;YAEF,IAAK,QAAmB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBACvD,MAAM,OAAO,GAAG,4GAA4G,IAAI,CAAC,wBAAwB,iBAAiB,QAAQ,wBAAwB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC;gBACxO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;oBACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;gBACtC,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;gBACtC,CAAC;YACL,CAAC;QACL,CAAC,CACJ,CAAC;QAEF,uBAAuB,CAAC,EAAE,CACtB,gCAAgC,CAAC,uBAAuB,EACxD,GAAG,EAAE;YACD,IAAI,CAAC,2BAA4B,CAAC,gBAAgB,CAC9C,KAAK,CAAC,mBAAmB,EACzB;gBACI,GAAG,EAAE,CAAC;aACmB,CAChC,CAAC;QACN,CAAC,CACJ,CAAC;QAEF,uBAAuB,CAAC,EAAE,CACtB,gCAAgC,CAAC,sBAAsB,EACvD,GAAG,EAAE;YACD,IACI,IAAI,CAAC,2BAA4B,CAAC,gBAAgB,CAC9C,KAAK,CAAC,cAAc,CACvB,EACH,CAAC;gBACC,IAAI,CAAC,2BAA4B,CAAC,gBAAgB,CAC9C,KAAK,CAAC,cAAc,EACpB;oBACI,GAAG,EAAE,CAAC;iBACsB,CACnC,CAAC;YACN,CAAC;QACL,CAAC,CACJ,CAAC;QAEF,OAAO,uBAAuB,CAAC;IACnC,CAAC,CAAC;IAEF,uBAAuB,GAAG,GAA4B,EAAE;QACpD,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,CAAC;YACxD,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW;YAC/B,WAAW,EAAE,KAAK;YAClB,MAAM,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC,CAAC;QAEH,uBAAuB,CAAC,EAAE,CACtB,gCAAgC,CAAC,+BAA+B,EAChE,CAAC,IAAmB,EAAE,EAAE;YACpB,IAAI,CAAC,2BAA4B,CAAC,gBAAgB,CAC9C,KAAK,CAAC,gBAAgB,EACtB;gBACI,GAAG,EAAE,IAAI,CAAC,gBAAgB;aACD,CAChC,CAAC;YAEF,IAAI,CAAC,2BAA4B,CAAC,gBAAgB,CAC9C,KAAK,CAAC,gBAAgB,EACtB;gBACI,GAAG,EAAE,IAAI,CAAC,mBAAmB;aACJ,CAChC,CAAC;QACN,CAAC,CACJ,CAAC;QAEF,OAAO,uBAAuB,CAAC;IACnC,CAAC,CAAC;IAEF,mBAAmB,GAAG,GAAY,EAAE;QAChC,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;QAEtB,+HAA+H;QAC/H,uDAAuD;QACvD,0DAA0D;QAC1D,GAAG,CAAC,GAAG,CACH,IAAI,CAAC;YACD,WAAW,EAAE,IAAI;YACjB,MAAM,EAAE,IAAI;SACf,CAAC,CACL;aACI,GAAG,CAAC,YAAY,EAAE,CAAC;aACnB,GAAG,CACA,OAAO,CAAC,UAAU,CAAC;YACf,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,QAAQ,CAAC,cAAc;SACjC,CAAC,CACL;aACA,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC;aACrD,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,CAAC,UAAU,CAAC;aACpD,GAAG,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,UAAU,CAAC,CAAC;QAEpD,uDAAuD;QACvD,oEAAoE;QACpE,IAAI,IAAI,CAAC,QAAQ,CAAC,+BAA+B,EAAE,CAAC;YAChD,IAAI,CAAC,QAAQ,CAAC,+BAA+B,CAAC,GAAG,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,yBAAyB,EAAE,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC;QAED,mCAAmC;QACnC,GAAG,CAAC,GAAG,CAAC,UACJ,GAAQ,EACR,GAAY,EACZ,GAAa,EACb,IAAkB;YAElB,IAAI,GAAG,EAAE,CAAC;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACJ,IAAI,EAAE,CAAC;YACX,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;IAEF,iCAAiC,GAAG,CAAC,GAAY,EAAQ,EAAE;QACvD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACvB,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAC/B,aAAa,CACT,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAChC,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAC3C,EACD,GAAG,CACN,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YAC3C,IAAI,iBAAiB,EAAE,CAAC,wBAAwB,EAAE,CAAC;QACvD,CAAC;QAED,2FAA2F;QAC3F,kEAAkE;QAClE,0EAA0E;QAC1E,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YAClD,sCAAsC;YACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,WAAW,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAC1F,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,IAAI,GAAG,KAAK,IAAmB,EAAE;QAC7B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,SAAS,GAAG,2BAA2B,OAAO,CAAC,GAAG,GAAG,CAAC;YAC5D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,sBAAsB,CAAC,CAAC;YACrD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAC5B,CAAC;IACL,CAAC,CAAC;IAEF,aAAa;QACT,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,aAAa;QACT,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YAChC,OAAO,aAAa,CAAC;QACzB,CAAC;aAAM,CAAC;YACJ,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;CACJ"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stsjsonrpcserver.js","sourceRoot":"","sources":["../../../src/process/servertypes/stsjsonrpcserver.ts"],"names":[],"mappings":"AAAA,wFAAwF,CAAC,UAAU;AACnG,OAAO,EACH,cAAc,GAGjB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAWjD,MAAM,OAAO,gBAAgB;IACR,OAAO,CAA2B;IAClC,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IACzC,UAAU,CAAoB;IACtC,WAAW,GAAwB,EAAE,CAAC;IAEtC,YAAY,OAAiC;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC/B,CAAC;IAED,mBAAmB,GAAG,GAAS,EAAE;QAC7B,MAAM,YAAY,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QACzC,mDAAmD;QACnD,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,IAAS,EAAE,QAAa;YACzD,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,GAAG,CAC9B,aAAa,CACT,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAC/B,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAC1C,CACJ,CAAC;QACD,IAAI,CAAC,UAAyB,CAAC,EAAE,CAC9B,kBAAkB,EAClB,IAAI,CAAC,eAAe,CACvB,CAAC;QACF,IAAI,CAAC,UAAU;aACV,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,EAAE;YAC3D,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,yCAAyC;gBACrC,IAAI,CAAC,OAAO,CAAC,UAAU;gBACvB,GAAG,CACV,CAAC;QACN,CAAC,CAAC;aACD,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;YAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,wBAAwB,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CACpG,CAAC;QACN,CAAC,CAAC,CAAC;IACX,CAAC,CAAC;IAEF,eAAe,GAAG,CAAC,MAAkB,EAAQ,EAAE;QAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,aAAa;YACT,MAAM,CAAC,aAAa;YACpB,GAAG;YACH,MAAM,CAAC,UAAU;YACjB,GAAG;YACH,OAAO,CAAC,GAAG,CAClB,CAAC;QAEF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAS,EAAE,EAAE;YAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,UAAU;gBACN,MAAM,CAAC,aAAa;gBACpB,GAAG;gBACH,MAAM,CAAC,UAAU;gBACjB,GAAG;gBACH,OAAO,CAAC,GAAG,CAClB,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAS,EAAE,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,IAAI,GAAG,KAAK,IAAmB,EAAE;QAC7B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,SAAS,GAAG,2BAA2B,OAAO,CAAC,GAAG,GAAG,CAAC;YAC5D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,sBAAsB,CAAC,CAAC;YACrD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAC5B,CAAC;IACL,CAAC,CAAC;IAEF,aAAa;QACT,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,aAAa;QACT,OAAO,cAAc,CAAC;IAC1B,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;CACJ"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stsserverfactory.js","sourceRoot":"","sources":["../../../src/process/servertypes/stsserverfactory.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,gBAAgB,GAEnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACH,gBAAgB,GAEnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAA2B,MAAM,sBAAsB,CAAC;AAgBhF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAC5B,UAAU,EACV,OAAO,GACc,EAAc,EAAE;IACrC,QAAQ,UAAU,EAAE,CAAC;QACjB,KAAK,SAAS,CAAC;QACf,KAAK,aAAa;YACd,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAEzC,KAAK,YAAY;YACb,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;QAExC,KAAK,cAAc;YACf,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ststcprawserver.js","sourceRoot":"","sources":["../../../src/process/servertypes/ststcprawserver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
// singleprocessbase.ts
|
|
2
|
-
/* eslint @typescript-eslint/no-explicit-any: 0 */ // --> OFF
|
|
3
|
-
import { Gauge } from "@nsshunt/stsobservability";
|
|
4
|
-
import { ProcessMetricsToken, LogManagerToken, } from "./../commonTypes.js";
|
|
5
|
-
import { ServerProcessBase } from "./serverprocessbase.js";
|
|
6
|
-
import { SysInfo } from "./sysinfo.js";
|
|
7
|
-
import si from "systeminformation"; // https://systeminformation.io/
|
|
8
|
-
export class SingleProcessBase extends ServerProcessBase {
|
|
9
|
-
/**
|
|
10
|
-
*
|
|
11
|
-
* @param {SingleProcessBaseOptions} options
|
|
12
|
-
*/
|
|
13
|
-
constructor(options) {
|
|
14
|
-
super(options);
|
|
15
|
-
}
|
|
16
|
-
#CollectAdditionalTelemetry() {
|
|
17
|
-
try {
|
|
18
|
-
const metrics = this.ProcessBaseInjector().get(ProcessMetricsToken);
|
|
19
|
-
metrics.AddMetricsProvider(async () => {
|
|
20
|
-
try {
|
|
21
|
-
const siValueObject = {
|
|
22
|
-
currentLoad: "currentLoad",
|
|
23
|
-
};
|
|
24
|
-
si.get(siValueObject).then((data) => {
|
|
25
|
-
metrics.UpdateInstrument(Gauge.CPU_SYSTEM_LOAD_GAUGE, {
|
|
26
|
-
val: data.currentLoad.currentLoad,
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
30
|
-
}
|
|
31
|
-
catch (_error) { }
|
|
32
|
-
});
|
|
33
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
34
|
-
}
|
|
35
|
-
catch (_error) { }
|
|
36
|
-
}
|
|
37
|
-
SetupServer = async () => {
|
|
38
|
-
await super.SetupServer();
|
|
39
|
-
this.#CollectAdditionalTelemetry();
|
|
40
|
-
const sysInfo = new SysInfo(this.ProcessBaseInjector().get(LogManagerToken));
|
|
41
|
-
sysInfo.LogSystemTelemetry();
|
|
42
|
-
return true;
|
|
43
|
-
};
|
|
44
|
-
async TerminateApplication() {
|
|
45
|
-
await this.Terminate(false, "SIGINT");
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=singleprocessbase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"singleprocessbase.js","sourceRoot":"","sources":["../../src/process/singleprocessbase.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,kDAAkD,CAAC,UAAU;AAC7D,OAAO,EAAE,KAAK,EAA4B,MAAM,2BAA2B,CAAC;AAE5E,OAAO,EAGH,mBAAmB,EACnB,eAAe,GAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,MAAM,mBAAmB,CAAC,CAAC,gCAAgC;AAIpE,MAAM,OAAO,iBACT,SAAQ,iBAAiB;IAGzB;;;OAGG;IACH,YAAY,OAAuB;QAC/B,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;IAED,2BAA2B;QACvB,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YAEpE,OAAO,CAAC,kBAAkB,CAAC,KAAK,IAAmB,EAAE;gBACjD,IAAI,CAAC;oBACD,MAAM,aAAa,GAAG;wBAClB,WAAW,EAAE,aAAa;qBAC7B,CAAC;oBACF,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;wBAChC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,qBAAqB,EAAE;4BAClD,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW;yBACR,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;oBACH,8DAA8D;gBAClE,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC,CAAA,CAAC;YACvB,CAAC,CAAC,CAAC;YACH,8DAA8D;QAClE,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC,CAAA,CAAC;IACvB,CAAC;IAEQ,WAAW,GAAG,KAAK,IAAsB,EAAE;QAChD,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;QAE1B,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAEnC,MAAM,OAAO,GAAG,IAAI,OAAO,CACvB,IAAI,CAAC,mBAAmB,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAClD,CAAC;QACF,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAE7B,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF,KAAK,CAAC,oBAAoB;QACtB,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;CACJ"}
|
package/dist/process/stsapp.js
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
// processbase.ts
|
|
2
|
-
/* eslint @typescript-eslint/no-explicit-any: 0, @typescript-eslint/no-unused-vars: 0 */ // --> OFF
|
|
3
|
-
import { defaultLogger, Sleep } from "@nsshunt/stsutils";
|
|
4
|
-
import { Injector } from "@nsshunt/stsutils";
|
|
5
|
-
import { ServiceConfigOptions } from "./appConfig.js";
|
|
6
|
-
import { STSConfigPlugin } from "./plugins/stsconfigplugin.js";
|
|
7
|
-
import { STSLoggerPlugin } from "./plugins/stsloggerplugin.js";
|
|
8
|
-
import { STSTestPlugin } from "./plugins/ststestplugin.js";
|
|
9
|
-
import { STSMetricsPlugin } from "./plugins/stsmetricsplugin.js";
|
|
10
|
-
export class STSApp {
|
|
11
|
-
rootInjector;
|
|
12
|
-
plugins = [];
|
|
13
|
-
constructor() {
|
|
14
|
-
this.rootInjector = new Injector([]);
|
|
15
|
-
}
|
|
16
|
-
use = (plugin, options) => {
|
|
17
|
-
plugin.install(this.rootInjector, options);
|
|
18
|
-
this.plugins.push(plugin);
|
|
19
|
-
};
|
|
20
|
-
createPlugin = (Plugin) => {
|
|
21
|
-
return this.rootInjector.runInContext(() => new Plugin());
|
|
22
|
-
};
|
|
23
|
-
Start = async () => {
|
|
24
|
-
for (const plugin of this.plugins) {
|
|
25
|
-
await plugin.Start();
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
Stop = async () => {
|
|
29
|
-
for (const plugin of this.plugins.toReversed()) {
|
|
30
|
-
await plugin.Stop();
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
// Usage ...
|
|
35
|
-
const app = new STSApp();
|
|
36
|
-
//app.use(new STSLoggerPlugin(), loggerOptions01); // also works for the first one ...
|
|
37
|
-
app.use(app.createPlugin(STSConfigPlugin));
|
|
38
|
-
app.use(app.createPlugin(STSLoggerPlugin), {
|
|
39
|
-
logger: defaultLogger,
|
|
40
|
-
name: "LoggerName01",
|
|
41
|
-
});
|
|
42
|
-
app.use(app.createPlugin(STSMetricsPlugin), ServiceConfigOptions(true));
|
|
43
|
-
app.use(app.createPlugin(STSTestPlugin));
|
|
44
|
-
await app.Start();
|
|
45
|
-
await Sleep(2000);
|
|
46
|
-
await app.Stop();
|
|
47
|
-
console.log("STS App Closed");
|
|
48
|
-
//# sourceMappingURL=stsapp.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stsapp.js","sourceRoot":"","sources":["../../src/process/stsapp.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,wFAAwF,CAAC,UAAU;AACnG,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAI7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE,MAAM,OAAO,MAAM;IACI,YAAY,CAAW;IACvB,OAAO,GAAmB,EAAE,CAAC;IAEhD;QACI,IAAI,CAAC,YAAY,GAAG,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,GAAG,GAAG,CAAW,MAAyB,EAAE,OAAkB,EAAQ,EAAE;QACpE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,YAAY,GAAG,CAAyB,MAAmB,EAAK,EAAE;QAC9D,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC,CAAC;IAEF,KAAK,GAAG,KAAK,IAAmB,EAAE;QAC9B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;IACL,CAAC,CAAC;IAEF,IAAI,GAAG,KAAK,IAAmB,EAAE;QAC7B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;YAC7C,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC;IACL,CAAC,CAAC;CACL;AAED,YAAY;AACZ,MAAM,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC;AACzB,sFAAsF;AACtF,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC;AAC3C,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE;IACvC,MAAM,EAAE,aAAa;IACrB,IAAI,EAAE,cAAc;CACvB,CAAC,CAAC;AACH,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;AACxE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC;AAEzC,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;AAClB,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;AAClB,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;AAEjB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC"}
|
package/dist/process/sysinfo.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
// sysinfo.ts
|
|
2
|
-
import si from "systeminformation"; // https://systeminformation.io/
|
|
3
|
-
import { GetFirstNetworkInterface } from "./../sysinfo/network.js";
|
|
4
|
-
import { goptions } from "@nsshunt/stsconfig";
|
|
5
|
-
export class SysInfo {
|
|
6
|
-
#logManager;
|
|
7
|
-
constructor(logManager) {
|
|
8
|
-
this.#logManager = logManager;
|
|
9
|
-
}
|
|
10
|
-
GetNumCPUs = async () => {
|
|
11
|
-
// https://systeminformation.io/
|
|
12
|
-
const valueObject = {
|
|
13
|
-
cpu: "*",
|
|
14
|
-
};
|
|
15
|
-
const sysinfo = await si.get(valueObject);
|
|
16
|
-
let numCPUs = 2;
|
|
17
|
-
if (goptions.useCPUs > 0) {
|
|
18
|
-
if (goptions.useCPUs >= 1) {
|
|
19
|
-
numCPUs = goptions.useCPUs;
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
numCPUs = Math.round(sysinfo.cpu.cores * goptions.useCPUs);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
numCPUs = sysinfo.cpu.physicalCores;
|
|
27
|
-
}
|
|
28
|
-
return numCPUs;
|
|
29
|
-
};
|
|
30
|
-
LogSystemTelemetry = async () => {
|
|
31
|
-
// https://systeminformation.io/
|
|
32
|
-
const valueObject = {
|
|
33
|
-
system: "*",
|
|
34
|
-
osInfo: "*",
|
|
35
|
-
cpu: "*",
|
|
36
|
-
mem: "*",
|
|
37
|
-
};
|
|
38
|
-
const sysinfo = await si.get(valueObject);
|
|
39
|
-
const numCPUs = await this.GetNumCPUs();
|
|
40
|
-
const hostname = sysinfo.osInfo.hostname;
|
|
41
|
-
const hostaddr = GetFirstNetworkInterface();
|
|
42
|
-
if (hostaddr !== null) {
|
|
43
|
-
this.#logManager.LogInfoMessage(`Host Address: ${hostaddr}`);
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
this.#logManager.LogInfoMessage(`Unknown Host Address.`);
|
|
47
|
-
}
|
|
48
|
-
this.#logManager.LogInfoMessage(`Server starting with ${numCPUs} Cores/Threads`);
|
|
49
|
-
this.#logManager.LogInfoMessage(`Hostname: ${hostname}`);
|
|
50
|
-
this.#logManager.LogInfoMessage(`System: ${JSON.stringify(sysinfo.system)}`);
|
|
51
|
-
this.#logManager.LogInfoMessage(`OS Info: ${JSON.stringify(sysinfo.osInfo)}`);
|
|
52
|
-
this.#logManager.LogInfoMessage(`CPU: ${JSON.stringify(sysinfo.cpu)}`);
|
|
53
|
-
this.#logManager.LogInfoMessage(`Memory: ${JSON.stringify(sysinfo.mem)}`);
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=sysinfo.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sysinfo.js","sourceRoot":"","sources":["../../src/process/sysinfo.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,OAAO,EAAE,MAAM,mBAAmB,CAAC,CAAC,gCAAgC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAI9C,MAAM,OAAO,OAAO;IAChB,WAAW,CAAc;IAEzB,YAAY,UAAuB;QAC/B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAClC,CAAC;IAED,UAAU,GAAG,KAAK,IAAqB,EAAE;QACrC,gCAAgC;QAChC,MAAM,WAAW,GAAG;YAChB,GAAG,EAAE,GAAG;SACX,CAAC;QAEF,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,CAAC;IAEF,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,CAAC;QAEF,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,WAAW,CAAC,cAAc,CAAC,iBAAiB,QAAQ,EAAE,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,cAAc,CAC3B,wBAAwB,OAAO,gBAAgB,CAClD,CAAC;QAEF,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,CAAC,cAAc,CAC3B,WAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAC9C,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,cAAc,CAC3B,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAC/C,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvE,IAAI,CAAC,WAAW,CAAC,cAAc,CAC3B,WAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAC3C,CAAC;IACN,CAAC,CAAC;CACL"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
// workerprocessbase.ts
|
|
2
|
-
/* eslint @typescript-eslint/no-explicit-any: 0 */ // --> OFF
|
|
3
|
-
import chalk from "chalk";
|
|
4
|
-
import { LogManagerToken, } from "./../commonTypes.js";
|
|
5
|
-
import { ServerProcessBase } from "./serverprocessbase.js";
|
|
6
|
-
export class WorkerProcessBase extends ServerProcessBase {
|
|
7
|
-
#logManager;
|
|
8
|
-
constructor(options) {
|
|
9
|
-
super(options);
|
|
10
|
-
this.#logManager = this.ProcessBaseInjector().get(LogManagerToken);
|
|
11
|
-
}
|
|
12
|
-
SetupServer = async () => {
|
|
13
|
-
await super.SetupServer();
|
|
14
|
-
process.on("message", async (msg) => {
|
|
15
|
-
if (msg.command) {
|
|
16
|
-
switch (msg.command) {
|
|
17
|
-
case "Terminate":
|
|
18
|
-
this.#logManager.LogInfoMessage(chalk.grey(`Received ` +
|
|
19
|
-
chalk.bold.italic(`Terminate`) +
|
|
20
|
-
` message from master thread`));
|
|
21
|
-
await this.Terminate(true, "SIGTERM"); // Don't kill the child process here, the master will take care of that ...
|
|
22
|
-
break;
|
|
23
|
-
case "TerminateAndKill":
|
|
24
|
-
this.#logManager.LogInfoMessage(chalk.grey(`Received ` +
|
|
25
|
-
chalk.bold.italic(`Terminate`) +
|
|
26
|
-
` message from master thread`));
|
|
27
|
-
await this.Terminate(true, "SIGTERM");
|
|
28
|
-
break;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
return true;
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=workerprocessbase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workerprocessbase.js","sourceRoot":"","sources":["../../src/process/workerprocessbase.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,kDAAkD,CAAC,UAAU;AAC7D,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAGH,eAAe,GAElB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,MAAM,OAAO,iBACT,SAAQ,iBAAiB;IAGzB,WAAW,CAAc;IAEzB,YAAY,OAAuB;QAC/B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACvE,CAAC;IAEQ,WAAW,GAAG,KAAK,IAAsB,EAAE;QAChD,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;QAE1B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;YACrC,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBACd,QAAQ,GAAG,CAAC,OAAO,EAAE,CAAC;oBAClB,KAAK,WAAW;wBACZ,IAAI,CAAC,WAAW,CAAC,cAAc,CAC3B,KAAK,CAAC,IAAI,CACN,WAAW;4BACP,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;4BAC9B,6BAA6B,CACpC,CACJ,CAAC;wBACF,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,2EAA2E;wBAClH,MAAM;oBACV,KAAK,kBAAkB;wBACnB,IAAI,CAAC,WAAW,CAAC,cAAc,CAC3B,KAAK,CAAC,IAAI,CACN,WAAW;4BACP,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;4BAC9B,6BAA6B,CACpC,CACJ,CAAC;wBACF,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;wBACtC,MAAM;gBACd,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;CACL"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { ModelDelimeter } from "@nsshunt/stsutils";
|
|
2
|
-
export class PublishTransportUtils {
|
|
3
|
-
static GetServiceContext(nid) {
|
|
4
|
-
// Return null if no context is required
|
|
5
|
-
//return null;
|
|
6
|
-
if (nid === ModelDelimeter.ROOT) {
|
|
7
|
-
return { root: ModelDelimeter.ROOT };
|
|
8
|
-
}
|
|
9
|
-
const context = { nid };
|
|
10
|
-
const idsplit = nid.split(ModelDelimeter.SEPERATOR);
|
|
11
|
-
const serviceId = idsplit[0];
|
|
12
|
-
const serviceInstanceId = idsplit[1].split(ModelDelimeter.NID_SEPERATOR)[0];
|
|
13
|
-
const serviceInstanceProcessId = idsplit[1].split(ModelDelimeter.NID_SEPERATOR)[1];
|
|
14
|
-
const serviceIdSplit = serviceId.split(ModelDelimeter.COMPONENT_SEPERATOR);
|
|
15
|
-
const serviceName = serviceIdSplit[0]; // Defined in .env or environment variable
|
|
16
|
-
const serviceVersion = serviceIdSplit[1]; // Defined in .env or environment variable
|
|
17
|
-
context.serviceId = serviceId; // Service name and the service version
|
|
18
|
-
if (typeof serviceInstanceId != "undefined") {
|
|
19
|
-
const serviceInstanceIdSplit = serviceInstanceId.split(ModelDelimeter.COMPONENT_SEPERATOR);
|
|
20
|
-
const sid = serviceInstanceIdSplit[0];
|
|
21
|
-
const hostName = serviceInstanceIdSplit[1];
|
|
22
|
-
context.serviceInstanceId = serviceInstanceId; // Service unique id and the host name
|
|
23
|
-
context.sid = sid; // Service unique id only, does not include host
|
|
24
|
-
context.hostName = hostName; // Service Instance Host Name
|
|
25
|
-
if (typeof serviceInstanceProcessId != "undefined") {
|
|
26
|
-
const serviceInstanceProcessIdSplit = serviceInstanceProcessId.split(ModelDelimeter.COMPONENT_SEPERATOR);
|
|
27
|
-
const pid = parseInt(serviceInstanceProcessIdSplit[0]);
|
|
28
|
-
const ppid = parseInt(serviceInstanceProcessIdSplit[1]);
|
|
29
|
-
const isMaster = pid === ppid ? true : false;
|
|
30
|
-
context.serviceInstanceProcessId = serviceInstanceProcessId; // Service Instance OS Process ID (parent process id)
|
|
31
|
-
context.pid = pid; // Service Instance OS Process ID (parent process id)
|
|
32
|
-
context.ppid = ppid; // Service Instance OS Parent Process ID if worker. Will be pid if parent process.
|
|
33
|
-
context.isMaster = isMaster; // True if is Master Process
|
|
34
|
-
context.isWorker = !isMaster; // True if is Worker Process
|
|
35
|
-
context.serviceName = serviceName; // Defined in .env or environment variable
|
|
36
|
-
context.serviceVersion = serviceVersion; // Defined in .env or environment variable
|
|
37
|
-
context.serviceInstanceId = serviceInstanceId; // unique service id with host
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
return context;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=publishTransportUtils.js.map
|