如何为之前制作的相同通话/点击添加Google Analytics自定义维度的代码,以及一些自定义维度(需要时间来计算)

时间:2017-07-19 06:33:52

标签: javascript google-analytics google-analytics-api google-analytics-v4 measurement-protocol

我在我的网站上嵌入了GA。 我知道我可以使用

发送一些自定义尺寸
var d1 = "valueForD1";
ga('set', 'dimension1', d1);
ga('send', 'pageview');

这是即时的。

通过Measurement Protocol API(https://developers.google.com/analytics/devguides/collection/protocol/v1/devguide)执行此操作的其他方法。

用这个

POST /collect HTTP/1.1
Host: www.google-analytics.com
payload_data

当我的服务器完成某些处理并计算自定义维度时,我点击这个点击。

但我只需要将“dimension1”添加到已经发送的原始GA数据(在正常的GA执行中),而不是ga('set','dimension1',d1)。

我的观点是,这个自定义维度需要一些时间才能在服务器端计算。如何将此维度添加到GA正常命中?

2 个答案:

答案 0 :(得分:1)

这取决于。如果这是会话或用户范围的维度,则应该足以发送具有相同客户端ID的命中(例如,通过测量协议)(在会话生存期内,对于会话范围的维度)。在任何情况下,会话范围和用户范围仅保留每个会话/用户的最后一个值,因此每次会话只需添加一次。

如果这是一个命中范围维度,那么您对标准帐户运气不佳。在GA 360帐户中,您可以通过query time import为现有匹配添加维度和指标。

答案 1 :(得分:0)

TL:DR:发送异步调用的回调函数命中以发送事件。作为例子

您好

自定义维度需要附加到匹配(始终到达平台)。

使用异步CD的最佳方法是通过事件发送,并将范围设置为会话或用户级别。 (这会覆盖以前的命中数据)。缺点是有些用户不会拥有CD,因为你可以发送PV的命中,然后发送CD。

这是使用Ajax库发送ip的代码示例(这也是异步)



 $.ajax({
    url:"https://api.ipify.org?format=json",  
    success:function(data) {
      console.log(data.ip);
      ga('send','event' , 'label', 'category' , {'dimension1' : data.ip}); 
    }
  });