mirror of
https://github.com/hotyue/IP-Sentinel.git
synced 2026-09-05 07:28:14 +08:00
fix(core): 补充缺失的 scheduler 抹杀逻辑根除幽灵循环,并为战报模块引入 60s 冷却装甲阻断并发风暴
This commit is contained in:
@@ -660,6 +660,8 @@ pkill -9 -f "webhook.py" >/dev/null 2>&1 || true
|
|||||||
pkill -9 -f "agent_daemon.sh" >/dev/null 2>&1 || true
|
pkill -9 -f "agent_daemon.sh" >/dev/null 2>&1 || true
|
||||||
pkill -9 -f "runner.sh" >/dev/null 2>&1 || true
|
pkill -9 -f "runner.sh" >/dev/null 2>&1 || true
|
||||||
pkill -9 -f "tg_report.sh" >/dev/null 2>&1 || true
|
pkill -9 -f "tg_report.sh" >/dev/null 2>&1 || true
|
||||||
|
pkill -9 -f "updater.sh" >/dev/null 2>&1 || true
|
||||||
|
pkill -9 -f "sentinel_scheduler.sh" >/dev/null 2>&1 || true
|
||||||
|
|
||||||
# 执行代码目录的物理替换
|
# 执行代码目录的物理替换
|
||||||
rm -rf "${INSTALL_DIR}/core" 2>/dev/null
|
rm -rf "${INSTALL_DIR}/core" 2>/dev/null
|
||||||
|
|||||||
@@ -18,6 +18,22 @@ if [ -z "$TG_TOKEN" ] || [ -z "$CHAT_ID" ]; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# ================== [v4.0.8 核心: 防并发风暴与 60 秒冷却机制] ==================
|
||||||
|
LOCK_FILE="${INSTALL_DIR}/core/.report_lock"
|
||||||
|
if [ -f "$LOCK_FILE" ]; then
|
||||||
|
LAST_RUN=$(cat "$LOCK_FILE" 2>/dev/null)
|
||||||
|
NOW=$(date +%s)
|
||||||
|
# 校验 LAST_RUN 是否为有效数字,并比对 60 秒冷却期
|
||||||
|
if [[ "$LAST_RUN" =~ ^[0-9]+$ ]]; then
|
||||||
|
if [ $((NOW - LAST_RUN)) -lt 60 ]; then
|
||||||
|
echo "[$(date -u '+%Y-%m-%d %H:%M:%S UTC')] [v${AGENT_VERSION:-未知}] [WARN ] [Report ] [SYSTEM] ⚠️ 战报请求过于频繁,触发 60 秒防并发风暴拦截。" >> "${INSTALL_DIR}/logs/sentinel.log"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
echo $(date +%s) > "$LOCK_FILE"
|
||||||
|
# ==============================================================================
|
||||||
|
|
||||||
# 2. 节点元数据抓取 (v3.2.2 协议自适应与多级容灾版)
|
# 2. 节点元数据抓取 (v3.2.2 协议自适应与多级容灾版)
|
||||||
# [v3.5.2 核心: 引入双轨身份架构]
|
# [v3.5.2 核心: 引入双轨身份架构]
|
||||||
if [ -z "$NODE_NAME" ]; then
|
if [ -z "$NODE_NAME" ]; then
|
||||||
|
|||||||
Reference in New Issue
Block a user