RN Firebase

Analytics

우리 서비스를 이용하는 사람들이 어느 영상을 더 선호하고 어떤 루트를 통해 영상에 접근하며 어떤 기종이 더 많은지 등 여러가지 로그를 받아서 분석 데이터로 활용할 수 있었으면 좋겠다고 생각했다.
다만, 그 로그들을 일일이 DB에 저장시키는건 우리 RDS 성능상으로 부담이 될 것 같고 비효율적인것 같아 Google Analytics를 활용하고자 했다.

모바일 로그를 저장하여 시각화해주는 서비스들이 AWS analysis, MS App center 등 여러개가 있는데, GA를 선택한 이유는

  1. 무료
  2. 무료
  3. 무료
  4. 매우 간단한 적용
  5. 콘솔이 매우 편리하게 되어있다

는 점이었다.

기본적으로 cocoapod, gradle을 통해 firebase sdk만 달아놓으면 스크린 이벤트, 활성 사용자 수, 기기타입 등 아주 기본적인 트래킹이 가능하다.
(다만, 내가 원하는 이벤트를 추적하는 코드를 작성하지 않으면 이벤트들이 네이밍 되어있지 않아 크게 무의미하다)

때문에, 2주전쯤에 sdk만 달아놓고 시간이 좀 남으면 세부적인 계획을 짜봐야겠다라고 생각했다가 오늘 드디어 서비스 코드에서 적용시키는 시도를 했다.

우리(결국 나)가 가장 궁금한건 어떤 루트를 통해 학습영상에 접근하느냐이다. 학습영상에 접근하는 루트가 총 5개로 많은 편인데, 어떤 경로로 자주 들어 가느냐에 따라 우리의 학습법을 잘 이해하는지, 실제 고객인지, 그냥 잠깐 왔다가는 유저인지 구분할 수 있을 것이라고 판단했기 때문이다.

또,우리 유료 서비스를 광고할 수 있는 최적의 장소를 찾을 수 있고 Funnels라는 경로 추적 이벤트를 통해 웹 GA와 연동해서 유료 서비스 전환율까지 측정할 수 있을 것 같다.

분석 전문가가 아닌지라 지금 당장은 어떤 시나리오를 만들어야 수익에 도움이 되는 데이터를 뽑을 수 있을 진 모르겠지만, 데이터를 쌓아놓는것은 이후 사업 방향성과 개선점에 분명히 도움이 될것이다.

Crashlytics

Firebase 콘솔에 가보면 무료 계정(Spark)도 여러가지 서비스를 사용할 수 있다.
이전까진 뭔가 많다고 생각만하고 넘어 갔었는데, GA 정보를 찾아보다 우연치 않게 구글 I/O 세션영상을 보고 당장 우리 앱에 필요한 도구를 찾았다.

스크린샷

이 영상은 Firebase 앱 성능 향상 및 안정화 도구들을 소개해주며 마지막엔 이 도구들과 앱의 여정을 같이 떠나자고 한다ㅋㅋ

영상을 보니 무덤까지 같이 가고 싶은 욕망이 커져서 소개한 기능중 한가지를 빠르게 적용하였다.

바로 Crashlytics라는 도구인데, 이 도구를 사용해야하는 이유로

  • 한번이라도 앱이 깨지게 되면 사용자 이탈율이 급증한다.
  • 프로덕션 레벨에서 버그에 의해 앱이 깨지게 되면 로깅이 힘들어 원인파악에 애를 먹는다.
  • 유저 환경까지 분석하여 애러 타겟팅이 가능하다

라고 소개한다.

이전까지 서버든 클라이언트든 구현에만 급급했고, 로깅의 중요성에 대해 들어본적, 느껴본적이 없어서 로깅을 할 생각이 전혀 없었었다.
때문에 우리 앱은 프로덕션되어 유저환경에서 앱이 깨지게되면 대처할 수 있는 방안이 여태까지 없었고, 최근에 안드로이드에서 비정상 오류와 함께 이탈율이 늘어 필요성을 느꼈었다.

스크린샷 2019-03-29 오전 3.30.29.png

어널리틱스와 동일하게 라이브러리만 달아놓으면 기본적인 로깅이 가능하며, 애러를 감지하면 곧바로

스크린샷 2019-03-29 오전 3.35.41.png

심각한 문제가 생겼다고 무서운 알람까지 보내준다.

오늘은 여기까지 테스트를 해봤는데 이후에 몇몇 에러들을 잡으면 알람 slack 연동 방법과 Testing Lab을 따로 블로깅해야겠다.