当账号触发特定错误码和关键词匹配时,自动临时禁用调度: 后端: - 新增 TempUnschedCache Redis 缓存层 - RateLimitService 支持规则匹配和状态管理 - 添加 GET/DELETE /accounts/:id/temp-unschedulable API - 数据库迁移添加 temp_unschedulable_until/reason 字段 前端: - 账号状态指示器显示临时不可调度状态 - 新增 TempUnschedStatusModal 详情弹窗 - 创建/编辑账号时支持配置规则和预设模板 - 完整的中英文国际化支持
16 lines
915 B
SQL
16 lines
915 B
SQL
-- 020_add_temp_unschedulable.sql
|
|
-- 添加临时不可调度功能相关字段
|
|
|
|
-- 添加临时不可调度状态解除时间字段
|
|
ALTER TABLE accounts ADD COLUMN IF NOT EXISTS temp_unschedulable_until timestamptz;
|
|
|
|
-- 添加临时不可调度原因字段(用于排障和审计)
|
|
ALTER TABLE accounts ADD COLUMN IF NOT EXISTS temp_unschedulable_reason text;
|
|
|
|
-- 添加索引以优化调度查询性能
|
|
CREATE INDEX IF NOT EXISTS idx_accounts_temp_unschedulable_until ON accounts(temp_unschedulable_until) WHERE deleted_at IS NULL;
|
|
|
|
-- 添加注释说明字段用途
|
|
COMMENT ON COLUMN accounts.temp_unschedulable_until IS '临时不可调度状态解除时间,当触发临时不可调度规则时设置(基于错误码或错误描述关键词)';
|
|
COMMENT ON COLUMN accounts.temp_unschedulable_reason IS '临时不可调度原因,记录触发临时不可调度的具体原因(用于排障和审计)';
|