- 添加 SLS 日志上报模块(sls-logger.js) - 支持批量上报(每10条或5秒间隔) - 环境变量缺失时静默降级 - 自动重试失败的日志 - 新增日志信息提取器(log-extractor.js) - 提取 Token 使用统计(input_tokens, output_tokens) - 提取用户标识信息(user_id, session_id, ip) - 提取请求参数(temperature, max_tokens, stream) - 提取消息摘要(message_count, role_distribution, tool_names) - 增强所有 API 端点的日志记录 - /v1/chat/completions - /v1/responses - /v1/messages - /v1/messages/count_tokens - 修复日志字段序列化问题 - 扁平化嵌套对象字段,避免 [object Object] - 数组字段转换为逗号分隔字符串 - 添加阿里云环境变量配置到 docker-compose.yml - ALIYUN_ACCESS_KEY_ID - ALIYUN_ACCESS_KEY_SECRET - ALIYUN_SLS_ENDPOINT - ALIYUN_SLS_PROJECT - ALIYUN_SLS_LOGSTORE - 修改认证配置为自动刷新 Token 机制 - 使用 DROID_REFRESH_KEY 替代固定的 FACTORY_API_KEY - 实现每6小时自动刷新(Token有效期8小时) - Token 持久化到 auth.json
32 lines
1.1 KiB
YAML
32 lines
1.1 KiB
YAML
version: '3.8'
|
||
|
||
services:
|
||
droid2api:
|
||
build: .
|
||
container_name: droid2api
|
||
ports:
|
||
- "3001:3000"
|
||
environment:
|
||
# 认证配置(按优先级选择其一):
|
||
# 最高优先级:固定API密钥(推荐用于生产环境)
|
||
- FACTORY_API_KEY=${FACTORY_API_KEY}
|
||
# 次优先级:refresh token自动刷新机制
|
||
- DROID_REFRESH_KEY=${DROID_REFRESH_KEY}
|
||
# 可选:如果需要修改端口,在config.json中配置
|
||
# 阿里云日志服务配置
|
||
- ALIYUN_ACCESS_KEY_ID=${ALIYUN_ACCESS_KEY_ID}
|
||
- ALIYUN_ACCESS_KEY_SECRET=${ALIYUN_ACCESS_KEY_SECRET}
|
||
- ALIYUN_SLS_ENDPOINT=${ALIYUN_SLS_ENDPOINT}
|
||
- ALIYUN_SLS_PROJECT=${ALIYUN_SLS_PROJECT}
|
||
- ALIYUN_SLS_LOGSTORE=${ALIYUN_SLS_LOGSTORE}
|
||
volumes:
|
||
# 可选:持久化auth.json以保存刷新的tokens
|
||
- ./data:/app/data
|
||
restart: unless-stopped
|
||
healthcheck:
|
||
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:3000/"]
|
||
interval: 30s
|
||
timeout: 10s
|
||
retries: 3
|
||
start_period: 40s
|