chore: initial commit
This commit is contained in:
45
monitor_session.sh
Executable file
45
monitor_session.sh
Executable file
@@ -0,0 +1,45 @@
|
||||
#\!/bin/bash
|
||||
# Session 监控脚本 - 检查 session 健康状态
|
||||
|
||||
LOG_FILE="logs/session_monitor.log"
|
||||
SESSION_FILE="user_session.session"
|
||||
|
||||
log() {
|
||||
echo "[$(date "+%Y-%m-%d %H:%M:%S")] $1" | tee -a "$LOG_FILE"
|
||||
}
|
||||
|
||||
# 检查 session 文件
|
||||
if [ \! -f "$SESSION_FILE" ]; then
|
||||
log "❌ 错误: $SESSION_FILE 不存在!"
|
||||
log "尝试运行恢复..."
|
||||
./protect_session.sh
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 检查文件大小
|
||||
SIZE=$(stat -f%z "$SESSION_FILE" 2>/dev/null || stat -c%s "$SESSION_FILE" 2>/dev/null)
|
||||
if [ "$SIZE" -lt 1000 ]; then
|
||||
log "⚠️ 警告: Session 文件太小 (${SIZE} bytes)"
|
||||
fi
|
||||
|
||||
# 检查最近的错误日志
|
||||
AUTH_ERRORS=$(tail -100 logs/integrated_bot_errors.log 2>/dev/null | grep -c "AUTH_KEY_UNREGISTERED")
|
||||
if [ "$AUTH_ERRORS" -gt 0 ]; then
|
||||
log "⚠️ 警告: 发现 $AUTH_ERRORS 个 AUTH_KEY 错误(可能是旧错误)"
|
||||
|
||||
# 检查是否是最近5分钟的错误
|
||||
RECENT_ERRORS=$(tail -50 logs/integrated_bot_errors.log 2>/dev/null | grep "AUTH_KEY_UNREGISTERED" | wc -l)
|
||||
if [ "$RECENT_ERRORS" -gt 0 ]; then
|
||||
log "❌ 严重: 检测到最近的 AUTH_KEY 错误!"
|
||||
log "建议立即检查 session 文件"
|
||||
fi
|
||||
fi
|
||||
|
||||
# 检查 Pyrogram 是否运行
|
||||
if grep -q "✅ Pyrogram客户端已启动" logs/integrated_bot_detailed.log 2>/dev/null; then
|
||||
log "✅ Pyrogram 客户端正常运行"
|
||||
else
|
||||
log "⚠️ 警告: Pyrogram 客户端状态未知"
|
||||
fi
|
||||
|
||||
log "Session 监控完成"
|
||||
Reference in New Issue
Block a user