제목
GA 사용자와 페이지뷰_추가 문의
작성자
쥬르댕
작성일
2022-03-10 17:53
조회
954
답변완료
안녕하세요! 강사님! 

며칠 전에 문의 했던 내용에서 추가적으로 질문 드리려고 합니다! 이번에도 도움을 주시면 정말 감사하겠습니다 ㅠ

말씀하신 해결책으로 개발사와 소통을 했는데요!  개발사에서 해결 방안을 2가지로 제시 하였는데요. 아래와 같습니다. 

1) Client ID
강사님께서 말씀해 주신 Client Id 적용인 경우 개발사에서 사용하는 API 에서는 적용이 불가능한 상태라고 합니다.
Client Id로 적용을 하려면 구글 애널리틱스쪽에 앱을 등록하고 API_KEY 를 받아서 사용해야 할 듯 하다고 하는데요.
개발사에서는 이 방법을 처음 작업하는 것 같은데 ,  API_KEY 는 어떻게 받는 것인지 개발 난이도가 높은 것인지도 궁금합니다. 

<서비스 개발 방식: 참고> 지난 번보다 개발 방식을 좀 더 상세하게 설명해 봅니다.
웹 콘텐츠를 크로미움으로 불러 오는데 그걸 컨트롤 하는 게 CefSharp이라는 방식을 쓰고 있다고 합니다.
이런 걸 네이티브 방식이라고 하는데(웹이 아닌) 저 네이티브 방식에서 GA를 쓰는 방법이 여러 가지가 있고 
해당 서비스에 적용한 GA api에서는 클라이언트 id 를 사용하는 방법이 따로 없다고 하네요.
그래서 클라이언트id를 쓰려면 GA 를 쓰는 방식 자체를 바꿔야 하는 거고, 그게 아까 말한 Api key를 발급 받아서 프로그램에 심어야 한다고 개발사에서 이야기 주셨습니다.

 2) SessionId
개발사에서 SessionId도 제안을 주셨는데요. (사용 가능하다면 SessionId의 갱신시점만 추가하면 된다고 합니다.)
하지만 세션 기준으로 사용자 집계를 한다면 정확하지 않은 사용자 수로 집계될 것 같아 2번 방법은 데이터 보기에 적절하지 않을 것 같은데요.
위에 두 가지 방법 외에 다른 방법이 있는지도 궁금합니다.

답변 주시면 정말 도움이 될 것 같습니다! 감사합니다!
전체 3

  • 2022-03-11 13:39

    안녕하세요! 강사님! 답변 확인하였습니다! 어려운 질문에 늦은 시간까지 답변 달아주셔서 너무 감사합니다 ㅠㅠ 일단 보내주신 내용을 정리해서 개발사와 이야기해 보도록 하겠습니다~! 정말 감사합니다~~~!


  • 2022-03-10 22:27

    안녕하세요, 쥬르댕님!

    먼저, 답변을 드리기 전에...! 관련 내용을 정리해 주시더라도 사실상 제가 파악할 수 있는 내용에는 한계가 있기 때문에, 이 정확하지 않은 상황에서 답변을 드리는 게 많이 조심스럽습니다.
    쥬르댕님께 도움이 되었으면 해서 제 생각을 공유드리고 있지만, 말씀드린 것처럼 정확하지 않을 수 있으니 제 의견은 참고만 하시는 것을 추천드려요:)

    아무래도 개발사가 GA를 전문적으로 다루는 업체가 아니다 보니, 어쩔 수 없이 언급된 키워드에 대한 이해도가 많이 다른 상황으로 판단됩니다.

    먼저, clientId는 API_KEY를 받아서 GA API를 통해 사용하는 게 아닙니다. 개발 용어를 살짝 섞어서 설명드리자면, 클라이언트에서 사용자를 구분하기 위한 용도로 임의의 식별 값을 생성하고, 이 식별 값이 앱 종료, 재실행 후에도 계속 유지될 수 있도록 앱 저장소에 저장합니다. 데이터 전송 시 이 값을 파라미터에 포함하여 GA가 사용자를 식별할 수 있게 하는 것입니다. clientId에 대한 개념은 아래 링크의 글을 확인해보세요.
    - https://dachata.com/universial-analytics/post/tagging-userid-for-cross-device/

    개발사가 언급한 GA API(?)에 제약사항이 많은 상황이면, 최초에 답변 드렸던 것처럼 Measurement Protocol을 활용하는 방식을 추천드립니다. 해당 프로토콜을 활용하면 웹, 모바일 앱이 아닌 일반적이지 않은 환경에서도 GA에 데이터를 전송할 수 있습니다. 🙂
    - https://dachata.com/question/?uid=153&mod=document&pageid=1

    Measurement Protocol은 GA가 정해놓은 규약(아래 링크 참고)에 맞춰 HTTP Request을 하시면 됩니다. 다만, 앞서 말씀드린대로 클라이언트에서 생성하고 저장해놓은 임의의 식별 값인 clientId를 파라미터에 포함시켜야 합니다. 덧붙여서 설명드리자면 쥬르댕님이 기존에 알고 계시는 간단한 GA 설치 방법들도 결국엔 Measurement Protocol을 활용하는 것입니다. 이걸 직접 구현하고 안하고의 차이라고 이해하시면 됩니다. 현재, 문의주신 상황은 특수하기 때문에 구현하는 것을 추천드립니다 🙂
    - 참고자료1(개념) : https://www.optimizesmart.com/understanding-universal-analytics-measurement-protocol/
    - 참고자료2(공식 가이드) : https://developers.google.com/analytics/devguides/collection/protocol/v1

    세션 아이디는 말씀하신 대로 세션마다 달라지는 값이므로 사용자 식별 값으로는 부적절하기 때문에 추천하지 않습니다.

    제가 판단했을 때는 clientId가 무엇인지? 이 식별자가 왜 앱의 저장소에 저장되어 유지되어야 하는지?에 대한 이해를 개발사가 할 수 있어야지만 제대로 작업이 진행될 수 있을 것 같습니다:) 이 작업들은 GA에 대한 이해를 바탕으로 진행되어야 하기 때문에, 가능하시다면 정확한 작업을 위해 GA 구축 대행 업체에 의뢰해 보시는 것을 추천드립니다.


    • 2022-03-11 12:59

      추가적으로, 만약 개발사에서 말한 API가 GA4의 Measurement Protocol을 사용하는 것을 의미한다면 이때는 API Key가 필요합니다.
      (위에서 설명 드린 UA 버전은 API Key가 필요 없습니다.)

      GA4의 API Key는 GA4 설정 화면에서 [데이터 스트림]을 클릭하고,
      스트림 화면에서 기존에 생성해놓은 스트림을 선택,
      화면 하단의 [측정 프로토콜 API 비밀번호]을 클릭하여 생성하실 수 있습니다 🙂