Files
PolyWeather/scripts/check_om_cache.py
T
2569718930@qq.com 22e2409e13 修复 Open-Meteo 冷却期无限循环导致多模型数据缺失
- fetch_all_sources 新增 om_from_cache_only 模式:force_refresh_observations_only
  时直接从内存缓存取 OM 数据,不发起 HTTP 请求。缓存未命中则跳过,
  避免机场推送 60s 周期持续触发 429 限流
- nws_open_meteo_sources 三类 fetch 函数冷却期加磁盘缓存兜底:
  内存未命中时 force-reload SQLite 磁盘缓存再查一次
- 预热停止后冷却期自然过期(900s),下一次正常请求会填充缓存
2026-05-17 22:31:10 +08:00

15 lines
610 B
Python

"""Check which cities have Open-Meteo cache entries in the web container."""
import time
from src.data_collection.weather_sources import WeatherDataCollector
from src.utils.config_loader import load_config
w = WeatherDataCollector(load_config())
print("Multi-model cache entries:")
for k in sorted(w._multi_model_cache.keys()):
age = int(time.time() - w._multi_model_cache[k].get("t", 0))
print(f" {k} age={age}s")
print(f"\nOM cache entries: {len(w._open_meteo_cache)}")
print(f"Multi-model cache entries: {len(w._multi_model_cache)}")
print(f"Rate limit until: {w._open_meteo_rate_limit_until}")