Cache problem
This commit is contained in:
parent
72bd14a44e
commit
4867f4dc22
1 changed files with 81 additions and 0 deletions
81
api.py
81
api.py
|
|
@ -2231,7 +2231,88 @@ async def tester_persistance_utilisateur(session: AsyncSession = Depends(get_ses
|
|||
"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
|
||||
# =====================================================
|
||||
|
|
|
|||
Loading…
Reference in a new issue