GAのイベントを環境ごとにフィルタリングする
概要
新しくサーバ側からGAイベントを送るように仕込んでみたけど、ステージング環境でも何故か計測されるぞ?!というプチトラブルに遭いました。
今まで言われるがまま仕込んでたせいで自分で全然理解してないままだったので、事の顛末を備忘として残します。
GAのイベントを仕込むには
この辺をどうぞ developers.google.com kyanite.hatenablog.com
何が起こったか
ステージングではイベントを計測されない設定のはずなのに、されてるぞ?!
実装者(私)は概要にある通り、今まで理解してGAを設定していたわけではないので、
そもそも「ステージングでは計測されない」という前提も知らず…。
計測された = 自分の実装があってると思っていたのですが、計測されるということ自体が誤りでした。
また、チームの中にはここについて正確に知る人がおらず…。
「計測されないはずだけど、なんでされてるんだろう????」という状態に陥りました。
イベントをフィルタリングするための設定
GAのイベントのフィルタリングにはビューの設定のうち フィルタ
が使われます。
support.google.com
誤解① ウェブサイトのURL
実はビューの設定の ウェブサイトのURL
という項目があります。
今回はステージングと本番のURLが違い、 ウェブサイトのURL
には本番のURLが設定してありました。
これにより、ステージングは計測されないと思い込んでいる状況にありました。
ここの設定、以下のリンクを参照すると単純にリンク先のドメインとして利用できるってだけなのですかね…?
www.oro.com
一応、公式も貼っておきます(ちょっと曖昧な表現に感じ、私はピンときませんでしたが…)
support.google.com
誤解② リモートワーク
すでに運用しているイベントだったので、社内からのアクセスが計測されない設定になっている状態のビューでした。
が…。
コロナウィルスの影響を受けて、各自宅からステージング環境にアクセスしていたため、
全て除外されているIP以外からのアクセスとなり「ステージングでもなぜか計測される」と誤解してしまいました。
VPNを用意しているものの回線が太くなく、必要がないときにはVPNを切断して開発していました。
そのため、普段利用していないVPNの存在を忘れてアワアワしてしまいました。
誤解③ サーバ側からの送信
今回新たにつけたイベント発行処理はサーバ側からの送信でした。
(詳しいことはこちらを参照ください : php側でGAイベントを送る - 唐揚げ食べたい )
勘の良い方はもうおわかりかと思いますが、このサーバのGIPについてもフィルタの除外設定に入れる必要があったのです。
幸い(?)弊社のステージング環境は1台のEC2しかなくGIPも持ってたので、除外設定を入れて事なきを得ました。
以上です。今後は何事も理解して使うようにしていきたいです。