Sobre el proyecto

ActiveAnalytics es un motor de Rails que se puede montar directamente dentro de una aplicación Ruby on Rails para proporcionar análisis de tráfico sencillos y de primera parte. Su objetivo de diseño es la privacidad: no recopila cookies, no envía JavaScript, no depende de servicios de terceros y, por lo tanto, no es algo que los bloqueadores de anuncios o las extensiones de privacidad necesiten bloquear. Qué informa el panel - Fuentes: las páginas y dominios que traen tráfico a la aplicación. - Vistas de página: qué páginas se ven con más frecuencia. - Página siguiente/anterior: las páginas de entrada y salida asociadas a una página dada. - Estadísticas del navegador: qué navegadores y versiones visitan el sitio. El README enfatiza que la herramienta no revela nada sobre los visitantes individuales. Instalación Añade el gem al Gemfile, ejecuta bundle, instala y ejecuta las migraciones del motor, y luego monta el motor en un endpoint elegido en config/routes.rb: gem 'active_analytics' bundle rails active_analytics:install:migrations rails db:migrate # config/routes.rb mount ActiveAnalytics::Engine, at: "analytics" Por defecto, el panel hereda de ActionController::Base. Se puede configurar un controlador base personalizado a través de ActiveAnalytics.base_controller_class en un inicializador. Recopilación de tráfico Se documentan dos enfoques. La opción sincrónica llama a ActiveAnalytics.record_request(request), típicamente desde un callback after_action en ApplicationController; es la más sencilla de configurar pero escribe en la base de datos en cada solicitud. La opción asincrónica llama a ActiveAnalytics.queue_request(request), enviando datos a Redis para que no haya escritura en la base de datos por solicitud; los datos en cola se persisten luego llamando a ActiveAnalytics.flush_queue desde una tarea cron o trabajo en segundo plano. El README sugiere vaciar regularmente y hacer el último vaciado del día a las 23:59 para que las cifras diarias no se desplacen al día siguiente. Redis se puede configurar con ActiveAnalytics.redis_url o una conexión ActiveAnalytics.redis personalizada. Los ejemplos recomiendan registrar solo respuestas HTML, filtrar por un dominio canónico y usar un gem de detección de bots para omitir rastreadores. Las URLs sensibles como las de restablecimiento de contraseña se pueden excluir con skip_after_action. Autenticación Dado que la autenticación varía según la aplicación, el motor no asume un esquema. El README muestra parchear ActiveAnalytics::ApplicationController con un before_action que lance un error de routing para usuarios no admins, requerido desde config.after_initialize para que no se recargue en desarrollo. Con Devise, el mount se puede envolver en un bloque authenticate en routes.rb. Licencia y procedencia ActiveAnalytics se publica como código abierto bajo la Licencia MIT y es desarrollado por Base Secrète, que también crea la herramienta de monitoreo de RoR Rails RoRvsWild.