5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Rails / Google Analytics が動きを止めた & なぜかURLが正常に取得できない

Posted at

ブログを更新しました。元の記事はコチラ


突如 Google Analytics の解析が取れなくなって悩んだ…。
Gitの履歴を見て、変更前に直しても復旧せず。Analyticsのコードを見直しました。

  
RailsのTurbolinksを使っていて、いつも Turbolinks Compatibility にお世話になっています。

今までは普通に解析できてたし、GA Debugでもビーコンが送信されてるのが確認できているので、何が原因か分からないんですが、気になった点はユニバーサル アナリティクス。
  
ユニバーサル アナリティクスが発表されてから久しいですが、まだ対応してませんでした。
それが原因なのか分かりませんが、いい機会なのでコードを見直すことに。
  
  
こんな感じで解析が取れるようになりました。

layouts/application.html.erb


<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-000000-00', 'YOUR-SITE.com.');
  ga('send', 'pageview');

</script>

これは、analyticsの管理画面の Track info から出てくる普通のコードです。
UA-000000-00YOUR-SITE.com は適宜置き換えてください。
どこでもいいでしょうが、取りあえずbodyを閉じる直前に置きました。
  

assets/javascripts/analytics.js.coffee


$(document).on 'page:change', ->
  # Need to specify the URL
  url = location.href.split('#')[0]

  # Tracking

  if window._gaq != undefined
    _gaq.push(['_trackPageview', url])

  else if window.pageTracker != undefined
    pageTracker._trackPageview(url)

ここでURLをオプションで指定しないと、全部同じURLとして取得された。
_gaq.push と _trackPageview に url を渡しています。

今の所、これでうまくいっています。

###参考

http://blog.james-lafa.fr/rails-4-google-analytics-with-turbolinks/
http://stackoverflow.com/questions/18632644/google-analytics-with-rails-4
https://developers.google.com/analytics/devguides/collection/analyticsjs/pages

http://workabroad.jp/posts/2096

5
5
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
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?