Google Analytics з кількома середовищами


11

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

  • Як ви маєте справу з кількома середовищами та Google Analytics?
  • Чи налаштовуєте кілька облікових записів для Google Analytics і використовуєте будь-який із них, залежно від середовища?

Ми використовуємо ASP.NET 2.0, якщо це має значення.

Відповіді:


8

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

Наприклад, якщо у вас є внутрішнє середовище QA qa.example.com, створіть у програмі Google Analytics профіль "QA" зі спеціальним фільтром, щоб включати лише відповідні імена хостів ^qa\.example\.com$. У своєму профілі "Виробництво" зробіть навпаки та виключіть трафік із внутрішніх імен хостів.


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

7

Найпростіша відповідь - так, налаштуйте кілька облікових записів для кожного середовища. Потім замініть ідентифікатор профілю (текст, схожий на "UA-XXXXX-X", як показано тут ) правильним ідентифікатором з потрібного середовища.

Оскільки ви використовуєте ASP.NET, ви можете зберігати ідентифікатор профілю у web.config. Це призведе до необхідності вбудовувати .NET-код у JavaScript (що може бути, а може і не бути нормально). Ви також можете налаштувати конфігурацію виробництва як єдину конфігурацію для виводу коду відстеження, але це призведе до випуску коду, який не був протестований.

Залежно від способу розміщення вашого веб-сайту (dev.domain.tld, test.domain.tld, www.domain.tld), можливо, ви можете використовувати один профіль, а потім фільтрувати результати на основі піддомену / папки / URL-адреси. У Google є досить гарна стаття про різні сценарії відстеження .


2
кілька облікових записів на оточення - це безперечно шлях
Wyatt Barnett

1

Ось що я нарешті зробив (мені не сподобалася ідея вставляти .Net-код у javascript):

  • Я налаштував два облікові записи Google Analytics, один для розробки / тестування та один для виробництва
  • Створіть сторінку, яка повертає ідентифікатор облікового запису Google Analytics (від web.config) як її тіло.
  • На $ (document). Вже зробіть дзвінок ajax на сторінку
  • Після завершення Ajax виклик сценарію аналітики google з відповіддю (який містить ідентифікатор облікового запису)

Отже, залежно від середовища, в яке я розміщую, я використовую будь-яку версію файлу 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);
        }
    });
});

І це прекрасно працює!


6
Здається, марно робити запит AJAX на кожній завантаженні сторінки просто для отримання номера рахунку.
Боб Бенкс

1
Немає нічого поганого <%= ASP %>в тому, щоб вставити тег у Javascript - просто поставте мінімум всередині JS та будь-які інші запити / логіки в іншому місці.
Саймон Схід

0

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

Якщо так, ви можете просто використовувати той же обліковий запис аналітики, який буде використовуватися для виробництва, і відфільтрувати весь трафік з вашої організації .

Цитата за посиланням:

Якщо ви хочете виключити показ внутрішнього трафіку у своїх звітах, ви можете відфільтрувати конкретну IP-адресу або діапазон IP-адрес. Ви також можете використовувати файли cookie, щоб відфільтрувати відвідування певних користувачів. Ми пояснимо, як нижче.


Хоча це, безумовно, спрацьовує, бажаючи перевірити реалізацію подій та інших даних у режимі реального часу відстежувати; це дуже важко обійтися без ізольованого профілю чи перегляду чи використання під ним.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.