Vastai-ConnectHub/Log.md

35 lines
1.2 KiB
Markdown

# Job 执行全量日志(落盘)
本项目在任务执行时,会将该次执行的 **全量日志** 落盘到 `data/logs`(容器内为 `/data/logs`)下,便于排障与留存。
## 1. 路径规则
- 根目录:`./data/logs/`
- 按任务分目录:`./data/logs/<job_id>/`
- 单次执行日志文件名:
- `YYYY-MM-DD_HH-mm-ss_log-<job_log_id>.log`
- 时间戳使用 **Asia/Shanghai**(与调度时区一致)
示例:
```text
./data/logs/sync_oa_to_didi.sync_legal_entity/2026-01-13_10-20-33_log-1234.log
```
> 注意:若 `job_id` 中包含路径分隔符(`/` 或 `\`),会被替换为 `_`,避免产生目录穿越或多级目录。
## 2. 与 Admin 的 JobLog.run_log 的区别
- **`JobLog.run_log`(入库)**
- 展示在 Admin 的 JobLog 详情页
- 有字节上限(会截断),适合快速浏览
- **`data/logs/.../*.log`(落盘全量)**
- 尽力写入,不做长度截断
- 适合完整排障、留存、归档
## 3. 运维建议
- 建议将 `./data/logs` 纳入备份或日志归档策略(按业务合规要求)。
- 如需自动清理(防止无限增长),推荐在宿主机使用 `logrotate` 或定时任务做保留策略(本项目不内置自动清理逻辑)。