1
0

More than 3 years have passed since last update.

GoogleAnalytics - Re:dash 集計でさくっと数秒でハピタスのテスト時のメインのOSバージョン、ブラウザをだせるようにした【サンプルコードあり】

Last updated at Posted at 2020-08-30

こんにちはオズビジョンの卜部です。

Web サービスを運用されているのであれば、KPIなどで、各種指標を調べるために Google Analitycs を使っている企業は多いのではないでしょうか。

今回、ハピタスのヘルプで表示しているハピタスのテスト時のメインのOSバージョン、ブラウザの算出をできるかぎり簡単に出したいという(俺のw)要求があり、 Re:dash を使うことで満たせたので、紹介します。

算出をするためのサンプルコードも gist に用意したので、よければ加工するなりして、使ってみてください。

要求

  • 今まで以下のような手順で、PCのテストブラウザ, iOS, Android のテスト対象のOSを算出するのに、GA から CSV でダウンロードして、スプレッドシートで加工して、算出していた。この算出を Re:dash に算出させる。いつでも誰でも正しい情報が出せるようにする。

wiki にこんなことを書いている。(手作業めんどい)
スクリーンショット 2020-08-30 13.11.07.png

要件詳細

PC テスト環境

  1. PC 画面のアクセスに iOS, Andorid が混ざっているが除外する
  2. PC サポートブラウザで上位95% 以上となるブラウザをサポート対象とする
  3. 過去30日前から昨日分までの期間を対象に結果を出す

SP OS テスト環境

  1. iOS, Andorid はそれぞれ分ける (これら以外の OS のユーザ数は僅かであるため除外)
  2. バージョン表記は 10.0.0 (A.B.C) のようになっているが、 そのうち、 A. メジャーバージョン, B. マイナーバージョン で丸め込み集計する。 C. メンテナンスバージョン までは見ない
  3. 過去30日前から昨日分までの期間を対象に結果を出す

前提

  • Re:dash のバージョン 5 以上
    • データソースに Google Analytics, Python が選べるバージョンである
  • Python が軽くさわれる
  • 環境と権限
    • A
      • GCP のサービスアカウントを作成できる権限、Google Analitics API を有効にできる権限がある
      • Google Analytics で上記 GCPサービスアカウントをユーザとして追加できる権限がある
      • Re:dash の権限で データソースを作成でき、作成したサービスアカウントの json キーファイルを登録できること
    • B
      • 権限がなくても、上記設定が適用された環境がそろっていること
  1. Re:dash 上で Re:dash のドキュメントに沿って、Google Analitics のデータソースを追加していること
  2. Re:dash 上で Python データソースを有効にし、 re (正規表現モジュール) を少なくとも有効にしておくこと

スクリーンショット 2020-08-30 13.31.17.png

説明しないこと

  • Re:dash の環境の構築
  • Google Analytics の設定
  • データソースの Google Analitics、 Python の設定

作った

PC サポートブラウザ

https://gist.github.com/oz-urabe/e8e7abf5fdd748a8a2394ac6d17f503b
これを、Python のデータソースを選択し、クエリを作成します。

この内、先頭にある json 形式のクエリですが、 ids の ga:66453283 のまま記載すると動かないです。みなさんの GA の id を記載してください。

query = '''
{
    "ids": "ga:66453283",
    "start_date": "30daysAgo",
    "end_date": "yesterday",
    "metrics": "ga:users",
    "dimensions": "ga:operatingSystem,ga:browser",
    "sort": "-ga:users"
}
'''

また以下のように記載していますが、ハピタスではデータソース名を Google Analytics としているので、このように記載していますが、使われている Re:dash のデータソース名が人によっては GA だったりすると思うので、それに合わせてもらえればOKです。

data = execute_query('Google Analytics', query)

SP OS バージョンシェア

https://gist.github.com/oz-urabe/795ae3189c4115e14dad038cfa6e3b49
これを、Python のデータソースを選択し、クエリを作成します。

ids のところと、データソース名を環境に合わせて修正していただくのは同じです。
追加で "filters": "ga:OperatingSystem=~iOS" とありますが、これは OS 名での絞り込みです。 Android で集計する場合は "filters": "ga:OperatingSystem=~Android" とします。

query = '''
{
    "ids": "ga:201135853",
    "start_date": "30daysAgo",
    "end_date": "yesterday",
    "metrics": "ga:users",
    "dimensions": "ga:operatingSystemVersion",
    "sort": "-ga:users",
    "filters": "ga:OperatingSystem=~iOS"
}
'''

実行結果

これらのクエリを登録し、実行した結果は以下のようなイメージになります。(ダッシュボード化しました)

スクリーンショット 2020-08-30 13.59.06.png

協力者

@terra_yucco さんには GA 用のクエリ作成を手伝っていただきました。ありがとうございました!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0