@nsshunt/stsappframework 2.19.220 → 2.19.226
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 +1 -34
- package/dist/processbase.js +9 -18
- package/dist/processbase.js.map +1 -1
- package/package.json +2 -2
- package/src/processbase.ts +10 -21
- package/src/workerprocessbase.ts +1 -1
- package/types/processbase.d.ts.map +1 -1
- package/dist/testing/app.js +0 -25
- package/dist/testing/app.js.map +0 -1
- package/dist/testing/appConfig.js +0 -83
- package/dist/testing/appConfig.js.map +0 -1
- package/runtest1.sh +0 -25
- package/src/testing/app.ts +0 -25
- package/src/testing/appConfig.ts +0 -93
- package/types/testing/app.d.ts +0 -2
- package/types/testing/app.d.ts.map +0 -1
- package/types/testing/appConfig.d.ts +0 -3
- package/types/testing/appConfig.d.ts.map +0 -1
package/README.md
CHANGED
|
@@ -1,34 +1 @@
|
|
|
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
|
-
|
|
1
|
+
# stsappframework
|
package/dist/processbase.js
CHANGED
|
@@ -6,6 +6,7 @@ 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"));
|
|
9
10
|
const node_cluster_1 = __importDefault(require("node:cluster"));
|
|
10
11
|
const colors_1 = __importDefault(require("colors"));
|
|
11
12
|
const systeminformation_1 = __importDefault(require("systeminformation")); // https://systeminformation.io/
|
|
@@ -63,17 +64,12 @@ class ProcessBase extends stsutils_1.STSOptionsBase {
|
|
|
63
64
|
});
|
|
64
65
|
};
|
|
65
66
|
}
|
|
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
|
-
};
|
|
74
67
|
#ServiceCollectorWorkerFactory = {
|
|
75
68
|
createWorker: () => {
|
|
76
|
-
const
|
|
69
|
+
const mainpath = require.resolve('@nsshunt/stsappframework');
|
|
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';
|
|
77
73
|
//@@ check for copy env like
|
|
78
74
|
// const envCopy = { ...process.env };
|
|
79
75
|
const publishCollectorWebWorker = new worker_threads_1.Worker(fileName, {
|
|
@@ -103,17 +99,12 @@ class ProcessBase extends stsutils_1.STSOptionsBase {
|
|
|
103
99
|
}
|
|
104
100
|
}
|
|
105
101
|
};
|
|
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
|
-
};
|
|
114
102
|
#ServiceBrokerWorkerFactory = {
|
|
115
103
|
createWorker: () => {
|
|
116
|
-
const
|
|
104
|
+
const mainpath = require.resolve('@nsshunt/stsappframework');
|
|
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';
|
|
117
108
|
//@@ check for copy env like
|
|
118
109
|
// const envCopy = { ...process.env };
|
|
119
110
|
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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nsshunt/stsappframework",
|
|
3
|
-
"version": "2.19.
|
|
3
|
+
"version": "2.19.226",
|
|
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.75",
|
|
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/src/processbase.ts
CHANGED
|
@@ -86,20 +86,14 @@ 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
|
-
}
|
|
98
89
|
|
|
99
90
|
#ServiceCollectorWorkerFactory: IWorkerFactory = {
|
|
100
91
|
createWorker: (): Worker => {
|
|
101
|
-
|
|
102
|
-
const
|
|
92
|
+
const mainpath = require.resolve('@nsshunt/stsappframework');
|
|
93
|
+
const anotherDir = path.dirname(mainpath);
|
|
94
|
+
|
|
95
|
+
//const fileName = './node_modules/@nsshunt/stsappframework/dist/processcollector.js';
|
|
96
|
+
const fileName = anotherDir + '/processcollectorworker.js';
|
|
103
97
|
|
|
104
98
|
//@@ check for copy env like
|
|
105
99
|
// const envCopy = { ...process.env };
|
|
@@ -133,18 +127,13 @@ export abstract class ProcessBase extends STSOptionsBase implements IProcessBase
|
|
|
133
127
|
} as IPublishTransportRESTServerOptions
|
|
134
128
|
}
|
|
135
129
|
|
|
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
|
-
|
|
145
130
|
#ServiceBrokerWorkerFactory: IWorkerFactory = {
|
|
146
131
|
createWorker: (): Worker => {
|
|
147
|
-
const
|
|
132
|
+
const mainpath = require.resolve('@nsshunt/stsappframework');
|
|
133
|
+
const anotherDir = path.dirname(mainpath);
|
|
134
|
+
|
|
135
|
+
//const fileName = './node_modules/@nsshunt/stsappframework/dist/processcollector.js';
|
|
136
|
+
const fileName = anotherDir + '/processbrokerworker.js';
|
|
148
137
|
|
|
149
138
|
//@@ check for copy env like
|
|
150
139
|
// const envCopy = { ...process.env };
|
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;IAkGD,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"}
|
package/dist/testing/app.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
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
|
package/dist/testing/app.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,83 +0,0 @@
|
|
|
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
|
|
@@ -1 +0,0 @@
|
|
|
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/runtest1.sh
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
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/testing/app.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
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
|
-
}
|
package/src/testing/appConfig.ts
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
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/types/testing/app.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/testing/app.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|