fix: intraday_health_check移除小果残留——check_xiaoguo/8645端口/小果bot/小果信号堆积

小果已全线归档(2026-07-20 Xiaoxiao重构)。盘中自检脚本仍残留:
- check_xiaoguo()函数
- 小果XMPP Bot离线检测
- 8645端口检测
- xiaoguo信号堆积检查(含import socket)
- main()中check_xiaoguo()调用

全部移除,匹配已修复的运行版本。
This commit is contained in:
知微
2026-07-21 09:46:43 +08:00
parent e6e79ced0d
commit 84d72dfd85
@@ -65,24 +65,6 @@ def db_today_count(table, date_col):
return -1
def check_xiaoguo():
"""小果管道:进程/scanner有数据/API可达(降级不报错)"""
# 进程 — 不一定有常驻进程(no_agent cron模式)
# 数据 — 今日有扫描记录
scans_today = db_today_count("xiaoguo_scan_tracker", "last_scanned_at")
if scans_today <= 0:
# 可能是小果离线了,不报严重,记录即可
return
# API — 用socket快速检测可达性(3s超时)
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(3)
s.connect(("node122", 18003))
s.close()
except:
pass
def check_price_monitor():
"""价格监控:检查price_monitor cron最近是否运行 + 数据是否更新
@@ -152,37 +134,26 @@ def check_price_monitor():
def check_bots():
zhiwei = subprocess.run(["systemctl", "is-active", "xmpp-zhiwei.service"],
capture_output=True, text=True, timeout=5).stdout.strip() == "active"
xiaoguo = subprocess.run(["systemctl", "is-active", "xmpp-xiaoguo.service"],
capture_output=True, text=True, timeout=5).stdout.strip() == "active"
log(zhiwei, "知微XMPP Bot离线")
log(xiaoguo, "小果XMPP Bot离线")
def check_gateways():
log(check_port(8643), "知微Gateway :8643 未监听")
log(check_port(8645), "小果Gateway :8645 未监听")
def check_signal_pipeline():
"""信号从xiaoguo_scanner→signal_news→consumer是否通畅"""
"""信号处理管道:检查信号积压 + 宏观风险状态"""
unproc = 0
total_unproc = 0
try:
conn = get_conn()
# xiaoguo 信号堆积(4h以内时效)
r = conn.execute("SELECT COUNT(*) FROM signal_news WHERE source LIKE 'xiaoguo%' AND (processed=0 OR processed IS NULL) AND created_at > datetime('now', '-4 hours')").fetchone()
# 全量未处理信号
r = conn.execute("SELECT COUNT(*) FROM signal_news WHERE (processed=0 OR processed IS NULL)").fetchone()
unproc = r[0]
# 全量未处理信号(跨来源)
r2 = conn.execute("SELECT COUNT(*) FROM signal_news WHERE (processed=0 OR processed IS NULL)").fetchone()
total_unproc = r2[0]
conn.close()
except:
pass
log(unproc < 30, f"xiaoguo信号堆积: {unproc}条未处理(需<30")
# 其他来源信号积压预警
other = total_unproc - unproc
if other > 50:
log(False, f"其它来源信号积压: {other}条未处理(divergence_watch/trend等无consumer")
if unproc > 50:
log(False, f"信号积压: {unproc}条未处理")
# 宏观风险状态检查
try:
@@ -248,7 +219,6 @@ def main():
check_bots()
check_gateways()
check_xiaoguo()
if 9 <= now.hour < 16:
# 开盘前10分钟(9:00-9:10)跳过价格新鲜度检查
# price_monitor 从 09:00 才开始启动,09:01 检查时数据还未更新(前一天收盘数据)