개요
Event tracking 은 ga.js 코드 에서 작동하는 method 로써 사용자와 웹사이트의 엘리먼트 사이의 상호작용을 기록할 수 있게 해준다.
추적하고 싶은 엘리먼트 UI 코드에 method call 을 붙여넣으면 사용이 가능하다.
이렇게 추적한 event 들은 google analytics report 에서 볼 수 있고 이런 event 들은 페이지 뷰 수에 영향을 미치지 않는다.
Event tracking 은 보통 flash contents, AJAX page element, page gadget 등에 쓰인다.
또한 굉장히 flexible 하게 디자인 되었기 때문에 user-triggered event 뿐만 아니라 훨씬 더 다양하게 쓸 수 있다.
Setting up Event tracking
Event tracking 은 다음 단계를 통해 이루어진다.
1. 웹사이트에 site tacking 이 셋팅되어 있어야 한다.
2. 추적하고자 하는 엘리먼트에서 _trackEvent() 메쏘드를 불러온다.
specification of the _trackEvent()
Parameters of Event tracking
웹사이트에서 아기 첫 생일에 관련된 비디오 클립을 재생한다고 하자.
그러면 html 소스에는 위와 같이 이벤트 트래킹 코드를 넣을 수 있다.
앞서 web tracking 에서 설명한 것과 같이 _gaq object 의 push 메쏘드를 사용한다.그리고 첫번째 파라미터인 '_trackEvent' 는 커맨드 종류를 나타내는 것이기 때문에 두번째 'Videos' 라는 파라미터가 사실은 '_trackEvent' 의 첫번째 파라미터인 category 가 된다.나머지 play 는 action 을, 'Baby\'s First Birthday' 는 label 을 나타낸다.
Category
추적하고자 하는 object 들의 그룹 이름으로 _trackEvent 의 첫 파라미터.여러번 사용되는 UI element 들을 공통적으로 묶어줄 수 있는 이름으로 정하는 것이 좋다.비디오 클립에 관한 이벤트라면 비디오를 재생할 수도 있고 일시 정지 할수도 있고 여러 동작들을 할 수 있다.이런 것들을 포괄적으로 담을 수 있는 카테고리 이름은 video 가 적당하다.
이렇게 코드를 만들면 google analytics 보고서에서는 이벤트 카테고리 Videos 라는 이름 하나로 나머지 이벤트들이 모이게 된다.그리고 Videos 를 클릭하면 하위 이벤트들이 펼쳐지게 되기 때문에 카테고리를 잘 정해주면 좀 더 편하게 이벤트들을 볼 수 있다.
Action
웹사이트의 object 와 상호작용하는 타입을 정의하는 이름.쉽게 말해서 실제로 일어나는 작용의 이름을 정해주는 것이 좋다. 클릭을 했는데 비디오 재생이라면 'play' 팝업 창을 띄우는 거라면 'popup' 등등..두가지 주의할 점은 앞 정했던 category 의 범주 안에 알맞는 것이어야 하고, 유니크한 동작이어야 한다는 것이다.(e.g. Video 카테고리에서 'riding' 을 하면 어색하다.)
naming 에 대한 더 자세한 가이드라인은 google analytics 문서를 참고하도록 한다.
Label
event data 에 대한 좀 더 상세한 치수나 설명.레이블 파라미터에는 action 에 대한 부가 정보를 써주는 것이 좋다.download 카테고리에 PDF 파일에 대한 액션이었다면 url 정보를 남겨주는 것도 좋은 예이고video 클립의 재생이라면 title 정보를 남겨주는 것도 좋다.(단, description 레벨이 되지 않도록 하자)
Value
value : event data 에 대한 integer.value 는 스트링보다는 숫자로 된 값들을 넘겨 주는 것을 권장한다.다른 정보들은 카테고리, 액션, 레이블을 통해 스트링 형태로 잘 알려졌고 value 에서는 그것들에 대한 실제적인 값들을 넘겨 주는 것이 좋다.
위 코드는 영화 사람과 함께 사라지다에 대한 다운로드 횟수를 value 값으로 넘겨준 예.참고 문서