From cf1b1f87614c6d973ea58ce9ebb6f5bc3958cef5 Mon Sep 17 00:00:00 2001 From: Alex Yang Date: Sun, 7 Dec 2025 12:29:29 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3API=E6=85=A2=E7=AD=89?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- agent/agent.sh | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/agent/agent.sh b/agent/agent.sh index 05f5dd1..15b44fc 100755 --- a/agent/agent.sh +++ b/agent/agent.sh @@ -48,18 +48,35 @@ start_agent() { return 0 fi - echo "🚀 正在启动 monitor-agent..." - # 创建日志目录(如果不存在) + echo "🚀 正在启动 monitor-agent(工作目录:${WORK_DIR})..." + + # 新增:检查并切换工作目录 + if [ ! -d "${WORK_DIR}" ]; then + echo "⚠️ 工作目录 ${WORK_DIR} 不存在,正在创建..." + mkdir -p "${WORK_DIR}" + if [ $? -ne 0 ]; then + echo "❌ 创建工作目录 ${WORK_DIR} 失败!" + exit 1 + fi + fi + + # 切换到工作目录(关键:程序将在此目录下运行) + cd "${WORK_DIR}" || { + echo "❌ 切换到工作目录 ${WORK_DIR} 失败!" + exit 1 + } + + # 创建日志目录 mkdir -p "$(dirname ${LOG_FILE})" - # 后台启动程序,重定向日志,记录PID + # 后台启动程序(注意:cd仅影响当前子进程,需在同一行执行) nohup "${AGENT_PATH}" ${START_ARGS} > "${LOG_FILE}" 2>&1 & AGENT_PID=$! echo "${AGENT_PID}" > "${PID_FILE}" - # 等待2秒检查是否启动成功 + # 等待检查启动状态 sleep 2 if check_running; then - echo "✅ monitor-agent 启动成功(PID: ${AGENT_PID})" + echo "✅ monitor-agent 启动成功(PID: ${AGENT_PID},工作目录:${WORK_DIR})" echo "日志文件:${LOG_FILE}" else echo "❌ monitor-agent 启动失败!请查看日志:${LOG_FILE}"