Log retention policy in Italia: GDPR 30 giorni e debug

Log retention policy in Italia: come bilanciare compliance GDPR (30 giorni) ed esigenze di debug in produzione

Introduzione

In Italia, le normative GDPR impongono una conservazione minima di 30 giorni per i log di sistema. Per i team di backend e SRE, questa regola può entrare in conflitto con la necessità di mantenere dati di debug sufficienti a risolvere incidenti complessi. Questa guida per principianti spiega, passo dopo passo, come progettare una log retention policy che rispetti la legge senza sacrificare la capacità di analisi in produzione.

Comprendere i requisiti di retention in Italia

Cosa prevede il GDPR per i log

Il GDPR richiede che i dati personali, inclusi i log che contengono informazioni identificabili, siano conservati non più a lungo del necessario per le finalità per cui sono stati raccolti. In pratica, la maggior parte delle autorità italiane suggerisce un periodo di 30 giorni come soglia minima per garantire la tracciabilità delle attività.

Perché 30 giorni è il minimo legale

  • Audit: le autorità possono richiedere i log entro un mese.
  • Responsabilità: consente di dimostrare la conformità in caso di violazioni.
  • Sicurezza: riduce il rischio di conservare dati sensibili più a lungo del necessario.

Obblighi chiave da considerare

  • Identificare quali campi dei log contengono dati personali.
  • Definire una policy di cancellazione automatica entro 30 giorni.
  • Documentare la policy per eventuali controlli.

Impatti sul debug e sulla osservabilità

Come i log supportano il troubleshooting

I log sono la prima fonte di informazione quando un servizio fallisce. Essi forniscono:

  • Tracciamento delle richieste (trace ID, timestamp).
  • Errori applicativi (stack trace, messaggi di eccezione).
  • Metriche di performance (latency, throughput).

Rischi di ridurre il periodo di retention

  • Aumento del MTTR: senza dati storici, gli ingegneri impiegano più tempo per ricostruire la sequenza degli eventi.
  • Violazione degli SLA: tempi di risposta più lunghi possono far scattare penali contrattuali.
  • Mancata scoperta di pattern ricorrenti: analisi di trend a lungo termine diventa impossibile.

Strategie di bilanciamento: tiered storage e anonimizzazione

Tiered storage: definizione e vantaggi

Il tiered storage prevede la suddivisione dei log in più livelli di archiviazione:

  1. Hot tier (SSD, 0‑7 giorni): accesso rapido per il debugging immediato.
  2. Warm tier (HDD, 8‑30 giorni): conservazione a medio termine per audit.
  3. Cold tier (archiviazione a lungo termine, >30 giorni): conservazione solo dei metadati o dei log anonimizzati.

Implementare l'anonimizzazione selettiva

L'anonimizzazione rimuove o maschera i dati personali mantenendo le informazioni tecniche utili al debug. Tecniche comuni includono:

  • Hashing di indirizzi IP o ID utente.
  • Masking di campi sensibili (es. email).
  • Tokenization per sostituire valori con token non reversibili.

Passi pratici per configurare la policy con Lescopr

  1. Analisi dei campi: identificare i campi contenenti dati personali nei log.
  2. Definizione delle regole di retention: impostare 30‑giorni per i dati non anonimizzati.
  3. Configurazione del tiered storage: assegnare i log al livello appropriato in base all'età.
  4. Attivazione dell'anonimizzazione: applicare regole di masking sui log più vecchi.
  5. Verifica della conformità: utilizzare i report di Lescopr per confermare che tutti i log rispettino le regole.
  6. Monitoraggio continuo: impostare alert su eventuali deviazioni dal piano di retention.

Configurare la log retention policy con Lescopr

Prerequisiti di sistema

  • Un cluster di Kubernetes o un'istanza VM dove è installato l'agente Lescopr.
  • Accesso a un bucket S3 o Azure Blob per il warm e cold tier.
  • Credenziali con permessi di scrittura sui bucket di storage.

Passo 1: definire le regole di retention

Nel pannello Policy di Lescopr, crea una nuova regola:

name: retention-30-giorni
retention_days: 30
apply_to: "*"

Questa regola garantisce che tutti i log vengano cancellati automaticamente dopo 30 giorni, a meno che non siano stati anonimizzati.

Passo 2: abilitare il tiered storage

Nel menu Storage, aggiungi tre tier:

  • Hot: type: ssd, retention: 7
  • Warm: type: hdd, retention: 30
  • Cold: type: glacier, retention: 365

Associa la regola di retention al tier Warm per i log non anonimizzati.

Passo 3: applicare l'anonimizzazione

Nel modulo Anonymization, definisci le trasformazioni:

fields:
  - name: ip_address
    action: hash
  - name: user_email
    action: mask

L'agente Lescopr applicherà queste trasformazioni a tutti i log più vecchi di 30 giorni, spostandoli nel tier Cold.

Passo 4: verifica e monitoraggio

Una volta configurata la policy, utilizza la dashboard di Compliance per verificare:

  • Percentuale di log anonimizzati.
  • Eventuali violazioni di retention.
  • Tempo medio di accesso ai log nei diversi tier.

Lescopr fornisce anche alert via Slack o email se una regola non viene rispettata.

Nota: per approfondimenti dettagliati su ciascun passo, consulta la documentazione di Lescopr.

Conclusione

Bilanciare la necessità di rispettare il GDPR con le esigenze operative di debug non è impossibile. Attraverso un approccio di tiered storage e anonimizzazione selettiva, è possibile mantenere i log a disposizione per il troubleshooting senza superare i 30 giorni di conservazione di dati personali. Lescopr semplifica l'implementazione di queste best practice, offrendo strumenti integrati per la definizione delle policy, l'archiviazione multilivello e la verifica della conformità.

Per approfondire, la documentazione di Lescopr descrive la configurazione passo dopo passo.