こんにちは。
寒い日が続きますね。

今日はモバイル分析ツール「Countly」を紹介します。

Countlyとは?
ここ2,3年、ゲームの分野ではスマートフォンで動作するアプリが普及する中、これまでのブラウザ上で動作するゲームと違って、サーバから得られるデータだけでは、ユーザの行動が把握・分析しにくくなってきました。最近は「グロースハック」なる言葉が言われるようになってきて、ユーザの行動データを細かく分析して、得られた知見を素早くシステムの改良に反映していくことがとても重要視されてきています。
そういったなか、スマートフォンアプリの中にSDKを組み込むことで、詳細なユーザの行動履歴を専用のサーバに送信して、データを可視化して閲覧できるようにするサービスが次々とリリースされるようになりました。

今回ご紹介する「Countly」もそうしたサービスの一つです。

countly_logo_color


「Countly」が類似サービスと、大きく違う点は、SaaS形態の有償サービスに加え、サーバ側アプリケーション、クライアントSDKがそれぞれオープンソースとして提供されていることです。(ライセンスがサーバとクライアントSDKで異なるため、実際のサービスで採用する場合は、事前にそれぞれのライセンス内容に留意して使ってください。)

こうしたサービスのクライアントSDKというのは、バイナリ形式で提供されることが一般的です。バイナリで提供されるとSDK内部の動作がわからないため、開発者としては、アプリ本体への影響が予測できないのが悩みの種でした。特にiOSの場合、クライアントSDK内部の実装内容によってはアプリの審査にも影響を与えかねません。ですので、クライアントSDKのソースコードが公開されていると、通信のタイミングなど、技術的に注意すべき点が明確になるので、とても安心できるというのは大きなメリットです。

Countlyを提供しているCountly社のWebサイトによると、このオープンソース版は「Community Edition」という名称で提供されており、有償版と比較すると、一部機能に制限があります

Community版で出来ること
ダッシュボード機能

countly_dashboard
登録したアプリ毎に、収集したデータのサマリーを一画面で概観することが出来ます。


ユニークユーザ数
 countly_uu
いわゆるDAU(Daily Active User)です。表示範囲を変更することで、表示期間の粒度も自動的に変更されます。たとえば表示範囲を1日(24時間)にすると、HAU(Hourly Active User)、1時間毎のユニークユーザ数が表示されます。

カスタムイベント
 countly_custom_event
 アプリ固有のイベントを記録できます。その際に、ユーザの属性などを付加して送信することが出来るので、属性別の絞り込み表示が出来ます。


その他の項目

上で紹介した項目の他に、
  • OSの種類・バージョン
  • アプリのバージョン
  • 端末の解像度
  •  ユーザの国・地域
  • 端末の機種
  • 通信キャリア
などが閲覧できます。

システム要件
Countlyのサーバは、下記の環境下で動作します。
  • node.js
  • mongoDB
  • imageMagick
システム構成
 
Countlyは、
  • 各種モバイル端末向けSDK
  • APIサーバー
  • フロントサーバー
で構成されています。これらの関連を図にすると、下のようになります。

スライド1
次回は、サーバプログラムのインストールについて説明します。