sino-bc-cli 1.8.32 → 1.8.34-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -59,9 +59,11 @@ flowchart TB
59
59
 
60
60
  进程入口创建应用、跑完 `argv`、按退出码结束。全局选项(`--version` / `--help`)先扫一遍;是否走业务只看**位置参数**。每次运行会尝试记录 JSON 审计日志,成功/失败信封里的 `ddtraceId` 与请求头 `x-datadog-trace-id` 是同一枚。
61
61
 
62
- 日志按文件日期最长保留 7 天,总容量上限 6 GiB,单文件 200 MiB,单条完整 JSON(含换行)最多 64 KiB;过长详情先脱敏再截断。每次写入前从旧到新清理,不启动后台任务。容量优先于保留期限,因此高频调用时可能不足 7 天;未运行 CLI 时不会主动清理。
62
+ 日志按机器当地日期每天一份追加写入,不按大小拆分、不限制总容量;单条完整 JSON(含换行)最多 64 KiB,过长详情先脱敏再截断。普通追加不争抢排他写锁。每个进程首次写日志和日期变化时检查清理状态,同一状态目录每天最多尝试一次历史清理:先记录“最近清理尝试日期”,再删除文件日期零点早于本次时刻减去 7 天的日志,不启动后台任务。
63
63
 
64
- 删除失败会停止本次后续淘汰;无法腾出足够空间、写锁忙或写盘失败时跳过本条,业务继续,stderr 每进程最多提示一次,后续日志仍可重试。旧大文件不拆分、不追加,按正常规则淘汰;全部写入进程升级后才保证协作容量上限。
64
+ 清理失败会停止本轮后续删除,当天不再尝试,次日可再清理;标识无法安全写入则跳过清理。清理失败记录 WARN,WARN 或普通日志无法写入时静默跳过,不输出终端告警,业务继续且不补写失败记录。未运行、清理失败或标识日期超前时文件可能保留更久,高日志量仍可能耗尽磁盘。
65
+
66
+ 旧分片日志不搬迁、不合并,过期后由新版本一并清理。每日限次以全部写入进程使用新协议且状态完整为前提;旧版本混跑不保证限次,回退后旧版本不会维护新命名日志。正常本地文件系统的完整并发写入须保持独立记录;网络文件系统、短写、磁盘故障及长期挂起跨保留期等异常不保证日志完整,故障可能留下不完整行。
65
67
 
66
68
  ### 1. 路由
67
69
 
@@ -189,7 +191,7 @@ Agent 在 API 域未知或有歧义时先选业务域,再选择一级目录对
189
191
  | `/tenant` | 仅 `list`:列出当前身份可用的签约主体 |
190
192
  | `/uninstall` | 清理技能、本机配置和身份;默认同时卸载全局包 |
191
193
 
192
- `sino-bc-cli /auth status --json` 在终端和自动化中都返回 JSON 信封,状态从 `data.localStatus` 读取,解释见 `data.message`。它只判断本地状态,不向服务器验证、不刷新令牌;正常业务调用会自动尝试续期,无需每次先查状态。`refresh_needed` 不表示已经刷新成功,也无需先登录。
194
+ `sino-bc-cli /auth status --json` 在终端和自动化中都返回 JSON 信封,状态从 `data.localStatus` 读取,解释见 `data.message`。它只判断本地状态,不向服务器验证、不刷新令牌;正常业务调用会自动尝试续期,无需每次先查状态。`refresh_needed` 不表示已经刷新成功,也无需先登录。 同一状态目录下,多个 CLI 可并行读取正常凭证;刷新由专用锁协调并复用其他进程的刷新结果,登录、退出和凭证修改仍互斥。锁竞争可能超时,遇到失败应按错误提示处理,不要手动删除锁文件。
193
195
 
194
196
  `/get-config` 的 `exists=false` 只表示公开配置使用默认值;本人资料为空或过期也不表示未登录。状态含义、资料缓存和失败后的完整处理规则见通过 `/skill` 定位的 shared;鉴权失败优先读取 `error.params[].reason`,不能只凭 `token_expired` / `token_invalid` 重新登录。
195
197