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 изменится, гораздо меньше, чем у агента пользователя.