Files
traduccion_bots/action_plan_pro.md
nickpons666 77024d443f Feat: Añadir panel de métricas con estadísticas por idioma, plataforma y servidor
- 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
2026-03-21 15:15:38 -06:00

1.7 KiB

Plan de Acción: Nivel Profesional (V2)

🎯 Progreso de Mejoras

  • 1. Panel de Métricas (Analytics & Estadísticas)

    • Página dedicada /metrics con 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() en botdiscord/database.py.
    • Endpoint /api/stats en panel/main.py.
    • Tarjeta de acceso rápido a Métricas en el Dashboard.
  • 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.
  • 3. Sistema de Logging Real y Monitoreo (Observabilidad)

    • Módulo utils/logger.py con rotación de archivos diaria (14 días de historial).
    • Reemplazados todos los print() por log.info(), log.warning(), log.error().
  • 4. Reemplazo de Caché en RAM por Redis

    • utils/cache.py creado con fallback a RAM si Redis no está disponible.
    • Caché en cascada en panel/main.py y translate.py: Redis → RAM → DB → LibreTranslate.
    • docker-compose-redis.yaml creado y Redis instalado en OMV.
    • Variables de entorno configuradas en docker-compose.yml y .env.example.
  • 5. Sistema de "Health Check" de LibreTranslate

    • Verificación de disponibilidad del endpoint /languages de LibreTranslate.
    • Resultado cacheado 30s para no sobrecargar el servidor.
    • Mensaje amigable ⚠️ Servicio de traducción en mantenimiento cuando está caído.

Este documento guiará la transformación del ecosistema de bots a un entorno de producción masiva.