Enhance: Complete bilingual (CN/EN) log support for VolcSync
This commit is contained in:
+49
-16
@@ -639,7 +639,10 @@ def active_monitor_loop():
|
||||
content = f.read()
|
||||
lines = content.split("\n")
|
||||
|
||||
print("Auto-discovering Volcengine models from config.yaml...")
|
||||
print(
|
||||
"Auto-discovering Volcengine models from config.yaml / 正在从 config.yaml 自动发现火山引擎模型...",
|
||||
flush=True,
|
||||
)
|
||||
|
||||
# Robust Parsing Logic
|
||||
current_entry = {"is_volc": False, "upstream_model": None}
|
||||
@@ -683,16 +686,22 @@ def active_monitor_loop():
|
||||
INTERESTED_MODELS.add(current_entry["upstream_model"])
|
||||
|
||||
print(
|
||||
f"Auto-discovered {len(INTERESTED_MODELS)} Active Volcengine models (Upstream Names): {INTERESTED_MODELS}"
|
||||
f"Auto-discovered / 已自动发现 {len(INTERESTED_MODELS)} Active Volcengine models (Upstream Names): {INTERESTED_MODELS}",
|
||||
flush=True,
|
||||
)
|
||||
except Exception as e:
|
||||
print(f"Config Auto-discovery failed: {e}")
|
||||
print(f"Config Auto-discovery failed / 配置自动发现失败: {e}", flush=True)
|
||||
|
||||
if not redis_client:
|
||||
print("❌ Redis not connected. Exiting monitor loop.")
|
||||
print(
|
||||
"❌ Redis not connected. Exiting monitor loop / Redis 未连接,退出监控循环.",
|
||||
flush=True,
|
||||
)
|
||||
sys.exit(1)
|
||||
|
||||
print(f"✅ Redis connected at {REDIS_HOST}:{REDIS_PORT}")
|
||||
print(
|
||||
f"✅ Redis connected at / Redis 已连接于 {REDIS_HOST}:{REDIS_PORT}", flush=True
|
||||
)
|
||||
|
||||
last_usage_map = {}
|
||||
last_sync_time = 0
|
||||
@@ -701,8 +710,11 @@ def active_monitor_loop():
|
||||
IDLE_THRESHOLD = 300
|
||||
idle_start_time = 0
|
||||
|
||||
print("Starting Active Monitor Loop (Safety-Margin + Idle Awareness)...")
|
||||
print(f"Buffer: {BUFFER}, Threshold: {THRESHOLD}")
|
||||
print(
|
||||
"Starting Active Monitor Loop (Safety-Margin + Idle Awareness) / 正在启动主动监控循环 (安全余量 + 空闲感知)...",
|
||||
flush=True,
|
||||
)
|
||||
print(f"Buffer / 缓冲: {BUFFER}, Threshold / 阈值: {THRESHOLD}", flush=True)
|
||||
|
||||
while True:
|
||||
try:
|
||||
@@ -766,14 +778,15 @@ def active_monitor_loop():
|
||||
"Burst Traffic" if delta > THRESHOLD else "Timer Expired"
|
||||
)
|
||||
print(
|
||||
f"{'💤' if is_idle else '⚡'} Sync Triggered ({trigger_reason})... Delta: {delta}, Interval: {current_sync_interval}s"
|
||||
f"{'💤' if is_idle else '⚡'} Sync Triggered ({trigger_reason}) / 同步触发... Delta: {delta}, Interval: {current_sync_interval}s",
|
||||
flush=True,
|
||||
)
|
||||
|
||||
packages = fetch_all_packages()
|
||||
model_balances = process_packages_breakdown(packages)
|
||||
|
||||
print(
|
||||
f"DEBUG: Processed models: {list(model_balances.keys())}",
|
||||
f"DEBUG: Processed models / 已处理模型: {list(model_balances.keys())}",
|
||||
flush=True,
|
||||
)
|
||||
|
||||
@@ -783,7 +796,7 @@ def active_monitor_loop():
|
||||
for model_name, balance in model_balances.items():
|
||||
remaining = balance - BUFFER
|
||||
print(
|
||||
f"DEBUG: Checking {model_name} (Bal: {int(balance):,}, Rem: {int(remaining):,})",
|
||||
f"DEBUG: Checking {model_name} (Bal: {int(balance):,}, Rem: {int(remaining):,}) (余额/剩余)",
|
||||
flush=True,
|
||||
)
|
||||
|
||||
@@ -829,17 +842,34 @@ def active_monitor_loop():
|
||||
last_usage_map["global"] = current_usage_global
|
||||
last_sync_time = now
|
||||
|
||||
if global_min_remaining > 10_000_000:
|
||||
if global_min_remaining > 800000:
|
||||
print(
|
||||
f"🌊 High Tide Mode: Sleeping for 30m (Min Rem: {int(global_min_remaining):,})"
|
||||
f"🌊 High Tide Mode: Sleeping for 30m (Min Rem: {int(global_min_remaining):,}) / 高水位模式:休眠 60 分钟",
|
||||
flush=True,
|
||||
)
|
||||
elif global_min_remaining > 2_000_000:
|
||||
elif global_min_remaining > 500000:
|
||||
print(
|
||||
f"⛵ Safe Sailing Mode: Sleeping for 5m (Min Rem: {int(global_min_remaining):,})"
|
||||
f"🌊 Normal Mode: Sleeping for 30m (Min Rem: {int(global_min_remaining):,}) / 正常模式:休眠 30 分钟",
|
||||
flush=True,
|
||||
)
|
||||
elif global_min_remaining > 300000:
|
||||
print(
|
||||
f"🚤 Speed Mode: Sleeping for 10m (Min Rem: {int(global_min_remaining):,}) / 极速模式:休眠 10 分钟",
|
||||
flush=True,
|
||||
)
|
||||
elif global_min_remaining > 100000:
|
||||
print(
|
||||
f"⛵ Safe Sailing Mode: Sleeping for 5m (Min Rem: {int(global_min_remaining):,}) / 安全航行模式:休眠 5 分钟",
|
||||
flush=True,
|
||||
)
|
||||
else:
|
||||
print(
|
||||
f"🆘 Emergency Mode: Sleeping for 2m (Min Rem: {int(global_min_remaining):,}) / 紧急模式:休眠 2 分钟",
|
||||
flush=True,
|
||||
)
|
||||
|
||||
except Exception as e:
|
||||
print(f"Error in monitor loop: {e}")
|
||||
print(f"Error in monitor loop / 监控循环出错: {e}", flush=True)
|
||||
traceback.print_exc()
|
||||
time.sleep(5)
|
||||
|
||||
@@ -848,6 +878,9 @@ if __name__ == "__main__":
|
||||
active_monitor_loop()
|
||||
else:
|
||||
# Auto-start when loaded as a module/callback
|
||||
print("🚀 Initializing VolcSync Background Monitor...", flush=True)
|
||||
print(
|
||||
"🚀 Initializing VolcSync Background Monitor... / 正在初始化火山引擎同步后台监控...",
|
||||
flush=True,
|
||||
)
|
||||
t = threading.Thread(target=active_monitor_loop, daemon=True)
|
||||
t.start()
|
||||
|
||||
Reference in New Issue
Block a user