- Crear página dedicada /metrics con gráficos usando Chart.js - Implementar función get_translation_stats() en database.py - Añadir endpoint /api/stats en panel/main.py - Mostrar métricas de traducciones por idioma, plataforma y servidor Discord - Agregar tarjeta de acceso rápido a Métricas en el Dashboard - Actualizar action_plan_pro.md con el progreso completado
1.7 KiB
1.7 KiB
Plan de Acción: Nivel Profesional (V2)
🎯 Progreso de Mejoras
-
1. Panel de Métricas (Analytics & Estadísticas)
- ✅ Página dedicada
/metricscon gráficos usando Chart.js. - ✅ Métricas de traducciones totales, por idioma y por plataforma.
- ✅ Métricas por servidor de Discord.
- ✅ Función
get_translation_stats()enbotdiscord/database.py. - ✅ Endpoint
/api/statsenpanel/main.py. - ✅ Tarjeta de acceso rápido a Métricas en el Dashboard.
- ✅ Página dedicada
-
2. Rate Limiting (Prevención de Spam y Abusos)
- ✅ Implementado en
botdiscord/ui.py: máximo 1 clic por usuario/idioma cada 3 segundos. - ✅ Aviso efímero automático si el usuario excede el límite.
- ✅ Implementado en
-
3. Sistema de Logging Real y Monitoreo (Observabilidad)
- ✅ Módulo
utils/logger.pycon rotación de archivos diaria (14 días de historial). - ✅ Reemplazados todos los
print()porlog.info(),log.warning(),log.error().
- ✅ Módulo
-
4. Reemplazo de Caché en RAM por Redis
- ✅
utils/cache.pycreado con fallback a RAM si Redis no está disponible. - ✅ Caché en cascada en
panel/main.pyytranslate.py: Redis → RAM → DB → LibreTranslate. - ✅
docker-compose-redis.yamlcreado y Redis instalado en OMV. - ✅ Variables de entorno configuradas en
docker-compose.ymly.env.example.
- ✅
-
5. Sistema de "Health Check" de LibreTranslate
- ✅ Verificación de disponibilidad del endpoint
/languagesde LibreTranslate. - ✅ Resultado cacheado 30s para no sobrecargar el servidor.
- ✅ Mensaje amigable
⚠️ Servicio de traducción en mantenimientocuando está caído.
- ✅ Verificación de disponibilidad del endpoint
Este documento guiará la transformación del ecosistema de bots a un entorno de producción masiva.