cnpmcore
Version:
Private NPM Registry for Enterprise
70 lines • 5.93 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
import { Inject } from 'egg';
import { Schedule, ScheduleType } from 'egg/schedule';
import { TaskType } from "../../common/enum/Task.js";
let executingCount = 0;
let TriggerHookWorker = class TriggerHookWorker {
async subscribe() {
if (!this.config.cnpmcore.hookEnable)
return;
if (executingCount >= this.config.cnpmcore.triggerHookWorkerMaxConcurrentTasks)
return;
executingCount++;
try {
let task = (await this.taskService.findExecuteTask(TaskType.TriggerHook));
while (task) {
const startTime = Date.now();
this.logger.info('[TriggerHookWorker:subscribe:executeTask:start][%s] taskId: %s, targetName: %s, attempts: %s, params: %j, updatedAt: %s, delay %sms', executingCount, task.taskId, task.targetName, task.attempts, task.data, task.updatedAt, startTime - task.updatedAt.getTime());
await this.hookTriggerService.executeTask(task);
const use = Date.now() - startTime;
this.logger.info('[TriggerHookWorker:subscribe:executeTask:success][%s] taskId: %s, targetName: %s, use %sms', executingCount, task.taskId, task.targetName, use);
if (executingCount >= this.config.cnpmcore.triggerHookWorkerMaxConcurrentTasks) {
this.logger.info('[TriggerHookWorker:subscribe:executeTask] current sync task count %s, exceed max concurrent tasks %s', executingCount, this.config.cnpmcore.triggerHookWorkerMaxConcurrentTasks);
break;
}
// try next task
task = (await this.taskService.findExecuteTask(TaskType.TriggerHook));
}
}
catch (err) {
this.logger.error('[TriggerHookWorker:subscribe:executeTask:error][%s] %s', executingCount, err);
}
finally {
executingCount--;
}
}
};
__decorate([
Inject(),
__metadata("design:type", Object)
], TriggerHookWorker.prototype, "config", void 0);
__decorate([
Inject(),
__metadata("design:type", Function)
], TriggerHookWorker.prototype, "logger", void 0);
__decorate([
Inject(),
__metadata("design:type", Function)
], TriggerHookWorker.prototype, "hookTriggerService", void 0);
__decorate([
Inject(),
__metadata("design:type", Function)
], TriggerHookWorker.prototype, "taskService", void 0);
TriggerHookWorker = __decorate([
Schedule({
type: ScheduleType.ALL,
scheduleData: {
interval: 1000,
},
})
], TriggerHookWorker);
export { TriggerHookWorker };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJpZ2dlckhvb2tXb3JrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9hcHAvcG9ydC9zY2hlZHVsZS9UcmlnZ2VySG9va1dvcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUF3QixNQUFNLEtBQUssQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBdUIsTUFBTSxjQUFjLENBQUM7QUFFM0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBS3JELElBQUksY0FBYyxHQUFHLENBQUMsQ0FBQztBQU9oQixJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFpQjtJQWE1QixLQUFLLENBQUMsU0FBUztRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVO1lBQUUsT0FBTztRQUM3QyxJQUFJLGNBQWMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQ0FBbUM7WUFBRSxPQUFPO1FBRXZGLGNBQWMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQztZQUNILElBQUksSUFBSSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQW9CLENBQUM7WUFDN0YsT0FBTyxJQUFJLEVBQUUsQ0FBQztnQkFDWixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNkLHFJQUFxSSxFQUNySSxjQUFjLEVBQ2QsSUFBSSxDQUFDLE1BQU0sRUFDWCxJQUFJLENBQUMsVUFBVSxFQUNmLElBQUksQ0FBQyxRQUFRLEVBQ2IsSUFBSSxDQUFDLElBQUksRUFDVCxJQUFJLENBQUMsU0FBUyxFQUNkLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUNyQyxDQUFDO2dCQUNGLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDaEQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLFNBQVMsQ0FBQztnQkFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2QsNEZBQTRGLEVBQzVGLGNBQWMsRUFDZCxJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxVQUFVLEVBQ2YsR0FBRyxDQUNKLENBQUM7Z0JBQ0YsSUFBSSxjQUFjLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsbUNBQW1DLEVBQUUsQ0FBQztvQkFDL0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2Qsc0dBQXNHLEVBQ3RHLGNBQWMsRUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxtQ0FBbUMsQ0FDekQsQ0FBQztvQkFDRixNQUFNO2dCQUNSLENBQUM7Z0JBQ0QsZ0JBQWdCO2dCQUNoQixJQUFJLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBb0IsQ0FBQztZQUMzRixDQUFDO1FBQ0gsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyx3REFBd0QsRUFBRSxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDbkcsQ0FBQztnQkFBUyxDQUFDO1lBQ1QsY0FBYyxFQUFFLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7Q0FDRixDQUFBO0FBeERrQjtJQURoQixNQUFNLEVBQUU7O2lEQUM2QjtBQUdyQjtJQURoQixNQUFNLEVBQUU7O2lEQUN1QjtBQUdmO0lBRGhCLE1BQU0sRUFBRTs7NkRBQytDO0FBR3ZDO0lBRGhCLE1BQU0sRUFBRTs7c0RBQ2lDO0FBWC9CLGlCQUFpQjtJQU43QixRQUFRLENBQWlCO1FBQ3hCLElBQUksRUFBRSxZQUFZLENBQUMsR0FBRztRQUN0QixZQUFZLEVBQUU7WUFDWixRQUFRLEVBQUUsSUFBSTtTQUNmO0tBQ0YsQ0FBQztHQUNXLGlCQUFpQixDQTBEN0IifQ==