Google Tag Manager отправляет дополнительные события в Mixpanel через прокси-сервер?

Я настроил GTM для загрузки Mixpanel на каждой странице своего домена и добавил отслеживание кликов по кнопкам, как описано в этом блоге: https://mixpanel.com/blog/2015/03/27/community-tip-implementing-mixpanel-via-google-tag-manager

Это еще не развернуто ни на одном сервере, только на localhost, но, похоже, всякий раз, когда отслеживаются клики, я получаю фиктивные события в mixpanel, поступающие из США по этому URL: https://gtm-msr.appspot.com/render2?id=GTM-XXXXX с этим агентом пользователя: Mozilla/5.0 (Windows NT 6.1; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; EIE10;ENUSWOL; rv:11.0) like Gecko

Кто-нибудь сталкивался с этим раньше? Есть идеи, что здесь происходит?

3 ответа

Решение

В качестве обходного пути я добавил проверку в коде трекинга mixpanel в GTM, чтобы отфильтровать фиктивного агента пользователя. Конечно, пока это работает, пока не сменится пользовательский агент.

<script type="text/javascript">
  if (navigator.userAgent != 'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; EIE10;ENUSWOL; rv:11.0) like Gecko') {  
    var pagePath = {{Page Path}};
    mixpanel.track("Page Loaded", {"Page Path": pagePath, "User Agent": navigator.userAgent});
  }
</script>

Добавление фильтра в сам GTM также не работает, GTM игнорирует его.

Кажется, это происходит всякий раз, когда изменяются конфигурации Google Tag Manager, возможно, где-то в процессе сборки, когда он тестируется в среде из .appspot домен.

Это может быть исправлено только инициализацией mixpanel на доменах, не нарушающих работу:

if (document.location.href.search('.appspot.') == -1)
    mixpanel.init(YOUR_TOKEN);

У меня возникла та же проблема, и я думал проверить, откуда исходила загрузка страницы, прежде чем выполнять код. Это может быть более удобно (не зависит от пользовательского агента):

<script type="text/javascript">
  if (document.location.href.search('.appspot.') == -1) {
    /* run your code */
  }
</script>

То, что вы ищете, может быть изменено, но вероятность того, что эта часть URL изменится, гораздо меньше, чем у агента пользователя.

Другие вопросы по тегам