La auditoría en Nebula ERP no se guarda en la base de datos transaccional (PostgreSQL) para evitar la degradación del rendimiento. Se utiliza MongoDB como repositorio de "Write-Only" para trazas históricas.
{
"timestamp": "ISO-8601",
"traceId": "UUID (Propagado desde Gateway)",
"tenantId": "String",
"userId": "String/Email",
"clientIp": "String",
"serviceName": "String (e.g., nebula-accounting)",
"operation": "CRUD_ACTION",
"resource": "Entity_Name",
"resourceId": "String",
"dataBefore": { "original_state": "..." },
"dataAfter": { "modified_state": "..." },
"metadata": {
"userAgent": "...",
"requestPath": "/api/v1/..."
}
}
Para garantizar el aislamiento físico de datos en el nivel logicial de Mongo:
t{tenant_id}_audit_log.timestamp (desc) y traceId.audit.global.events.tenantId y persiste el documento en la colección correspondiente.Entregable Arquitectura - Tarea 1.4.4
Versión 1.0 - Proyecto Nebula ERP
| Version | Fecha | Autor | Descripcion |
|---|---|---|---|
| 1.1.0 | 2026-03-04 | Carlos Torres | Revision, sanitizacion y publicacion en Wiki Arquitectura Centrica. |
| 1.0.0 | 2026-01-27 | Carlos Torres | Creacion del documento. |