2.2 KiB
2.2 KiB
settings 模块
职责
- 维护系统级配置(如日志保留天数)
- 为使用日志与面板提供统一配置读取
- 维护定时签到执行时间
- 维护模型失败冷却时间(运行时失败的渠道/模型冷却窗口)
接口定义
GET /api/settings读取设置PUT /api/settings更新设置
行为规范
- 配置写入后即时生效
- 未配置时使用默认值回退
- 定时签到时间使用
HH:mm格式(默认00:10,中国时间) - 更新签到时间后会触发
CheckinScheduler重新调度 - 若更新后当前时间已超过新签到时间,当日可再次触发自动签到
- 模型失败冷却以分钟计(默认 10 分钟),用于跳过最近失败的渠道/模型
- 运行时配置可写入 settings(不再使用环境变量回退)
GET /api/settings返回:runtime_settings(可写配置值)runtime_config(生效值 + 队列绑定/生效状态)usage_queue_status(队列使用数量与状态:count/date/limit/enabled/bound/active)
- 运行时配置字段:
proxy_upstream_timeout_msproxy_stream_usage_modeproxy_stream_usage_max_bytesproxy_stream_usage_max_parsersproxy_usage_queue_enabledusage_queue_daily_limitusage_queue_direct_write_ratio
- 运行时配置默认值:
proxy_stream_usage_mode=fullproxy_stream_usage_max_bytes=0proxy_stream_usage_max_parsers=0proxy_upstream_timeout_ms=30000proxy_usage_queue_enabled=trueusage_queue_daily_limit=10000usage_queue_direct_write_ratio=0.5
PROXY_STREAM_USAGE_MAX_BYTES/PROXY_STREAM_USAGE_MAX_PARSERS设为0表示无限制- 缓存配置字段:
cache_enabledcache_ttl_dashboard_seconds/cache_ttl_usage_seconds/cache_ttl_models_secondscache_ttl_tokens_seconds/cache_ttl_channels_seconds/cache_ttl_call_tokens_secondscache_ttl_settings_seconds
cache_config中包含分组版本号(dashboard/usage/models/tokens/channels/call_tokens/settings),用于精准失效POST /api/settings/cache/refresh会 bump 所有缓存版本(用于紧急刷新)- 队列使用数量来自 UsageLimiter DO 的
/status,未绑定时返回空值
依赖关系
settings表