# Audit Logs Page Specification **Modulo:** audit **Ultima actualizacion:** 2026-02-03 **Total Paginas:** 1 --- ## AuditLogsPage **Ruta:** `/dashboard/audit` **Archivo:** `src/pages/dashboard/AuditLogsPage.tsx` ### Descripcion Pagina de logs de auditoria. Muestra registro de todas las acciones realizadas en el sistema con filtros avanzados y timeline. ### Componentes Utilizados - AuditFilters - Panel de filtros multiples - AuditLogRow - Fila de log con detalles expandibles - AuditStatsCard - Tarjetas de estadisticas - ActivityTimeline - Timeline visual de actividad ### Hooks Utilizados - `useAuditLogs(filters)` - Lista logs con filtros - `useActivityLogs()` - Timeline de actividad ### Funcionalidades 1. Filtrar por usuario 2. Filtrar por tipo de accion (create, update, delete, login, logout) 3. Filtrar por entidad afectada 4. Filtrar por rango de fechas 5. Ver detalles de cada accion 6. Ver cambios realizados (before/after) 7. Ver timeline de actividad reciente ### Filtros Disponibles | Filtro | Tipo | Opciones | |--------|------|----------| | Usuario | Select | Lista de usuarios | | Accion | Select | create, update, delete, login, logout | | Entidad | Select | user, tenant, invoice, etc | | Fecha desde | Date | Datepicker | | Fecha hasta | Date | Datepicker | ### Estados - Loading: Spinner centrado - Success: Tabla de logs con paginacion - Empty: Mensaje "No audit logs found" - Error: Mensaje de error ### Acciones del Usuario | Accion | Resultado | |--------|-----------| | Seleccionar filtro | Filtra resultados | | Click en fila | Expande detalles | | Limpiar filtros | Reset a todos | | Previous/Next | Cambia pagina | ### Permisos Requeridos - `audit:read` - Ver logs de auditoria ### Estructura de Log ```typescript interface AuditLog { id: string; user_id: string; user_email: string; action: 'create' | 'update' | 'delete' | 'login' | 'logout'; entity_type: string; entity_id: string; changes?: { before: Record; after: Record; }; metadata?: Record; ip_address?: string; user_agent?: string; created_at: string; } ``` ### Notas - Los logs son inmutables, no se pueden editar ni eliminar - La retencion de logs depende del plan de suscripcion - Los campos sensibles (passwords) nunca se registran - El IP y user agent se registran para seguridad --- *Documentacion generada - Template SaaS - 2026-02-03*