Quali informazioni contiene un file di log
Tutte le volte che lavorate al PC, navigate dal tablet o gestite un sito su un server, ci sono numerosi processi che avvengono in background, senza che ve ne accorgiate. Se sorgono problemi, si riscontrano degli errori o volete capire quali procedimenti eseguono il sistema operativo e gli altri programmi, potete controllare i log, che vi daranno informazioni in merito. Vengono utilizzati automaticamente da quasi tutte le applicazioni, i server, i database e i sistemi, di cui registrano tutti i processi più importanti.
In genere i file di log vengono analizzati solo di rado, come una scatola nera di un aereo, che viene esaminata solo in casi eccezionali. Grazie alla dettagliata acquisizione di dati, i log risultano molto utili per ricercare errori dei programmi e del sistema in generale, oltre che per rilevare il comportamento degli utenti. Questa funzione non solo è interessante per gli sviluppatori di software, ma lo è anche per i webmaster, che possono ricavare dai log delle informazioni utili sul loro web server.
Che cos’è un file di log?
I log, che svolgono la funzione di registro di eventi, sono dei comuni file di testo, dove sono registrati tutti i processi, definiti rilevanti dal programmatore dell’applicazione. Nel caso dei log di un database sono ad esempio da ritenersi importanti tutte le modifiche delle transazioni concluse correttamente. Se a causa di un crash, vengono cancellate delle parti del database, il file di log serve per ripristinare il tutto.
I file di log vengono generati automaticamente secondo i comandi dati in fase di programmazione; se si hanno le giuste conoscenze, è anche possibile creare dei propri log. Una riga di un log comprende generalmente le seguenti informazioni:
- Evento avvenuto (ad esempio avvio di un programma)
- Data e orario dell’evento
Di solito gli eventi sono ordinati in ordine cronologico e quindi viene mostrato per prima l’orario.
Tipici usi dei file di log
I sistemi operativi creano di default più file di log, in cui vengono registrati e classificati vari tipi di processi. I sistemi Windows registrano ad esempio eventi relativi alle applicazioni, al sistema, alla sicurezza, al set-up e ai reindirizzamenti. Gli amministratori ricevono così informazioni utili per la risoluzione degli errori. Inoltre, nei log di Windows sono indicati gli utenti che si sono loggati o sloggati dal sistema. Oltre al sistema operativo, anche i seguenti programmi e sistemi raccolgono diversi dati utili:
- I programmi in background come ad esempio mail server, database e proxy generano file di log, che registrano i messaggi di errore, avvisi e indicazioni. In questo modo si vuole ottenere una certa sicurezza e consentire il ripristino dei dati.
- I software installati come Office, i giochi, i servizi di messaggistica istantanea, i firewall o gli antivirus memorizzano diversi tipi di dati nei log. Si può trattare di configurazioni o messaggi di chat, ma soprattutto anche in questo caso vengono registrati tutti i crash che potranno essere analizzati per risolvere il problema.
- I server (in particolare i web server) registrano le attività di rete più importanti, che comprendono tutte le informazioni utili sull’utente e sul suo comportamento in rete. Inoltre gli amministratori autorizzati possono sapere quali utenti hanno avviato un’applicazione o richiesto un file, a che ora l’hanno fatto, quanto è durata la loro attività e quale sistema operativo hanno utilizzato. L’analisi dei log del web server è uno dei metodi più utilizzati di sempre per controllare il web ed esemplifica l’utilità dei log files.
Un esempio del potenziale dei file di log: i log del web server
Originariamente i log venivano usati dai web server, come Apache o Microsoft IIS, per la registrazione e la risoluzione dei problemi durante lo svolgimento dei processi. In breve tempo si è però scoperto che i log del web server fornivano anche molti altri dati preziosi, come ad esempio informazioni sull’usabilità e la popolarità del sito gestito sul server, comprensive di dati utili sui visitatori, quali:
- Orario in cui le pagine sono state visitate
- Numero di pagine aperte
- Durata della sessione
- Indirizzo IP e nome host dell’utente
- Informazioni sulle richieste del client (in genere il browser)
- Motore di ricerca e termini utilizzati
- Sistema operativo in uso
La sintassi di un file di log appare generalmente così:
183.121.143.32 - - [18/Mar/2003:08:04:22 +0200] "GET /images/logo.jpg HTTP/1.1" 200 512 "http://www.wikipedia.org/" "Mozilla/5.0 (X11; U; Linux i686; de-DE;rv:1.7.5)"
Di seguito una spiegazione dei singoli parametri:
Significato | Valore di esempio | Spiegazione |
---|---|---|
Indirizzo IP | 183.121.143.32 | Si tratta dell’indirizzo IP dell’host richiedente |
Non pervenuto | - | Di default il protocollo di identificazione RFC-1413 non è stato identificato |
Chi? | - | Svela il nome utente, se è avvenuta un’autenticazione HTTP; altrimenti il campo rimane vuoto come in questo caso |
Quando? | [18/Mar/2003:08:04:22 +0200] | È indicato l’orario completo: data, ora e informazioni sul fuso orario |
Cosa? | GET /images/logo.jpg HTTP/1.1 | Indica l’evento avvenuto, in questo caso la richiesta di un’immagine tramite HTTP |
Ok | 200 | Segnala la conferma della richiesta effettuata (codice di stato HTTP 200) |
Quanto? | 512 | Se rilevato: quantità dei dati trasmessi in byte |
Da dove? | http://www.wikipedia.org/ | Indica l’indirizzo web dal quale sono stati richiesti i dati |
Con cosa? | Mozilla/5.0 (X11; U; Linux i686; de-DE;rv:1.7.5) | Fornisce informazioni tecniche sul client: browser, sistema operativo, kernel, interfaccia utente, lingua, versione |
Per analizzare il flusso di informazioni, sono stati sviluppati strumenti come Webalizer o W3 Statistics, che convertono i dati rilevati in statistiche, tabelle e grafici. Così emergono ad esempio le tendenze sulla crescita del sito, l’usabilità delle singole pagine o i temi e le parole chiave rilevanti. Anche se l’analisi dei log del web server continua ad essere fatta, è stata sostituita per la maggior parte da nuovi metodi di analisi web come i cookies o i tag. Ciò è causato in parte dal rischio elevato di commettere errori nell’assegnazione delle sessioni durante l’analisi dei log e in parte dal fatto che i webmaster di un sito non hanno spesso accesso ai log del web server, dove sono però registrati tutti i messaggi di errore. Inoltre i dati, ricavabili tramite un’analisi dei log, sono conservati direttamente dall’azienda.