Mar 23 2009

HelpSemaforoQuesto semaforo indica il livello difficoltà del post
semaforo verde - articolo per tutti semaforo giallo - articolo avanzato semaforo rosso - articolo per esperti

Perché non posso avere l’IP dei visitatori?

autore: categoria: codice di monitoraggio

Domanda ricorrente, risposta breve: perché Google non vuole, considera l’IP un dato personale e poiché è sempre nell’occhio del ciclone per le questioni di privacy, taglia corto e non lo consente.

Risposta articolata: i termini del servizio di Google Analytics, al punto 8.1 escludono questa possibilità tramite la dicitura

Google non assocerà il vostro indirizzo IP a nessun altro dato posseduto da Google

Un’altra conseguenza di questa regola, che con gli IP non c’entra, è che in Google Analytics non si possono tracciare o ripercorrere i path delle singole visite, cosa che invece altri software riescono a fare senza sforzo. Probabilmente avrete letto o avrete sentito dire da me in tempi remoti che con un banale trucco la cosa era ancora fattibile: infatti creando un filtro personalizzato di tipo avanzato il campo “indirizzo IP visitatore” è presente, come testimoniato dallo screenshot qui sotto (e come potete verificare voi stessi guardando il sorgente della pagina di creazione di un filtro come quello)

ip-nascosto

ecco come FireBug presenta la riga incriminata


<option value="31" style="display: none;">Indirizzo IP visitatore</option>

ma è selezionabile solo tramite tastiera, scorrendo la select tramite freccia su/giu. Io dicevo, ed era vero, che un filtro avanzato poteva prelevare l’intero campo IP e trascriverlo nel campo “Definito dall’utente”; la cosa è stata sanata da tempo da Google e un filtro come quello, al momento, semplicemente non fa nulla.

Allora, quale altra soluzione rimane?

ATTENZIONE! la procedura seguente viola i termini di servizio di Google Analytics e potrebbe risultare in un blocco della fornitura del servizio da parte di Google. Il mio non vuole essere un invito a violare alcunché, ma in alcuni casi è necessario effettuare un debug avendo gli IP dei visitatori. Terminato il debug conviene riportare il codice alla condizione precedente.

rimane la possibilità di estrarre a mano l’indirizzo IP del visitatore e di scriverlo direttamente nel campo “definito dall’utente”, tramite la funzione _setVar() richiamata subito dopo _trackPageview().

Quindi in ASP


pageTracker._setVar("<%=Request.ServerVariables("REMOTE_ADDR")%>");

in ASP.NET


pageTracker._setVar("<%= Request.UserHostAddress>");

in PHP


pageTracker._setVar("<?php echo $_SERVER['REMOTE_ADDR'];?>");

in SHTML (server side include HTML)


pageTracker._serVar("<!--#echo var="REMOTE_ADDR"-->");

Proprio oggi ho dovuto ricorrere a questa tecnica: una grossa azienda con una infrastruttura di rete molto ampia (con decine di sistemisti sparsi sul territorio) implementa Google Analytics su un sito, ma nonostante due filtri per escludere le visite dei propri proxy, il report “Ubicazione di rete” riporta visite provenienti dal nome di rete dell’azienda. Poiché non se ne viene a capo, sistemo la funzione _setVar per catturare gli IP dei navigatori (in questo caso gli IP di rete interna, poiché i siti visti dall’interno non necessitano di proxy, ma l’immagine trasparente 1×1 di GA invece si), e dopo un paio d’ore sono già in grado di chiedere al sistemista dove siano ubicati e con che proxy escano gli IP del gruppo che “sfuggono” dai due filtri.

Risolta la questione ho eliminato la funzione setVar e sono ritornato nelle grazie di Google Analytics.

Condividi l'articolo:

7 Commenti

  1. Buono a sapersi

    Ho dato una occhiata ad altri TOS di GA delle altre nazioni, e per ognuna adotta una clausola sulla privacy personalizzata, anche se simile.

    Questo è quello statunitense:
    http://www.google.com/analytics/tos.html
    nessuna menzione di indirizzo IP … magari loro non hanno questa restrizione(?)

  2. All’idea di usare PHP ci avevo pensato anche io… ma mi domandavo in effetti se violasse le regole, ed ecco che la tua risposta mi chiarisce tutto. Mi asterrò 😉

  3. Mik, nella TOS statunitense va guardata la clausola 7, non la 8. In realtà la menzione italiana è leggermente fuorviante, mea culpa. L’IP viene citato nel paragrafo che google suggerisce di inserire nei siti, per avvisare gli utenti che non verrà fatta nessuna associazione utente-IP. Resta il fatto che per Google l’IP è informazione personale in tutto il mondo, e in nessun paese il filtro funzionerebbe.

  4. cosa che invece altri software riescono a fare senza sforzo

    Magari per completezza ci dici quali sono questi softwares?

    Grazie

  5. Dalla lista di Wikipedia manca IBM Digital Analytics

  6. ex Coremetrics, già…

Scrivi un Commento