# 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:

<table>
  <thead>
    <tr>
      <th>Significato</th>
      <th>Valore di esempio</th>
      <th>Spiegazione</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Indirizzo IP</td>
      <td>183.121.143.32</td>
      <td>Si tratta dell’indirizzo IP dell’host richiedente</td>
    </tr>
    <tr>
      <td>Non pervenuto</td>
      <td>-</td>
      <td>Di default il protocollo di identificazione RFC-1413 non è stato identificato</td>
    </tr>
    <tr>
      <td>Chi?</td>
      <td>-</td>
      <td>Svela il nome utente, se è avvenuta un’autenticazione HTTP; altrimenti il campo rimane vuoto come in questo caso</td>
    </tr>
    <tr>
      <td>Quando?</td>
      <td>\[18/Mar/2003:08:04:22 +0200\]</td>
      <td>È indicato l’orario completo: data, ora e informazioni sul fuso orario</td>
    </tr>
    <tr>
      <td>Cosa?</td>
      <td>GET /images/logo.jpg HTTP/1.1</td>
      <td>Indica l’evento avvenuto, in questo caso la richiesta di un’immagine tramite HTTP</td>
    </tr>
    <tr>
      <td>Ok</td>
      <td>200</td>
      <td>Segnala la conferma della richiesta effettuata (codice di stato HTTP 200)</td>
    </tr>
    <tr>
      <td>Quanto?</td>
      <td>512</td>
      <td>Se rilevato: quantità dei dati trasmessi in byte</td>
    </tr>
    <tr>
      <td>Da dove?</td>
      <td>http://www.wikipedia.org/</td>
      <td>Indica l’indirizzo web dal quale sono stati richiesti i dati</td>
    </tr>
    <tr>
      <td>Con cosa?</td>
      <td>Mozilla/5.0 (X11; U; Linux i686; de-DE;rv:1.7.5)</td>
      <td>Fornisce informazioni tecniche sul client: browser, sistema operativo, kernel, interfaccia utente, lingua, versione</td>
    </tr>
  </tbody>
</table>

Per analizzare il flusso di informazioni, sono stati sviluppati strumenti come *Webalizer* o *[W3 Statistics](http://www.w3statistics.com/index_en.htm "Statistiche web complete con 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.


This is a markdown version of: [https://www.ionos.it/digitalguide/online-marketing/analisi-web/log-il-registro-eventi-dei-processi-informatici/](https://www.ionos.it/digitalguide/online-marketing/analisi-web/log-il-registro-eventi-dei-processi-informatici/) for AI/LLM consumption.