it-swarm.dev

Google Analytics의 개발 작업을 조회수로 삼는 방법이 있습니까?

Google Analytics를 사용하기 위해 페이지 하단에 필요한 JavaScript를 추가했습니다. 유일한 문제는 그것이 모든 개발 작업을 히트로 간주한다는 것입니다. 아마 그 페이지의 일부를 하루에 백 번 볼 때 내 독서가 실제로 왜곡 될 것입니다. 특정 IP 주소에서 끄는 방법이 있습니까, 아니면 빌드 프로세스에 빌드해야하므로 배포를 위해 빌드 할 때만 추가됩니까?

134
uriDium

예, 웹 로그 분석 설정으로 이동하여 사이트를 수정하고 + 필터 추가를 사용하여 IP 주소를 제외하는 필터를 정의합니다.

과거 데이터는 필터가 적용된 상태에서 재생성되지 않으므로 앞으로의 이점 만 얻을 수 있습니다.

96
chaos

나는 자바 스크립트를 사용하는 간단한 접근법을 좋아합니다. 어디에서나 작동합니다.

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

//google analytics code goes here

}
</script>
191
keza

2014 년인데도 기존의 모든 솔루션에 만족하지 않습니다 ...

  • IP 필터에는 고정 IP 주소가 필요합니다. 집이나 커피 숍에서 일하는 경우 어떻게합니까?
  • 호스트 이름을 확인하면 개발 환경에서 적중이 제거되지만 라이브 사이트를 디버깅하는 경우 어떻게됩니까?
  • 서버 구성 편집이 번거롭고 고급이며 여러 도메인이 복잡합니다.
  • 선택 해제 확장 프로그램은 모든 웹 사이트의 조회수를 차단하거나 요청한 사람에 따라 전혀 방문하지 않습니다.

그래서 내 브라우저 확장 프로그램을 만들었습니다 ... https://chrome.google.com/webstore/detail/lknhpplgahpbindnnocglcjonpahfikn

  • 내가가는 곳마다 날 따라와
  • 개발 환경과 라이브/퍼블릭 도메인에서 작동합니다.
  • 그것은 나에게만 개발중인 사이트에만 영향을 미칩니다.
  • 한 번의 클릭으로 켜거나 끕니다.
  • 실제로 분석에 데이터를 보내지 않는지 쉽게 확인할 수 있습니다.

선택한 도메인에 대해서만 항상 "개발자 쿠키"를 컴퓨터에 설정하여 작동합니다. 그런 다음 웹 로그 분석으로 데이터를 보내기 전에 스크립트에서이 쿠키를 확인하면됩니다. 확장 프로그램 설정에서 쿠키에 대한 고유 한 NAME 및 VALUE를 맞춤 설정합니다. 팀원이 쉽게 사용할 수 있으므로 개발자, 컨텐츠 제작자, 교정자 및 조직 내 모든 사람이 통계를 늘리지 않고도 페이지를 모두 볼 수 있습니다.

코드를 페이지에 넣는 방법의 예 ...

자바 스크립트

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"은 방문을 기록하려는 두 개의 유효한 도메인입니다.

라이브 사이트는 값이 일치하는 개발자 쿠키가없는 한 예상대로 데이터를 분석에 보냅니다. 기기에 고유 한 쿠키가 설정되어 있으면 Google 웹 로그 분석 또는 선호하는 다른 분석 도구의 총계에 대한 방문이 계산되지 않습니다.

솔루션을 공유하고 확장 프로그램을 사용하여 쿠키를 유지하십시오.

31
seebigs

고정 IP를 사용하지 않는 경우 GA에서 IP 필터를 설정하면 도움이되지 않습니다.

환경 변수를 설정하고 조건부로 표시하십시오. 예를 들어 다음 Ruby on Rails) 코드를 사용하십시오.

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

모든 운영 체제에서 사용하는 모든 언어/프레임 워크로이 동작을 확장 할 수 있습니다. PHP에서는 getenv 함수를 사용할 수 있습니다. Environment Variables 의 Wikipedia 페이지에서 시스템 진행 방법을 확인하십시오.

25
Nando Vieira

개발 및 QA 작업을위한 두 번째 Google 웹 로그 분석 추적 코드를 설정했습니다. 실제로 분석 통합을 테스트하고 싶을 때 유용하며, 생산 통계에 지장을주지 않습니다.

15
Wyatt Barnett

NAT 뒤에 있거나 다른 이유로 IP를 Google Analytics에 제공 할 수없는 경우 가장 간단한 방법은 지금부터 Google Analytics 도메인을 localhost (127.0.0.1)로 설정하는 것입니다. 브라우저를 열면 Google 웹 로그 분석에 대한 지식없이 Google 웹 로그 분석에 대한 모든 요청이 워크 스테이션으로 전송됩니다.

15
astropanic

이 코드를 사용할 수 있습니다

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

해결책은 Google Tag Manager (GTM)을 사용하여 Google 웹 로그 분석을 처리하는 것입니다. 그러면 사이트 코드에 조건을 쓰지 않고도 프로덕션 도메인에서 Google 웹 로그 분석 만 실행할 수 있습니다. 방법은 다음과 같습니다.

GTM에서 페이지 호스트 이름에 프로덕션 도메인이 포함 된 경우에만 실행되는 트리거를 설정하십시오.

enter image description here

그런 다음 범용 웹 로그 분석에 대한 태그를 설정하고 방금 만든 트리거를 트리거로 설정하십시오.

enter image description here

10

https://chrome.google.com/webstore/detail/fadgflmigmogfionelcpalhohefbnehm 와 같이 몇 가지 Chrome 확장 프로그램이 있습니다)

고정 IP 주소가 아닌 경우 매우 편리합니다.

6
Uri

해당 웹 속성 ID에 대한 추적을 비활성화하려면 Google 웹 로그 분석 비동기 코드를 실행하기 전에이 행을 추가하십시오.

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

UA-XXXXXX-Y은 추적을 사용 중지하려는 웹 속성 ID에 해당합니다.

보낸 사람 : https://developers.google.com/analytics/devguides/collection/gajs/

5
AJP

Firefox 용 Ad Blocker를 사용하는데, 특히 Google 웹 로그 분석 추적 스크립트를 차단할 수 있습니다. 파이어 폭스는 기본 개발 브라우저이므로 다른 브라우저에서 작업을 테스트해야 할 때까지 훌륭하게 작동합니다.

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

3
Joseph Lust

아마 당신에게 도움이되지는 않지만 필요한 JavaScript를 주입하는 사용자 정의 ASP.NET 서버 컨트롤을 작성 하여이 문제를 해결했습니다. 그런 다음 web.config에 라이브 URL을 추가 한 다음 호스트 이름이 web.config의 라이브 URL과 일치하는 경우에만 컨트롤을 표시했습니다.

2
Dan Diplo

이 게시물이 너무 오래되었다는 것을 알고 있지만 어떤 솔루션도 내 요구를 충족시키지 못했습니다. GA (및 FB)에서 dev 작업을 제거하고 싶을뿐만 아니라 회사 내의 일부 사람들을 GA FB. 그래서 나는 사람들이 플러그인없이 분석에서 제외하거나 도메인 IP를 배제하는 비교적 쉬운 방법을 원했습니다 (노트북을 가진 사람들이 방황하는 것처럼).

사용자가 링크를 클릭하여 GA 및 FB 추적을 거부 할 수있는 웹 페이지 를 만들었습니다. 사이트에 쿠키를 넣습니다. 해당 쿠키를 사용하여 데이터를 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 추적 ID를 추가하십시오. 이것은 원래 Weebly (쇼핑 CMS) 사이트 용으로 작성되었으므로 Weebly에 있지 않은 경우 해당 행을 제거 할 수 있습니다. 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 사이트에 대한 글쓰기

이것이 누군가를 돕기를 바랍니다!

1
furnaceX

사람들이 언급 한 것처럼 google-analytics.com 도메인을 로컬로 호스팅하거나 개발 네트워크에서 작업 중인지 확인하는 기능을 설정할 수 있습니다.

http://www.google-analytics.com/ga.js 가로드되지 않고 onclick 자바 스크립트 함수를 사용하여 페이지 요소의 클릭 수를 추적하는 데 도움이되는 경우에 유의하십시오.

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

JQuery 또는 기타 강력한 JavaScript 함수가 작동하지 못하게하는 JavaScript 오류가 발생합니다.

1
gegere

이를위한 추가 옵션으로, 여러 사이트와 개발자가있는 개발 서버가 있습니다. 이것은 내가 세 가지 주요 옵션에 특히 만족하지 않았다는 것을 의미했습니다.

  • 많은 개발자들에게 파일 문제가 있으며 인적 오류가 발생합니다.
  • 모든 사이트 등에서 if/else 개발 블록
  • GA 웹 사이트의 구성-일부 고객은 자체 GA 계정; 모든 사이트에서 완료해야합니다 잊혀지거나 간과 될 가능성

다른 답변에서 다양한 옵션을 구현하는 대신 다음과 같은 방식으로 문제에 접근했습니다. 전 세계 httpd.conf (사이트 별이 아닌)에서 Apache 모듈 mod_substitute 를 사용하여 다른 답변에서 호스트 파일 수정이 미치는 영향을 시뮬레이션했지만 모든 개발 사이트 및 모든 개발자에게 자동으로 .

모듈 활성화

CentOS : /etc/conf/httpd.conf를 열고 다음 줄을 추가하십시오

LoadModule substitute_module modules/mod_substitute.so

Ubuntu/Debian : 다음 명령을 실행하십시오

Sudo a2enmod substitute

모듈이 활성화되면 httpd 전역 구성 파일에 다음 줄을 추가하십시오.

CentOS : /etc/conf/httpd.conf

우분투/데비안 : /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

우분투/데비안 : /etc/init.d/Apache2 restart

Apache가 페이지를 제공 할 때 .google-analytics.com과 일치하는 모든 텍스트를 .127.0.0.1로 바꾸면 페이지가 아래 예제와 유사한 분석 코드로 렌더링됩니다.

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

나는 로컬 개발을 위해 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
shanehoban

오늘은 내 컴퓨터와 다른 컴퓨터에서 Chrome 기본적으로 Google 애드 센스를 차단하고있었습니다. 인터넷 검색 후 일부 article . 또한 μBlock Origin Firefox, μ Adblock for Firefox 및 Ad Muncher for Windows는 기본적으로 애드 센스를 차단합니다. 대부분의 다른 옵션은 애드 센스를 차단하도록 구성 할 수있는 것으로 표시됩니다.

이것은 작동하는 것으로 보이며 내 IP가 종종 동적이기 때문에 유용하므로 Chrome 확장명은 Chrome에 로그인되어있는 한 계속해서 따라 올 수 있습니다.

0
RationalDev

요청 호스트 변수를 가져옵니다.

따라서 다음과 같이 분석 자바 스크립트 주위에 if 문을 래핑하십시오 (Ruby-esque pseudocode).

<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