#!/bin/bash # 加盟商状态同步系统监控脚本 echo "==========================================" echo "加盟商状态同步系统监控" echo "==========================================" echo "检查时间: $(date '+%Y-%m-%d %H:%M:%S')" echo "" # 1. 检查Cron任务 echo "1. Cron任务状态:" if crontab -l | grep -q "加盟商状态自动同步"; then echo " ✅ Cron任务已配置" crontab -l | grep "加盟商状态自动同步" else echo " ❌ Cron任务未找到" fi echo "" # 2. 检查日志文件 echo "2. 日志文件状态:" LOG_FILE="/var/log/franchisee_sync.log" if [ -f "$LOG_FILE" ]; then echo " ✅ 日志文件存在: $LOG_FILE" echo " 文件大小: $(du -h "$LOG_FILE" | cut -f1)" echo " 最后修改: $(stat -c %y "$LOG_FILE" | cut -d. -f1)" echo "" echo " 最近5条日志:" tail -5 "$LOG_FILE" | sed 's/^/ /' else echo " ❌ 日志文件不存在" fi echo "" # 3. 检查状态文件 echo "3. 状态跟踪文件:" STATUS_FILE="/tmp/franchisee_last_status.json" if [ -f "$STATUS_FILE" ]; then echo " ✅ 状态文件存在: $STATUS_FILE" COUNT=$(jq 'length' "$STATUS_FILE" 2>/dev/null || echo "无法解析") echo " 跟踪加盟商数量: $COUNT" echo "" echo " 当前跟踪的加盟商:" jq -r 'keys[]' "$STATUS_FILE" 2>/dev/null | head -10 | sed 's/^/ /' if [ $(jq 'length' "$STATUS_FILE" 2>/dev/null) -gt 10 ]; then echo " ... 还有更多" fi else echo " ⚠️ 状态文件不存在(可能是第一次运行)" fi echo "" # 4. 检查脚本文件 echo "4. 脚本文件状态:" SCRIPT_FILE="/root/.openclaw/agents/101/workspace/franchisee_cron.py" if [ -f "$SCRIPT_FILE" ]; then echo " ✅ 主脚本文件存在: $SCRIPT_FILE" echo " 脚本权限: $(stat -c %A "$SCRIPT_FILE")" else echo " ❌ 主脚本文件不存在" fi echo "" # 5. 检查Python环境 echo "5. Python环境:" if command -v python3 >/dev/null 2>&1; then echo " ✅ Python3 已安装: $(python3 --version 2>&1)" else echo " ❌ Python3 未安装" fi echo "" # 6. 检查进程状态 echo "6. 进程状态:" echo " 最近一次Cron执行:" if grep -q "加盟商状态同步任务开始执行" "$LOG_FILE" 2>/dev/null; then LAST_RUN=$(grep "加盟商状态同步任务开始执行" "$LOG_FILE" | tail -1 | cut -d' ' -f1-2) echo " ✅ 最后执行时间: $LAST_RUN" else echo " ⚠️ 未找到执行记录" fi echo "" # 7. 系统信息 echo "7. 系统信息:" echo " 当前用户: $(whoami)" echo " 主机名: $(hostname)" echo " 系统时间: $(date)" echo " 运行时间: $(uptime -p)" echo "" echo "==========================================" echo "操作指南:" echo "1. 查看完整日志: tail -f /var/log/franchisee_sync.log" echo "2. 手动执行测试: python3 /root/.openclaw/agents/101/workspace/franchisee_cron.py" echo "3. 查看Cron配置: crontab -l" echo "4. 编辑Cron配置: crontab -e" echo "=========================================="