Browse Source

日志文件生成策略

jihuaqiang 5 months ago
parent
commit
1058575d58
1 changed files with 14 additions and 1 deletions
  1. 14 1
      start.sh

+ 14 - 1
start.sh

@@ -13,7 +13,10 @@ NC='\033[0m' # No Color
 # 项目根目录
 PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
 PID_FILE="$PROJECT_DIR/app.pid"
-LOG_FILE="$PROJECT_DIR/logs/app.log"
+# 生成带时间戳的日志文件名
+TIMESTAMP=$(date +%Y%m%d_%H%M%S)
+LOG_FILE="$PROJECT_DIR/logs/app_${TIMESTAMP}.log"
+LATEST_LOG_LINK="$PROJECT_DIR/logs/app.log"
 
 echo -e "${GREEN}启动知识工具服务...${NC}"
 
@@ -58,11 +61,19 @@ export DEBUG=False
 echo -e "${GREEN}安装Python依赖...${NC}"
 pip install -r requirements.txt
 
+# 清理旧日志(可选:保留最近10个日志文件)
+echo -e "${GREEN}清理旧日志...${NC}"
+ls -t "$PROJECT_DIR/logs"/app_*.log 2>/dev/null | tail -n +11 | xargs rm -f 2>/dev/null || true
+
 # 启动服务
 echo -e "${GREEN}启动服务...${NC}"
 nohup python main.py > "$LOG_FILE" 2>&1 &
 PID=$!
 
+# 创建符号链接指向最新日志
+rm -f "$LATEST_LOG_LINK"
+ln -s "app_${TIMESTAMP}.log" "$LATEST_LOG_LINK"
+
 # 保存PID
 echo $PID > "$PID_FILE"
 
@@ -74,8 +85,10 @@ if ps -p "$PID" > /dev/null 2>&1; then
     echo -e "${GREEN}服务启动成功!${NC}"
     echo -e "${GREEN}PID: $PID${NC}"
     echo -e "${GREEN}日志文件: $LOG_FILE${NC}"
+    echo -e "${GREEN}日志链接: $LATEST_LOG_LINK (始终指向最新日志)${NC}"
     echo -e "${GREEN}API文档: http://localhost:8079/docs${NC}"
     echo -e "${GREEN}健康检查: http://localhost:8079/health${NC}"
+    echo -e "${YELLOW}提示: 系统自动保留最近10个日志文件${NC}"
 else
     echo -e "${RED}服务启动失败!${NC}"
     echo -e "${RED}请检查日志文件: $LOG_FILE${NC}"