0

我在我的网站上嵌入了GA。 我知道我可以发一些自定义维度,采用如何为以前制作的同一个呼叫/匹配添加Google Analytics自定义维度的代码,并带有一些自定义维度(需要时间计算)

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 

这命中的情况下(我做)时,我的服务器已经完成了一些处理和计算的自定义维度。

但是我只需要在没有ga('set','dimension1',d1)的情况下,将已发送的原始GA数据(在正常的GA执行中)仅添加“dimension1”。

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

+0

也许你需要推迟,首先发送,让你的服务器那个计算和在你调用'ga('send',..)'的那个ajax请求的回调中。 – flob

+0

你需要什么类型的范围?会话,命中,用户? –

+0

会话范围。 – GetGimphed

回答

1

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

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

+0

谢谢..试过并测试过它。作品不错.. – GetGimphed

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}); 
 
    } 
 
    });

+1

谢谢你Kemen .. – GetGimphed

相关问题