Me gustaría mantener un registro de cada vista de página para todos los usuarios de mi aplicación web. Cuando haya transcurrido el tiempo suficiente, usaré ese registro para generar informes. Me gustaría que el mecanismo de registro sea un poco flexible ya que no necesitaría registrar cada solicitud HTTP.¿Seguir la actividad/acciones del usuario para un sitio web asp.net mvc?
Un ejemplo de caso de uso es: una empresa se registra en mi aplicación web y permite que 5 empleados utilicen la aplicación. Me gustaría informar que 3 empleados usaron la aplicación en la última semana. O muestre que 4 empleados lo usaron entre junio y agosto del año en curso.
Estoy usando asp.net mvc con servidor sql, si eso hace la diferencia.
¿Es así de simple? Cree una tabla sql con las siguientes columnas: UserId, ControllerName, ActionName, ActionParameters, CreatedOn. Luego, cree un ActionFilterAttribute que agregue un registro al db para cada acción invocada.
¿Hay algún problema por el que deba preocuparme (aparte de un tamaño de mesa potencialmente grande)?
Quizás una solución más escalable sea usar Google Analytics y rastrear "URL virtuales" que pueda analizar. Me gusta/informes////. Después de eso, use su api de alimentación de datos y analice la respuesta –
No segura y los usuarios pueden apagar JS o bloquear GA. – queen3