Google Analytics с несколькими средами

11

Мы планируем использовать Google Analytics в нашей организации, и я отвечаю за ее настройку. Мне было интересно, как бороться с несколькими средами. Мы, конечно же, не хотим собирать данные во время разработки и контроля качества (или, возможно, собирать данные в другую учетную запись аналитики), но мы хотим, чтобы сайт перешел в производство (очевидно).

  • Как вы работаете с несколькими средами и Google Analytics?
  • Вы настраиваете несколько аккаунтов для Google Analytics и используете один из них в зависимости от среды?

Мы используем ASP.NET 2.0, если это имеет значение.

марко-fiset
источник

Ответы:

7

Самый простой ответ - да, настройте несколько учетных записей для каждой среды. Затем замените идентификатор профиля (текст, который выглядит как «UA-XXXXX-X», как показано здесь ) на правильный идентификатор из требуемой среды.

Поскольку вы используете ASP.NET, вы можете сохранить идентификатор профиля в файле web.config. Это приведет к необходимости встраивания кода .NET в JavaScript (что может или не может быть хорошо). Вы также можете настроить производственную конфигурацию как единственную конфигурацию для вывода кода отслеживания, но это приведет к выпуску кода, который не был протестирован.

В зависимости от того, как вы размещаете свой сайт (dev.domain.tld, test.domain.tld, www.domain.tld), вы можете использовать один профиль, а затем фильтровать результаты по поддомену / папке / url. У Google есть довольно хорошая статья о различных сценариях отслеживания .

Fammy
источник
2
Несколько учетных записей в каждой среде, безусловно, путь сюда
Уайет Барнетт
7

Другим вариантом могут быть профили Google Analytics . Используйте одну и ту же учетную запись во всех средах, но добавьте фильтр имени хоста в каждый профиль, чтобы включить трафик только из соответствующей среды.

Например, если у вас есть внутренняя среда QA qa.example.com, создайте профиль «QA» в Google Analytics с настраиваемым фильтром, который будет включать только совпадения имен хостов ^qa\.example\.com$. В вашем «Производственном» профиле сделайте обратное и исключите трафик из внутренних имен хостов.

Мэтью
источник
Это довольно легко сделать, это мощная и менее переменная для настройки внутри файла конфигурации.
1

Вот что я наконец-то сделал (мне не понравилась идея встраивания кода .Net в javascript):

  • Я настроил два аккаунта Google Analytics, один для разработки / тестирования и один для производства
  • Создайте страницу, которая возвращает идентификатор учетной записи Google Analytics (из web.config) в качестве основного текста.
  • На $ (document) .ready сделайте ajax-вызов на страницу
  • По завершении Ajax вызовите скрипт Google Analytics с ответом (который содержит идентификатор аккаунта).

Поэтому в зависимости от среды, в которой я развертываюсь, я использую любую версию файла web.config, содержащего правильный идентификатор учетной записи.

Это немного сложнее, но не требует создания javascript из .NET, и это было очень просто с jQuery.

Вот окончательный код:

var setupGoogleAnalytics = function (clientNumber) {
    var gaq = gaq || [];
    gaq.push(['_setAccount', clientNumber]);
    gaq.push(['_setDomainName', 'none']);
    gaq.push(['_trackPageview']);

    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);
}

$(document).ready(function(){
    $.ajax({
        url: "GetGAClientNumber.aspx",
        success: function(data) {
            setupGoogleAnalytics(data);
        }
    });
});

И это работает отлично!

марко-fiset
источник
6
Кажется расточительным делать запрос AJAX на каждую загрузку страницы, просто чтобы получить номер счета.
Боб Бэнкс
1
Нет ничего плохого во внедрении <%= ASP %>тега в Javascript - просто поместите минимум в JS и любые другие запросы / логику в другом месте.
Саймон Ист
0

Можете ли вы убедиться, что во время разработки и контроля качества доступ к сайту осуществляется только из машин в сети вашей компании?

Если да, вы можете просто использовать ту же аналитическую учетную запись, которая будет использоваться для производства, и отфильтровать весь трафик из вашей организации .

Цитата из ссылки:

Если вы хотите исключить внутренний трафик из ваших отчетов, вы можете отфильтровать определенный IP-адрес или диапазон IP-адресов. Вы также можете использовать куки для фильтрации посещений от конкретных пользователей. Мы объясним, как ниже.

Кристиан Шпехт
источник
Хотя это определенно работает, когда вы хотите протестировать реализацию событий и других данных, отслеживаемых в режиме реального времени; из-за этого все очень сложно обойтись без изолированного профиля, просмотра или использования под ним.