Разделение Google Analytics для разных сред

0

Как и в большинстве веб-приложений, у меня есть 3 разных среды - Dev, QA и Production.

У меня есть 3 идентификатора профиля Google Analytics.

Я хотел бы понять, насколько эффективнейший способ использования приложения в том, в какой среде он находится, и использование соответствующего идентификатора без необходимости обновлять "UA-XXXXX-X" во время каждой акции.

Каждая среда имеет свой собственный поддомен, например:

Производство: www.MyWebsite.com QA: www.qa.MyWebsite.com Dev: www.dev.MyWebsite.com

Я думал использовать jQuery для захвата имени хоста и использовать соответствующий идентификатор. Мое приложение создано с использованием HTML5, jQuery и CSS.

Например:

var hostname = window.location.hostname;
var profileId;

If hostname=qa.MyWebsite.com
{
    profileId = ‘123qaId
}
Elseif hostname=dev.MyWebsite.com
{
    profileId = ‘123devId
}

Мысли?

Теги:
google-analytics
analytics

2 ответа

1
var envKey = {
    'dev.mydomain.com': 'XX-XXXXXXXX-X',
    'qa.mydomain.com': 'YY-YYYYYYYY-Y',
    'mydomain.com': 'ZZ-ZZZZZZZZ-Z'
};
var hostname = window.location.hostname;

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', envKey[hostname]]);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
  • 0
    Можете ли вы объяснить, что делает вышеперечисленное?
  • 1
    у вас есть разные ключи для разных доменов среды (envKey). Вы получаете текущее имя хоста и при инициализации Google Analytics используете соответствующий ключ. Вы должны использовать свои ключи и домены вместо фиктивных ключей и доменов
Показать ещё 2 комментария
0
    var envKey = {
    'mydomain.com/product1': 'XX-XXXXXXXX-X',
    'mydomain.com/product2': 'YY-YYYYYYYY-Y',
    'mydomain.com/product2': 'ZZ-ZZZZZZZZ-Z'
};
var hostname = window.location.hostname + window.location.pathname.replace(/(\/[^\/]+)\/.*/, "$1");


var _gaq = _gaq || [];
_gaq.push(['_setAccount', envKey[hostname]]);
_gaq.push(['_trackPageview']);

(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();

Ещё вопросы

Сообщество Overcoder
Наверх
Меню