43 lines
1.5 KiB
Bash
Executable File
43 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
||
# Agent自动启动监控脚本 - 改进版:使用带自动git pull的监控脚本
|
||
# 当Agent启动时,自动启动监控脚本(带自动git pull)
|
||
|
||
AGENT_NAME="$1"
|
||
|
||
if [ -z "$AGENT_NAME" ]; then
|
||
echo "使用方法: ./agent_auto_start.sh <agent-name>"
|
||
echo "例如: ./agent_auto_start.sh pangtong"
|
||
exit 1
|
||
fi
|
||
|
||
# 项目目录:自动检测脚本所在位置,不需要硬编码
|
||
# SCRIPT_DIR: .../sanguo_quant_live/management/workflow/scripts
|
||
# 三次 dirname 回到项目根目录
|
||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
PROJECT_ROOT="$(dirname "$(dirname "$(dirname "$SCRIPT_DIR")")")"
|
||
cd "$PROJECT_ROOT" || {
|
||
echo "❌ 无法进入项目目录: $PROJECT_ROOT"
|
||
exit 1
|
||
}
|
||
|
||
# 检查是否已经运行
|
||
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 push)
|
||
echo "🚀 启动 $AGENT_NAME 监控..."
|
||
nohup ./management/workflow/scripts/agent_monitor_fixed.sh "$AGENT_NAME" > "${AGENT_NAME}_monitor.log" 2>&1 &
|
||
|
||
# 检查是否启动成功
|
||
sleep 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"
|
||
else
|
||
echo "❌ $AGENT_NAME 监控启动失败"
|
||
fi
|