skyeye-svc-common-utils 1.0.75 → 1.0.77-dev.20240507

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.
@@ -17,6 +17,7 @@ const typeorm_1 = require("typeorm");
17
17
  const appConst_1 = require("../appConst");
18
18
  const appConfig_1 = require("../appConfig");
19
19
  const async_mutex_1 = require("async-mutex");
20
+ const startdbConnection_1 = require("../middleware/startdbConnection");
20
21
  class BaseController {
21
22
  startTransaction() {
22
23
  return __awaiter(this, void 0, void 0, function* () {
@@ -94,6 +95,7 @@ class BaseController {
94
95
  }).then(() => {
95
96
  return (0, commonUtils_1.sendResponse)(res, next, baseControllerParameter.serviceResponse);
96
97
  }).catch((err) => {
98
+ (0, startdbConnection_1.connectWithRetry)(null);
97
99
  logger_1.logger.error(`BaseController/executeRest error: ${err}`);
98
100
  baseControllerParameter.serviceResponse.isSuccess = false;
99
101
  this.endTransaction(baseControllerParameter).then(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"baseController.js","sourceRoot":"","sources":["../../../src/utils/baseClass/baseController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseController.js","sourceRoot":"","sources":["../../../src/utils/baseClass/baseController.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
+ export declare function connectWithRetry(entities: any[], retriesLeft?: number): Promise<void>;
1
2
  export declare function startConnection(entities: any[]): Promise<void>;
@@ -9,11 +9,36 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.startConnection = void 0;
12
+ exports.startConnection = exports.connectWithRetry = void 0;
13
13
  const typeorm_1 = require("typeorm");
14
14
  const appConfig_1 = require("../appConfig");
15
15
  const azureKeyVault_1 = require("../../lib/azure/azureKeyVault");
16
16
  const logger_1 = require("../logger/logger");
17
+ const maxConnectionRetries = 1440; //6*60*60*1000/retryDelay; maximum retry to create a new connection in 6h
18
+ const retryDelay = 15000; // milliseconds
19
+ function connectWithRetry(entities, retriesLeft = maxConnectionRetries) {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ const options = Object.assign(Object.assign({}, JSON.parse(yield (0, azureKeyVault_1.getKey)(appConfig_1.commonAppConfig.SqlConnectionConfigKey))), { synchronize: false, entities: entities });
22
+ if (appConfig_1.commonAppConfig.SqlEnable) {
23
+ (0, typeorm_1.createConnection)(options)
24
+ .then((connection) => __awaiter(this, void 0, void 0, function* () {
25
+ logger_1.logger.info("TypeORM connected");
26
+ }))
27
+ .catch((error) => __awaiter(this, void 0, void 0, function* () {
28
+ logger_1.logger.error("TypeORM connection error: ", error);
29
+ if (retriesLeft > 0) {
30
+ logger_1.logger.info(`Retrying connection. ${retriesLeft} retries left...`);
31
+ yield new Promise((resolve) => setTimeout(resolve, retryDelay));
32
+ yield connectWithRetry(entities, retriesLeft - 1);
33
+ }
34
+ else {
35
+ logger_1.logger.error("Max connection retries reached. Unable to connect to the database.");
36
+ }
37
+ }));
38
+ }
39
+ });
40
+ }
41
+ exports.connectWithRetry = connectWithRetry;
17
42
  function startConnection(entities) {
18
43
  return __awaiter(this, void 0, void 0, function* () {
19
44
  const options = Object.assign(Object.assign({}, JSON.parse(yield (0, azureKeyVault_1.getKey)(appConfig_1.commonAppConfig.SqlConnectionConfigKey))), { synchronize: false, entities: entities });
@@ -1 +1 @@
1
- {"version":3,"file":"startdbConnection.js","sourceRoot":"","sources":["../../../src/utils/middleware/startdbConnection.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAA8D;AAC9D,4CAA+C;AAC/C,iEAAuD;AACvD,6CAA0C;AAE1C,SAAsB,eAAe,CAAC,QAAe;;QACjD,MAAM,OAAO,mCAEN,IAAI,CAAC,KAAK,CAAC,MAAM,IAAA,sBAAM,EAAC,2BAAe,CAAC,sBAAsB,CAAC,CAAC,KACnE,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,QAAQ,GACrB,CAAC;QACF,IAAI,2BAAe,CAAC,SAAS,EAAE;YAC3B,IAAA,0BAAgB,EAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAM,UAAU,EAAC,EAAE;gBAC9C,eAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACrC,CAAC,CAAA,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,eAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC,CAAC;SACvE;IACL,CAAC;CAAA;AAZD,0CAYC"}
1
+ {"version":3,"file":"startdbConnection.js","sourceRoot":"","sources":["../../../src/utils/middleware/startdbConnection.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAA8D;AAC9D,4CAA+C;AAC/C,iEAAuD;AACvD,6CAA0C;AAE1C,MAAM,oBAAoB,GAAG,IAAI,CAAC,CAAC,yEAAyE;AAC5G,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,eAAe;AAEzC,SAAsB,gBAAgB,CACpC,QAAe,EACf,WAAW,GAAG,oBAAoB;;QAElC,MAAM,OAAO,mCACR,IAAI,CAAC,KAAK,CAAC,MAAM,IAAA,sBAAM,EAAC,2BAAe,CAAC,sBAAsB,CAAC,CAAC,KACnE,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,QAAQ,GACnB,CAAC;QAEA,IAAI,2BAAe,CAAC,SAAS,EAAE;YAC7B,IAAA,0BAAgB,EAAC,OAAO,CAAC;iBACtB,IAAI,CAAC,CAAO,UAAU,EAAE,EAAE;gBACzB,eAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACnC,CAAC,CAAA,CAAC;iBACD,KAAK,CAAC,CAAO,KAAK,EAAE,EAAE;gBACnB,eAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;gBAClD,IAAI,WAAW,GAAG,CAAC,EAAE;oBACnB,eAAM,CAAC,IAAI,CAAC,wBAAwB,WAAW,kBAAkB,CAAC,CAAC;oBACnE,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;oBAChE,MAAM,gBAAgB,CAAC,QAAQ,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;iBACnD;qBAAM;oBACL,eAAM,CAAC,KAAK,CACV,oEAAoE,CACrE,CAAC;iBACH;YACL,CAAC,CAAA,CAAC,CAAC;SACN;IACL,CAAC;CAAA;AA5BD,4CA4BC;AAED,SAAsB,eAAe,CAAC,QAAe;;QACjD,MAAM,OAAO,mCAEN,IAAI,CAAC,KAAK,CAAC,MAAM,IAAA,sBAAM,EAAC,2BAAe,CAAC,sBAAsB,CAAC,CAAC,KACnE,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,QAAQ,GACrB,CAAC;QACF,IAAI,2BAAe,CAAC,SAAS,EAAE;YAC3B,IAAA,0BAAgB,EAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAM,UAAU,EAAC,EAAE;gBAC9C,eAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACrC,CAAC,CAAA,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,eAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC,CAAC;SACvE;IACL,CAAC;CAAA;AAZD,0CAYC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "skyeye-svc-common-utils",
3
- "version": "1.0.75",
3
+ "version": "1.0.77-dev.20240507",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -56,7 +56,7 @@
56
56
  "node-fetch": "^2.6.0",
57
57
  "nyc": "^15.1.0",
58
58
  "rotating-file-stream": "^1.4.6",
59
- "skyeye-common-const": "1.0.47",
59
+ "skyeye-common-const": "1.0.49",
60
60
  "swagger-jsdoc": "^3.5.0",
61
61
  "swagger-ui-express": "^4.1.3",
62
62
  "ts-node": "^9.0.0",
@@ -7,6 +7,7 @@ import { QueryRunner, getConnection } from 'typeorm';
7
7
  import { commonAppConst } from '../appConst';
8
8
  import { commonAppConfig } from '../appConfig';
9
9
  import { Mutex } from 'async-mutex';
10
+ import { connectWithRetry } from '../middleware/startdbConnection';
10
11
 
11
12
 
12
13
  export abstract class BaseController {
@@ -86,6 +87,7 @@ export abstract class BaseController {
86
87
  }).then(() => {
87
88
  return sendResponse(res, next, baseControllerParameter.serviceResponse);
88
89
  }).catch((err: Error) => {
90
+ connectWithRetry(null);
89
91
  logger.error(`BaseController/executeRest error: ${err}`);
90
92
  baseControllerParameter.serviceResponse.isSuccess = false;
91
93
  this.endTransaction(baseControllerParameter).then(() => {
@@ -3,6 +3,39 @@ import { commonAppConfig } from '../appConfig';
3
3
  import { getKey } from '../../lib/azure/azureKeyVault';
4
4
  import { logger } from '../logger/logger';
5
5
 
6
+ const maxConnectionRetries = 1440; //6*60*60*1000/retryDelay; maximum retry to create a new connection in 6h
7
+ const retryDelay = 15000; // milliseconds
8
+
9
+ export async function connectWithRetry(
10
+ entities: any[],
11
+ retriesLeft = maxConnectionRetries
12
+ ): Promise<void> {
13
+ const options: ConnectionOptions = {
14
+ ...JSON.parse(await getKey(commonAppConfig.SqlConnectionConfigKey)),
15
+ synchronize: false,
16
+ entities: entities,
17
+ };
18
+
19
+ if (commonAppConfig.SqlEnable) {
20
+ createConnection(options)
21
+ .then(async (connection) => {
22
+ logger.info("TypeORM connected");
23
+ })
24
+ .catch(async (error) => {
25
+ logger.error("TypeORM connection error: ", error);
26
+ if (retriesLeft > 0) {
27
+ logger.info(`Retrying connection. ${retriesLeft} retries left...`);
28
+ await new Promise((resolve) => setTimeout(resolve, retryDelay));
29
+ await connectWithRetry(entities, retriesLeft - 1);
30
+ } else {
31
+ logger.error(
32
+ "Max connection retries reached. Unable to connect to the database."
33
+ );
34
+ }
35
+ });
36
+ }
37
+ }
38
+
6
39
  export async function startConnection(entities: any[]) {
7
40
  const options: ConnectionOptions =
8
41
  {