feat: 添加Agent自动启动脚本 - 每次Agent启动自动运行监控
This commit is contained in:
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
# Agent自动启动监控脚本
|
||||
# 当Agent启动时,自动调用这个脚本启动监控
|
||||
# 使用方法:在agent.json的配置中指定这个脚本为启动命令
|
||||
|
||||
AGENT_NAME="$1"
|
||||
|
||||
if [ -z "$AGENT_NAME" ]; then
|
||||
echo "使用方法: ./agent_auto_start.sh <agent-name>"
|
||||
echo "例如: ./agent_auto_start.sh pangtong"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 项目目录
|
||||
PROJECT_DIR="/Users/chufeng/.openclaw/agents/main/workspace/projects/sanguo_quant_live"
|
||||
cd "$PROJECT_DIR" || {
|
||||
echo "❌ 项目目录不存在: $PROJECT_DIR"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# 检查是否已经运行
|
||||
if ps aux | grep -q "agent_monitor_fixed.sh $AGENT_NAME" | grep -v grep; then
|
||||
echo "✅ $AGENT_NAME 监控已经在运行"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# 启动监控
|
||||
echo "🚀 启动 $AGENT_NAME 监控..."
|
||||
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_fixed.sh $AGENT_NAME" | grep -v grep; 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"
|
||||
exit 0
|
||||
else
|
||||
echo "❌ $AGENT_NAME 监控启动失败"
|
||||
exit 1
|
||||
fi
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
# 检查Agent监控是否运行,如果没运行就启动
|
||||
# 使用方法:./agent_check_and_start.sh <agent-name>
|
||||
|
||||
AGENT_NAME="$1"
|
||||
|
||||
if [ -z "$AGENT_NAME" ]; then
|
||||
echo "使用方法: ./agent_check_and_start.sh <agent-name>"
|
||||
echo "例如: ./agent_check_and_start.sh pangtong"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 检查是否已经运行
|
||||
if ps aux | grep -q "agent_monitor_fixed.sh $AGENT_NAME" | grep -v grep; then
|
||||
echo "✅ $AGENT_NAME 监控已经在运行"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# 如果没运行,启动它
|
||||
echo "🔍 $AGENT_NAME 监控未运行,正在启动..."
|
||||
./management/workflow/scripts/agent_auto_start.sh "$AGENT_NAME"
|
||||
Reference in New Issue
Block a user