Salta ai contenuti

Registro operazioni

Il Registro operazioni è il registro audit immutabile di XIQUIL: ogni creazione, modifica e cancellazione di entità viene tracciata automaticamente e non è più alterabile. Utile per auditing interno, diagnosi di problemi, e compliance.

  • Capire chi ha modificato cosa e quando
  • Recuperare il valore precedente di un campo modificato
  • Auditing per istanze multi-utente
  • Ricostruire una sequenza di eventi durante un’indagine
  1. Dal menu monitoraggio, apri Registro operazioni
  2. L’elenco è ordinato per data decrescente (ultime modifiche in alto)
  3. Usa i filtri per:
    • Entità (uscite, entrate, fondi, ecc.)
    • Operazione (creazione/modifica/cancellazione)
    • Utente
    • Periodo
  4. Clicca una riga per vedere il diff completo (prima/dopo) e il contesto (IP, device)

Tabella Registro operazioni con colonne entità, operazione, utente, data e diff Registro operazioni: audit trail immutabile con filtri per entità, operazione, utente e periodo.

  • Immutabile a livello DB: un trigger PostgreSQL blocca qualunque UPDATE/DELETE sul registro — nessuno può alterare la storia, nemmeno l’admin
  • Auto-popolato: il tracking avviene via SQLAlchemy listener, senza che le entità debbano implementare logica specifica
  • JSON diff: la modifica registra before_data, after_data, changes in JSONB — compatti ma esplorabili
  • Valori serializzati: numeri decimali, date e valori tecnici vengono normalizzati prima della scrittura, così il JSONB resta leggibile ed esportabile
  • Denormalizzato: al momento della registrazione il nome utente e il codice entità vengono copiati, così restano leggibili anche se l’utente/record viene cancellato
  • Context: ogni record include IP e device_id della sessione che ha fatto la modifica
  • Polimorfico: funziona con qualunque modello marcato come AuditableMixin