@servicelabsco/nestjs-utility-services 1.1.25 → 1.1.27
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/app.controller.d.ts +1 -0
- package/dist/app.controller.js +9 -0
- package/dist/app.controller.js.map +1 -1
- package/dist/app.module.js +3 -2
- package/dist/app.module.js.map +1 -1
- package/dist/common/libraries/common.job.js +4 -21
- package/dist/common/libraries/common.job.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/platformUtility/commands/sqs.worker.command.js +1 -4
- package/dist/platformUtility/commands/sqs.worker.command.js.map +1 -1
- package/dist/platformUtility/consumers/event.consumer.d.ts +3 -1
- package/dist/platformUtility/consumers/event.consumer.js +25 -8
- package/dist/platformUtility/consumers/event.consumer.js.map +1 -1
- package/dist/platformUtility/es6.classes.d.ts +1 -1
- package/dist/platformUtility/jobs/another.job.d.ts +8 -0
- package/dist/platformUtility/jobs/another.job.js +30 -0
- package/dist/platformUtility/jobs/another.job.js.map +1 -0
- package/dist/platformUtility/jobs/test.job.js +3 -1
- package/dist/platformUtility/jobs/test.job.js.map +1 -1
- package/dist/platformUtility/platform.utility.module.js +1 -1
- package/dist/platformUtility/platform.utility.module.js.map +1 -1
- package/dist/platformUtility/services/maintenance.service.d.ts +5 -0
- package/dist/platformUtility/services/maintenance.service.js +27 -3
- package/dist/platformUtility/services/maintenance.service.js.map +1 -1
- package/dist/platformUtility/services/queue.service.d.ts +5 -21
- package/dist/platformUtility/services/queue.service.js +14 -74
- package/dist/platformUtility/services/queue.service.js.map +1 -1
- package/dist/system/commands/event.queue.command.d.ts +3 -1
- package/dist/system/commands/event.queue.command.js +10 -6
- package/dist/system/commands/event.queue.command.js.map +1 -1
- package/dist/system/entities/sms.template.entity.d.ts +2 -2
- package/dist/system/entities/sms.template.entity.js +2 -2
- package/dist/worker.service.d.ts +9 -0
- package/dist/worker.service.js +36 -0
- package/dist/worker.service.js.map +1 -0
- package/package.json +1 -1
package/dist/app.controller.d.ts
CHANGED
package/dist/app.controller.js
CHANGED
@@ -27,6 +27,9 @@ let AppController = class AppController {
|
|
27
27
|
return auth_1.Auth.user();
|
28
28
|
}
|
29
29
|
async set() { }
|
30
|
+
async getQueueInstance() {
|
31
|
+
return this.queueService.data;
|
32
|
+
}
|
30
33
|
async queue(id) {
|
31
34
|
return this.queueService.getJobDetails(id);
|
32
35
|
}
|
@@ -49,6 +52,12 @@ __decorate([
|
|
49
52
|
__metadata("design:paramtypes", []),
|
50
53
|
__metadata("design:returntype", Promise)
|
51
54
|
], AppController.prototype, "set", null);
|
55
|
+
__decorate([
|
56
|
+
(0, common_1.Get)('queue'),
|
57
|
+
__metadata("design:type", Function),
|
58
|
+
__metadata("design:paramtypes", []),
|
59
|
+
__metadata("design:returntype", Promise)
|
60
|
+
], AppController.prototype, "getQueueInstance", null);
|
52
61
|
__decorate([
|
53
62
|
(0, common_1.Get)('queue/:id'),
|
54
63
|
__param(0, (0, common_1.Param)('id')),
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"app.controller.js","sourceRoot":"","sources":["../src/app.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAwD;AACxD,kDAA+C;AAC/C,4EAAwE;
|
1
|
+
{"version":3,"file":"app.controller.js","sourceRoot":"","sources":["../src/app.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAwD;AACxD,kDAA+C;AAC/C,4EAAwE;AAIjE,IAAM,aAAa,GAAnB,MAAM,aAAa;IACtB,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAGrD,AAAN,KAAK,CAAC,GAAG;QACL,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;IACvC,CAAC;IAQK,AAAN,KAAK,CAAC,iBAAiB;QACnB,OAAO,WAAI,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAGK,AAAN,KAAK,CAAC,GAAG,KAAI,CAAC;IAGR,AAAN,KAAK,CAAC,gBAAgB;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;IAClC,CAAC;IAGK,AAAN,KAAK,CAAC,KAAK,CAAc,EAAU;QAC/B,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC;CACJ,CAAA;AA1BS;IADL,IAAA,YAAG,GAAE;;;;wCAGL;AAQK;IADL,IAAA,YAAG,EAAC,UAAU,CAAC;;;;sDAGf;AAGK;IADL,IAAA,YAAG,EAAC,KAAK,CAAC;;;;wCACG;AAGR;IADL,IAAA,YAAG,EAAC,OAAO,CAAC;;;;qDAGZ;AAGK;IADL,IAAA,YAAG,EAAC,WAAW,CAAC;IACJ,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;0CAEvB;AA7BQ,aAAa;IADzB,IAAA,mBAAU,GAAE;qCAEkC,4BAAY;GAD9C,aAAa,CA8BzB;AA9BY,sCAAa"}
|
package/dist/app.module.js
CHANGED
@@ -20,13 +20,14 @@ const internal_middleware_1 = require("./auth/middlewares/internal.middleware");
|
|
20
20
|
const jwt_middleware_1 = require("./auth/middlewares/jwt.middleware");
|
21
21
|
const restricted_middleware_1 = require("./auth/middlewares/restricted.middleware");
|
22
22
|
const common_module_1 = require("./common/common.module");
|
23
|
-
const cacheConfig = require("./config/cache.config");
|
24
23
|
const queueConfig = require("./config/queue.config");
|
25
24
|
const ormconfig = require("./config/typeorm.config");
|
26
25
|
const maintenance_middleware_1 = require("./platformUtility/middlewares/maintenance.middleware");
|
27
26
|
const platform_utility_module_1 = require("./platformUtility/platform.utility.module");
|
28
27
|
const security_module_1 = require("./security/security.module");
|
29
28
|
const system_module_1 = require("./system/system.module");
|
29
|
+
const worker_service_1 = require("./worker.service");
|
30
|
+
const cacheConfig = require("./config/cache.config");
|
30
31
|
let AppModule = class AppModule {
|
31
32
|
configure(consumer) {
|
32
33
|
consumer.apply(maintenance_middleware_1.MaintenanceMiddleware).forRoutes({ path: '*', method: common_1.RequestMethod.ALL });
|
@@ -51,7 +52,7 @@ AppModule = __decorate([
|
|
51
52
|
nestjs_command_1.CommandModule,
|
52
53
|
],
|
53
54
|
controllers: [app_controller_1.AppController],
|
54
|
-
providers: [app_service_1.AppService],
|
55
|
+
providers: [app_service_1.AppService, worker_service_1.WorkerService],
|
55
56
|
})
|
56
57
|
], AppModule);
|
57
58
|
exports.AppModule = AppModule;
|
package/dist/app.module.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAA0C;AAC1C,2CAAwF;AACxF,6CAAgD;AAChD,mDAA+C;AAC/C,mDAA+C;AAC/C,qDAAiD;AACjD,+CAA2C;AAC3C,oDAAgD;AAChD,oFAA+E;AAC/E,gFAA4E;AAC5E,sEAAkE;AAClE,oFAAgF;AAChF,0DAAsD;AACtD,
|
1
|
+
{"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAA0C;AAC1C,2CAAwF;AACxF,6CAAgD;AAChD,mDAA+C;AAC/C,mDAA+C;AAC/C,qDAAiD;AACjD,+CAA2C;AAC3C,oDAAgD;AAChD,oFAA+E;AAC/E,gFAA4E;AAC5E,sEAAkE;AAClE,oFAAgF;AAChF,0DAAsD;AACtD,qDAAqD;AACrD,qDAAqD;AACrD,iGAA6F;AAC7F,uFAAkF;AAClF,gEAA4D;AAC5D,0DAAsD;AACtD,qDAAiD;AACjD,qDAAsD;AAkB/C,IAAM,SAAS,GAAf,MAAM,SAAS;IAGlB,SAAS,CAAC,QAA4B;QAClC,QAAQ,CAAC,KAAK,CAAC,8CAAqB,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,sBAAa,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1F,QAAQ,CAAC,KAAK,CAAC,8BAAa,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,sBAAa,CAAC,GAAG,EAAE,CAAC,CAAC;QAClF,QAAQ,CAAC,KAAK,CAAC,2CAAmB,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,sBAAa,CAAC,GAAG,EAAE,CAAC,CAAC;QACxF,QAAQ,CAAC,KAAK,CAAC,4CAAoB,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,sBAAa,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7F,QAAQ,CAAC,KAAK,CAAC,wCAAkB,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,sBAAa,CAAC,GAAG,EAAE,CAAC,CAAC;IACpG,CAAC;CACJ,CAAA;AAVY,SAAS;IAhBrB,IAAA,eAAM,EAAC;QACJ,OAAO,EAAE;YACL,uBAAa,CAAC,OAAO,CAAC,SAAS,CAAC;YAChC,iBAAU,CAAC,OAAO,CAAC,WAAW,CAAC;YAC/B,oBAAW,CAAC,QAAQ,CAAC,WAAW,CAAC;YACjC,+CAAqB;YACrB,wBAAU;YACV,4BAAY;YACZ,gCAAc;YACd,4BAAY;YACZ,8BAAa;YACb,8BAAa;SAChB;QACD,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,CAAC,wBAAU,EAAE,8BAAa,CAAC;KACzC,CAAC;GACW,SAAS,CAUrB;AAVY,8BAAS"}
|
@@ -7,6 +7,7 @@ const operation_exception_1 = require("./../exceptions/operation.exception");
|
|
7
7
|
const hash_1 = require("./hash");
|
8
8
|
class CommonJob {
|
9
9
|
constructor() {
|
10
|
+
this.priority = 1;
|
10
11
|
this.logger = new common_1.Logger('EventQueue');
|
11
12
|
this.mode = 'redis';
|
12
13
|
this.queue = 'generic.job.trigger';
|
@@ -34,27 +35,9 @@ class CommonJob {
|
|
34
35
|
return this.queueService.sqsService.add(sqsQueue, payload);
|
35
36
|
}
|
36
37
|
async delayedDispatch(data, options, eventId) {
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
name: this.constructor.name,
|
41
|
-
event_id: eventId,
|
42
|
-
};
|
43
|
-
if (options === null || options === void 0 ? void 0 : options.nextQueuePayload) {
|
44
|
-
payload.nextQueuePayload = options.nextQueuePayload;
|
45
|
-
delete options.nextQueuePayload;
|
46
|
-
}
|
47
|
-
if (this.mode === 'redis') {
|
48
|
-
options = options !== null && options !== void 0 ? options : {};
|
49
|
-
options.delay = options.delay || 200;
|
50
|
-
if (this.priority && !(options === null || options === void 0 ? void 0 : options.priority))
|
51
|
-
options.priority = this.priority;
|
52
|
-
return this.queueService.add(this.queue, payload, options);
|
53
|
-
}
|
54
|
-
const sqsQueue = config.get(`sqs.${this.mode}`);
|
55
|
-
if (!sqsQueue)
|
56
|
-
throw new operation_exception_1.OperationException(`Queue ${this.mode} is not defined in the system. please add is under sqs`);
|
57
|
-
return this.queueService.sqsService.add(sqsQueue, payload);
|
38
|
+
options = options || {};
|
39
|
+
options.delay = options.delay || 200;
|
40
|
+
return this.dispatch(data, options, eventId);
|
58
41
|
}
|
59
42
|
async handle(data, job) {
|
60
43
|
return data;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"common.job.js","sourceRoot":"","sources":["../../../src/common/libraries/common.job.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAExC,iCAAiC;AAIjC,6EAAyE;AAEzE,iCAA8B;AAO9B,MAAa,SAAS;IAAtB;
|
1
|
+
{"version":3,"file":"common.job.js","sourceRoot":"","sources":["../../../src/common/libraries/common.job.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAExC,iCAAiC;AAIjC,6EAAyE;AAEzE,iCAA8B;AAO9B,MAAa,SAAS;IAAtB;QAMc,aAAQ,GAAG,CAAC,CAAC;QAQb,WAAM,GAAW,IAAI,eAAM,CAAC,YAAY,CAAC,CAAC;QAiB1C,SAAI,GAAW,OAAO,CAAC;QAQvB,UAAK,GAAW,qBAAqB,CAAC;IA+FpD,CAAC;IA/EG,KAAK,CAAC,QAAQ,CAAC,IAAS,EAAE,OAAyB,EAAE,OAAgB;QACjE,MAAM,OAAO,GAAQ;YACjB,GAAG,EAAE,WAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YACxC,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;YAC3B,QAAQ,EAAE,OAAO;SACpB,CAAC;QAGF,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,EAAE;YAC3B,OAAO,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YACpD,OAAO,OAAO,CAAC,gBAAgB,CAAC;SACnC;QAGD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;YACvB,OAAO,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAC;YAGxB,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,CAAA;gBAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAE1E,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC9D;QAGD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,wCAAkB,CAAC,SAAS,IAAI,CAAC,IAAI,wDAAwD,CAAC,CAAC;QAExH,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IASD,KAAK,CAAC,eAAe,CAAC,IAAS,EAAE,OAAyB,EAAE,OAAgB;QACxE,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC;QAErC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IASD,KAAK,CAAC,MAAM,CAAC,IAAS,EAAE,GAAS;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC;IAUS,eAAe,CAAC,KAA4B,EAAE,MAAyB;;QAE7E,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,cAAc,0CAAE,EAAE,CAAA;YAAE,OAAO,IAAI,CAAC;QAE3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACxB,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC7D,OAAO,KAAK,CAAC;SAChB;QAED,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE;YACvB,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;SAC9D;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AAtID,8BAsIC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
@@ -19,4 +19,5 @@ __exportStar(require("./security"), exports);
|
|
19
19
|
__exportStar(require("./system"), exports);
|
20
20
|
__exportStar(require("./common"), exports);
|
21
21
|
__exportStar(require("./platformUtility"), exports);
|
22
|
+
__exportStar(require("./worker.service"), exports);
|
22
23
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,6CAA2B;AAC3B,2CAAyB;AACzB,2CAAyB;AACzB,oDAAkC"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,6CAA2B;AAC3B,2CAAyB;AACzB,2CAAyB;AACzB,oDAAkC;AAClC,mDAAiC"}
|
@@ -82,10 +82,7 @@ let SqsWorkerCommand = class SqsWorkerCommand {
|
|
82
82
|
await this.processMessage(message);
|
83
83
|
}
|
84
84
|
async checkForSystem() {
|
85
|
-
await this.
|
86
|
-
if (this.maintenanceService.nodeNeedsRestart()) {
|
87
|
-
process.exit(0);
|
88
|
-
}
|
85
|
+
await this.maintenanceService.checkForMaintenance('sqsInstance');
|
89
86
|
}
|
90
87
|
};
|
91
88
|
__decorate([
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sqs.worker.command.js","sourceRoot":"","sources":["../../../src/platformUtility/commands/sqs.worker.command.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAoD;AACpD,iCAAiC;AACjC,mDAAyC;AACzC,8EAA0E;AAC1E,wEAAgE;AAChE,gFAA4E;AAC5E,kEAA8D;AAC9D,2EAAuE;AAEvE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAQjC,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAkBzB,YAA6B,YAA0B,EAAmB,kBAAsC;QAAnF,iBAAY,GAAZ,YAAY,CAAc;QAAmB,uBAAkB,GAAlB,kBAAkB,CAAoB;QAjBxG,YAAO,GAAG,CAAC,CAAC;QACZ,eAAU,GAAG,oBAAQ,CAAC,mBAAmB,EAAE,CAAC;QAC5C,UAAK,GAAG,oBAAQ,CAAC,GAAG,EAAE,CAAC;QAQvB,WAAM,GAAW,IAAI,eAAM,CAAC,WAAW,CAAC,CAAC;IAOkE,CAAC;IAM9G,AAAN,KAAK,CAAC,OAAO;QACT,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,OAAO,IAAI,EAAE;YACT,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAE5B,IAAI,MAAM,CAAC;YAEX,IAAI;gBACA,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;aACvC;YAAC,OAAO,KAAK,EAAE;gBACZ,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;aACtC;YAED,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAA;gBAAE,MAAM,kCAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEzD,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,KAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;gBACpD,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;aAC/C;SACJ;IACL,CAAC;IAOO,KAAK,CAAC,GAAG;QACb,WAAW,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,wBAAwB,IAAI,CAAC,UAAU,wBAAwB,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAClI,CAAC;QACN,CAAC,EAAE,KAAK,CAAC,CAAC;IACd,CAAC;IAQO,KAAK,CAAC,cAAc,CAAC,OAAY;QACrC,EAAE,IAAI,CAAC,OAAO,CAAC;QAGf,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,2BAA2B,OAAO,CAAC,SAAS,MAAM,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QAChF,MAAM,SAAS,GAAG,oBAAQ,CAAC,GAAG,EAAE,CAAC;QAEjC,IAAI;YACA,MAAM,4BAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE5D,MAAM,SAAS,GAAG,oBAAQ,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAE7C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,0BAA0B,OAAO,CAAC,SAAS,MAAM,IAAI,CAAC,IAAI,IAAI,SAAS,KAAK,CAAC,CAAC;SACjG;QAAC,OAAO,KAAK,EAAE;YACZ,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,OAAO,CAAC,SAAS,MAAM,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;YAE7E,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YACpC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SACnC;gBAAS;YACN,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;SAC3C;IACL,CAAC;IASO,KAAK,CAAC,WAAW,CAAC,EAAU;QAChC,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC;IAQO,KAAK,CAAC,aAAa;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,QAAe;QACzC,KAAK,MAAM,OAAO,IAAI,QAAQ;YAAE,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC;IAQO,KAAK,CAAC,cAAc;QACxB,MAAM,IAAI,CAAC,
|
1
|
+
{"version":3,"file":"sqs.worker.command.js","sourceRoot":"","sources":["../../../src/platformUtility/commands/sqs.worker.command.ts"],"names":[],"mappings":"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"}
|
@@ -1,9 +1,11 @@
|
|
1
1
|
import { Job } from 'bull';
|
2
|
+
import { MaintenanceService } from '../services/maintenance.service';
|
2
3
|
import { QueueService } from '../services/queue.service';
|
3
4
|
export declare class EventConsumer {
|
4
5
|
private readonly queueService;
|
6
|
+
private readonly maintenanceService;
|
5
7
|
private logger;
|
6
|
-
constructor(queueService: QueueService);
|
8
|
+
constructor(queueService: QueueService, maintenanceService: MaintenanceService);
|
7
9
|
activeEvent(job: Job): Promise<void>;
|
8
10
|
completionEvent(job: Job): Promise<void>;
|
9
11
|
failureEvent(job: Job): Promise<void>;
|
@@ -14,11 +14,13 @@ const bull_1 = require("@nestjs/bull");
|
|
14
14
|
const common_1 = require("@nestjs/common");
|
15
15
|
const date_util_1 = require("../../common/libraries/date.util");
|
16
16
|
const platform_constants_1 = require("../../config/platform.constants");
|
17
|
+
const maintenance_service_1 = require("../services/maintenance.service");
|
17
18
|
const queue_service_1 = require("../services/queue.service");
|
18
19
|
const queue = platform_constants_1.default.queue;
|
19
20
|
let EventConsumer = class EventConsumer {
|
20
|
-
constructor(queueService) {
|
21
|
+
constructor(queueService, maintenanceService) {
|
21
22
|
this.queueService = queueService;
|
23
|
+
this.maintenanceService = maintenanceService;
|
22
24
|
this.logger = new common_1.Logger('QueueManager');
|
23
25
|
}
|
24
26
|
async activeEvent(job) {
|
@@ -26,20 +28,20 @@ let EventConsumer = class EventConsumer {
|
|
26
28
|
this.setActiveRecord(job);
|
27
29
|
}
|
28
30
|
async completionEvent(job) {
|
31
|
+
await this.checkForQueueProcessing();
|
29
32
|
this.logger.log(`[${job.queue.name}][ Processed ] ${job.id} : ${this.getJobName(job)} : ${job.finishedOn - job.processedOn} ms`);
|
30
33
|
++this.queueService.data.stats.completed_jobs;
|
31
34
|
this.setCompletedRecord(job);
|
32
35
|
}
|
33
36
|
async failureEvent(job) {
|
37
|
+
await this.checkForQueueProcessing();
|
34
38
|
this.logger.log(`[${job.queue.name}][ Failure ] ${job.id} : ${this.getJobName(job)} `);
|
35
39
|
++this.queueService.data.stats.failed_jobs;
|
36
40
|
this.setCompletedRecord(job);
|
37
41
|
}
|
38
42
|
async queueStalled() {
|
39
|
-
this.logger.log(
|
40
|
-
|
41
|
-
process.exit(1);
|
42
|
-
}
|
43
|
+
this.logger.log('Queue has been stalled');
|
44
|
+
return this.checkForQueueProcessing();
|
43
45
|
}
|
44
46
|
async queueResumed() {
|
45
47
|
this.logger.log(`Queue has been resumed`);
|
@@ -60,8 +62,23 @@ let EventConsumer = class EventConsumer {
|
|
60
62
|
return job.name === 'generic.job.trigger' ? job.data.name : job.name;
|
61
63
|
}
|
62
64
|
async checkForQueueProcessing() {
|
63
|
-
|
64
|
-
|
65
|
+
const isWorkerInstance = this.queueService.isWorkerInstance();
|
66
|
+
const queueInstance = this.queueService.getQueueInstance();
|
67
|
+
const isInMaintenance = this.maintenanceService.isInMaintenance();
|
68
|
+
const isQueuePaused = await queueInstance.isPaused(true);
|
69
|
+
if (!isWorkerInstance) {
|
70
|
+
if (!isQueuePaused)
|
71
|
+
return this.queueService.pause();
|
72
|
+
return;
|
73
|
+
}
|
74
|
+
if (isQueuePaused && !isInMaintenance)
|
75
|
+
return this.queueService.resume();
|
76
|
+
if (!isQueuePaused && isInMaintenance)
|
77
|
+
return this.queueService.pause();
|
78
|
+
if (isQueuePaused && isInMaintenance) {
|
79
|
+
await this.maintenanceService.checkForMaintenance('bullInstance');
|
80
|
+
return this.checkForQueueProcessing();
|
81
|
+
}
|
65
82
|
}
|
66
83
|
};
|
67
84
|
__decorate([
|
@@ -96,7 +113,7 @@ __decorate([
|
|
96
113
|
], EventConsumer.prototype, "queueResumed", null);
|
97
114
|
EventConsumer = __decorate([
|
98
115
|
(0, bull_1.Processor)(queue),
|
99
|
-
__metadata("design:paramtypes", [queue_service_1.QueueService])
|
116
|
+
__metadata("design:paramtypes", [queue_service_1.QueueService, maintenance_service_1.MaintenanceService])
|
100
117
|
], EventConsumer);
|
101
118
|
exports.EventConsumer = EventConsumer;
|
102
119
|
//# sourceMappingURL=event.consumer.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"event.consumer.js","sourceRoot":"","sources":["../../../src/platformUtility/consumers/event.consumer.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uCAAwH;AACxH,2CAAwC;AAExC,gEAA4D;AAC5D,wEAAgE;AAChE,6DAAyD;AAEzD,MAAM,KAAK,GAAG,4BAAiB,CAAC,KAAK,CAAC;AAQ/B,IAAM,aAAa,GAAnB,MAAM,aAAa;IAatB,YAA6B,YAA0B;
|
1
|
+
{"version":3,"file":"event.consumer.js","sourceRoot":"","sources":["../../../src/platformUtility/consumers/event.consumer.ts"],"names":[],"mappings":"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"}
|
@@ -50,7 +50,7 @@ declare const es6Classes: {
|
|
50
50
|
jobs: (typeof RecordWatcherJob | typeof TestJob)[];
|
51
51
|
libraries: (typeof FileSystemUtility | typeof CreateEntityConstantsFile | typeof CreateEs6ClassesFile | typeof CreateEs6JobsFile | typeof CreateEs6ServiceFile | typeof CreateIndexFile | typeof ProcessCommonMail | typeof ProcessPostmarkMail)[];
|
52
52
|
middlewares: (typeof MaintenanceMiddleware | typeof TrimPipe)[];
|
53
|
-
services: (typeof
|
53
|
+
services: (typeof RemoteRequestService | typeof CacheService | typeof SqlService | typeof MaintenanceService | typeof ShutdownService | typeof DynamoService | typeof AuditService | typeof DynamoMetaService | typeof Es6JobsService | typeof FcmNotificationService | typeof MailService | typeof StartupService | typeof Es6Service | typeof SqsService | typeof LocalPropertyService | typeof QueueService)[];
|
54
54
|
subscribers: (typeof BaseSubscriber)[];
|
55
55
|
};
|
56
56
|
export default es6Classes;
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { CommonJob } from './../../common/libraries/common.job';
|
2
|
+
import { QueueService } from './../services/queue.service';
|
3
|
+
import { Job } from 'bull';
|
4
|
+
export declare class AnotherJob extends CommonJob {
|
5
|
+
protected readonly queueService: QueueService;
|
6
|
+
constructor(queueService: QueueService);
|
7
|
+
handle(data: any, job: Job): Promise<void>;
|
8
|
+
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.AnotherJob = void 0;
|
13
|
+
const common_1 = require("@nestjs/common");
|
14
|
+
const common_job_1 = require("./../../common/libraries/common.job");
|
15
|
+
const queue_service_1 = require("./../services/queue.service");
|
16
|
+
let AnotherJob = class AnotherJob extends common_job_1.CommonJob {
|
17
|
+
constructor(queueService) {
|
18
|
+
super();
|
19
|
+
this.queueService = queueService;
|
20
|
+
}
|
21
|
+
async handle(data, job) {
|
22
|
+
this.logger.log(`another job ${job.opts.priority}`);
|
23
|
+
}
|
24
|
+
};
|
25
|
+
AnotherJob = __decorate([
|
26
|
+
(0, common_1.Injectable)(),
|
27
|
+
__metadata("design:paramtypes", [queue_service_1.QueueService])
|
28
|
+
], AnotherJob);
|
29
|
+
exports.AnotherJob = AnotherJob;
|
30
|
+
//# sourceMappingURL=another.job.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"another.job.js","sourceRoot":"","sources":["../../../src/platformUtility/jobs/another.job.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,oEAAgE;AAChE,+DAA2D;AAIpD,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,sBAAS;IACrC,YAA+B,YAA0B;QACrD,KAAK,EAAE,CAAC;QADmB,iBAAY,GAAZ,YAAY,CAAc;IAEzD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAS,EAAE,GAAQ;QAC5B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxD,CAAC;CACJ,CAAA;AARY,UAAU;IADtB,IAAA,mBAAU,GAAE;qCAEoC,4BAAY;GADhD,UAAU,CAQtB;AARY,gCAAU"}
|
@@ -19,7 +19,9 @@ let TestJob = class TestJob extends common_job_1.CommonJob {
|
|
19
19
|
this.queueService = queueService;
|
20
20
|
}
|
21
21
|
async handle(data) {
|
22
|
-
|
22
|
+
for (let i = 0; i < 10; ++i) {
|
23
|
+
global.console.log('testjob', i);
|
24
|
+
}
|
23
25
|
}
|
24
26
|
};
|
25
27
|
TestJob = __decorate([
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"test.job.js","sourceRoot":"","sources":["../../../src/platformUtility/jobs/test.job.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,oEAAgE;AAChE,+DAA2D;AAGpD,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,sBAAS;IAClC,YAA+B,YAA0B;QACrD,KAAK,EAAE,CAAC;QADmB,iBAAY,GAAZ,YAAY,CAAc;IAEzD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAS;
|
1
|
+
{"version":3,"file":"test.job.js","sourceRoot":"","sources":["../../../src/platformUtility/jobs/test.job.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,oEAAgE;AAChE,+DAA2D;AAGpD,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,sBAAS;IAClC,YAA+B,YAA0B;QACrD,KAAK,EAAE,CAAC;QADmB,iBAAY,GAAZ,YAAY,CAAc;IAEzD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAS;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE;YACzB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;SACpC;IACL,CAAC;CACJ,CAAA;AAVY,OAAO;IADnB,IAAA,mBAAU,GAAE;qCAEoC,4BAAY;GADhD,OAAO,CAUnB;AAVY,0BAAO"}
|
@@ -19,7 +19,7 @@ PlatformUtilityModule = __decorate([
|
|
19
19
|
(0, common_1.Module)({
|
20
20
|
imports: [bull_1.BullModule.registerQueue({ name }), common_1.CacheModule.register(cacheConfig)],
|
21
21
|
providers: [...es6_classes_1.default.services, ...es6_classes_1.default.consumers, ...es6_classes_1.default.subscribers, ...es6_classes_1.default.commands, ...es6_classes_1.default.jobs],
|
22
|
-
exports: [...es6_classes_1.default.services],
|
22
|
+
exports: [...es6_classes_1.default.services, ...es6_classes_1.default.jobs],
|
23
23
|
})
|
24
24
|
], PlatformUtilityModule);
|
25
25
|
exports.PlatformUtilityModule = PlatformUtilityModule;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"platform.utility.module.js","sourceRoot":"","sources":["../../src/platformUtility/platform.utility.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAA0C;AAC1C,2CAAqD;AACrD,iCAAiC;AACjC,+CAAuC;AACvC,sDAAuD;AAEvD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAOzD,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;CAAG,CAAA;AAAxB,qBAAqB;IALjC,IAAA,eAAM,EAAC;QACJ,OAAO,EAAE,CAAC,iBAAU,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,oBAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAChF,SAAS,EAAE,CAAC,GAAG,qBAAU,CAAC,QAAQ,EAAE,GAAG,qBAAU,CAAC,SAAS,EAAE,GAAG,qBAAU,CAAC,WAAW,EAAE,GAAG,qBAAU,CAAC,QAAQ,EAAE,GAAG,qBAAU,CAAC,IAAI,CAAC;QACnI,OAAO,EAAE,CAAC,GAAG,qBAAU,CAAC,QAAQ,CAAC;
|
1
|
+
{"version":3,"file":"platform.utility.module.js","sourceRoot":"","sources":["../../src/platformUtility/platform.utility.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,uCAA0C;AAC1C,2CAAqD;AACrD,iCAAiC;AACjC,+CAAuC;AACvC,sDAAuD;AAEvD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAOzD,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;CAAG,CAAA;AAAxB,qBAAqB;IALjC,IAAA,eAAM,EAAC;QACJ,OAAO,EAAE,CAAC,iBAAU,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,oBAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAChF,SAAS,EAAE,CAAC,GAAG,qBAAU,CAAC,QAAQ,EAAE,GAAG,qBAAU,CAAC,SAAS,EAAE,GAAG,qBAAU,CAAC,WAAW,EAAE,GAAG,qBAAU,CAAC,QAAQ,EAAE,GAAG,qBAAU,CAAC,IAAI,CAAC;QACnI,OAAO,EAAE,CAAC,GAAG,qBAAU,CAAC,QAAQ,EAAE,GAAG,qBAAU,CAAC,IAAI,CAAC;KACxD,CAAC;GACW,qBAAqB,CAAG;AAAxB,sDAAqB"}
|
@@ -1,4 +1,6 @@
|
|
1
1
|
export declare class MaintenanceService {
|
2
|
+
private queueLock;
|
3
|
+
private logger;
|
2
4
|
private maintenancePath;
|
3
5
|
private restartPath;
|
4
6
|
isInMaintenance(): boolean;
|
@@ -7,4 +9,7 @@ export declare class MaintenanceService {
|
|
7
9
|
putOnRestart(): void;
|
8
10
|
nodeNeedsRestart(): boolean;
|
9
11
|
getMaintenancePath(): string;
|
12
|
+
checkForMaintenance(instance: string, delay?: number): any;
|
13
|
+
checkAndStopProcess(): Promise<void>;
|
14
|
+
freeLock(instance: string): void;
|
10
15
|
}
|
@@ -10,8 +10,11 @@ exports.MaintenanceService = void 0;
|
|
10
10
|
const common_1 = require("@nestjs/common");
|
11
11
|
const fs = require("fs");
|
12
12
|
const path = require("path");
|
13
|
+
const platform_utility_1 = require("../../common/libraries/platform.utility");
|
13
14
|
let MaintenanceService = class MaintenanceService {
|
14
15
|
constructor() {
|
16
|
+
this.queueLock = {};
|
17
|
+
this.logger = new common_1.Logger('QueueManager');
|
15
18
|
this.maintenancePath = path.join(__dirname, '../../../down');
|
16
19
|
this.restartPath = path.join(__dirname, '../../../stop');
|
17
20
|
}
|
@@ -35,15 +38,36 @@ let MaintenanceService = class MaintenanceService {
|
|
35
38
|
fs.closeSync(fs.openSync(this.restartPath, 'w'));
|
36
39
|
}
|
37
40
|
nodeNeedsRestart() {
|
38
|
-
if (fs.existsSync(this.restartPath))
|
39
|
-
fs.unlinkSync(this.restartPath);
|
41
|
+
if (fs.existsSync(this.restartPath))
|
40
42
|
return true;
|
41
|
-
}
|
42
43
|
return false;
|
43
44
|
}
|
44
45
|
getMaintenancePath() {
|
45
46
|
return this.maintenancePath;
|
46
47
|
}
|
48
|
+
async checkForMaintenance(instance, delay) {
|
49
|
+
const isInMaintenance = await this.isInMaintenance();
|
50
|
+
if (!isInMaintenance)
|
51
|
+
return this.freeLock(instance);
|
52
|
+
if (this.queueLock[instance] && !delay)
|
53
|
+
return;
|
54
|
+
this.queueLock[instance] = true;
|
55
|
+
delay = Math.min(delay || 0, 20000);
|
56
|
+
this.logger.log(`Worker Paused! Holding the queue for : ${delay} ms`);
|
57
|
+
await platform_utility_1.PlatformUtility.sleep(delay);
|
58
|
+
await this.checkAndStopProcess();
|
59
|
+
return this.checkForMaintenance(instance, delay + 1000);
|
60
|
+
}
|
61
|
+
async checkAndStopProcess() {
|
62
|
+
const needsRestart = this.nodeNeedsRestart();
|
63
|
+
if (needsRestart) {
|
64
|
+
this.logger.warn('Terminating the queue process');
|
65
|
+
process.exit(1);
|
66
|
+
}
|
67
|
+
}
|
68
|
+
freeLock(instance) {
|
69
|
+
this.queueLock[instance] = false;
|
70
|
+
}
|
47
71
|
};
|
48
72
|
MaintenanceService = __decorate([
|
49
73
|
(0, common_1.Injectable)()
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"maintenance.service.js","sourceRoot":"","sources":["../../../src/platformUtility/services/maintenance.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,
|
1
|
+
{"version":3,"file":"maintenance.service.js","sourceRoot":"","sources":["../../../src/platformUtility/services/maintenance.service.ts"],"names":[],"mappings":"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"}
|
@@ -1,21 +1,15 @@
|
|
1
|
+
import { Logger } from '@nestjs/common';
|
1
2
|
import { Job, Queue } from 'bull';
|
2
3
|
import { QueueOptionsDto } from '../dtos/queue.options.dto';
|
3
|
-
import { CacheService } from './cache.service';
|
4
4
|
import { LocalPropertyService } from './local.property.service';
|
5
|
-
import { MaintenanceService } from './maintenance.service';
|
6
|
-
import { ShutdownService } from './shutdown.service';
|
7
5
|
import { SqsService } from './sqs.service';
|
8
6
|
export declare class QueueService {
|
9
7
|
private readonly businessQueue;
|
10
|
-
private readonly maintenanceService;
|
11
|
-
private readonly shutdownService;
|
12
|
-
private readonly cacheService;
|
13
8
|
private readonly localPropertyService;
|
14
9
|
readonly sqsService: SqsService;
|
15
10
|
data: any;
|
16
|
-
|
17
|
-
|
18
|
-
constructor(businessQueue: Queue, maintenanceService: MaintenanceService, shutdownService: ShutdownService, cacheService: CacheService, localPropertyService: LocalPropertyService, sqsService: SqsService);
|
11
|
+
protected logger: Logger;
|
12
|
+
constructor(businessQueue: Queue, localPropertyService: LocalPropertyService, sqsService: SqsService);
|
19
13
|
add(type: string, data: any, options?: QueueOptionsDto): Promise<Job>;
|
20
14
|
addJob(type: string, data: any, options?: QueueOptionsDto, eventId?: number): Promise<Job | any>;
|
21
15
|
addSqsJob(mode: any, payload: any): Promise<unknown>;
|
@@ -23,18 +17,7 @@ export declare class QueueService {
|
|
23
17
|
pause(): Promise<void>;
|
24
18
|
resume(): Promise<void>;
|
25
19
|
getQueueInstance(): Queue;
|
26
|
-
|
27
|
-
queueNeedsRestart(): Promise<void>;
|
28
|
-
hasRestartFlagChanged(): Promise<boolean>;
|
29
|
-
restartQueueProcessing(): Promise<void>;
|
30
|
-
private getQueueLastRestartTime;
|
31
|
-
private waitForResume;
|
32
|
-
private setProcessing;
|
33
|
-
private unsetProcessing;
|
34
|
-
private isProcessing;
|
35
|
-
private setRestartFlag;
|
36
|
-
private unsetRestartFlag;
|
37
|
-
private isRestartingFlag;
|
20
|
+
restartQueueProcessing(): void;
|
38
21
|
getWorkers(): Promise<any[]>;
|
39
22
|
getQueueStats(): Promise<import("bull").JobCounts>;
|
40
23
|
getActiveJobs(start: number, end: number): Promise<any[]>;
|
@@ -46,4 +29,5 @@ export declare class QueueService {
|
|
46
29
|
retryJob(jobId: number): Promise<Job<any>>;
|
47
30
|
removeJob(jobId: number): Promise<void>;
|
48
31
|
private getJobMetadata;
|
32
|
+
isWorkerInstance(): boolean;
|
49
33
|
}
|
@@ -19,23 +19,15 @@ const config = require("config");
|
|
19
19
|
const date_util_1 = require("../../common/libraries/date.util");
|
20
20
|
const platform_constants_1 = require("../../config/platform.constants");
|
21
21
|
const operation_exception_1 = require("./../../common/exceptions/operation.exception");
|
22
|
-
const cache_service_1 = require("./cache.service");
|
23
22
|
const local_property_service_1 = require("./local.property.service");
|
24
|
-
const maintenance_service_1 = require("./maintenance.service");
|
25
|
-
const shutdown_service_1 = require("./shutdown.service");
|
26
23
|
const sqs_service_1 = require("./sqs.service");
|
27
|
-
const platform_utility_1 = require("../../common/libraries/platform.utility");
|
28
24
|
const queueName = platform_constants_1.default.queue;
|
29
25
|
let QueueService = class QueueService {
|
30
|
-
constructor(businessQueue,
|
26
|
+
constructor(businessQueue, localPropertyService, sqsService) {
|
31
27
|
this.businessQueue = businessQueue;
|
32
|
-
this.maintenanceService = maintenanceService;
|
33
|
-
this.shutdownService = shutdownService;
|
34
|
-
this.cacheService = cacheService;
|
35
28
|
this.localPropertyService = localPropertyService;
|
36
29
|
this.sqsService = sqsService;
|
37
30
|
this.data = {};
|
38
|
-
this.restartIdentifier = 'queue_restart_time';
|
39
31
|
this.logger = new common_1.Logger('EventQueueManager');
|
40
32
|
this.data = {
|
41
33
|
start_time: date_util_1.DateUtil.now(),
|
@@ -64,6 +56,7 @@ let QueueService = class QueueService {
|
|
64
56
|
if (jobInstance.mode !== 'redis')
|
65
57
|
return this.addSqsJob(jobInstance.mode, payload);
|
66
58
|
options = options !== null && options !== void 0 ? options : {};
|
59
|
+
options.priority = options.priority || jobInstance.priority;
|
67
60
|
return this.businessQueue.add(jobInstance.queue, payload, options);
|
68
61
|
}
|
69
62
|
async addSqsJob(mode, payload) {
|
@@ -74,7 +67,12 @@ let QueueService = class QueueService {
|
|
74
67
|
return this.data;
|
75
68
|
}
|
76
69
|
async pause() {
|
77
|
-
|
70
|
+
try {
|
71
|
+
await this.businessQueue.pause(true);
|
72
|
+
}
|
73
|
+
catch (error) {
|
74
|
+
this.logger.error(error);
|
75
|
+
}
|
78
76
|
}
|
79
77
|
async resume() {
|
80
78
|
return this.businessQueue.resume(true);
|
@@ -82,68 +80,9 @@ let QueueService = class QueueService {
|
|
82
80
|
getQueueInstance() {
|
83
81
|
return this.businessQueue;
|
84
82
|
}
|
85
|
-
|
86
|
-
if (this.isProcessing())
|
87
|
-
return;
|
88
|
-
this.setProcessing();
|
89
|
-
if (!this.maintenanceService.isInMaintenance())
|
90
|
-
return this.unsetProcessing();
|
91
|
-
await this.pause();
|
92
|
-
await this.waitForResume();
|
93
|
-
return this.unsetProcessing();
|
94
|
-
}
|
95
|
-
async queueNeedsRestart() {
|
96
|
-
if (this.isRestartingFlag())
|
97
|
-
return;
|
98
|
-
this.setRestartFlag();
|
99
|
-
if (!(await this.hasRestartFlagChanged()))
|
100
|
-
return this.unsetRestartFlag();
|
101
|
-
this.shutdownService.shutdown();
|
102
|
-
return this.setRestartFlag();
|
103
|
-
}
|
104
|
-
async hasRestartFlagChanged() {
|
105
|
-
const lastTime = await this.getQueueLastRestartTime();
|
106
|
-
if (!lastTime)
|
107
|
-
return false;
|
108
|
-
if (lastTime < this.data.start_time)
|
109
|
-
return false;
|
110
|
-
this.logger.log('things have changed');
|
111
|
-
return true;
|
112
|
-
}
|
113
|
-
async restartQueueProcessing() {
|
114
|
-
await this.cacheService.set(this.restartIdentifier, date_util_1.DateUtil.now());
|
115
|
-
}
|
116
|
-
async getQueueLastRestartTime() {
|
117
|
-
return this.cacheService.get(this.restartIdentifier);
|
118
|
-
}
|
119
|
-
async waitForResume() {
|
120
|
-
while (true) {
|
121
|
-
await platform_utility_1.PlatformUtility.sleep(1000);
|
122
|
-
await this.queueNeedsRestart();
|
123
|
-
if (this.maintenanceService.isInMaintenance())
|
124
|
-
continue;
|
125
|
-
await this.resume();
|
126
|
-
return this.unsetProcessing();
|
127
|
-
}
|
128
|
-
}
|
129
|
-
setProcessing() {
|
130
|
-
this.data.processing = true;
|
131
|
-
}
|
132
|
-
unsetProcessing() {
|
133
|
-
this.data.processing = false;
|
134
|
-
}
|
135
|
-
isProcessing() {
|
136
|
-
return this.data.processing;
|
137
|
-
}
|
138
|
-
setRestartFlag() {
|
83
|
+
restartQueueProcessing() {
|
139
84
|
this.data.restart = true;
|
140
85
|
}
|
141
|
-
unsetRestartFlag() {
|
142
|
-
this.data.restart = false;
|
143
|
-
}
|
144
|
-
isRestartingFlag() {
|
145
|
-
return this.data.restart;
|
146
|
-
}
|
147
86
|
async getWorkers() {
|
148
87
|
const workers = await this.businessQueue.getWorkers();
|
149
88
|
const records = [];
|
@@ -208,14 +147,15 @@ let QueueService = class QueueService {
|
|
208
147
|
});
|
209
148
|
return response;
|
210
149
|
}
|
150
|
+
isWorkerInstance() {
|
151
|
+
const worker = process.env.QUEUE_WORKER_ENABLE || config.get('queue.worker');
|
152
|
+
return worker ? true : false;
|
153
|
+
}
|
211
154
|
};
|
212
155
|
QueueService = __decorate([
|
213
156
|
(0, common_1.Injectable)(),
|
214
157
|
__param(0, (0, bull_1.InjectQueue)(queueName)),
|
215
|
-
__metadata("design:paramtypes", [Object,
|
216
|
-
shutdown_service_1.ShutdownService,
|
217
|
-
cache_service_1.CacheService,
|
218
|
-
local_property_service_1.LocalPropertyService,
|
158
|
+
__metadata("design:paramtypes", [Object, local_property_service_1.LocalPropertyService,
|
219
159
|
sqs_service_1.SqsService])
|
220
160
|
], QueueService);
|
221
161
|
exports.QueueService = QueueService;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"queue.service.js","sourceRoot":"","sources":["../../../src/platformUtility/services/queue.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uCAA2C;AAC3C,2CAAoD;AAEpD,iCAAiC;AACjC,gEAA4D;AAC5D,wEAAgE;AAEhE,uFAAmF;AACnF,
|
1
|
+
{"version":3,"file":"queue.service.js","sourceRoot":"","sources":["../../../src/platformUtility/services/queue.service.ts"],"names":[],"mappings":"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"}
|
@@ -1,13 +1,15 @@
|
|
1
1
|
import { QueueService } from '../../platformUtility/services/queue.service';
|
2
2
|
import { EventQueueService } from '../services/event.queue.service';
|
3
|
+
import { MaintenanceService } from '../../platformUtility/services/maintenance.service';
|
3
4
|
export declare class EventQueueCommand {
|
4
5
|
private readonly queueService;
|
5
6
|
private readonly eventQueueService;
|
7
|
+
private readonly maintenanceService;
|
6
8
|
private counter;
|
7
9
|
private start_time;
|
8
10
|
private startTimeIdentifier;
|
9
11
|
private logger;
|
10
|
-
constructor(queueService: QueueService, eventQueueService: EventQueueService);
|
12
|
+
constructor(queueService: QueueService, eventQueueService: EventQueueService, maintenanceService: MaintenanceService);
|
11
13
|
process(): Promise<void>;
|
12
14
|
private processEvents;
|
13
15
|
private processEvent;
|
@@ -16,10 +16,13 @@ const platform_utility_1 = require("../../common/libraries/platform.utility");
|
|
16
16
|
const queue_service_1 = require("../../platformUtility/services/queue.service");
|
17
17
|
const event_queue_service_1 = require("../services/event.queue.service");
|
18
18
|
const date_util_1 = require("./../../common/libraries/date.util");
|
19
|
+
const maintenance_service_1 = require("../../platformUtility/services/maintenance.service");
|
20
|
+
const process = require("process");
|
19
21
|
let EventQueueCommand = class EventQueueCommand {
|
20
|
-
constructor(queueService, eventQueueService) {
|
22
|
+
constructor(queueService, eventQueueService, maintenanceService) {
|
21
23
|
this.queueService = queueService;
|
22
24
|
this.eventQueueService = eventQueueService;
|
25
|
+
this.maintenanceService = maintenanceService;
|
23
26
|
this.counter = 0;
|
24
27
|
this.start_time = date_util_1.DateUtil.now();
|
25
28
|
this.startTimeIdentifier = date_util_1.DateUtil.getDateTimeInFormat();
|
@@ -55,10 +58,9 @@ let EventQueueCommand = class EventQueueCommand {
|
|
55
58
|
return event.save();
|
56
59
|
}
|
57
60
|
async checkForSystem() {
|
58
|
-
await this.
|
59
|
-
if (
|
60
|
-
process.exit(
|
61
|
-
}
|
61
|
+
await this.maintenanceService.checkForMaintenance('queueInstance');
|
62
|
+
if (this.maintenanceService.nodeNeedsRestart())
|
63
|
+
process.exit(1);
|
62
64
|
}
|
63
65
|
};
|
64
66
|
__decorate([
|
@@ -73,7 +75,9 @@ __decorate([
|
|
73
75
|
EventQueueCommand = __decorate([
|
74
76
|
(0, common_1.Injectable)(),
|
75
77
|
(0, nestjs_console_1.Console)(),
|
76
|
-
__metadata("design:paramtypes", [queue_service_1.QueueService,
|
78
|
+
__metadata("design:paramtypes", [queue_service_1.QueueService,
|
79
|
+
event_queue_service_1.EventQueueService,
|
80
|
+
maintenance_service_1.MaintenanceService])
|
77
81
|
], EventQueueCommand);
|
78
82
|
exports.EventQueueCommand = EventQueueCommand;
|
79
83
|
//# sourceMappingURL=event.queue.command.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"event.queue.command.js","sourceRoot":"","sources":["../../../src/system/commands/event.queue.command.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAoD;AACpD,mDAAkD;AAClD,8EAA0E;AAC1E,gFAA4E;AAE5E,yEAAoE;AACpE,kEAA8D;
|
1
|
+
{"version":3,"file":"event.queue.command.js","sourceRoot":"","sources":["../../../src/system/commands/event.queue.command.ts"],"names":[],"mappings":"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"}
|
@@ -3,8 +3,8 @@ import { LookupValueEntity } from './lookup.value.entity';
|
|
3
3
|
export declare class SmsTemplateEntity extends CommonEntity {
|
4
4
|
name: string;
|
5
5
|
identifier: string;
|
6
|
-
entity_identifier:
|
7
|
-
template_identifier:
|
6
|
+
entity_identifier: string;
|
7
|
+
template_identifier: string;
|
8
8
|
sender: string;
|
9
9
|
message: string;
|
10
10
|
gateway_id: number;
|
@@ -25,11 +25,11 @@ __decorate([
|
|
25
25
|
], SmsTemplateEntity.prototype, "identifier", void 0);
|
26
26
|
__decorate([
|
27
27
|
(0, typeorm_1.Column)(),
|
28
|
-
__metadata("design:type",
|
28
|
+
__metadata("design:type", String)
|
29
29
|
], SmsTemplateEntity.prototype, "entity_identifier", void 0);
|
30
30
|
__decorate([
|
31
31
|
(0, typeorm_1.Column)(),
|
32
|
-
__metadata("design:type",
|
32
|
+
__metadata("design:type", String)
|
33
33
|
], SmsTemplateEntity.prototype, "template_identifier", void 0);
|
34
34
|
__decorate([
|
35
35
|
(0, typeorm_1.Column)(),
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { OnModuleInit } from '@nestjs/common';
|
2
|
+
import { QueueService } from './platformUtility';
|
3
|
+
import { MaintenanceService } from './platformUtility/services/maintenance.service';
|
4
|
+
export declare class WorkerService implements OnModuleInit {
|
5
|
+
private readonly queueService;
|
6
|
+
private readonly maintenanceService;
|
7
|
+
constructor(queueService: QueueService, maintenanceService: MaintenanceService);
|
8
|
+
onModuleInit(): Promise<void>;
|
9
|
+
}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.WorkerService = void 0;
|
13
|
+
const common_1 = require("@nestjs/common");
|
14
|
+
const config = require("config");
|
15
|
+
const platformUtility_1 = require("./platformUtility");
|
16
|
+
const maintenance_service_1 = require("./platformUtility/services/maintenance.service");
|
17
|
+
let WorkerService = class WorkerService {
|
18
|
+
constructor(queueService, maintenanceService) {
|
19
|
+
this.queueService = queueService;
|
20
|
+
this.maintenanceService = maintenanceService;
|
21
|
+
}
|
22
|
+
async onModuleInit() {
|
23
|
+
const worker = process.env.QUEUE_WORKER_ENABLE || config.get('queue.worker');
|
24
|
+
const isInMaintenance = this.maintenanceService.isInMaintenance();
|
25
|
+
if (!worker || isInMaintenance) {
|
26
|
+
global.console.log(`queue services are disabled for this instance`);
|
27
|
+
await this.queueService.pause();
|
28
|
+
}
|
29
|
+
}
|
30
|
+
};
|
31
|
+
WorkerService = __decorate([
|
32
|
+
(0, common_1.Injectable)(),
|
33
|
+
__metadata("design:paramtypes", [platformUtility_1.QueueService, maintenance_service_1.MaintenanceService])
|
34
|
+
], WorkerService);
|
35
|
+
exports.WorkerService = WorkerService;
|
36
|
+
//# sourceMappingURL=worker.service.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"worker.service.js","sourceRoot":"","sources":["../src/worker.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA0D;AAE1D,iCAAiC;AACjC,uDAAiD;AACjD,wFAAoF;AAG7E,IAAM,aAAa,GAAnB,MAAM,aAAa;IACtB,YAA6B,YAA0B,EAAmB,kBAAsC;QAAnF,iBAAY,GAAZ,YAAY,CAAc;QAAmB,uBAAkB,GAAlB,kBAAkB,CAAoB;IAAG,CAAC;IAEpH,KAAK,CAAC,YAAY;QACd,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC7E,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,CAAC;QAElE,IAAI,CAAC,MAAM,IAAI,eAAe,EAAE;YAC5B,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;YACpE,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;SACnC;IACL,CAAC;CACJ,CAAA;AAZY,aAAa;IADzB,IAAA,mBAAU,GAAE;qCAEkC,8BAAY,EAAuC,wCAAkB;GADvG,aAAa,CAYzB;AAZY,sCAAa"}
|
package/package.json
CHANGED