UNPKG

@fangcha/backend-kit

Version:
31 lines 1.61 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ScheduleSdkPlugin = void 0; const tslib_1 = require("tslib"); const cron_1 = require("@fangcha/tools/lib/cron"); const main_1 = require("../main"); const logger_1 = require("@fangcha/logger"); const ScheduleSdkPlugin = (jobs) => { return { appDidLoad: () => tslib_1.__awaiter(void 0, void 0, void 0, function* () { const manager = new cron_1.CronJobManager(); manager.setListener({ onJobStart: (coreJob) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { logger_1.logger.info(`${coreJob.name}[${coreJob.uid}]: onJobStart`); }), onJobDone: (coreJob) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { logger_1.logger.info(`${coreJob.name}[${coreJob.uid}]: onJobDone, time elapsed ${coreJob.elapsedMs}ms`); }), onJobFailed: (coreJob, err) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { logger_1.logger.info(`${coreJob.name}[${coreJob.uid}]: onJobFailed, time elapsed ${coreJob.elapsedMs}ms, error:`, err); const infos = ['', 'Schedule Job Fail', `Job: ${coreJob.name}`, `Error: ${err.message}`]; main_1._FangchaState.botProxy.notify(infos.join('\n')); }), }); manager.addScheduleJobList(jobs); manager.execute(); }), }; }; exports.ScheduleSdkPlugin = ScheduleSdkPlugin; //# sourceMappingURL=ScheduleSdkPlugin.js.map