@nsshunt/stsappframework 3.3.133 → 3.3.135

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.
Files changed (81) hide show
  1. package/README.md +42 -0
  2. package/dist/commonTypes.js +6 -6
  3. package/dist/commonTypes.js.map +1 -1
  4. package/dist/controller/stscontrollerbase.js.map +1 -1
  5. package/dist/controller/stslatencycontroller.js +10 -4
  6. package/dist/controller/stslatencycontroller.js.map +1 -1
  7. package/dist/grpc/grpcServer.js +32 -31
  8. package/dist/grpc/grpcServer.js.map +1 -1
  9. package/dist/index.js +15 -15
  10. package/dist/index.js.map +1 -1
  11. package/dist/logger/socketClientLogPublisher.js +12 -12
  12. package/dist/logger/socketClientLogPublisher.js.map +1 -1
  13. package/dist/logger/stsTransportLoggerSocket.js +9 -9
  14. package/dist/logger/stsTransportLoggerSocket.js.map +1 -1
  15. package/dist/logger/stsTransportLoggerWinston.js +2 -2
  16. package/dist/logger/stsTransportLoggerWinston.js.map +1 -1
  17. package/dist/logger/stsTransportWinston.js +3 -3
  18. package/dist/logger/stsTransportWinston.js.map +1 -1
  19. package/dist/middleware/serverNetworkMiddleware.js +41 -34
  20. package/dist/middleware/serverNetworkMiddleware.js.map +1 -1
  21. package/dist/network.js +2 -2
  22. package/dist/network.js.map +1 -1
  23. package/dist/process/masterprocessbase.js +92 -79
  24. package/dist/process/masterprocessbase.js.map +1 -1
  25. package/dist/process/processbase.js +162 -139
  26. package/dist/process/processbase.js.map +1 -1
  27. package/dist/process/serverprocessbase.js +104 -63
  28. package/dist/process/serverprocessbase.js.map +1 -1
  29. package/dist/process/singleprocessbase.js +17 -14
  30. package/dist/process/singleprocessbase.js.map +1 -1
  31. package/dist/process/workerprocessbase.js +39 -34
  32. package/dist/process/workerprocessbase.js.map +1 -1
  33. package/dist/publishertransports/publishTransportUtils.js +4 -4
  34. package/dist/publishertransports/publishTransportUtils.js.map +1 -1
  35. package/dist/route/stslatencyroute.js +3 -3
  36. package/dist/route/stslatencyroute.js.map +1 -1
  37. package/dist/route/stsrouterbase.js +1 -1
  38. package/dist/route/stsrouterbase.js.map +1 -1
  39. package/dist/server.test.js +2 -2
  40. package/dist/stsexpressserver.js +22 -19
  41. package/dist/stsexpressserver.js.map +1 -1
  42. package/dist/validation/errors.js +2 -2
  43. package/package.json +17 -16
  44. package/types/commonTypes.d.ts +27 -23
  45. package/types/commonTypes.d.ts.map +1 -1
  46. package/types/controller/stscontrollerbase.d.ts +1 -1
  47. package/types/controller/stscontrollerbase.d.ts.map +1 -1
  48. package/types/controller/stslatencycontroller.d.ts +2 -2
  49. package/types/controller/stslatencycontroller.d.ts.map +1 -1
  50. package/types/grpc/grpcServer.d.ts.map +1 -1
  51. package/types/index.d.ts +15 -15
  52. package/types/index.d.ts.map +1 -1
  53. package/types/logger/socketClientLogPublisher.d.ts +3 -3
  54. package/types/logger/socketClientLogPublisher.d.ts.map +1 -1
  55. package/types/logger/stsTransportLoggerSocket.d.ts +2 -2
  56. package/types/logger/stsTransportLoggerSocket.d.ts.map +1 -1
  57. package/types/logger/stsTransportLoggerWinston.d.ts +2 -2
  58. package/types/logger/stsTransportLoggerWinston.d.ts.map +1 -1
  59. package/types/logger/stsTransportWinston.d.ts +2 -2
  60. package/types/logger/stsTransportWinston.d.ts.map +1 -1
  61. package/types/middleware/serverNetworkMiddleware.d.ts +3 -3
  62. package/types/middleware/serverNetworkMiddleware.d.ts.map +1 -1
  63. package/types/network.d.ts.map +1 -1
  64. package/types/process/masterprocessbase.d.ts +4 -4
  65. package/types/process/masterprocessbase.d.ts.map +1 -1
  66. package/types/process/processbase.d.ts +16 -7
  67. package/types/process/processbase.d.ts.map +1 -1
  68. package/types/process/serverprocessbase.d.ts +3 -3
  69. package/types/process/serverprocessbase.d.ts.map +1 -1
  70. package/types/process/singleprocessbase.d.ts +3 -3
  71. package/types/process/singleprocessbase.d.ts.map +1 -1
  72. package/types/process/workerprocessbase.d.ts +3 -3
  73. package/types/process/workerprocessbase.d.ts.map +1 -1
  74. package/types/publishertransports/publishTransportUtils.d.ts +1 -1
  75. package/types/publishertransports/publishTransportUtils.d.ts.map +1 -1
  76. package/types/route/stslatencyroute.d.ts +2 -2
  77. package/types/route/stslatencyroute.d.ts.map +1 -1
  78. package/types/route/stsrouterbase.d.ts +2 -2
  79. package/types/route/stsrouterbase.d.ts.map +1 -1
  80. package/types/stsexpressserver.d.ts +2 -2
  81. package/types/stsexpressserver.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"masterprocessbase.js","sourceRoot":"","sources":["../../src/process/masterprocessbase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"masterprocessbase.js","sourceRoot":"","sources":["../../src/process/masterprocessbase.ts"],"names":[],"mappings":"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"}
@@ -1,66 +1,156 @@
1
1
  /* eslint @typescript-eslint/no-explicit-any: 0, @typescript-eslint/no-unused-vars: 0 */ // --> OFF
2
- import pidusage from 'pidusage';
3
- import { memoryUsage } from 'process';
4
- import cluster from 'node:cluster';
5
- import si from 'systeminformation'; // https://systeminformation.io/
6
- import { GetFirstNetworkInterface } from './../network.js';
7
- import chalk from 'chalk';
8
- import { Gauge } from '@nsshunt/stsobservability';
9
- import { accessLayerType, DBAccessLayerManager, IDBAccessLayerEvents } from '@nsshunt/stsdatamanagement';
10
- import { goptions } from '@nsshunt/stsconfig';
11
- import { createAgentManager } from '@nsshunt/stsutils';
12
- import { StatusCodes } from 'http-status-codes';
13
- import { PublishInstrumentController, TransportType, GetInstruments } from '@nsshunt/stsinstrumentmanagerclient';
14
- import os from 'os';
15
- import { CreateServiceProcessContext } from './../commonTypes.js';
16
- import { TinyEmitter } from 'tiny-emitter';
17
- import http from 'node:http';
18
- import https from 'node:https';
2
+ import pidusage from "pidusage";
3
+ import { memoryUsage } from "process";
4
+ import cluster from "node:cluster";
5
+ import si from "systeminformation"; // https://systeminformation.io/
6
+ import { GetFirstNetworkInterface } from "./../network.js";
7
+ import chalk from "chalk";
8
+ import { Gauge, } from "@nsshunt/stsobservability";
9
+ import { accessLayerType, DBAccessLayerManager, IDBAccessLayerEvents, } from "@nsshunt/stsdatamanagement";
10
+ import { goptions } from "@nsshunt/stsconfig";
11
+ import { createAgentManager, inject, } from "@nsshunt/stsutils";
12
+ import { StatusCodes } from "http-status-codes";
13
+ import { PublishInstrumentController, TransportType, GetInstruments, } from "@nsshunt/stsinstrumentmanagerclient";
14
+ import { Injector, InjectionToken } from "@nsshunt/stsutils";
15
+ import os from "os";
16
+ import { CreateServiceProcessContext, } from "./../commonTypes.js";
17
+ import { TinyEmitter } from "tiny-emitter";
18
+ import http from "node:http";
19
+ import https from "node:https";
20
+ export class InstrumentControllerAgentManager {
21
+ }
22
+ export const AgentManagerToken = new InjectionToken("AgentManager");
23
+ export const PublishInstrumentControllerToken = new InjectionToken("PublishInstrumentController");
24
+ export const ProcessOptionsToken = new InjectionToken("ProcessOptions");
25
+ export const DBAccessLayerToken = new InjectionToken("DBAccessLayer");
19
26
  export class ProcessBase extends TinyEmitter {
20
- #options;
21
- #instrumentController = null;
22
27
  #systemInformationInterval = null;
23
28
  //@@#socketIoServerHelper: ISocketIoServerHelper<STSDefaultClientToServerEvents, STSDefaultServerToClientEvents> | null = null;
24
- #accessLayer = null;
25
- #instrumentControllerAgentManager;
26
29
  //#redisMessageHandler: RedisMessageHandler | null = null;
30
+ #rootInjector;
27
31
  constructor(options) {
28
32
  super();
29
- this.#options = options;
30
- this.#instrumentControllerAgentManager = createAgentManager({
31
- agentOptions: {
32
- keepAlive: false, // Use basic defaults. This agent will not use keep-alive.
33
- maxFreeSockets: goptions.maxFreeSockets,
34
- maxSockets: goptions.maxSockets,
35
- maxTotalSockets: goptions.maxTotalSockets,
36
- timeout: goptions.timeout,
37
- rejectUnauthorized: goptions.isProduction // Allows self-signed certificates if non-production
33
+ this.#rootInjector = new Injector([
34
+ {
35
+ provide: ProcessOptionsToken,
36
+ useFactory: () => options,
38
37
  },
39
- httpAgentFactory(options) {
40
- return new http.Agent(options);
38
+ {
39
+ provide: DBAccessLayerToken,
40
+ useFactory: () => {
41
+ const options = this.#rootInjector.get(ProcessOptionsToken);
42
+ if (!options.useDatabase) {
43
+ return null;
44
+ }
45
+ const accessLayer = new DBAccessLayerManager().CreateAccessLayer({
46
+ accessLayerType: accessLayerType.postgresql,
47
+ accessLayerOptions: {
48
+ logger: options.logger,
49
+ usedefaultdb: false,
50
+ },
51
+ });
52
+ accessLayer.on(IDBAccessLayerEvents.UpdateInstruments, this.#UpdatePGPoolManagerInstrument);
53
+ (async () => {
54
+ try {
55
+ const retVal = await accessLayer.GetResourceCount();
56
+ if (retVal.status !== StatusCodes.OK) {
57
+ this.LogInfoMessage(chalk.red(`Unable to get resources from the database. Is the database running? [${JSON.stringify(retVal)}]`));
58
+ }
59
+ else {
60
+ this.LogInfoMessage(chalk.green(`Database connection successful. Resources: [${retVal.detail}]`));
61
+ }
62
+ }
63
+ catch (error) {
64
+ this.LogInfoMessage(chalk.red(`Unable to get resources from the database. Is the database running? Error: [${error}]`));
65
+ }
66
+ })();
67
+ return accessLayer;
68
+ },
41
69
  },
42
- httpsAgentFactory(options) {
43
- return new https.Agent(options);
44
- }
45
- });
70
+ {
71
+ provide: AgentManagerToken,
72
+ useFactory: () => {
73
+ return createAgentManager({
74
+ agentOptions: {
75
+ keepAlive: false, // Use basic defaults. This agent will not use keep-alive.
76
+ maxFreeSockets: goptions.maxFreeSockets,
77
+ maxSockets: goptions.maxSockets,
78
+ maxTotalSockets: goptions.maxTotalSockets,
79
+ timeout: goptions.timeout,
80
+ rejectUnauthorized: goptions.isProduction, // Allows self-signed certificates if non-production
81
+ },
82
+ httpAgentFactory(options) {
83
+ return new http.Agent(options);
84
+ },
85
+ httpsAgentFactory(options) {
86
+ return new https.Agent(options);
87
+ },
88
+ });
89
+ },
90
+ },
91
+ {
92
+ provide: PublishInstrumentControllerToken,
93
+ useFactory: () => {
94
+ if (!this.options.serviceProcessContext) {
95
+ return undefined;
96
+ }
97
+ let publishTransportOptions = null;
98
+ if (goptions.observabilityPublishMode.localeCompare("PROXY") === 0) {
99
+ publishTransportOptions = {
100
+ transportType: TransportType.RESTAPI,
101
+ url: `${goptions.imendpoint}:${goptions.import}${goptions.imapiroot}/publishmessage`,
102
+ agentManager: inject(AgentManagerToken),
103
+ // socketPath: '/var/run/sts/stsrest01.sock'
104
+ logger: this.options.publisherLogger,
105
+ };
106
+ }
107
+ else {
108
+ // Currently, now other types are supported
109
+ return;
110
+ }
111
+ const httpServer = goptions.STSServerType.localeCompare("EXPRESS") === 0 ||
112
+ goptions.STSServerType.localeCompare("EXPRESS_TLS") ===
113
+ 0;
114
+ const instrumentControllerOptions = {
115
+ processContext: this.options.serviceProcessContext,
116
+ //payloadType: InstrumentPayloadType.service,
117
+ consoleLogging: this.options.consoleLogging,
118
+ instrumentLogging: this.options.instrumentLogging,
119
+ httpServer,
120
+ instrumentationObservationInterval: this.options.instrumentationObservationInterval,
121
+ instrumentationTimeWindow: this.options.instrumentationTimeWindow,
122
+ logger: this.options.publisherLogger,
123
+ publishInterval: this.options.publishInterval,
124
+ publishPostFailInterval: 5000, //@@
125
+ instrumentDefinitions: GetInstruments("service"),
126
+ publishTransportBaseOptions: publishTransportOptions,
127
+ autoStart: true,
128
+ };
129
+ return new PublishInstrumentController(instrumentControllerOptions);
130
+ },
131
+ },
132
+ ]);
46
133
  if (options.serviceName) {
47
134
  this.options.serviceProcessContext = CreateServiceProcessContext(options.serviceName, options.serviceVersion, options.serviceInstanceId, os.hostname(), process.pid, options.isMaster ? process.pid : process.ppid);
48
135
  }
49
136
  }
50
137
  #GetFormattedLogMessage(message) {
51
- let prefix = '';
138
+ let prefix = "";
52
139
  let col = null;
53
140
  const appName = this.options.serviceName;
54
141
  if (cluster.isPrimary) {
55
- prefix = 'M';
142
+ prefix = "M";
56
143
  col = chalk.bold.cyan;
57
144
  }
58
145
  else {
59
- prefix = 'W';
146
+ prefix = "W";
60
147
  col = chalk.green;
61
148
  }
62
149
  return col(`${prefix}(${process.pid}) [${appName}]: ${message}`);
63
150
  }
151
+ RootInjector = () => {
152
+ return this.#rootInjector;
153
+ };
64
154
  LogErrorMessage(message) {
65
155
  this.options.logger.error(this.#GetFormattedLogMessage(message));
66
156
  }
@@ -72,59 +162,15 @@ export class ProcessBase extends TinyEmitter {
72
162
  }
73
163
  LogMessageToLoggerInstrument(message) {
74
164
  this.UpdateInstrument(Gauge.LOGGER, {
75
- LogMessage: this.#GetFormattedLogMessage(message)
165
+ LogMessage: this.#GetFormattedLogMessage(message),
76
166
  });
77
167
  }
78
168
  get options() {
79
- return this.#options;
169
+ return this.#rootInjector.get(ProcessOptionsToken);
80
170
  }
81
171
  get shuttingDown() {
82
172
  return false;
83
173
  }
84
- SetupInstrumentation() {
85
- if (!this.options.serviceProcessContext) {
86
- return;
87
- }
88
- let publishTransportOptions = null;
89
- if (goptions.observabilityPublishMode.localeCompare('PROXY') === 0) {
90
- publishTransportOptions = {
91
- transportType: TransportType.RESTAPI,
92
- url: `${goptions.imendpoint}:${goptions.import}${goptions.imapiroot}/publishmessage`,
93
- agentManager: this.#instrumentControllerAgentManager,
94
- // socketPath: '/var/run/sts/stsrest01.sock'
95
- logger: this.options.publisherLogger
96
- };
97
- }
98
- else {
99
- // Currently, now other types are supported
100
- return;
101
- }
102
- const httpServer = (goptions.STSServerType.localeCompare('EXPRESS') === 0) || (goptions.STSServerType.localeCompare('EXPRESS_TLS') === 0);
103
- //const fileName = './dist/publishInstrumentsWebWorker.js';
104
- //const worker = new Worker(fileName);
105
- const instrumentControllerOptions = {
106
- processContext: this.options.serviceProcessContext,
107
- //payloadType: InstrumentPayloadType.service,
108
- consoleLogging: this.options.consoleLogging,
109
- instrumentLogging: this.options.instrumentLogging,
110
- httpServer,
111
- instrumentationObservationInterval: this.options.instrumentationObservationInterval,
112
- instrumentationTimeWindow: this.options.instrumentationTimeWindow,
113
- logger: this.options.publisherLogger,
114
- publishInterval: this.options.publishInterval,
115
- publishPostFailInterval: 5000, //@@
116
- instrumentDefinitions: GetInstruments('service'),
117
- publishTransportBaseOptions: publishTransportOptions,
118
- autoStart: true
119
- /*
120
- [
121
- ...this.#GetDefaultServiceInstruments(httpServer),
122
- ...this.GetAdditionalInstruments()
123
- ]
124
- */
125
- };
126
- this.#instrumentController = new PublishInstrumentController(instrumentControllerOptions);
127
- }
128
174
  /*
129
175
  #GetDefaultServiceInstruments(httpServer: boolean): InstrumentDefinitions {
130
176
  const standardInstruments: InstrumentDefinitions = [
@@ -183,6 +229,7 @@ export class ProcessBase extends TinyEmitter {
183
229
  return [];
184
230
  }
185
231
  CollectAdditionalTelemetry() {
232
+ // eslint-disable @typescript-eslint/no-empty-function
186
233
  }
187
234
  ProcessStartup = () => {
188
235
  // use this as well
@@ -190,7 +237,7 @@ export class ProcessBase extends TinyEmitter {
190
237
  // https://nodejs.org/api/perf_hooks.html#perf_hooksmonitoreventloopdelayoptions
191
238
  const ExecuteGetStats = async () => {
192
239
  const startTime = performance.now();
193
- if (this.#instrumentController) {
240
+ if (this.InstrumentController) {
194
241
  let useStatsCpu;
195
242
  try {
196
243
  const stats = await pidusage(process.pid);
@@ -203,11 +250,10 @@ export class ProcessBase extends TinyEmitter {
203
250
  this.LogWarnMessage(`ProcessBase:ProcessStartup:ExecuteGetStats():pidusage(): Error: [${error}]`);
204
251
  useStatsCpu = 0.01; //@@ Endure we record something about 0. 0's are filtered from monitoring tools.
205
252
  }
206
- this.#instrumentController.UpdateInstrument(Gauge.CPU_LOAD_GAUGE, {
207
- val: useStatsCpu
253
+ this.InstrumentController.UpdateInstrument(Gauge.CPU_LOAD_GAUGE, {
254
+ val: useStatsCpu,
208
255
  });
209
256
  }
210
- ;
211
257
  /*
212
258
  pidusage(process.pid, (err, stats) => {
213
259
  if (this.#instrumentController) {
@@ -231,7 +277,7 @@ export class ProcessBase extends TinyEmitter {
231
277
  a: usage.arrayBuffers,
232
278
  };
233
279
  this.UpdateInstrument(Gauge.OBJECT_GAUGE, {
234
- val: telemetry
280
+ val: telemetry,
235
281
  });
236
282
  this.CollectAdditionalTelemetry();
237
283
  const totalTime = performance.now() - startTime;
@@ -246,12 +292,13 @@ export class ProcessBase extends TinyEmitter {
246
292
  //@@this.LogInfoMessage(`RedisMessageHandler: redisUrl: [${goptions.imRedisMessageProcessorUrl}]`);
247
293
  };
248
294
  UpdateInstrument = (instrumentName, telemetry) => {
249
- if (this.#instrumentController) {
250
- this.#instrumentController.UpdateInstrument(instrumentName, telemetry);
295
+ if (this.InstrumentController) {
296
+ this.InstrumentController.UpdateInstrument(instrumentName, telemetry);
251
297
  }
252
298
  };
253
299
  ProcessExit = (processExitDelay) => {
254
- if (this.options.processExitOnTerminate && this.options.processExitOnTerminate === true) {
300
+ if (this.options.processExitOnTerminate &&
301
+ this.options.processExitOnTerminate === true) {
255
302
  setTimeout(() => {
256
303
  this.LogInfoMessage(`Performing process.exit(0).`);
257
304
  process.exit(0);
@@ -268,29 +315,32 @@ export class ProcessBase extends TinyEmitter {
268
315
  if (this.InstrumentController) {
269
316
  await this.InstrumentController.EndPublish();
270
317
  setTimeout(() => {
271
- this.#instrumentControllerAgentManager.Terminate();
318
+ this.AgentManager.Terminate();
272
319
  }, 50);
273
320
  }
274
321
  }, 100);
275
322
  }
276
323
  };
277
324
  get InstrumentController() {
278
- return this.#instrumentController;
325
+ return this.#rootInjector.get(PublishInstrumentControllerToken);
326
+ }
327
+ get AgentManager() {
328
+ return this.#rootInjector.get(AgentManagerToken);
279
329
  }
280
330
  InstrumentExists(instrumentName) {
281
- if (this.#instrumentController) {
282
- return this.#instrumentController.InstrumentExists(instrumentName);
331
+ if (this.InstrumentController) {
332
+ return this.InstrumentController.InstrumentExists(instrumentName);
283
333
  }
284
334
  return false;
285
335
  }
286
336
  TerminateUIController = () => {
287
337
  if (this.GetUIController() !== null) {
288
- this.LogInfoMessage('ProcessBase:TerminateUIController(): Destroy the user interface controller.');
338
+ this.LogInfoMessage("ProcessBase:TerminateUIController(): Destroy the user interface controller.");
289
339
  this.GetUIController().DestroyUI();
290
340
  }
291
341
  };
292
342
  async ProcessTerminate() {
293
- this.emit('ProcessTerminate');
343
+ this.emit("ProcessTerminate");
294
344
  if (this.#systemInformationInterval) {
295
345
  clearTimeout(this.#systemInformationInterval);
296
346
  }
@@ -317,57 +367,30 @@ export class ProcessBase extends TinyEmitter {
317
367
  */
318
368
  #UpdatePGPoolManagerInstrument = (data) => {
319
369
  this.UpdateInstrument(Gauge.CONNECTION_POOL_TOTAL_GAUGE, {
320
- val: data.totalCount
370
+ val: data.totalCount,
321
371
  });
322
372
  this.UpdateInstrument(Gauge.CONNECTION_POOL_IDLE_GAUGE, {
323
- val: data.idleCount
373
+ val: data.idleCount,
324
374
  });
325
375
  this.UpdateInstrument(Gauge.CONNECTION_POOL_WAITING_GAUGE, {
326
- val: data.waitingCount
376
+ val: data.waitingCount,
327
377
  });
328
378
  };
329
379
  async TerminateDatabase() {
330
- if (this.#accessLayer) {
380
+ if (this.accessLayer) {
331
381
  const logPrefix = `ProcessBase:TerminateDatabase():${process.pid}:`;
332
382
  this.LogInfoMessage(`${logPrefix} Ending database connections and pools.`);
333
- this.#accessLayer.off(IDBAccessLayerEvents.UpdateInstruments, this.#UpdatePGPoolManagerInstrument);
334
- await this.#accessLayer.EndDatabase();
383
+ this.accessLayer.off(IDBAccessLayerEvents.UpdateInstruments, this.#UpdatePGPoolManagerInstrument);
384
+ await this.accessLayer.EndDatabase();
335
385
  }
336
386
  }
337
387
  get accessLayer() {
338
- if (this.options.useDatabase) {
339
- if (this.#accessLayer === null) {
340
- this.#accessLayer = new DBAccessLayerManager().CreateAccessLayer({
341
- accessLayerType: accessLayerType.postgresql,
342
- accessLayerOptions: {
343
- logger: this.options.logger,
344
- usedefaultdb: false
345
- }
346
- });
347
- this.#accessLayer.on(IDBAccessLayerEvents.UpdateInstruments, this.#UpdatePGPoolManagerInstrument);
348
- (async () => {
349
- try {
350
- const retVal = await this.accessLayer.GetResourceCount();
351
- if (retVal.status !== StatusCodes.OK) {
352
- this.LogInfoMessage(chalk.red(`Unable to get resources from the database. Is the database running? [${JSON.stringify(retVal)}]`));
353
- }
354
- else {
355
- this.LogInfoMessage(chalk.green(`Database connection successful. Resources: [${retVal.detail}]`));
356
- }
357
- }
358
- catch (error) {
359
- this.LogInfoMessage(chalk.red(`Unable to get resources from the database. Is the database running? Error: [${error}]`));
360
- }
361
- })();
362
- }
363
- return this.#accessLayer;
364
- }
365
- return null;
388
+ return this.#rootInjector.get(DBAccessLayerToken);
366
389
  }
367
390
  GetNumCPUs = async () => {
368
391
  // https://systeminformation.io/
369
392
  const valueObject = {
370
- cpu: '*'
393
+ cpu: "*",
371
394
  };
372
395
  const sysinfo = await si.get(valueObject);
373
396
  let numCPUs = 2;
@@ -387,10 +410,10 @@ export class ProcessBase extends TinyEmitter {
387
410
  LogSystemTelemetry = async () => {
388
411
  // https://systeminformation.io/
389
412
  const valueObject = {
390
- system: '*',
391
- osInfo: '*',
392
- cpu: '*',
393
- mem: '*'
413
+ system: "*",
414
+ osInfo: "*",
415
+ cpu: "*",
416
+ mem: "*",
394
417
  };
395
418
  const sysinfo = await si.get(valueObject);
396
419
  const numCPUs = await this.GetNumCPUs();
@@ -411,7 +434,7 @@ export class ProcessBase extends TinyEmitter {
411
434
  };
412
435
  GetSignalColour = (signal) => {
413
436
  let msgcolor = null;
414
- if (signal === 'SIGINT') {
437
+ if (signal === "SIGINT") {
415
438
  msgcolor = chalk.yellow;
416
439
  }
417
440
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"processbase.js","sourceRoot":"","sources":["../../src/process/processbase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processbase.js","sourceRoot":"","sources":["../../src/process/processbase.ts"],"names":[],"mappings":"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"}