Resumen
El Log es el audit trail de CXF. Registra automáticamente quién hizo qué a cada registro — creaciones, actualizaciones (con diffs de antes/después por campo), eliminaciones, restauraciones, y cambios en taxonomies, relationships y ownership. Lees esa historia en el tab de Log de un registro, en un feed en tiempo real, y por la API. Para el modelo mental, consulta Conceptos básicos. Los logs los escribe el sistema — no los creas, los lees.Dónde encontrarlo
- Tab de Log — en la página de detalle de un registro, un timeline de todo lo que le pasó.
- Feed en tiempo real — un feed en la navbar muestra los cambios recientes a medida que ocurren.
- API — consulta la historia del log programáticamente.
Properties
Cada entrada de log es generada por el sistema y de solo lectura:| Property | Tipo | Descripción |
|---|---|---|
user_id | reference | El usuario que realizó la acción. |
action | enum | Qué pasó — ver Qué se registra. |
action_details | array | Los detalles de cada cambio (vacío en eliminaciones y restauraciones). |
object_type / object_id | reference | El registro que cambió. |
object_title | string | Una instantánea del título del registro en ese momento. |
connection_details | object | De dónde vino la acción: ip, user_agent, device_type. |
created_at | datetime | Cuándo ocurrió la acción. |
Qué se registra
Elaction captura el tipo de cambio: created, updated, deleted,
restored, attached, detached, archived, published, unpublished,
balance-updated, login, y más.
Para los cambios, action_details registra exactamente qué cambió, con
entradas tipadas:
| Tipo | Registra |
|---|---|
attribute | Un cambio de campo — slug, old_value, new_value (los campos anidados usan un slug con puntos). |
taxonomy | Una taxonomy agregada o quitada. |
relationship | Una relationship agregada o quitada. |
ownership | Un owner o follower agregado o quitado. |
balance | Un cambio de balance — valor anterior y nuevo. |
Feed en tiempo real
Los owners y followers de un registro ven sus cambios en el feed de la navbar en tiempo real. El feed está scopeado por ownership — un Journey Manager ve la actividad de los registros que posee o sigue (ver Ownership).Comportamiento y reglas
- Solo lectura. Los logs los genera automáticamente el sistema; no se pueden crear ni editar.
- Diffs por campo. Las actualizaciones registran solo los campos que cambiaron,
cada uno como
old_value → new_value, incluidos los campos anidados. - Eliminaciones y restauraciones sin detalles. Su
action_detailsqueda vacío — usa las entradasupdatedcercanas para el historial de campos. - Los secretos se enmascaran. Los valores sensibles (como API keys) se enmascaran para que nunca aparezcan en un log.
- Se atribuye al actor real. Aun cuando un cambio ocurre por automation o un job en background, el log lo atribuye al usuario detrás.
Seeds
Los logs son un registro de acciones, no configuración — no forman parte de los Seeds.Gobernanza y permisos
Un super admin o un Master puede leer todos los logs. Un Journey Manager lee los logs de los registros que posee o sigue.Acceso por API
El Log es de solo lectura por la API: lista y filtra entradas (por ejemplo por objeto), opcionalmente scopeadas a los registros que un usuario posee o sigue. Consulta la API reference.Relacionado
Ownership
Determina quién ve el log de un registro en el feed en tiempo real.
Activities
Comments, tasks y approvals escritos por usuarios — un stream separado del audit trail.