Cache problem

This commit is contained in:
Fanilo-Nantenaina 2025-12-06 12:15:36 +03:00
parent 72bd14a44e
commit 4867f4dc22

81
api.py
View file

@ -2231,6 +2231,87 @@ async def tester_persistance_utilisateur(session: AsyncSession = Depends(get_ses
"traceback": str(e.__class__.__name__), "traceback": str(e.__class__.__name__),
} }
@app.get("/debug/fournisseurs/cache", tags=["Debug"])
async def debug_cache_fournisseurs():
"""
🔍 Debug : État du cache côté VPS Linux
"""
try:
# Appeler la gateway Windows pour récupérer l'info cache
cache_info = sage_client.get_cache_info()
# Tenter de lister les fournisseurs
try:
fournisseurs = sage_client.lister_fournisseurs(filtre="")
nb_fournisseurs = len(fournisseurs) if fournisseurs else 0
exemple = fournisseurs[:3] if fournisseurs else []
except Exception as e:
nb_fournisseurs = -1
exemple = []
error = str(e)
return {
"success": True,
"cache_info_windows": cache_info,
"test_liste_fournisseurs": {
"nb_fournisseurs": nb_fournisseurs,
"exemples": exemple,
"erreur": error if nb_fournisseurs == -1 else None
},
"diagnostic": {
"gateway_accessible": cache_info is not None,
"cache_fournisseurs_existe": "fournisseurs" in cache_info if cache_info else False,
"probleme_probable": (
"Cache fournisseurs non initialisé côté Windows"
if cache_info and "fournisseurs" not in cache_info
else "OK" if nb_fournisseurs > 0
else "Erreur lors de la récupération"
)
}
}
except Exception as e:
logger.error(f"❌ Erreur debug cache: {e}", exc_info=True)
raise HTTPException(500, str(e))
@app.post("/debug/fournisseurs/force-refresh", tags=["Debug"])
async def force_refresh_fournisseurs():
"""
🔄 Force le refresh du cache fournisseurs côté Windows
"""
try:
# Appeler la gateway Windows pour forcer le refresh
resultat = sage_client.refresh_cache()
# Attendre 2 secondes
import time
time.sleep(2)
# Récupérer le cache info après refresh
cache_info = sage_client.get_cache_info()
# Tester la liste
fournisseurs = sage_client.lister_fournisseurs(filtre="")
nb_fournisseurs = len(fournisseurs) if fournisseurs else 0
return {
"success": True,
"refresh_result": resultat,
"cache_apres_refresh": cache_info,
"nb_fournisseurs_maintenant": nb_fournisseurs,
"exemples": fournisseurs[:3] if fournisseurs else [],
"message": (
f"✅ Refresh OK : {nb_fournisseurs} fournisseurs disponibles"
if nb_fournisseurs > 0
else "❌ Problème : aucun fournisseur après refresh"
)
}
except Exception as e:
logger.error(f"❌ Erreur force refresh: {e}", exc_info=True)
raise HTTPException(500, str(e))
# ===================================================== # =====================================================
# LANCEMENT # LANCEMENT