Definizione, utilità ed esempi di utilizzo dei file di log in informatica

Definizione, utilità ed esempi di utilizzo dei file di log in informatica

File di log

In informatica, con il termine log o file di log (il cui significato è giornale di bordo, o semplicemente giornale) si indica un file su cui vengono registrati gli eventi in ordine cronologico e viene utilizzato per indicare normalmente:

  • la registrazione cronologica delle operazioni man mano che vengono eseguite
  • il file o database su cui tali registrazioni sono memorizzate.

Il log più semplice, dalle origini ad oggi, è un file sequenziale sempre aperto in scrittura, che viene chiuso e conservato a cadenze regolari e reso disponibile per:

  • analisi delle segnalazioni di errore,
  • produzione di statistiche di esercizio, come ad esempio quelle del traffico nei servizi web
  • ripristino di situazioni precedenti
  • analisi delle modifiche fatte alla base dati
  • analisi delle operazioni fatte e responsabili di tali operazioni
  • riassunto di quanto successo in un determinato arco di tempo ad esempio nelle chat

Il log può anche essere un segmento di base dati con accesso diretto mediante chiave cronologica (timestamp) ma il suo utilizzo come registro cronologico non cambia.

Definizione, utilità ed esempi di utilizzo dei file di log in informatica

Per capire come i file di log siano di supporto alla gestione, manutenzione e analisi di un sistema complesso si pensi a come buona parte delle rilevazioni statistiche sul traffico generato dai siti Internet siano effettuate da programmi che analizzano e presentano, in forma comprensibile al lettore umano, i dati memorizzati momento per momento dai server web nei propri file di log.

Usati originariamente come fonte primaria di informazioni per determinare i carichi di lavoro dei server e studiare possibili migliorie nella distribuzione di quei carichi, oggi i dati ricavati dai file di registro sono considerati principalmente come strumenti commerciali, cioè:

  • come informazioni sul successo di un sito Internet,
  • come mezzi per conoscere abitudini e preferenze di navigazione degli utenti che si collegano ad un sito,
  • come credenziali per vendere servizi (ad esempio spazi pubblicitari).

Per fornire un altro esempio in cui i log forniscono un valido aiuto nell’amministrazione di un sistema pensiamo ora al caso in cui un amministratore di rete riscontra un attacco hacker su una macchina interna alla rete. Andando a consultare i file di log generati dal sistema potrà andare a controllare se eventuali intrusioni esterne sono state registrate e quali vulnerabilità del sistema sono state sfruttate. E’ chiaro che dopo tale analisi si potranno prendere le giuste precauzioni apportando migliorie tecniche al sistema.

Considerando invece un sistema distribuito le cui componenti vengono eseguite su macchine differenti connesse in rete, la gestione dei log è differente dai casi precedenti. Infatti, per gestire in modo ottimale l’applicazione distribuita dovremmo essere in grado di verificare l’esecuzione delle varie componenti andando a consultare i singoli file di log da queste generati e residenti sulle diverse macchine. Quindi sarebbe auspicabile raccogliere i file di log su una singola macchina “repository” così da facilitarne la consultazione e mantenere un archivio accessibile in qualunque momento.

Altro esempio in cui è auspicabile avere un archivio dei log è in ambito bancario. Si pensi quindi ai log prodotti durante la fase di login di un utente sul sito della propria banca. Supponendo che il sito web offra al cliente la visione da remoto di tutti i dati inerenti il proprio conto corrente, sarebbe utile, sia per motivi di riservatezza sia per avere uno storico di tutte le operazioni effettuate, memorizzare i file di log prodotti durante l’accesso al server web su un server repository. Quest’ultimo, ovviamente, dovrà prevedere tutti i possibili accorgimenti ai fini della sicurezza per prevenire eventuali accessi da utenti malintenzionati.

Considerando gli aspetti di detection e diagnosi degli errori, è importante sottolineare che i log risultano uno strumento di supporto indispensabile, basti pensare ad un processo appartenente ad una applicazione distribuita, il quale attraverso la sua sospensione, potrebbe portare allo stallo dell’intera applicazione. Quindi attraverso l’analisi dei log, generati dal sistema operativo, si potrebbe risalire a quale processo abbia portato la sospensione dell’applicazione e quindi risolvere il problema.
Gli esempi sopra citati sono solo alcuni degli scenari in cui il file di log risulta essere uno strumento fondamentale per la gestione di sistemi più o meno complessi.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: www.vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *