mirror of
https://gitcode.com/JianFeeeee/HomeAgent.git
synced 2026-09-27 21:03:16 +00:00
chore(deploy): 补强部署后验证
原来只说「等 20s 看 /kernel 状态」,等于没验。进程活着 ≠ agent 起来了。 现在逐项核对,每项对应一个真实故障模式: - 60s 内未见 'kernel ready' ⇒ 判失败并给出回滚命令 + journalctl 尾部 - 注册工具条目数(生产应 18 个左右)⇒ 少了说明插件加载异常 - 'LLM API unreachable' 次数 > 3 ⇒ 内核在 rollback 循环 (生产设了 max_retries=100000,不可达会一直重试) - ONNX provider 相关日志 ⇒ 缺失时应是明确错误+降级,不静默假装启用
This commit is contained in:
@ -112,7 +112,39 @@ do_deploy() {
|
||||
return 1
|
||||
fi
|
||||
say "部署后验证"
|
||||
info "等 20s 让 agent 起来,然后看 /kernel 状态"
|
||||
# 只说"等 20s 看日志"是不够的 —— 进程活着 ≠ agent 起来了。
|
||||
# 逐项核对,每项都对应一个真实故障模式:
|
||||
info "等待 agent 就绪(最多 60s)…"
|
||||
local ready=0
|
||||
for i in $(seq 1 30); do
|
||||
if journalctl -u "$SVC" --since '-2 min' --no-pager 2>/dev/null \
|
||||
| grep -q 'kernel ready'; then ready=1; break; fi
|
||||
sleep 2
|
||||
done
|
||||
if [ "$ready" = "1" ]; then
|
||||
info "✓ kernel ready"
|
||||
else
|
||||
info "✗ 60s 内没看到 'kernel ready' —— 回滚:bash $BAK/ROLLBACK.sh"
|
||||
journalctl -u "$SVC" --since '-2 min' --no-pager | tail -25
|
||||
return 1
|
||||
fi
|
||||
# 插件加载:生产有 18 个,少于 10 个说明加载异常
|
||||
local nplug
|
||||
nplug=$(journalctl -u "$SVC" --since '-2 min' --no-pager 2>/dev/null \
|
||||
| grep -c 'SetToolRegistrar registering tool')
|
||||
info "注册工具条目: $nplug"
|
||||
# LLM 可达:不可达会进 rollback 循环(生产设了 max_retries=100000)
|
||||
local unreach
|
||||
unreach=$(journalctl -u "$SVC" --since '-2 min' --no-pager 2>/dev/null \
|
||||
| grep -c 'LLM API unreachable')
|
||||
if [ "${unreach:-0}" -gt 3 ]; then
|
||||
info "✗ LLM 不可达 ${unreach} 次 —— 内核在 rollback 循环"
|
||||
info " 回滚:bash $BAK/ROLLBACK.sh"
|
||||
return 1
|
||||
fi
|
||||
info "✓ LLM 可达(unreachable=${unreach:-0})"
|
||||
info "✓ ONNX provider:见日志 'onnx' 相关行(缺失时应为明确错误+降级,不静默)"
|
||||
journalctl -u "$SVC" --since '-2 min' --no-pager | grep -iE 'onnx|provider' | tail -5
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------- rollback
|
||||
|
||||
Reference in New Issue
Block a user