_gaq.push ([ '_ trackPageLoadTime'])는 어떻게 작동합니까?
Google Analytics 사이트 속도 기능,은 어떻게 _gaq.push(['_trackPageLoadTime'])
작동합니까? 작동 방식에 대한 문서가 있습니까?
편집 : 11 월 16 일 2011 년에 같이, 기능이 사용하고 있고 기능은 기본 설정으로하고 있습니다. (기능적으로 보조 옵트 인 기능에서 옵트 아웃 기능으로 바뀌 었습니다.)_trackPageLoadTime
_setSiteSpeedSampleRate
이 기능에서 샘플 속도를 설정하는 새로운 기능입니다. 상관은 1
(1 %)입니다. 이 사이트 속도 기능을 사용하지 않으면 0
이 기능을 전달해야 합니다.
_gaq.push(["_setSiteSpeedSampleRate", 0]);
로부터 Google 웹 로그 분석 도움말 센터 :
이 보고서는 현재 Chrome, Internet Explorer 9 및 Google 사용 가능 이전 버전의 Internet Explorer를 지원합니다. 보다 구체적으로 사이트 속도 보고서에는 HTML5 NavigationTiming 인터페이스를 지원하거나 Google Internet Explorer를 사용하여 브라우저가 필요합니다.
따라서 이전의 여러 홈백 솔루션과 많은 페이지를로드하는 데 있습니다. 대신 현재 위에 지원되는 경우에만 지원되는 NavigationTiming이라는 새로운 HTML5 기능을 사용합니다.
편집 : 이제 Firefox 7 에서 지원됩니다
(이 모든 부하에서 실행되지 않는 것이 중요합니다, 그것은 현재 페이지 2 % 대신의 주변에 샘플이 구성되어 있습니다 시도 방문의 10 %의 모든 페이지가로드를 추적하기 위해, 더 많은 브라우저가 NavigationTiming API를 지원로서, 총 샘플링 비율이 10 %에 가까워지기 시작할 예정입니다.)
이 인터페이스는 속성 을 사용하여 DOM 객체 window.performance
(또는 이전 버전의 Chrome window.webkitPerformance
) 에서 액세스 됩니다. 개체는 모든 주요 페이지로드 이벤트 시간의 측정 된 값을 저장하고 Google Analytics는 페이지로드 속도를 판단하기 위해 더 중요한 외부 값 2 개를 평가합니다.timing
window.performance.timing
캐시가없는 Mashable.com로드의 경우 다음과 같은 측정 항목의 예가 있습니다 (Chrome 11).
timing = {
connectEnd: 1306677079337,
connectStart: 1306677079337,
domComplete: 1306677083482,
domContentLoadedEventEnd: 1306677081765,
domContentLoadedEventStart: 1306677081576,
domInteractive: 1306677081576,
domLoading: 1306677079478,
domainLookupEnd: 1306677079337,
domainLookupStart: 1306677079337,
fetchStart: 1306677079337,
loadEventEnd: 1306677083483,
loadEventStart: 1306677083482,
navigationStart: 1306677079337,
redirectEnd: 0,
redirectStart: 0,
requestStart: 1306677079394,
responseEnd: 1306677079669,
responseStart: 1306677079476,
secureConnectionStart: 0,
unloadEventEnd: 0,
unloadEventStart: 0
}
이 숫자는 1970 년 1 월 1 일 이후의 epoch 밀리 초 또는 밀리 초입니다. 값을 생성하기 위해 빼는 값에 대한 문서는 보지 못했지만 ga.js를 간략하게 살펴보면 다음과 같이 시청 loadEventStart-fetchStart
합니다.
h&&h[c]!=k&&h.isValidLoadTime?b=h[c]:e&&e[a]&&(b=e[a].loadEventStart-e[a].fetchStart);
위 샘플의 경우 이는 통화 에서 4.14 초 를 기록함 을 의미합니다 _trackPageLoadTime
.
W3C 탐색 타이밍 사양에서 :
HTTP GET 또는 이와 동등한 경우 사용하여 새 리소스를 가져옵니다. fetchStart는 사용자 에이전트가 관련 애플리케이션 캐시 확인을 시작하기 직전에 시간을 반환해야합니다. 명명 된 사용자 에이전트가 리소스를 가져 오려면 시작하는 시간을 반환해야합니다.
이 속성은 현재 문서의로드 이벤트가 시작되기 직전의 시간을 반환해야합니다. 로드 이벤트가 아직 시작되지 않은 경우 0을 반환해야합니다.
궁금한 파티의 경우 순서는 다음과 같습니다.
connectStart, connectEnd, domainLookupStart, domainLookupEnd, fetchStart, navigationStart, requestStart, responseStart, domLoading, responseEnd, domContentLoadedEventStart, domInteractive, domContentLoadedEventEnd, domComplete, loadEventStart, loadEventEnd
나열된 0 값의 경우 :
unloadEventStart
및 unloadEventStart
이전 페이지로드의 하역 시간을 보여 (그러나 해당 페이지는 현재와 같은 기원을 가지고있는 경우에만.)
redirectEnd
및 redirectStart
페이지로드 체인에서 HTTP 리디렉트를 있었다면 레이턴시 추가 측정한다.
secureConnectionStart
SSL 연결 시간을 측정하기위한 선택적 측정 인 것으로 보입니다.
참고 URL : https://stackoverflow.com/questions/6166074/how-does-gaq-push-trackpageloadtime-work
'IT' 카테고리의 다른 글
Bash에서 파일의 각 줄 (0) | 2020.08.16 |
---|---|
VS2010 프로젝트에 대한 외부 액세스를 위해 IIS Express 구성 (0) | 2020.08.16 |
UITextField 편집을 계속하지만 여전히 터치를 허용하는 방법은 무엇입니까? (0) | 2020.08.16 |
수정 된 줄만 표시하는 Git diff (0) | 2020.08.16 |
Java 프로젝트의 패키지 구조? (0) | 2020.08.16 |