@nsshunt/stsappframework 2.19.219 → 2.19.220
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/README.md +34 -1
- package/dist/processbase.js +18 -9
- package/dist/processbase.js.map +1 -1
- package/dist/testing/app.js +25 -0
- package/dist/testing/app.js.map +1 -0
- package/dist/testing/appConfig.js +83 -0
- package/dist/testing/appConfig.js.map +1 -0
- package/package.json +2 -2
- package/runtest1.sh +25 -0
- package/src/processbase.ts +21 -10
- package/src/testing/app.ts +25 -0
- package/src/testing/appConfig.ts +93 -0
- package/src/workerprocessbase.ts +1 -1
- package/types/processbase.d.ts.map +1 -1
- package/types/testing/app.d.ts +2 -0
- package/types/testing/app.d.ts.map +1 -0
- package/types/testing/appConfig.d.ts +3 -0
- package/types/testing/appConfig.d.ts.map +1 -0
package/README.md
CHANGED
|
@@ -1 +1,34 @@
|
|
|
1
|
-
# stsappframework
|
|
1
|
+
# stsappframework
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
Testing to include;
|
|
5
|
+
|
|
6
|
+
SingleProcessBase - 1 CPU
|
|
7
|
+
|
|
8
|
+
Master and Worker - x CPUs
|
|
9
|
+
Add worker thread
|
|
10
|
+
Remove worker thread
|
|
11
|
+
|
|
12
|
+
removal all worker threads (with disable option = on) - should not do it ...
|
|
13
|
+
|
|
14
|
+
mark a worker as non removable (** new feature **)
|
|
15
|
+
|
|
16
|
+
HTTP server
|
|
17
|
+
HTTPS server
|
|
18
|
+
|
|
19
|
+
WSS Server
|
|
20
|
+
|
|
21
|
+
JSON RPC Server
|
|
22
|
+
|
|
23
|
+
TCP Server
|
|
24
|
+
|
|
25
|
+
linux socket server
|
|
26
|
+
|
|
27
|
+
gRPC server ??
|
|
28
|
+
|
|
29
|
+
RAFT algorithm
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
package/dist/processbase.js
CHANGED
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.ProcessBase = void 0;
|
|
7
7
|
const pidusage_1 = __importDefault(require("pidusage"));
|
|
8
8
|
const process_1 = require("process");
|
|
9
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
10
9
|
const node_cluster_1 = __importDefault(require("node:cluster"));
|
|
11
10
|
const colors_1 = __importDefault(require("colors"));
|
|
12
11
|
const systeminformation_1 = __importDefault(require("systeminformation")); // https://systeminformation.io/
|
|
@@ -64,12 +63,17 @@ class ProcessBase extends stsutils_1.STSOptionsBase {
|
|
|
64
63
|
});
|
|
65
64
|
};
|
|
66
65
|
}
|
|
66
|
+
#GetProcessCollectorWorkerFileName = () => {
|
|
67
|
+
/*
|
|
68
|
+
const mainpath = require.resolve('@nsshunt/stsappframework');
|
|
69
|
+
const anotherDir = path.dirname(mainpath);
|
|
70
|
+
const fileName = anotherDir + '/processcollectorworker.js';
|
|
71
|
+
*/
|
|
72
|
+
return './dist/processcollectorworker.js';
|
|
73
|
+
};
|
|
67
74
|
#ServiceCollectorWorkerFactory = {
|
|
68
75
|
createWorker: () => {
|
|
69
|
-
const
|
|
70
|
-
const anotherDir = node_path_1.default.dirname(mainpath);
|
|
71
|
-
//const fileName = './node_modules/@nsshunt/stsappframework/dist/processcollector.js';
|
|
72
|
-
const fileName = anotherDir + '/processcollectorworker.js';
|
|
76
|
+
const fileName = this.#GetProcessCollectorWorkerFileName();
|
|
73
77
|
//@@ check for copy env like
|
|
74
78
|
// const envCopy = { ...process.env };
|
|
75
79
|
const publishCollectorWebWorker = new worker_threads_1.Worker(fileName, {
|
|
@@ -99,12 +103,17 @@ class ProcessBase extends stsutils_1.STSOptionsBase {
|
|
|
99
103
|
}
|
|
100
104
|
}
|
|
101
105
|
};
|
|
106
|
+
#GetProcessBrokerWorkerFileName = () => {
|
|
107
|
+
/*
|
|
108
|
+
const mainpath = require.resolve('@nsshunt/stsappframework');
|
|
109
|
+
const anotherDir = path.dirname(mainpath);
|
|
110
|
+
const fileName = anotherDir + '/processbrokerworker.js';
|
|
111
|
+
*/
|
|
112
|
+
return './dist/processbrokerworker.js';
|
|
113
|
+
};
|
|
102
114
|
#ServiceBrokerWorkerFactory = {
|
|
103
115
|
createWorker: () => {
|
|
104
|
-
const
|
|
105
|
-
const anotherDir = node_path_1.default.dirname(mainpath);
|
|
106
|
-
//const fileName = './node_modules/@nsshunt/stsappframework/dist/processcollector.js';
|
|
107
|
-
const fileName = anotherDir + '/processbrokerworker.js';
|
|
116
|
+
const fileName = this.#GetProcessBrokerWorkerFileName();
|
|
108
117
|
//@@ check for copy env like
|
|
109
118
|
// const envCopy = { ...process.env };
|
|
110
119
|
const publishBrokerWebWorker = new worker_threads_1.Worker(fileName, {
|
package/dist/processbase.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processbase.js","sourceRoot":"","sources":["../src/processbase.ts"],"names":[],"mappings":";;;;;;AAAA,wDAA+B;AAC/B,qCAA2C;
|
|
1
|
+
{"version":3,"file":"processbase.js","sourceRoot":"","sources":["../src/processbase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
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
|
+
const appConfig_js_1 = require("./appConfig.js");
|
|
7
|
+
const index_1 = require("../index");
|
|
8
|
+
const cluster_1 = __importDefault(require("cluster"));
|
|
9
|
+
if (cluster_1.default.isPrimary) {
|
|
10
|
+
const mpb = new index_1.MasterProcessBase((0, appConfig_js_1.ServiceConfigOptions)(cluster_1.default.isPrimary));
|
|
11
|
+
mpb.SetupServer();
|
|
12
|
+
setTimeout(() => {
|
|
13
|
+
const num = mpb.AddWorker({});
|
|
14
|
+
setTimeout(() => {
|
|
15
|
+
mpb.KillWorker(num.toString(), 'SIGINT', null, true, false);
|
|
16
|
+
}, 2000);
|
|
17
|
+
setTimeout(() => {
|
|
18
|
+
process.kill(process.pid, "SIGINT");
|
|
19
|
+
}, 5000);
|
|
20
|
+
}, 3000);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
new index_1.WorkerProcessBase((0, appConfig_js_1.ServiceConfigOptions)(cluster_1.default.isPrimary)).SetupServer();
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=app.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/testing/app.ts"],"names":[],"mappings":";;;;;AAAA,iDAAqD;AACrD,oCAA+D;AAE/D,sDAA8B;AAE9B,IAAI,iBAAO,CAAC,SAAS,EAAE;IACnB,MAAM,GAAG,GAAG,IAAI,yBAAiB,CAAC,IAAA,mCAAoB,EAAC,iBAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3E,GAAG,CAAC,WAAW,EAAE,CAAC;IAElB,UAAU,CAAC,GAAG,EAAE;QACZ,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAE9B,UAAU,CAAC,GAAG,EAAE;YACZ,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAChE,CAAC,EAAE,IAAI,CAAC,CAAC;QAET,UAAU,CAAC,GAAG,EAAE;YACZ,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACxC,CAAC,EAAE,IAAI,CAAC,CAAC;IACb,CAAC,EAAE,IAAI,CAAC,CAAC;CAGZ;KAAM;IACH,IAAI,yBAAiB,CAAC,IAAA,mCAAoB,EAAC,iBAAO,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;CAChF"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ServiceConfigOptions = void 0;
|
|
4
|
+
const uuid_1 = require("uuid");
|
|
5
|
+
const stsconfig_1 = require("@nsshunt/stsconfig");
|
|
6
|
+
const goptions = (0, stsconfig_1.$Options)();
|
|
7
|
+
const index_1 = require("../index");
|
|
8
|
+
/*
|
|
9
|
+
// nid: `${goptions.rest01servicename} @ ${goptions.rest01serviceversion} | ${this.options.globalServiceData.serviceInstanceId} @ ${os.hostname()} ^ ${process.pid} @ ${(cluster.isMaster ? process.pid : process.ppid)}`,
|
|
10
|
+
// <serviceId> <serviceInstanceId> <serviceInstanceProcessId>
|
|
11
|
+
// <serviceName> <serviceVersion> <sid> <hostName> <pid> <ppid>
|
|
12
|
+
// << ............... Static Nid ............... >> << ............... Dynamic Nid ............... >>
|
|
13
|
+
// Note: The final nid will NOT contain the NID_SEPERATOR character. This will be replaced with the SEPERATOR character.
|
|
14
|
+
const Context = (isMaster, serviceInstanceId) => {
|
|
15
|
+
return {
|
|
16
|
+
nid: `\
|
|
17
|
+
${goptions.rest01servicename}${ModelDelimeter.COMPONENT_SEPERATOR}${goptions.rest01serviceversion}\
|
|
18
|
+
${ModelDelimeter.SEPERATOR}\
|
|
19
|
+
${serviceInstanceId}${ModelDelimeter.COMPONENT_SEPERATOR}${os.hostname()}\
|
|
20
|
+
${ModelDelimeter.NID_SEPERATOR}\
|
|
21
|
+
${process.pid}${ModelDelimeter.COMPONENT_SEPERATOR}${(isMaster ? process.pid : process.ppid)}`
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
*/
|
|
25
|
+
class STSExpressRouteFactory {
|
|
26
|
+
constructor(app, stsApp) {
|
|
27
|
+
/*
|
|
28
|
+
const stsresourceRouter = new STSResourceRoute(stsApp);
|
|
29
|
+
const stslatency = new STSLatencyRoute(stsApp);
|
|
30
|
+
|
|
31
|
+
// Note: This MUST come first as the latency end point is on the same path as the reosurce path.
|
|
32
|
+
// If stsresourceRouter came first, it would think that /latency was a resource name.
|
|
33
|
+
app.use(`${goptions.rest01apiroot}`, stslatency.router);
|
|
34
|
+
|
|
35
|
+
app.use(`${goptions.rest01apiroot}`, stsresourceRouter.router);
|
|
36
|
+
*/
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
function ServiceConfigOptions(isMaster) {
|
|
40
|
+
if (isMaster === true) {
|
|
41
|
+
const serviceInstanceId = (0, uuid_1.v4)();
|
|
42
|
+
const data = {
|
|
43
|
+
serverType: index_1.STSServerType.EXPRESS_TLS,
|
|
44
|
+
wssServer: true,
|
|
45
|
+
useLatency: true,
|
|
46
|
+
httpsServerKeyPath: goptions.httpsserverkeypath,
|
|
47
|
+
httpsServerCertificatePath: goptions.httpsservercertpath,
|
|
48
|
+
processExitOnTerminate: true,
|
|
49
|
+
serviceInstanceId: serviceInstanceId,
|
|
50
|
+
useDatabase: true,
|
|
51
|
+
useInstrumentationWorkers: true,
|
|
52
|
+
isMaster: isMaster,
|
|
53
|
+
endpoint: goptions.rest01endpoint,
|
|
54
|
+
apiRoot: goptions.rest01apiroot,
|
|
55
|
+
listenPort: goptions.rest01hostport,
|
|
56
|
+
port: goptions.rest01port,
|
|
57
|
+
prometheusSupport: false,
|
|
58
|
+
prometheusClusterPort: goptions.rest01prometheusclusterport,
|
|
59
|
+
serviceName: goptions.rest01servicename,
|
|
60
|
+
serviceVersion: goptions.rest01serviceversion,
|
|
61
|
+
consoleLogging: true,
|
|
62
|
+
instrumentLogging: true,
|
|
63
|
+
/*
|
|
64
|
+
expressServerRouteFactory: (app: express.Express, stsApp: IProcessBase) => {
|
|
65
|
+
return new STSExpressRouteFactory(app, stsApp);
|
|
66
|
+
},
|
|
67
|
+
*/
|
|
68
|
+
instrumentationObservationInterval: goptions.instrumentationObservationInterval,
|
|
69
|
+
instrumentationTimeWindow: goptions.instrumentationTimeWindow,
|
|
70
|
+
useRedisAdaptor: false
|
|
71
|
+
};
|
|
72
|
+
return data;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
const data = JSON.parse(process.env['STS_GSD_SII']);
|
|
76
|
+
data.expressServerRouteFactory = (app, stsApp) => {
|
|
77
|
+
return new STSExpressRouteFactory(app, stsApp);
|
|
78
|
+
};
|
|
79
|
+
return data;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
exports.ServiceConfigOptions = ServiceConfigOptions;
|
|
83
|
+
//# sourceMappingURL=appConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"appConfig.js","sourceRoot":"","sources":["../../src/testing/appConfig.ts"],"names":[],"mappings":";;;AAAA,+BAAoC;AAGpC,kDAA6C;AAC7C,MAAM,QAAQ,GAAG,IAAA,oBAAQ,GAAE,CAAA;AAE3B,oCAAsE;AAEtE;;;;;;;;;;;;;;;;EAgBE;AAEF,MAAM,sBAAsB;IAExB,YAAY,GAAoB,EAAE,MAAoB;QAElD;;;;;;;;;UASE;IACN,CAAC;CACJ;AAED,SAAgB,oBAAoB,CAAC,QAAiB;IAClD,IAAI,QAAQ,KAAK,IAAI,EAAE;QACnB,MAAM,iBAAiB,GAAG,IAAA,SAAM,GAAE,CAAC;QACnC,MAAM,IAAI,GAAmB;YACzB,UAAU,EAAE,qBAAa,CAAC,WAAW;YACrC,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;YAChB,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB;YAC/C,0BAA0B,EAAE,QAAQ,CAAC,mBAAmB;YACxD,sBAAsB,EAAE,IAAI;YAC5B,iBAAiB,EAAE,iBAAiB;YACpC,WAAW,EAAE,IAAI;YACjB,yBAAyB,EAAE,IAAI;YAE/B,QAAQ,EAAE,QAAQ;YAClB,QAAQ,EAAE,QAAQ,CAAC,cAAc;YACjC,OAAO,EAAE,QAAQ,CAAC,aAAa;YAC/B,UAAU,EAAE,QAAQ,CAAC,cAAc;YACnC,IAAI,EAAE,QAAQ,CAAC,UAAU;YAEzB,iBAAiB,EAAE,KAAK;YACxB,qBAAqB,EAAE,QAAQ,CAAC,2BAA2B;YAE3D,WAAW,EAAE,QAAQ,CAAC,iBAAiB;YACvC,cAAc,EAAE,QAAQ,CAAC,oBAAoB;YAC7C,cAAc,EAAE,IAAI;YACpB,iBAAiB,EAAE,IAAI;YAEvB;;;;cAIE;YAEF,kCAAkC,EAAE,QAAQ,CAAC,kCAAkC;YAC/E,yBAAyB,EAAE,QAAQ,CAAC,yBAAyB;YAE7D,eAAe,EAAE,KAAK;SACzB,CAAA;QACD,OAAO,IAAI,CAAC;KACf;SAAM;QACH,MAAM,IAAI,GAAmB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAW,CAAmB,CAAC;QAEhG,IAAI,CAAC,yBAAyB,GAAG,CAAC,GAAoB,EAAE,MAAoB,EAAE,EAAE;YAC5E,OAAO,IAAI,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC,CAAA;QAED,OAAO,IAAI,CAAC;KACf;AACL,CAAC;AAjDD,oDAiDC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nsshunt/stsappframework",
|
|
3
|
-
"version": "2.19.
|
|
3
|
+
"version": "2.19.220",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "./types/index.d.ts",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"@nsshunt/stsconfig": "^1.25.47",
|
|
46
46
|
"@nsshunt/stsdatamanagement": "^1.17.98",
|
|
47
47
|
"@nsshunt/stsinstrumentation": "^6.11.85",
|
|
48
|
-
"@nsshunt/stspublisherserver": "^1.15.
|
|
48
|
+
"@nsshunt/stspublisherserver": "^1.15.80",
|
|
49
49
|
"@nsshunt/stsutils": "^1.16.4",
|
|
50
50
|
"@socket.io/cluster-adapter": "^0.2.2",
|
|
51
51
|
"@socket.io/redis-streams-adapter": "^0.1.0",
|
package/runtest1.sh
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
# openssl req -nodes -new -x509 -keyout server.key -out server.cert
|
|
3
|
+
clear; \
|
|
4
|
+
export STS_PROJ_ROOT=./..; \
|
|
5
|
+
STSENVFILE=$STS_PROJ_ROOT/stsglobalresources/.env \
|
|
6
|
+
DB_SCRIPT_FOLDER=$STS_PROJ_ROOT/stsglobalresources/db-scripts \
|
|
7
|
+
REST01_PORT=3003 \
|
|
8
|
+
REST01_HOST_PORT=3003 \
|
|
9
|
+
REST01_SERVICE_NAME="STSRest01-3003" \
|
|
10
|
+
REST01_API_IDENTIFIER="https://stsmda.com.au/stsrest01api/v1.0/" \
|
|
11
|
+
REST01_ENDPOINT="https://stsrest.stsmda.org" \
|
|
12
|
+
MAX_CPU=4 \
|
|
13
|
+
AS_ENDPOINT=https://stscore.stsmda.org \
|
|
14
|
+
AS_HOST_PORT=3002 \
|
|
15
|
+
AS_PORT=3002 \
|
|
16
|
+
DB_HOST=localhost \
|
|
17
|
+
DB_PORT=5432 \
|
|
18
|
+
DB_PASSWORD=postgres \
|
|
19
|
+
HTTPS_SERVER_KEY_PATH=/etc/letsencrypt/live/stsmda.org/privkey.pem \
|
|
20
|
+
HTTPS_SERVER_CERT_PATH=/etc/letsencrypt/live/stsmda.org/fullchain.pem \
|
|
21
|
+
DEBUG=proc* \
|
|
22
|
+
PUBLISH_DEBUG=false \
|
|
23
|
+
UV_THREADPOOL_SIZE=64 \
|
|
24
|
+
SERVICE_INDEX=0 \
|
|
25
|
+
node dist/testing/app;
|
package/src/processbase.ts
CHANGED
|
@@ -86,14 +86,20 @@ export abstract class ProcessBase extends STSOptionsBase implements IProcessBase
|
|
|
86
86
|
} as InstrumentLogTelemetry);
|
|
87
87
|
};
|
|
88
88
|
}
|
|
89
|
+
|
|
90
|
+
#GetProcessCollectorWorkerFileName = () => {
|
|
91
|
+
/*
|
|
92
|
+
const mainpath = require.resolve('@nsshunt/stsappframework');
|
|
93
|
+
const anotherDir = path.dirname(mainpath);
|
|
94
|
+
const fileName = anotherDir + '/processcollectorworker.js';
|
|
95
|
+
*/
|
|
96
|
+
return './dist/processcollectorworker.js';
|
|
97
|
+
}
|
|
89
98
|
|
|
90
99
|
#ServiceCollectorWorkerFactory: IWorkerFactory = {
|
|
91
100
|
createWorker: (): Worker => {
|
|
92
|
-
|
|
93
|
-
const
|
|
94
|
-
|
|
95
|
-
//const fileName = './node_modules/@nsshunt/stsappframework/dist/processcollector.js';
|
|
96
|
-
const fileName = anotherDir + '/processcollectorworker.js';
|
|
101
|
+
|
|
102
|
+
const fileName = this.#GetProcessCollectorWorkerFileName();
|
|
97
103
|
|
|
98
104
|
//@@ check for copy env like
|
|
99
105
|
// const envCopy = { ...process.env };
|
|
@@ -127,13 +133,18 @@ export abstract class ProcessBase extends STSOptionsBase implements IProcessBase
|
|
|
127
133
|
} as IPublishTransportRESTServerOptions
|
|
128
134
|
}
|
|
129
135
|
|
|
136
|
+
#GetProcessBrokerWorkerFileName = () => {
|
|
137
|
+
/*
|
|
138
|
+
const mainpath = require.resolve('@nsshunt/stsappframework');
|
|
139
|
+
const anotherDir = path.dirname(mainpath);
|
|
140
|
+
const fileName = anotherDir + '/processbrokerworker.js';
|
|
141
|
+
*/
|
|
142
|
+
return './dist/processbrokerworker.js';
|
|
143
|
+
}
|
|
144
|
+
|
|
130
145
|
#ServiceBrokerWorkerFactory: IWorkerFactory = {
|
|
131
146
|
createWorker: (): Worker => {
|
|
132
|
-
const
|
|
133
|
-
const anotherDir = path.dirname(mainpath);
|
|
134
|
-
|
|
135
|
-
//const fileName = './node_modules/@nsshunt/stsappframework/dist/processcollector.js';
|
|
136
|
-
const fileName = anotherDir + '/processbrokerworker.js';
|
|
147
|
+
const fileName = this.#GetProcessBrokerWorkerFileName();
|
|
137
148
|
|
|
138
149
|
//@@ check for copy env like
|
|
139
150
|
// const envCopy = { ...process.env };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ServiceConfigOptions } from './appConfig.js'
|
|
2
|
+
import { WorkerProcessBase, MasterProcessBase } from '../index'
|
|
3
|
+
|
|
4
|
+
import cluster from 'cluster';
|
|
5
|
+
|
|
6
|
+
if (cluster.isPrimary) {
|
|
7
|
+
const mpb = new MasterProcessBase(ServiceConfigOptions(cluster.isPrimary));
|
|
8
|
+
mpb.SetupServer();
|
|
9
|
+
|
|
10
|
+
setTimeout(() => {
|
|
11
|
+
const num = mpb.AddWorker({});
|
|
12
|
+
|
|
13
|
+
setTimeout(() => {
|
|
14
|
+
mpb.KillWorker(num.toString(), 'SIGINT', null, true, false);
|
|
15
|
+
}, 2000);
|
|
16
|
+
|
|
17
|
+
setTimeout(() => {
|
|
18
|
+
process.kill(process.pid, "SIGINT");
|
|
19
|
+
}, 5000);
|
|
20
|
+
}, 3000);
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
} else {
|
|
24
|
+
new WorkerProcessBase(ServiceConfigOptions(cluster.isPrimary)).SetupServer();
|
|
25
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
2
|
+
import express from 'express';
|
|
3
|
+
|
|
4
|
+
import { $Options } from '@nsshunt/stsconfig'
|
|
5
|
+
const goptions = $Options()
|
|
6
|
+
|
|
7
|
+
import { ProcessOptions, IProcessBase, STSServerType } from '../index'
|
|
8
|
+
|
|
9
|
+
/*
|
|
10
|
+
// nid: `${goptions.rest01servicename} @ ${goptions.rest01serviceversion} | ${this.options.globalServiceData.serviceInstanceId} @ ${os.hostname()} ^ ${process.pid} @ ${(cluster.isMaster ? process.pid : process.ppid)}`,
|
|
11
|
+
// <serviceId> <serviceInstanceId> <serviceInstanceProcessId>
|
|
12
|
+
// <serviceName> <serviceVersion> <sid> <hostName> <pid> <ppid>
|
|
13
|
+
// << ............... Static Nid ............... >> << ............... Dynamic Nid ............... >>
|
|
14
|
+
// Note: The final nid will NOT contain the NID_SEPERATOR character. This will be replaced with the SEPERATOR character.
|
|
15
|
+
const Context = (isMaster, serviceInstanceId) => {
|
|
16
|
+
return {
|
|
17
|
+
nid: `\
|
|
18
|
+
${goptions.rest01servicename}${ModelDelimeter.COMPONENT_SEPERATOR}${goptions.rest01serviceversion}\
|
|
19
|
+
${ModelDelimeter.SEPERATOR}\
|
|
20
|
+
${serviceInstanceId}${ModelDelimeter.COMPONENT_SEPERATOR}${os.hostname()}\
|
|
21
|
+
${ModelDelimeter.NID_SEPERATOR}\
|
|
22
|
+
${process.pid}${ModelDelimeter.COMPONENT_SEPERATOR}${(isMaster ? process.pid : process.ppid)}`
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
class STSExpressRouteFactory
|
|
28
|
+
{
|
|
29
|
+
constructor(app: express.Express, stsApp: IProcessBase)
|
|
30
|
+
{
|
|
31
|
+
/*
|
|
32
|
+
const stsresourceRouter = new STSResourceRoute(stsApp);
|
|
33
|
+
const stslatency = new STSLatencyRoute(stsApp);
|
|
34
|
+
|
|
35
|
+
// Note: This MUST come first as the latency end point is on the same path as the reosurce path.
|
|
36
|
+
// If stsresourceRouter came first, it would think that /latency was a resource name.
|
|
37
|
+
app.use(`${goptions.rest01apiroot}`, stslatency.router);
|
|
38
|
+
|
|
39
|
+
app.use(`${goptions.rest01apiroot}`, stsresourceRouter.router);
|
|
40
|
+
*/
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export function ServiceConfigOptions(isMaster: boolean): ProcessOptions {
|
|
45
|
+
if (isMaster === true) {
|
|
46
|
+
const serviceInstanceId = uuidv4();
|
|
47
|
+
const data: ProcessOptions = {
|
|
48
|
+
serverType: STSServerType.EXPRESS_TLS,
|
|
49
|
+
wssServer: true,
|
|
50
|
+
useLatency: true,
|
|
51
|
+
httpsServerKeyPath: goptions.httpsserverkeypath,
|
|
52
|
+
httpsServerCertificatePath: goptions.httpsservercertpath,
|
|
53
|
+
processExitOnTerminate: true,
|
|
54
|
+
serviceInstanceId: serviceInstanceId,
|
|
55
|
+
useDatabase: true,
|
|
56
|
+
useInstrumentationWorkers: true,
|
|
57
|
+
|
|
58
|
+
isMaster: isMaster,
|
|
59
|
+
endpoint: goptions.rest01endpoint,
|
|
60
|
+
apiRoot: goptions.rest01apiroot,
|
|
61
|
+
listenPort: goptions.rest01hostport,
|
|
62
|
+
port: goptions.rest01port,
|
|
63
|
+
|
|
64
|
+
prometheusSupport: false,
|
|
65
|
+
prometheusClusterPort: goptions.rest01prometheusclusterport,
|
|
66
|
+
|
|
67
|
+
serviceName: goptions.rest01servicename,
|
|
68
|
+
serviceVersion: goptions.rest01serviceversion,
|
|
69
|
+
consoleLogging: true,
|
|
70
|
+
instrumentLogging: true,
|
|
71
|
+
|
|
72
|
+
/*
|
|
73
|
+
expressServerRouteFactory: (app: express.Express, stsApp: IProcessBase) => {
|
|
74
|
+
return new STSExpressRouteFactory(app, stsApp);
|
|
75
|
+
},
|
|
76
|
+
*/
|
|
77
|
+
|
|
78
|
+
instrumentationObservationInterval: goptions.instrumentationObservationInterval,
|
|
79
|
+
instrumentationTimeWindow: goptions.instrumentationTimeWindow,
|
|
80
|
+
|
|
81
|
+
useRedisAdaptor: false
|
|
82
|
+
}
|
|
83
|
+
return data;
|
|
84
|
+
} else {
|
|
85
|
+
const data: ProcessOptions = JSON.parse(process.env['STS_GSD_SII'] as string) as ProcessOptions;
|
|
86
|
+
|
|
87
|
+
data.expressServerRouteFactory = (app: express.Express, stsApp: IProcessBase) => {
|
|
88
|
+
return new STSExpressRouteFactory(app, stsApp);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return data;
|
|
92
|
+
}
|
|
93
|
+
}
|
package/src/workerprocessbase.ts
CHANGED
|
@@ -116,7 +116,7 @@ export class WorkerProcessBase extends ServerProcessBase implements IWorkerProce
|
|
|
116
116
|
|
|
117
117
|
SetupServerEx = async () => {
|
|
118
118
|
this.ProcessStartup();
|
|
119
|
-
|
|
119
|
+
|
|
120
120
|
if (this.options.expressServerRouteFactory || this.options.expressServerRouteStaticFactory) {
|
|
121
121
|
this.expressServer = new STSExpressServer(this.options, this);
|
|
122
122
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processbase.d.ts","sourceRoot":"","sources":["../src/processbase.ts"],"names":[],"mappings":"AAIA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAO3B,OAAO,EAAE,KAAK,EAAE,uBAAuB,EAA+E,MAAM,6BAA6B,CAAA;AAEzJ,OAAO,EAAE,aAAa,EAAyC,MAAM,4BAA4B,CAAA;AAKjG,OAAO,EAAE,cAAc,EAAiB,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,cAAc,EAAc,MAAM,mBAAmB,CAAA;AAG9D,OAAO,EAAE,2BAA2B,EAAuC,qBAAqB,EAEvC,MAAM,6BAA6B,CAAA;AAQ5F,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAInE,8BAAsB,WAAY,SAAQ,cAAe,YAAW,YAAY;;gBAShE,OAAO,EAAE,cAAc;IAUnC,IAAa,OAAO,IAAI,cAAc,CAErC;
|
|
1
|
+
{"version":3,"file":"processbase.d.ts","sourceRoot":"","sources":["../src/processbase.ts"],"names":[],"mappings":"AAIA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAO3B,OAAO,EAAE,KAAK,EAAE,uBAAuB,EAA+E,MAAM,6BAA6B,CAAA;AAEzJ,OAAO,EAAE,aAAa,EAAyC,MAAM,4BAA4B,CAAA;AAKjG,OAAO,EAAE,cAAc,EAAiB,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,cAAc,EAAc,MAAM,mBAAmB,CAAA;AAG9D,OAAO,EAAE,2BAA2B,EAAuC,qBAAqB,EAEvC,MAAM,6BAA6B,CAAA;AAQ5F,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAInE,8BAAsB,WAAY,SAAQ,cAAe,YAAW,YAAY;;gBAShE,OAAO,EAAE,cAAc;IAUnC,IAAa,OAAO,IAAI,cAAc,CAErC;IA6GD,oBAAoB;IAuBpB,wBAAwB,IAAI,qBAAqB;IAIjD,0BAA0B,IAAI,IAAI;IAIlC,cAAc,aAuCb;IAED,gBAAgB,mBAAoB,KAAK,aAAa,uBAAuB,UAI5E;IAED,IAAI,oBAAoB,IAAI,2BAA2B,GAAG,IAAI,CAE7D;IAED,KAAK,YAAa,GAAG,UASpB;IAED,gBAAgB,CAAC,cAAc,EAAE,KAAK,GAAG,OAAO;IAQhD,gBAAgB,sBAMf;IAED;;;OAGA;IACA,eAAe,IAAI,GAAG;IAItB,IAAI,oBAAoB,IAAI,qBAAqB,GAAG,IAAI,CAGvD;IAED,IAAI,oBAAoB,CAAC,KAAK,EAAE,qBAAqB,GAAG,IAAI,EAG3D;IAgBK,iBAAiB;IAOvB,IAAI,WAAW,IAAI,aAAa,GAAG,IAAI,CAyBtC;IAED,UAAU,QAAa,QAAQ,MAAM,CAAC,CAkBrC;IAED,kBAAkB,sBA0BjB;IAED,eAAe,WAAY,GAAG,kBAQ5B;CACL"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/testing/app.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"appConfig.d.ts","sourceRoot":"","sources":["../../src/testing/appConfig.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAA+B,MAAM,UAAU,CAAA;AAqCtE,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,OAAO,GAAG,cAAc,CAiDtE"}
|