Como funciona o recurso de velocidade do site do Google Analytics,, _gaq.push(['_trackPageLoadTime'])
? Existe alguma documentação sobre como funciona?
102
Como funciona o recurso de velocidade do site do Google Analytics,, _gaq.push(['_trackPageLoadTime'])
? Existe alguma documentação sobre como funciona?
_trackPageLoadTime
em uma fila e, em seguida, disparar todas as funções nessa fila sequencialmente, depois que ga.js for carregado. Ele permite que você carregue com segurança de formaga.js
assíncrona.Respostas:
Editar : em 16 de novembro de 2011, a
_trackPageLoadTime
função foi descontinuada e sua funcionalidade foi definida como uma configuração padrão . (Falando funcionalmente, deixou de ser um recurso opcional para ser um recurso opcional.)_setSiteSpeedSampleRate
é a nova função para definir a taxa de amostragem neste recurso; seu valor padrão é1
(como em 1%). Para optar por não usar o recurso Velocidade do site, você deve passar um0
para esta função:Na Central de Ajuda do Google Analytics :
Portanto, ele não implementa seu próprio cronômetro, como muitas soluções anteriores de homeback faziam, para descobrir quanto tempo leva para uma página carregar. Em vez disso, ele usa um novo recurso HTML5, atualmente suportado apenas nos casos listados acima, chamado NavigationTiming.
EDITAR : Agora é compatível com Firefox 7
(É importante observar que ele não é executado em todos os carregamentos; em vez disso, ele atualmente obtém amostras de cerca de 2% das visualizações de página, embora esteja configurado para tentar rastrear todos os carregamentos de página em 10% das visitas; à medida que mais navegadores suportam a API NavigationTiming, você pode esperar que a porcentagem total da amostra comece a se aproximar de 10%.)
Essa interface é acessada sob o objeto DOM
window.performance
(ou, em versões anteriores do Chrome,window.webkitPerformance
), usando otiming
atributo (so,window.performance.timing
). O objeto armazena valores medidos de todos os tempos de evento de carregamento da página principal, e o Google Analytics subtrai 2 dos valores externos mais importantes para julgar a velocidade de carregamento da página.Para carregar o Mashable.com sem cache, aqui está um exemplo do que ele mede (no Chrome 11):
Esses números são milissegundos de época, ou milissegundos desde 1 de janeiro de 1970. Não vi nenhuma documentação sobre quais valores eles subtraem para gerar seus valores, mas de uma inspeção rápida do ga.js , parece que é
loadEventStart-fetchStart
:Para o exemplo acima, isso significa que registraria 4,14 segundos na
_trackPageLoadTime
chamada.Da especificação de tempo de navegação do W3C:
Para curiosos, a ordem parece ser a seguinte:
Para os 0 valores listados:
unloadEventStart
eunloadEventStart
mostra os tempos de descarregamento do carregamento da página anterior (mas apenas se essa página tiver a mesma origem da atual.)redirectEnd
eredirectStart
medir a latência adicionada se houver um redirecionamento HTTP na cadeia de carregamento da página.secureConnectionStart
parece ser uma medida opcional para medir o tempo de conexão SSL.fonte
secureConnectionStart
é uma medida padrão, mas é opcional para o navegador (ou qualquer outra coisa que lida com o conteúdo) relatar. w3c-test.org/webperf/specs/NavigationTiming/…