有没有办法阻止Google Analytics计算开发工作作为点击?

uri*_*ium 137 development-environment google-analytics

我已将所需的JavaScript添加到页面底部,以便我可以使用Google Analytics.唯一的问题是我确信它将我的所有开发工作都计为点击量.因为我可能每天都会看到一些这样的页面,这会让我的读数产生偏差.有没有办法从特定的IP地址关闭它,或者这是应该构建到我的构建过程中的东西,所以只有在构建部署时才会添加它?

kez*_*eza 196

我喜欢使用javascript的简单方法.它适用于任何地方

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

//google analytics code goes here

}
</script>
Run Code Online (Sandbox Code Playgroud)

  • 谢谢.我个人使用`if(document.location.hostname =="example.com"){/*ga code*/} else {_gaq = {push:function(arg){console.log("ga:",arg) ` - 这允许我在我的代码中的任何地方安全地使用一些事件跟踪器和自定义_gaq调用,同时允许我在开发环境中调试GA调用. (27认同)
  • 富勒说明了上面提供的解决方案(假设ga是对象名称):`var ga; if(document.location.hostname =="example.com"){/*GA脚本*/} else {console.log("立即运行非生产谷歌分析"); ga = function(arg){console.log("ga:",arguments);};} ga('create','UA-xxxxx','auto'); ga('发送','pageview');` (11认同)
  • 很优雅的解决方案 (3认同)
  • 另一个更易读的解决方案是使用正则表达式文字:`if(/example\.com/.test(window.location.hostname)) { /* GA code */ }` (2认同)

cha*_*aos 97

是的,您进入分析设置,编辑您的站点,然后+添加过滤器以定义排除您的IP地址的过滤器.

应用过滤器不会重新生成过去的数据,因此您只能从中获益.

  • [新创建的]过滤器仅适用于未来数据. (14认同)
  • 只是随机地遇到了这个问题......我只是为我的开发环境使用了不同的UA-ID.这就是我现在所做的.我认为这比阻止IP地址和东西更好. (7认同)
  • 实际上有一种更简单的方法.这种技术也适用于未来的数据.初始化ga对象时,只需设置一个显式cookie域.参考:https://developers.google.com/analytics/devguides/collection/analyticsjs/domains (3认同)
  • 那是完美的。我正在积极地这样做。我还没有真正添加 Google Analytics 需要的 javascript。我将把过滤器放置到位,然后部署。 (2认同)
  • 根据您的开发环境,您还可以排除主机名.我用asp.net开发,所以我排除了包含`localhost`的所有主机名.如果您通常在子域下有测试环境,则只需排除它. (2认同)

小智 32

这是2014年,我仍然对所有现有的解决方案都不满意......

  • IP过滤器需要静态IP地址.如果我在家或从咖啡店工作怎么办?
  • 检查主机名可以消除开发环境中的命中,但是如果我正在调试实时站点呢?
  • 编辑服务器配置很烦人/先进,多个域很复杂.
  • 选择退出扩展可以阻止所有网站上的点击,也可以根本不阻止您的要求.

所以,我创建了自己的浏览器扩展程序... 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
   }
}
Run Code Online (Sandbox Code Playgroud)

PHP

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

验证主机名称是否等于您的实际站点域名("mydomain.com")可确保任何访问者在从"localhost"或"beta.mydomain.com"等测试域查看时永远不会发送分析数据.在上面的示例中,"www.mydomain.com"和"mydomain.com"是我们希望记录访问的两个有效域.

除了找到具有匹配值的开发人员cookie之外,实时站点会按预期将数据发送到分析.如果它在您的设备上看到了唯一的Cookie设置,那么您的访问将不计入您在Google Analytics或您更喜欢使用的任何其他分析工具中的总计.

随意分享我的解决方案并使用我的扩展程序来保持这些cookie设置.


Nan*_*ira 25

如果您不使用静态IP,则在GA上设置IP过滤器无法帮助您.

设置环境变量并有条件地显示它.以下是Ruby on Rails代码,例如:

<% unless RAILS_ENV == "development" %>
    <!-- your GA code -->
<% end %>
Run Code Online (Sandbox Code Playgroud)

您可以在任何操作系统上使用的每种语言/框架扩展此行为.在PHP上,您可以使用getenv函数.查看环境变量的维基百科页面,了解如何继续使用您的系统.

  • 如果ENV ["RAILS_ENV"] =="生产",你也可以 (2认同)

pra*_*oro 16

您可以使用此代码

<script>
var host = window.location.hostname;
if(host != "localhost")
{
    // your google analytic code here
}
</script>
Run Code Online (Sandbox Code Playgroud)


ast*_*nic 15

如果您支持NAT或者由于其他原因而无法将您的IP提供给Google Analytics,那么最简单的方法是将google analytics域设置为localhost(127.0.0.1),从现在开启您的浏览器时,所有请求都是Google Analytics会在不了解Google Analytics的情况下直接发送到您的工作站.

  • 先生,这是我见过的最简单的解决方案!来自我的+1 (3认同)

Wya*_*ett 15

我们为开发和QA工作设置了第二个谷歌分析跟踪代码 - 当您想要测试分析集成时,它实际上会派上用场,同时也确保您不会将生产统计信息转换为生产统计信息.

  • @MXMLLN - 这取决于您进行配置管理的程度.在我们的例子中,它只是我们已经处理的配置文件中的另一行,ymmv. (2认同)

Mar*_*lin 11

解决方案是使用Google跟踪代码管理器(GTM)来处理您的Google Analytics.这样,您只需在生产域中启动Google Analytics,而无需在网站代码中编写任何条件.这是怎么做的:

在GTM中,设置仅在页面主机名包含生产域时触发的触发器.

在此输入图像描述

然后为Universal Analytics设置标记,并将其Trigger设置为您刚刚创建的标记.

在此输入图像描述


Avi*_*Avi 8

要禁用 localhost 命中,只需创建一个过滤器以排除 localhost。转到管理 -> 属性 -> 查看设置来执行此操作。检查以下屏幕截图以获取帮助。

ga 视图排除本地主机

如果您使用非静态 IP 访问,要为自己禁用生产 URL 命中,您可以使用 Chrome 扩展程序(如Developer Cookie)跳过运行 Google Analytics 代码(如果是您的话)。

我个人不会这样做,因为我使用的广告拦截器已经在我的浏览器上拦截了 Google Analytics。


Uri*_*Uri 6

有一些Chrome扩展程序可以帮助您,例如https://chrome.google.com/webstore/detail/fadgflmigmogfionelcpalhohefbnehm

如果您的IP地址不是静态的,非常方便.


AJP*_*AJP 5

在您的Google Analytics(分析)异步代码运行以禁用对该网络载体ID的跟踪之前,添加以下行:

window['ga-disable-UA-XXXXXX-Y'] = true;
Run Code Online (Sandbox Code Playgroud)

UA-XXXXXX-Y 对应于您要禁用跟踪的网络载体ID。

来自:https : //developers.google.com/analytics/devguides/collection/gajs/


Wel*_*ing 5

对于Google Analytics 4 (GA4),您可以创建规则来定义其流量应标记为内部的 IP 地址。

定义内部流量

路径:管理 > 属性 > 数据流 >选择您的流> 更多标记设置 > 定义内部流量

在此输入图像描述

定义一条规则来匹配代表您的内部流量的一个或多个 IP。

在此输入图像描述

GA4 数据过滤器

路径:管理 > 属性 > 数据设置 > 数据过滤器

您会发现默认过滤器“内部流量”设置为“测试”模式。

更改为“活动”以启用过滤器。

在此输入图像描述