2010-08-20 7 views
9

Google 애널리틱스가 내장 된 자바 스크립트가 어떻게 작동하는지 궁금합니다. 예를 들어 사이트를 방문한 시간은 어떻게 계산합니까? 임베디드 자바 스크립트가 사이트를 방문 할 때마다 집에 전화합니까? ... 큰 그림 만 알면됩니다.내장 된 Google Analytics Javascript는 어떻게 작동합니까?

고마워요.

편집 : 어떻게 다음 작동합니까?

<script type="text/javascript"> 
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); 
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); 
</script> 
<script type="text/javascript"> 
var pageTracker = _gat._getTracker("UA-xxxxxx-x"); 
pageTracker._trackPageview(); 
</script> 

답변

20

첫 번째 스크립트 블록은 Google의 서버에서 ga.js를 다운로드하는 스크립트 태그를 만듭니다. 이 스크립트는 웹 페이지, 귀하 및 귀하의 브라우저에 대한 데이터를 수집하여 귀하가 왔던 곳의 정보 (참조 자 정보) 등을 수집합니다.이 모든 것은 적중 당할 때마다 수집됩니다.

스크립트는 글로벌 _gat 개체를 만듭니다. _gat의 일부 메소드 (예 : _trackPageview)는로드 될 때마다 Google 서버에 _utm.gif 요청을 보냅니다.

요청 자체는 Google이 사용자의 예상 위치 (요청한 IP 주소를 통해)와 브라우저 (사용자 에이전트 문자열을 통해 요청 헤더에서 전송)를 얻는 방법입니다. _utm.gif 요청은 스크립트가 Google 서버에서 1x1 투명한 gif 파일을 요청한다는 것을 의미합니다. 각 요청에는 쿼리 문자열 내에 모든 정보가 추가됩니다. Google의 서버는 요청 로그를 처리하고 해당 요청에 대한 정보를 사용하여 데이터를 처리하고 히트를 기반으로 세션을 재구성합니다.

그 요청, stackoverflow.com에 예를 들어, 다음과 같습니다

http://www.google-analytics.com/__utm.gif?utmwv=4.7.2&utmn=909339250&utmhn=stackoverflow.com&utmcs=UTF-8&utmsr=1920x1080&utmsc=24-bit&utmul=en-us&utmje=1&utmfl=10.1%20r82&utmdt=Newest%20'google-analytics'%20Questions%20-%20Stack%20Overflow&utmhid=456625342&utmr=0&utmp=%2Fquestions%2Ftagged%2Fgoogle-analytics&utmac=UA-5620270-1&utmcc=__utma%3D140029553.1672509655.1273785261.1282328140.1282335818.167%3B%2B__utmz%3D140029553.1282158995.159.95.utmcsr%3Dgoogle%7Cutmccn%3D(organic)%7Cutmcmd%3Dorganic%7Cutmctr%3Dforce%2520download%2520image%2520in%2520php%2520stackoverflow%3B&gaq=1 

당신은 모든 페이지의 하단에이 스크립트를 설치 한 경우는, 때마다 누군가가 스크립트를 포함하는 페이지를로드, ga.js를 다운로드 (캐싱 될 가능성이 높음), 이전 쿠키 (utm 접두어가 붙은 쿠키)를 읽고 업데이트 된 정보를 Google 서버에 보내십시오 (_utm.gif 요청).

사이트의 시간 계산은 매우 단편입니다. 그것은 귀하의 브라우징을 기반으로 페이지의 시간을 추론합니다.

따라서 index.html을 12:00:00에로드하고 Google 서버에 _utm.gif 히트를 보낸 다음 12:01:30에 about.html을로드하면 사용자가 index.html에 1:30을 보냈습니다. 즉, 세션의 마지막 페이지 뷰는 대부분의 세션에서 페이지에 두 번째로 0이 표시됩니다.

+0

감사합니다. 유익했습니다. 시간 추론에 대한 한 가지 질문은 about.html 대신 Google Analytics가없는 다른 사이트로 이동하면 어떨까요? –

+0

Google Analytics Evangelist Avinash Kaushik의이 블로그 게시물은 다음과 같습니다. http://www.kaushik.net/avinash/2008/01/standard-metrics-revisited-time-on-page-and-time-on-site .html (짧은 답변은 사이트에서 마지막으로 방문한 페이지가 0으로 계산된다는 것입니다.) – Yahel

+3

Google은 또한 매우 유용한이 추적 코드 개요 문서를 제공합니다. https://developers.google.com/analytics/resources/ concepts/gaConceptsTrackingOverview –

관련 문제