From e80cc914b75ba3abb54c2b3dfedc76242af938b9 Mon Sep 17 00:00:00 2001 From: cfdaily Date: Mon, 23 Mar 2026 10:38:13 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=BB=9F=E4=B8=80=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E8=B7=AF=E5=BE=84=E8=AE=A1=E7=AE=97=E9=94=99=E8=AF=AF=EF=BC=8C?= =?UTF-8?q?=E6=8C=89=E7=85=A7=E5=BA=9E=E7=BB=9F=E7=9A=84=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=EF=BC=9A=E4=B8=89=E6=AC=A1dirname=E6=AD=A3=E7=A1=AE=E5=9B=9E?= =?UTF-8?q?=E5=88=B0=E9=A1=B9=E7=9B=AE=E6=A0=B9=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- management/workflow/scripts/agent_auto_start.sh | 14 ++++++++------ management/workflow/scripts/agent_monitor_fixed.sh | 4 +++- .../workflow/scripts/agent_monitor_gitpull.sh | 4 +++- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/management/workflow/scripts/agent_auto_start.sh b/management/workflow/scripts/agent_auto_start.sh index e022829a3..0c6bf3186 100755 --- a/management/workflow/scripts/agent_auto_start.sh +++ b/management/workflow/scripts/agent_auto_start.sh @@ -11,27 +11,29 @@ if [ -z "$AGENT_NAME" ]; then fi # 项目目录:自动检测脚本所在位置,不需要硬编码 +# SCRIPT_DIR: .../sanguo_quant_live/management/workflow/scripts +# 三次 dirname 回到项目根目录 SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -PROJECT_ROOT="$(dirname "$(dirname "$SCRIPT_DIR")")/../../.." +PROJECT_ROOT="$(dirname "$(dirname "$(dirname "$SCRIPT_DIR")")")" cd "$PROJECT_ROOT" || { echo "❌ 无法进入项目目录: $PROJECT_ROOT" exit 1 } # 检查是否已经运行 -if ps aux | grep "agent_monitor_gitpull.sh $AGENT_NAME" | grep -v grep | grep -q .; then +if ps aux | grep "agent_monitor_fixed.sh $AGENT_NAME" | grep -v grep | grep -q .; then echo "✅ $AGENT_NAME 监控已经在运行" exit 0 fi -# 启动改进版监控(带自动git pull) +# 启动全自动化监控(集成git pull/处理/git push) echo "🚀 启动 $AGENT_NAME 监控..." -nohup ./management/workflow/scripts/agent_monitor_gitpull.sh "$AGENT_NAME" > "${AGENT_NAME}_monitor.log" 2>&1 & +nohup ./management/workflow/scripts/agent_monitor_fixed.sh "$AGENT_NAME" > "${AGENT_NAME}_monitor.log" 2>&1 & # 检查是否启动成功 sleep 1 -if ps aux | grep -q "agent_monitor_gitpull.sh $AGENT_NAME" | grep -v grep; then - PID=$(ps aux | grep "agent_monitor_gitpull.sh $AGENT_NAME" | grep -v grep | awk '{print $2}') +if ps aux | grep "agent_monitor_fixed.sh $AGENT_NAME" | grep -v grep | grep -q .; then + PID=$(ps aux | grep "agent_monitor_fixed.sh $AGENT_NAME" | grep -v grep | awk '{print $2}') echo "✅ $AGENT_NAME 监控启动成功" echo "🆔 PID: $PID" echo "📝 日志: ${AGENT_NAME}_monitor.log" diff --git a/management/workflow/scripts/agent_monitor_fixed.sh b/management/workflow/scripts/agent_monitor_fixed.sh index 1e107f9a3..d69161094 100755 --- a/management/workflow/scripts/agent_monitor_fixed.sh +++ b/management/workflow/scripts/agent_monitor_fixed.sh @@ -11,8 +11,10 @@ if [ -z "$AGENT" ]; then fi # 自动检测项目根目录 +# SCRIPT_DIR: .../sanguo_quant_live/management/workflow/scripts +# 三次 dirname 回到项目根目录 SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -PROJECT_ROOT="$(dirname "$(dirname "$SCRIPT_DIR")")/../.." +PROJECT_ROOT="$(dirname "$(dirname "$(dirname "$SCRIPT_DIR")")")" cd "$PROJECT_ROOT" || { echo "❌ 错误:无法进入项目目录 $PROJECT_ROOT" exit 1 diff --git a/management/workflow/scripts/agent_monitor_gitpull.sh b/management/workflow/scripts/agent_monitor_gitpull.sh index 42f44f1da..f97db6d44 100755 --- a/management/workflow/scripts/agent_monitor_gitpull.sh +++ b/management/workflow/scripts/agent_monitor_gitpull.sh @@ -13,8 +13,10 @@ if [ -z "$AGENT_NAME" ]; then fi # 项目根目录(自动检测,基于脚本位置) +# SCRIPT_DIR: .../sanguo_quant_live/management/workflow/scripts +# 三次 dirname 回到项目根目录 SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" -PROJECT_ROOT="$(dirname "$(dirname "$SCRIPT_DIR")")/../.." +PROJECT_ROOT="$(dirname "$(dirname "$(dirname "$SCRIPT_DIR")")")" cd "$PROJECT_ROOT" || { echo "❌ 错误:无法进入项目目录 $PROJECT_ROOT" exit 1