Есть ли способ остановить Google Analytics, считая работу разработчиков хитами? - PullRequest
132 голосов
/ 09 августа 2009

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

Ответы [ 19 ]

3 голосов
/ 10 августа 2009

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

2 голосов
/ 16 ноября 2017

Используйте пользовательскую метрику для фильтрации всего этого трафика.

Когда вы запускаете 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

1 голос
/ 09 августа 2009

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

1 голос
/ 24 марта 2013

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

  • файл hosts - проблематично для многих разработчиков и открыт для человеческой ошибки
  • if / else блок разработки на каждом сайте etc
  • конфигурация на сайте 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 голос
/ 30 октября 2009

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

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

IE: OnClick = "JavaScript: pageTracker._trackPageview ( '/ из / до / папки / ссылки');

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

0 голосов
/ 07 июля 2018

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

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

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

Вот код:

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

<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 голосов
/ 14 августа 2017

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

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

0 голосов
/ 19 июня 2015

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

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

$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 голосов
/ 10 августа 2009

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

Оберните оператор 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>
...