init:taskbot 1.1.0

This commit is contained in:
2026-01-29 15:38:49 +08:00
commit 4dcb117601
25 changed files with 6070 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
const logger = require('./logger');
const config = require('../config/env');
//全局限流配置
let requestCount = 0;
let lastResetTime = Date.now();
//熔断检查器
function checkCircuitBreaker() {
const now = Date.now();
if (now - lastResetTime > config.app.rate) {
requestCount = 0;
lastResetTime = now;
}
requestCount++;
if (requestCount > config.app.maxRequests) {
const msg = `Circuit breaker triggered: Exceeded ${config.app.maxRequests} requests in ${config.app.rate/1000}s. Exiting...`;
//同步写入fatal日志
logger.fatal("============================");
logger.fatal(`${msg}`);
logger.fatal("============================");
if (!config.app.debugMode) {
process.exit(1);
} else {
logger.warn('Debug mode enabled, not exiting.');
requestCount = 0;
}
return false;
}
return true;
}
module.exports = { checkCircuitBreaker };