master
2022-03-16 26d7c4cb292025dad56635dc02bf32a348ee62ef
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// src/schedule/hello.ts
import { Provide, Inject, Schedule, CommonSchedule } from '@midwayjs/decorator';
import { BaseSysLogService } from '../service/sys/log';
import { ILogger } from '@midwayjs/logger';
 
/**
 * 日志定时任务
 */
@Provide()
@Schedule({
  cron: '0 0 0 * * *', // 每天0点执行
  type: 'worker', // 指定某一个 worker 执行
})
export class BaseLogSchedule implements CommonSchedule {
  @Inject()
  baseSysLogService: BaseSysLogService;
 
  @Inject()
  logger: ILogger;
 
  // 定时执行的具体任务
  async exec() {
    this.logger.info('清除日志定时任务开始执行');
    const startTime = Date.now();
    await this.baseSysLogService.clear();
    this.logger.info(`清除日志定时任务结束,耗时:${Date.now() - startTime}ms`);
  }
}