본문 바로가기

DataAnalytics

지저분한 URI를 깔끔하게 필터링하기 (고급필터 사용)

안녕하세요 포드입니다.

오늘도 Google Analytics로 고통을 받고 계신 분들을 위해서 간단하게 개인 삽질내용을 기록합니다. 
검색으로 필요하신 분들께 걸려서 삽질의 시간을 줄이는데 쓰였으면 좋겠습니다. 


사이트가 처음부터 GA를 고려해서 만들지 않았다면? 

고통이 시작됩니다. 일단은 사이트의 주소가 엉망으로 나오기 때문에 제대로 추적이 불가능합니다. 

예를 들어서 사이트의 URL/URI가 (http://www.mysite.com/shopping?qsrc=35&o=0&x=ref&stf=CA:LO&q=lava+lamp ) 대충 이런 형태로 나오기 시작하면 저 수많은 파라미터를 일일이 추적해서 봐야하는데...검색을 하거나 그룹핑을 해서 볼 수도 있겠지만 상당한 노가다가 필요합니다. 실제로 T store의 경우도 모바일웹의 URI가 저런식으로 잡히는 바람에 GA로 유의미한 추정에 상당한 노가다가 필요했습니다. 


예: T store Webtoon의 주소 URI 

/mobilepoc/webtoon/webtoonDetail.omp?prodId=H007053853&menuId=DP26006&

amp;strPrePageNm=0c03042U&strDisplayOrder=1&strPid=H007053853


예: T store의 앱/게임 상품 매핑 URI

/mobilepoc/url/urlMapping.omp?param=0000688085 

상황이 이렇다 보니 해당 URI를 GA에서 보기 쉽게 만들어서 사용할 수 있도록 필터를 걸어보기로 했습니다. 


필요한 정보를 정의하기

우선 필요한 정보를 정의해야 합니다. 
저 같은 경우는 상품번호(ProdId)와 해당 상품의 카테고리(폴더) 정보를 선택했고, 이를 추출해서 쓰기로 했습니다. 

GA Admin > View > filter > Advanced 필터 선택

다음으로는 GA Admin 의 View 설정에서 Filters 를 선택해서 설정을 합니다.
참고로 필터는 한번 설정하면 이후 데이터에 프로세싱에 영향을 미치기 때문에 반드시 TestView를 따로 만들어서 사용하시기를 권장 드립니다. 




고급 필터 선택 및 정규식 적용



다음으로는 정규식을 활용해서 추출되는 사이트 URI 에서 사전에 정의한 "카테고리"와 "상품번호"를 추출합니다. 

추출하는 공식은 아래와 같습니다. 


1) 카테고리 추출하기 

  • 정규식: (mobilepoc\/[^\/]*)
  • 링크: http://rubular.com/r/zA3XRI65bM 
  • 해석: mobilepoc/ 와 일치하고 / 로 끝나는 부분을 추출하라
2) 상품번호 추출하기
  • 정규식: (param=[^&]*)|(prodId=[^&]*)
  • 링크: http://rubular.com/r/5ohKn3P1Pw 
  • 해석: param= 또는 prodId= 로 시작해서 & 로 끝나는 부분을 추출하라




이렇게 만들어진 정규식을 활용해서 아래와 같이 필터를 설정합니다.



간단하게 해석하면...

URI에서 카테고리를 추출해서 $A1을 만들고, 상품번호를 추출해서 $B1 을 만들어서 "사용자 정의 항목"에 $A1/$B1 형태로 출력하라.. 입니다. 
즉, 아래와 같이 간략하게 바꿔서 Audience > Custom > User Defined 에서 내용을 확인할 수 있습니다. 


Before 

/mobilepoc/webtoon/webtoonDetail.omp?prodId=H007053853&menuId=DP26006&

amp;strPrePageNm=0c03042U&strDisplayOrder=1&strPid=H007053853


/mobilepoc/url/urlMapping.omp?param=0000688085 


After 

/mobilepoc/webtoon/prodId=H007053853


/mobilepoc/url/param=0000688085 



적용 결과

적용 결과는 성공 입니다. 
다만, 암만봐도 'param=' 이나  'prodId=' 를 빼고 더욱 간결하게 만드는 것이 필요할 것 같네요...

그것은 2차로 올리도록 하겠습니다. 

 


참고로 저렇게 정리한 데이터를 content source  나 URI에 덮어쓰기 해버리면...GA View 전반적으로 영향을 줄 수도 있습니다. 

예를 들어 Drill down 같은 것을 할 수 있긴 합니다만... 이 경우 원천 데이터가 날아가버린다는 문제가 있음으로 가급적이면 TestView에서 작업하시고.. User Define 등 별도의 항목에서만 작업을 해주시기 바랍니다.