"타 직군이 로그 설계를 해야한다면?"2편으로 돌아왔습니다.
오늘은 "해보자 로그 설계" 부터 시작합니다.
*1편은 여기에서 > https://brunch.co.kr/@hjkimn/13
*오늘 할 이야기
1) 로그, 그것이 무엇이냐?
2) 로그를 둘러싼 업무
3) 로그 설계를 위한 기본 지식
4) 해보자 로그 설계
5) 로그 설계를 할 때 고민되는 점
6) 그 외...
로그 설계 탬플릿이 사내에 존재하거나, 기존에 누군가 만들어 둔 내역이 있다면, 기존 조직의 탬플릿을 기반으로 로그 설계를 하면 되니, 행운입니다~!
기존 조직에 로그 설계 탬플릿이 없다면 각 회사에서 제공하고 있는 탬플릿 중 여러분에게 가장 적합하다고 생각되는 탬플릿을 선택하여 작성해볼 수도 있을 텐데요.
제가 1편에서 소개 드린 로그 설계서에 들어갈 주요항목은 요롷게 생겼습니다!
변형하여 여러분 조직만의 탬플릿을 만들어 사용하실 수 있겠죠~?
직접 만드시는 것 외에도, 각 조직에 맞게 Avo, Mixpanel,Amplitude 등에서 무료로 제공하고 있는 9개 탬플릿 링크를 함께 걸어두니, 여러분들 회사에 가장 잘 맞는 탬플릿은 무엇인지 찾아보시고, 활용해보세요.
*9가지 해외 이벤트 로그설계 탬플릿 소개 : https://www.avo.app/blog/9-free-tracking-plan-templates-from-mixpanel-amplitude-segment-and-more
자 그렇다면.. 대망의 로그 설계입니다!
(로그 설계 설명시에는 제가 샘플로 보여드린 탬플릿을 활용하여 설명하겠습니다.)
로그는 해당 피처의 배포시기에 맞추어 미리 설계하고 개발범위에 포함하여 나가는 것을 추천드린다고 1편에서 언급했습니다. 이유는 기능이 배포되었을 때 해당 기능을 잘 쓰고 있는지, 우리가 생각한 가설이 맞는 지 등을 해당 기능의 배포와 함께 추적하기 위함이죠. 여러가지 이슈들로, 해당 기능의 배포보다 추후에 나가도 되긴 하지만... 데이터를 보고 싶을 때 배포 때까지 꾹 참고 기다려야 하는.. 슬픔이 있으니, 잘 챙겨주세요~
클라이언트 로그 중 해당 로그 개발이 웹에서 이루어져야 하는지, 앱에서 이루어져야 하는지를 다룹니다.
해당 영역의 개발이 앱이라면, 앱에서 개발, 웹이라면 로그 역시 웹에서 개발해야겠죠.
이를 구분해서 기재해주세요.
로그 설계서를 매 기능 배포 때마다 별도 문서로 만든다면, 이 로그설계 내역들을 전부 취합하는 로그 사전 페이지가 있어야겠죠? 로그 설계서가 처음 만들어졌을 때는 로그 관리 페이지 내에 등록되기 전일 것입니다. 유관 담당자와 로그 설계 내역이 확정되고 나서, 사전문서에 취합을 했다면, 등록 여부에 체크해주세요.
취합여부를 관리하고, 검수시 참고하기 위함입니다.
서비스를 이루는 지면, 혹은 영역 별로 쉽게 구분할 수 있도록 화면 번호를 부여합니다.
자체적인 룰을 정의하고 그에 따라 화면 번호를 나누시면 됩니다.
예를 들어 이런식으로 룰을 정의해 볼 수 있습니다.
ex) 우리는 웹과 앱의 화면 번호를 구분하기 쉽게 알파벳으로 나누겠어.그리고, 지면의 번호는 넘버로 구분하고, 세부적인 로그 구분은 넘버의 넘버 (N-N)으로 구분해볼래.
앱) A로 묶는다.
서비스 홈 - A1
상품상세 페이지- A2
웹) B로 묶는다.
장바구니 페이지 - B1
주문내역 - B2
앱) A로 묶고, 각 화면명마다 로그 번호를 부여할래. 예를 들면 홈은 A1, 상품상세는 A2, 00지면은 A3..!
그리고 각 구분이 필요한 건 - 로 구분해서 표기하지 뭐.
{서비스 홈}
서비스 홈 뷰로그 A1
서비스 홈 상단배너 노출 로그 A1-2
서비스 홈 상단배너 클릭 로그 A1-3
서비스 홈 00 영역 상품 클릭 로그 A1-4
서비스 홈 00 영역 상품 장바구니 담기 로그 A1-5
{상품상세 페이지}
상품상세 페이지 뷰로그 A2
상품상세 페이지 구매하기 버튼 클릭로그 A2-1
상품상세 페이지 찜하기 버튼 클릭로그 A2-3
{새로운 앱 페이지}
00 뷰로그 A3...
웹)
{장바구니}
장바구니 페이지 뷰로그 B1
장바구니 페이지 상품 수량 조절 버튼 클릭로그 B1-1
장바구니 페이지 내 결제하기 버튼 클릭로그 B1-2
이렇게 정의된 화면번호는 주로 개발자 및 분석가, PM 그 외 모든 관련된 유관 담당자와 커뮤니케이션 할 때 사용합니다.
ex)
로그 개편시) A1-3, A1-4, A2-5로그에 모두 파라미터 00를 추가하려고 해요.
로그 검수시 )B1 에 00 값이 남지 않는 것 같아요.
로그 설계 문의시 ) 저희 고객센터 클릭 로그 남기고 있나요? 네~ 남기고 있는데, A1-N로그로 확인하실 수 있어요~
이미 3화면 번호에서 여러분들은 로그 이름을 확인했습니다~
"서비스 홈 상단 배너 클릭" 이라던지, "상품 상세 찜하기 버튼" 이라던지 누구나 봐도 직관적으로 이해할 수 있는 용어로 정리하는 것이 키포인트입니다!
서비스 지면 경로와 함께 기재해주시면 어느 로그를 의미하는지 더 명확해집니다.
ex)
A1-2의 로그명 : '서비스 홈 > 상단 배너 노출'
A1-3의 로그명 : '서비스 홈 > 상단 배너 클릭'
해당 화면 페이지의 이름을 뜻합니다.
예시)
서비스 홈 뷰로그 A1
서비스 홈 상단배너 노출 로그 A1-2
서비스 홈 상단배너 클릭 로그 A1-3
서비스 홈 00 영역 상품 클릭 로그 A1-4
서비스 홈 00 영역 상품 장바구니 담기 로그 A1-5
이 로그들이 발생하는 화면은 모두 서비스 홈이겠죠.
그럼 A1,A1-2,A1-3,A1-4,A1-5의 ScreenName은 모두 Home으로 묶어볼 수 있겠죠.
요롷게 정의된 스크린네임은 로그 테이블에서 데이터 추출시
"ScreenName이 Home인 친구를 찾아주세요!" 라는 조건을 걸 때에 활용되게 됩니다.
마찬가지로 장바구니에서 발생한 다음 로그들의 화면명은 Cart 로 정의해 볼 수 있습니다.
장바구니 페이지 뷰로그 B1
장바구니 페이지 상품 수량 조절 버튼 클릭로그 B1-1
장바구니 페이지 내 결제하기 버튼 클릭로그 B1-2
-> Screen Name : Cart
로그의 종류를 구분하는 것으로, 3개의 type으로 구분할 수 있습니다.
-View : 화면 로그
-Click : 클릭 로그
-Event : 단순 View, Click 로그를 제외한 그 외 로그들을 포괄.
스크롤을 내리는 액션로그, 영역 노출 로그, 팝업 노출 로그 등이 Event 로그에 포함 될 수 있습니다.
노출을 사용할 때, View로그와 Event 로그의 차이가 무엇인가요? 라고 질문할 수도 있겠습니다.
화면 자체의 진입을 사용할 때는 View, 화면 내 특정 영역 (상품, 배너, 팝업)이 노출이 되었는지 사용하실 때는 Event 라고 생각하시면 조금 더 편하실 거에요.
요롷게 예시를 들어볼 수 있습니다.
서비스 홈 뷰로그 A1 : View
서비스 홈 상단배너 노출 로그 A1-2 : Event
서비스 홈 상단배너 클릭 로그 A1-3 : Click
event 가 발생하는 영역을 정의합니다.
활용도는 다음으로 구분할 수 있습니다.
1. 동일 ScreenName 내에서 영역의 그룹핑을 목적으로 활용할 수 있습니다.
-홈 화면 내의 상단 배너 노출로그와 배너 클릭 로그는 모두 한 그룹으로 묶을 수 있습니다.
Group 명 : MainBnr
-홈 화면의 1줄 상품 클릭로그는 배너영역과 다르게 다른 그룹으로 묶을 수 있습니다.
Group 명 : SingleLineProduct
2. 동일 ScreenName 은 아니지만 화면과 상관없이 발생하는 공통의 속성을 묶어 하나의 로그로 정의해보고 싶을 때, 사용할 수 있습니다.
ex) 서비스 여러지면에서 푸터에 고객센터 버튼이 있습니다.
각 지면별로 고객센터 버튼을 별도의 로그 번호로 정의해볼 수 있지만, 하나의 로그로 정의하고, 파라미터를 통해서 어떤 지면인지 구분해보고 싶어요.
-> Group을 Footer, ScreenName은 Common(여러 지면에서 공통적으로 발생한다로 정의) 로 묶어볼 수 있습니다. 어떤 지면에서 발생했는지는 파라미터에서 확인하겠습니다. (파라미터 설명 맛보기)
->> 파라미터 정의시 ) "Screen": <String> 값 설계.
맛보기가 나왔다는 것은 또 다음시간으로 넘긴다는 것!
분량조절을 위해 다음 시간으로 돌아옵니다.
다음은 로그 설계의 꽃! Params 정의와 함께 Event 설계를 포함하여,
'해보자 로그 설계'를 마무리 지을 예정입니다.
미리보기
로그를 지칭하는 이름으로, screenName + type 과 결합하면 하나의 로그가 특정될 수 있어야 합니다.
선택적으로 추가 정보를 남길 수 있는 옵션입니다.
그럼... 여러분 모두 다음시간에... 3편으로 또 만나요~
To be continue....