feat(volc_sync): optimize frequency intervals and logging
This commit is contained in:
+31
-9
@@ -454,9 +454,22 @@ class DailyLimitHandler(CustomLogger):
|
|||||||
)
|
)
|
||||||
display_limit = f"/{int(effective_limit):,}" if effective_limit else ""
|
display_limit = f"/{int(effective_limit):,}" if effective_limit else ""
|
||||||
|
|
||||||
|
# Get Dynamic Remaining for Log
|
||||||
|
dynamic_key = f"limit:dynamic:volcengine:remaining:{clean_model}"
|
||||||
|
rem_val = redis_client.get(dynamic_key)
|
||||||
|
rem_display = ""
|
||||||
|
if rem_val is not None:
|
||||||
|
try:
|
||||||
|
# Display Real Balance (Remaining + Buffer)
|
||||||
|
rem_int = int(float(rem_val))
|
||||||
|
bal_est = rem_int + BUFFER
|
||||||
|
rem_display = f", Bal: {bal_est:,}"
|
||||||
|
except Exception:
|
||||||
|
pass
|
||||||
|
|
||||||
key_display = key.split(":", 2)[-1]
|
key_display = key.split(":", 2)[-1]
|
||||||
log(
|
log(
|
||||||
f"📊 [Usage] {key_display}: +{total_tokens} (Today: {current_total:,}{display_limit})",
|
f"📊 [Usage] {key_display}: +{total_tokens} (Today: {current_total:,}{display_limit}{rem_display})",
|
||||||
level="INFO",
|
level="INFO",
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -593,16 +606,25 @@ def active_monitor_loop():
|
|||||||
)
|
)
|
||||||
|
|
||||||
# Dynamic Interval
|
# Dynamic Interval
|
||||||
if global_min_remaining > 2_000_000:
|
# Logic: Adjust intervals based on distance from BUFFER
|
||||||
base_interval = 1800
|
# User specified thresholds (Distance < X):
|
||||||
elif global_min_remaining > 1_000_000:
|
# < 10w -> 2min (120s)
|
||||||
base_interval = 600
|
# < 30w -> 5min (300s)
|
||||||
elif global_min_remaining > 600_000:
|
# < 50w -> 10min (600s)
|
||||||
|
# < 80w -> 30min (1800s)
|
||||||
|
# < 100w -> 60min (3600s)
|
||||||
|
# >= 100w -> 60min (3600s)
|
||||||
|
|
||||||
|
if global_min_remaining < 100_000:
|
||||||
|
base_interval = 120
|
||||||
|
elif global_min_remaining < 300_000:
|
||||||
base_interval = 300
|
base_interval = 300
|
||||||
elif global_min_remaining > 300_000:
|
elif global_min_remaining < 500_000:
|
||||||
base_interval = 60
|
base_interval = 600
|
||||||
|
elif global_min_remaining < 800_000:
|
||||||
|
base_interval = 1800
|
||||||
else:
|
else:
|
||||||
base_interval = 10
|
base_interval = 3600
|
||||||
|
|
||||||
if is_idle:
|
if is_idle:
|
||||||
current_sync_interval = min(base_interval * 4, 3600)
|
current_sync_interval = min(base_interval * 4, 3600)
|
||||||
|
|||||||
Reference in New Issue
Block a user