it-swarm.com.ru

Есть ли способ остановить Google Analytics, считая работу разработчиков хитами?

Я добавил нужный мне JavaScript-код внизу своих страниц, чтобы использовать Google Analytics. Единственная проблема в том, что я уверен, что все мои работы по разработке считаются хитами. Видя, что я, вероятно, вижу некоторые из этих страниц по сто раз в день, это действительно искажает мои показания. Есть ли способ отключить его с определенного IP-адреса или это должно быть встроено в мой процесс сборки, чтобы оно добавлялось только при сборке для развертывания?

130
uriDium

Да, вы заходите в Настройки Google Analytics, редактируете свой сайт и + Добавить фильтр, чтобы определить фильтр, который исключает ваш IP-адрес.

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

92
chaos

Мне нравится простой подход с использованием JavaScript. Это работает где угодно.

<script type="text/javascript">
if (document.location.hostname.search("myproductiondomainname.com") !== -1) {

//google analytics code goes here

}
</script>
188
keza

Сейчас 2014 год, и я все еще недоволен всеми существующими решениями ...

  • IP-фильтры требуют статического IP-адреса. Что делать, если я работаю дома или в кафе?
  • Проверка имени хоста исключает попадания из среды разработки, но что, если я отлаживаю работающий сайт?
  • Редактирование конфигураций сервера является раздражающим/сложным, и несколько доменов сложны.
  • Расширения Opt-Out либо блокируют хиты на всех веб-сайтах, либо ни одного вообще, в зависимости от того, кого вы спрашиваете.

Итак, я создал свое собственное расширение для браузера ... https://chrome.google.com/webstore/detail/lknhpplgahpbindnnocglcjonpahfikn

  • Это следует за мной, куда бы я ни шел
  • Работает в среде разработчика и в публичных/публичных доменах.
  • Это касается только меня и сайтов, которые я разрабатываю
  • Включается/выключается одним кликом
  • Нетрудно убедиться, что данные не отправляются в аналитику.

Он работает, постоянно сохраняя "cookie-файлы разработчика" на вашем компьютере только для выбранных вами доменов. Затем вы просто проверяете наличие этого cookie в своем скрипте, прежде чем отправлять какие-либо данные в Google Analytics. Вы настраиваете свое собственное уникальное ИМЯ и ЗНАЧЕНИЕ для файлов cookie в настройках расширения. Это может быть легко использовано командой людей, поэтому разработчики, создатели контента, корректоры и все остальные в вашей организации могут просматривать страницы без раздувания статистики.

Примеры того, как разместить код на ваших страницах ...

JavaScript

if (window.location.Host==="mydomain.com" || window.location.Host==="www.mydomain.com") {
   if (document.cookie.indexOf("COOKIENAME=COOKIEVALUE") === -1) {
      // Insert Analytics Code Here
   }
}

PHP

if ($_SERVER['HTTP_Host']==="mydomain.com" || $_SERVER['HTTP_Host']==="www.mydomain.com") {
   if (@$_COOKIE["COOKIENAME"] !== "COOKIEVALUE") {
      // Insert Analytics Code Here
   }
}

Проверка того, что имя хоста равно домену вашего действующего сайта ("mydomain.com"), гарантирует, что аналитические данные никогда не будут отправлены ЛЮБОМ посетителем при просмотре с тестового домена, такого как "localhost" или "beta.mydomain.com". , В приведенных выше примерах "www.mydomain.com" и "mydomain.com" являются двумя действительными доменами, где мы действительно хотим, чтобы посещения регистрировались.

Активный сайт отправляет данные в аналитику, как и ожидалось, если только файл cookie для разработчиков не найден с соответствующими значениями. Если он обнаружит этот уникальный файл cookie, установленный на вашем устройстве, то ваш визит не будет учитываться при подсчете ваших итогов в Google Analytics или любом другом аналитическом инструменте, который вы предпочитаете использовать.

Не стесняйтесь поделиться своим решением и использовать мое расширение, чтобы сохранить эти файлы cookie.

29
seebigs

Если вы не используете статический IP, настройка фильтров IP на GA не поможет.

Установите переменную окружения и условно отобразите ее. Возьмите следующий Ruby код Rails, например:

<% unless Rails_ENV == "development" %>
    <!-- your GA code -->
<% end %>

Вы можете расширить это поведение на любой язык/фреймворк, который вы используете в любой операционной системе. В PHP вы можете использовать функцию getenv . Посетите страницу Википедии на Переменные среды , чтобы узнать, как действовать в вашей системе.

25
Nando Vieira

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

15
astropanic

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

14
Wyatt Barnett

Вы можете использовать этот код

<script>
var Host = window.location.hostname;
if(Host != "localhost")
{
    // your google analytic code here
}
</script>
13
prawito hudoro

Решение состоит в том, чтобы использовать Менеджер тегов Google (GTM) для работы с Google Analytics. Это позволит вам запускать Google Analytics только в вашем рабочем домене без необходимости писать какие-либо условия в коде вашего сайта. Вот как это сделать:

В GTM установите триггер, который срабатывает только тогда, когда имя хоста страницы содержит ваш рабочий домен.

enter image description here

Затем установите тег для Universal Analytics и сделайте его триггер тем, который вы только что создали.

enter image description here

8
Martyn Chamberlin

Для этого есть несколько расширений Chrome, например https://chrome.google.com/webstore/detail/fadgflmigmogfionelcpalhohefbnehm

Очень удобно, если ваш IP-адрес не является статичным.

5
Uri

Добавьте эту строку до запуска асинхронного кода Google Analytics, чтобы отключить отслеживание этого идентификатора веб-ресурса:

window['ga-disable-UA-XXXXXX-Y'] = true;

UA-XXXXXX-Y соответствует идентификатору веб-ресурса, для которого вы хотите отключить отслеживание.

От: https://developers.google.com/analytics/devguides/collection/gajs/

5
AJP

Я использую Ad Blocker для Firefox, он может специально блокировать скрипт отслеживания Google Analytics. Поскольку Firefox - мой основной браузер для разработки, он прекрасно работает, пока мне не нужно протестировать свою работу в других браузерах.

3
Adrian

Используйте пользовательскую метрику, чтобы отфильтровать весь этот трафик.

Когда вы инициализируете GA в своем приложении, установите пользовательский флаг для отслеживания разработок:

// In your header, after the GA code is injected
if( <your_code_to_check_if_is_dev> ) {
  ga('set', 'is_developer', 1 );
}

Затем добавьте фильтр в свою учетную запись GA, чтобы удалить эти результаты.

Администратор> Аккаунт> Все фильтры> Добавить фильтр> Определено пользователем

enter image description here

2
Joseph Lust

Как упоминают люди, вы можете либо разместить у себя домен google-analytics.com локально, либо настроить функцию, чтобы увидеть, работаете ли вы в своей сети разработчиков.

Имейте в виду, что если http://www.google-analytics.com/ga.js не загружается и вы используете функции javascript onclick для отслеживания кликов по элементам страницы.

IE: onclick = "javascript: pageTracker._trackPageview ('/ made/up/folder/reference');

Вы будете иметь ошибки JavaScript, которые остановят работу jQuery или других надежных функций JavaScript.

1
gegere

Возможно, вам это не поможет, но я решил эту проблему, написав собственный серверный элемент управления ASP.NET, который внедряет необходимый JavaScript. Затем я добавил действующий URL-адрес в web.config, а затем сделал элемент управления видимым только тогда, когда имя хоста соответствовало действующему URL-адресу в web.config.

1
Dan Diplo

В качестве дополнительной опции для этого у меня есть сервер разработки с множеством разных сайтов и разработчиков. Это означало, что я не был особенно доволен 3 основными вариантами

  • файл hosts - проблематичный с большим количеством разработчиков и открытый для человеческой ошибки
  • блок разработки if/else на каждом сайте и т. д.
  • настройка на GA веб-сайте - у некоторых клиентов есть собственные GA учетные записи; должно быть заполнено на каждом сайте с возможностью быть забытым/упущенным

Вместо того, чтобы реализовывать различные варианты в других ответах, я подошел к проблеме следующим образом. В глобальном httpd.conf (а не для сайта) я использовал модуль Apache mod_substitute , чтобы имитировать эффект, который оказывает исправление файла hosts в другом ответе, но для каждого сайта разработки и каждого разработчика автоматически ,.

Включить модуль

CentOS : откройте /etc/conf/httpd.conf и добавьте следующую строку

LoadModule substitute_module modules/mod_substitute.so

Ubuntu/Debian : выполните следующую команду

Sudo a2enmod substitute

Как только вы включите модуль, добавьте следующие строки в ваш глобальный конфигурационный файл httpd

CentOS : /etc/conf/httpd.conf

Ubuntu/Debian : /etc/Apache2/httpd.conf

# Break Google Analytics
AddOutputFilterByType SUBSTITUTE text/html 
Substitute "s|.google-analytics.com|.127.0.0.1|n"

Затем перезапустите Apache

CentOS : service httpd restart

Ubuntu/Debian : /etc/init.d/Apache2 restart

Что это делает, это заменяет весь текст, соответствующий .google-analytics.com, на .127.0.0.1, когда Apache обслуживает страницу, поэтому ваша страница отображается с кодом аналитики, аналогичным приведенному ниже примеру.

var _gaq = _gaq || [];
_gaq.Push(['_setAccount', '']);
_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') + '.127.0.0.1/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
1
Ben Swinburne

Я знаю, что этот пост очень старый, но ни одно из решений не отвечало моим потребностям. Я не только хотел удалить работу разработчиков из GA (и FB), но также хотел, чтобы некоторые сотрудники в компании не учитывались в GA и ​​FB. Поэтому я хотел, чтобы для этих людей был относительно простой способ исключить себя из аналитики без плагина или исключить IP-адрес домена (когда бродят люди с ноутбуками).

Я создал веб-страницу , на которую пользователи могут перейти и щелкнуть ссылку, чтобы отказаться от отслеживания GA и ​​FB. Он размещает куки для сайта. Затем я проверяю этот файл cookie, чтобы определить, должны ли мы отправлять данные в GA и ​​FB.

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

Вот код:

Я поместил следующий код в заголовок для всех веб-страниц:

<script>
//put in your google analytics tracking id below:
var gaProperty = 'UA-XXXXXXXX-X';

// Disable tracking if the opt-out cookie exists.
var disableStr = 'ga-disable-' + gaProperty;
if (document.cookie.indexOf(disableStr + '=true') > -1) {
  window[disableStr] = true;
  window['ga-disable-UA-7870337-1'] = true;  //This disables the tracking on Weebly too.
} else {
   //put in your facebook tracking id below:
  fbq('init', 'YYYYYYYYYYYYYYY');
  fbq('track', 'PageView');
}
</script>

Обязательно добавьте свои идентификаторы отслеживания GA и ​​FB в предоставленные места. Первоначально это было написано для сайта Weebly (торговый CMS). Так что, если вы не находитесь на Weebly, вы можете удалить строку, которая упоминается в крошечном виде.

Затем я создал новую веб-страница с именем "do-not-track" со следующим кодом в заголовке:

<script>
//put in your own google analytics tracking id below:
var gaProperty = 'UA-XXXXXXXX-X';
var disableStr = 'ga-disable-' + gaProperty;

// Opt-out function
function gaOptout() {
  document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/';
  window[disableStr] = true;
  gaOptoutCheck();
}

// Check Opt-out function
function gaOptoutCheck() {
    var name = "ga-disable-"+gaProperty+"=";
    var ca = document.cookie.split(';');
    var found = "false";
    for(var i=0; i<ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1);
        if (c.indexOf(name) == 0) found = "true";
    }
    if (found == "true") alert("Cookie is properly installed");
    else alert("COOKIE NOT FOUND");
}
</script>

И следующий код в теле:

<a href="javascript:gaOptout()">Click here to opt-out of Google and Facebook Analytics</a>
<br><br>
Please visit this page on every computer, laptop, phone, tablet, etc. that you use; 
and for all browser you use on each of those devices.
<br><br>
If you ever remove cookies from browser, you will need to repeat this process for that browser.
<br><br><br>
<a href="javascript:gaOptoutCheck()">
Click to check if cookie is set</a>
<br><br>

Вот мой полный рецензия для сайта Weebly

Надеюсь, это кому-нибудь поможет!

0
furnaceX

У меня есть переменная PHP для моей локальной разработки, которая дает мне терминал для предоставления данных/обратной связи и т.д., Когда я работаю над материалом.

Я использую XAMPP, чтобы переменная env для tmp была следующей:

$isLocal = (getenv("tmp") == '\xampp\tmp') ? true : false;

Это не существует на моем рабочем сервере, потому что xampp не используется

if($isLocal){
  // do something, eg. load my terminal
}

... Специфично для этого вопроса:

<?php if(!$isLocal){ ?>
  <!-- Insert Google Analytics Script Here -->
<?php } // end google analytics local check ?>
0
shanehoban

Сегодня, находясь на компьютере, отличном от моего, я заметил, что µBlock Origin для Chrome по умолчанию блокирует Google AdSense. После некоторого поиска в Google я нашел это статья . Он также отмечает, что µBlock Origin Firefox, µ Adblock для Firefox и Ad Muncher для Windows блокируют AdSense по умолчанию. Большинство других опций указаны как настраиваемые для блокировки AdSense.

Кажется, это работает и полезно, потому что мой IP-адрес часто динамический, поэтому расширение Chrome может следить за мной, пока я вхожу в Chrome.

0
RationalDev

получить переменную хоста запроса.

Так что оберните оператор if вокруг javascript аналитики следующим образом (псевдокод Ruby-esque):

<body>
<shtuff>dfsfsdf</shtuff>
if not (request.Host == 'localhost')
  #analytics code here
elsif (request.Host == the server's ip/domain)
  #analytics code here
else
  #do nothing
end
</body>
0
user94154