fix: 自检加第4项——gateway实际LLM推理检测(发ok→5tok)

This commit is contained in:
知微
2026-07-08 10:25:54 +08:00
parent d75694c9e5
commit 0793162bbf
+27 -1
View File
@@ -172,7 +172,33 @@ def main():
alerts.append(f"🔴 XMPP bridge检测失败: {e}")
state[bridge_key] = {"last_alerted": datetime.now().timestamp()}
# ── 检查4price_monitor数据新鲜度(直接查DB,不依赖job记录)
# ── 检查4gateway LLM推理是否正常(发真实请求测响应时间)
gateway_key = "gateway_down"
try:
import urllib.request, json, time
payload = json.dumps({
"model": "position-analyst",
"messages": [{"role": "user", "content": "ok"}],
"max_tokens": 5
}).encode()
req = urllib.request.Request("http://127.0.0.1:8643/v1/chat/completions",
data=payload,
headers={"Authorization": "Bearer hermes123", "Content-Type": "application/json"})
t0 = time.time()
resp = urllib.request.urlopen(req, timeout=30)
elapsed = time.time() - t0
data = json.loads(resp.read())
usage = data.get("usage", {})
tok = usage.get("total_tokens", 0)
if elapsed > 25 and is_new_alert(gateway_key, state):
alerts.append(f"🔴 gateway响应慢: {elapsed:.0f}s ({tok}tok)")
state[gateway_key] = {"last_alerted": datetime.now().timestamp()}
except Exception as e:
if is_new_alert(gateway_key, state):
alerts.append(f"🔴 gateway推理失败: {e}")
state[gateway_key] = {"last_alerted": datetime.now().timestamp()}
# ── 检查5price_monitor数据新鲜度(直接查DB,不依赖job记录)─
price_key = "price_stale"
try:
import sqlite3