Nov 19 2011

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

funzioni: _setSiteSpeedSampleRate (e la fine di _trackPageLoadTime)

autore: categoria: funzioni

Qualche giorno fa Sean Carlos ha postato, prima su Google+ e poi sul suo blog, un messaggio di errore che compariva sul debugger di Google Analytics relativo alla funzione _trackPageLoadtime, usata per misurare la velocità del sito. A quanto si poteva allora capire, la funzione _trackPageLoadTime veniva dichiarata deprecata e si faceva riferimento a una certa _setSiteSpeedSampleRate, di cui però non c’era traccia sul web. Anche io ho fatto alcune prove, impostando il campionamento al 100% o all’80%, ma senza ottenere risultati.

Il bandolo della matassa è arrivato Venerdì scorso, quando il blog ufficiale ha introdotto la nuova funzione, ed è stato aggiornato anche il changelog.

La nuova funzione _setSiteSpeedSampleRate prende come argomento un numero intero che rappresenta il campione di pagine che vogliamo Google Analytics utilizzi per popolare i report sulla velocità del sito. Si usa in questo modo, e va chiamata prima di _trackPageview


_gaq.push(['_setSiteSpeedSampleRate', 5]);
_gaq.push(['_trackPageview']);

Con questo esempio impostiamo GA per usare il 5% delle pagine inviate per calcolare la velocità del sito e delle stesse pagine.
Contemporaneamente la vecchia funzione _trackPageLoadTime è considerata deprecata, ma per compatibilità con il passato potete lasciarla: sarà come se chiamaste la nuova funzione con un sample del 10% (che tra l’altro è il massimo ad oggi consentito, nonostante la funzioni accetti numeri da 1 a 100). quindi ricapitolando:

se non avete mai usato _trackPageLoadTime avrete i report della velocità del sito popolati come se chiamaste _setSiteSpeedSampleRate con valore 1
se non avete mai usato _trackPageLoadTime ma volete cambiare la percentuale di campionamento dovrete aggiungere la funzione come indicato sopra
se avete attualmente _trackPageLoadtime sul sito potete lasciarla, ed è come se chiamaste _setSiteSpeedSampleRate con valore 10
se avete attualmente _trackPageLoadtime sul sito ma volete cambiare il campionamento, dovrete rimuoverla e passare alla nuova come indicato sopra

Secondo la documentazione della funzione in condizioni normali viene usato l’1% delle pagine viste inviate fino a un massimo di 10.000 pageviews al giorno. Se il vostro sito invia più di un milione di hits al giorno tuttavia, i vostri tentativi di aggiustare il sample rate saranno infruttuosi e Analytics userà sempre e comunque l’1%.

In aggiunta a tutto questo ci sono altre due novità: la prima è che adesso anche le pagine virtuali generate con _trackPageview saranno conteggiate nel report della velocità del sito, la seconda è che il tempo impiegato da eventuali redirect verrà conteggiato nel tempo di caricamento, per fare in modo che esso concida sempre più con la reale percezione dell’utente.

La mossa mi sembra assolutamente sensata: a Google non costa nulla invocare quella funzione in modo automatico, ed essa genera un report piuttosto interessante. Nell’ottica di semplificare il più possibile lo strumento è una buona mossa, e infatti quando uscii il report sulla velocità del sito più volte mi chiesi: “ma perché addirittura una funzione nuova da inserire a mano?”

Condividi l'articolo:

5 Commenti

  1. Io ho notato che da mercoledì 9 novembre la velocità del sito viene monitorata anche senza la stringa “setSiteSpeedSampleRate”, sapete perché?

  2. c’è scritto nel post. non è più necessario usare nessuna funzione per avere il report sulla velocità. setsamplerate serve solo per modificare il campionamento, se si desidera farlo…

  3. Hai ragione mi ero perso un punto…thx 😉

  4. Ciao Marco, ti seguo da parecchio ma è la prima volta che scrivo qualcosa. Volevo chiederti se hai testato l’attendibilità dei dati confrontandoli con quelli di altri tool (tipo yslow, oppure pagespeed di google). Ti chiedo questo perchè lavorando su siti di clienti che fanno anche svariati milioni di pageview al mese e facendo un confronto con dati estratti da mie analisi sulla velocità di caricamento della pagina (con servizi online) e soprattutto sul peso delle chiamate con gli strumenti che ti indicavo prima, trovo delle differenze notevoli.
    Ti condivido un esempio tipo, ma in generale su 5 siti la media è più o meno di 9 sec. per tutti ed i server sono in Italia:
    esempio
    Tempo di caricamento medio della pagina (sec) 9,76
    Visualizzazioni di pagina 16.638.676
    Campione per il caricamento della pagina 17.581
    Frequenza di rimbalzo 58,96%
    % uscita 15,85%

    Grazie mille,
    soprattutto per l’ottimo lavoro che fai con questo blog.

  5. no, non li ho confrontati perché non avrebbe senso. Quei tool interrogano – diciamo così “lato server” – le tue pagine, alcuni altri online da uno o più posti nel mondo. si tratta della comunicazione tra due server, sostanzialmente. Lo script di GA invece gira effettivamente sui computer e sui browser dei tuoi utenti, facendo i calcoli sui loro dati effettivi (e tiene anche conto di eventuali redirect), o per lo meno il più vicino possibile al reale. Dove per reale non intendo che gli altri sistemi mentano, intendo che sono proprio due misurazioni diverse

Scrivi un Commento