Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google analytics google analytics是否随时间保持自定义维度值?_Google Analytics_Google Analytics Api_Universal Analytics - Fatal编程技术网

Google analytics google analytics是否随时间保持自定义维度值?

Google analytics google analytics是否随时间保持自定义维度值?,google-analytics,google-analytics-api,universal-analytics,Google Analytics,Google Analytics Api,Universal Analytics,“用户范围”维度是否会跟踪维度值的更改? 即使维度已经被更新,它还会记得在过去一段时间内为维度设置的值吗? 维度值是否总是与报告时间段相关,还是每次更新都会被覆盖?为了用一些证据支持DalmTo的评论,我做了科学研究,并创建了一个非常小的测试页面: <html> <head> <title>Test</title> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject'

“用户范围”维度是否会跟踪维度值的更改? 即使维度已经被更新,它还会记得在过去一段时间内为维度设置的值吗?
维度值是否总是与报告时间段相关,还是每次更新都会被覆盖?

为了用一些证据支持DalmTo的评论,我做了科学研究,并创建了一个非常小的测试页面:

<html>
<head>
<title>Test</title>
<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-XXXXXX-XX', 'auto');


 var d = new Date();
 var currentTime = d.toLocaleTimeString();

  var dimensionValue = 'I am userscope' + d + " - " + currentTime;
  ga('set', 'dimension1', dimensionValue);

  var dimensionValue = 'I am sessionscope' + d + " - " + currentTime;
  ga('set', 'dimension2', dimensionValue);

  var dimensionValue = 'I am hitscope' + d + " - " + currentTime;
  ga('set', 'dimension3', dimensionValue);

 ga('send', 'pageview');
</script>
</head>
<body>
</body>
</html>

试验
(函数(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]| |函数(){
(i[r].q=i[r].q | |[]).push(参数)},i[r].l=1*新日期();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(窗口,文档,“脚本”,“www.google-analytics.com/analytics.js”,“ga”);
ga(“创建”、“UA-XXXXXX-XX”、“自动”);
var d=新日期();
var currentTime=d.toLocaleTimeString();
var dimensionValue='I am userscope'+d+“-”+currentTime;
ga('set','dimension1',dimensionValue);
var dimensionValue='I am sessionscope'+d+“-”+currentTime;
ga('set','dimension2',dimensionValue);
var dimensionValue='我是hitscope'+d+“-”+currentTime;
ga('set','dimension3',dimensionValue);
ga(‘发送’、‘页面浏览’);
所以这会发送一条愚蠢的消息加上datetime作为维度值

测试用例的目的是确保除了我之外没有人访问该站点,并且所有调用都来自同一个客户端id/用户(尽管是在多个会话中)。另外一个好处是只需点击几次,GA中的处理时间只有几分钟,所以我很快就能看到结果

我在12点左右打了几次电话,几分钟前又打了一次

结果:

  • 命中范围的自定义维度是按每次命中设置的(这里没有意外)
  • 会话范围的维度获取会话中的最后一个值(dito)
  • 用户范围的维度获取会话中的最后一个值。但它们是按会话分配的,而不是按用户分配的
可能相关的屏幕截图:

这是针对同一用户的两个会话,但对于用户范围的自定义维度,它们显示了两个不同的值。所以就像Daimto说的,只有现在你才有了一个可以复制的测试用例,而不需要依赖任何人的经验:-)

当然,这意味着您应该注意不要为每个用户多次设置用户范围的维度(否则您的段中可能会出现不一致)


(为了完整性起见,这可能需要在启用会话缝合的用户ID视图中重复,但我怀疑这会有很大的不同)。

为了用一些证据支持DalmTo的评论,我做了科学研究,并构建了一个非常小的测试页面:

<html>
<head>
<title>Test</title>
<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-XXXXXX-XX', 'auto');


 var d = new Date();
 var currentTime = d.toLocaleTimeString();

  var dimensionValue = 'I am userscope' + d + " - " + currentTime;
  ga('set', 'dimension1', dimensionValue);

  var dimensionValue = 'I am sessionscope' + d + " - " + currentTime;
  ga('set', 'dimension2', dimensionValue);

  var dimensionValue = 'I am hitscope' + d + " - " + currentTime;
  ga('set', 'dimension3', dimensionValue);

 ga('send', 'pageview');
</script>
</head>
<body>
</body>
</html>

试验
(函数(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]| |函数(){
(i[r].q=i[r].q | |[]).push(参数)},i[r].l=1*新日期();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(窗口,文档,“脚本”,“www.google-analytics.com/analytics.js”,“ga”);
ga(“创建”、“UA-XXXXXX-XX”、“自动”);
var d=新日期();
var currentTime=d.toLocaleTimeString();
var dimensionValue='I am userscope'+d+“-”+currentTime;
ga('set','dimension1',dimensionValue);
var dimensionValue='I am sessionscope'+d+“-”+currentTime;
ga('set','dimension2',dimensionValue);
var dimensionValue='我是hitscope'+d+“-”+currentTime;
ga('set','dimension3',dimensionValue);
ga(‘发送’、‘页面浏览’);
所以这会发送一条愚蠢的消息加上datetime作为维度值

测试用例的目的是确保除了我之外没有人访问该站点,并且所有调用都来自同一个客户端id/用户(尽管是在多个会话中)。另外一个好处是只需点击几次,GA中的处理时间只有几分钟,所以我很快就能看到结果

我在12点左右打了几次电话,几分钟前又打了一次

结果:

  • 命中范围的自定义维度是按每次命中设置的(这里没有意外)
  • 会话范围的维度获取会话中的最后一个值(dito)
  • 用户范围的维度获取会话中的最后一个值。但它们是按会话分配的,而不是按用户分配的
可能相关的屏幕截图:

这是针对同一用户的两个会话,但对于用户范围的自定义维度,它们显示了两个不同的值。所以就像Daimto说的,只有现在你才有了一个可以复制的测试用例,而不需要依赖任何人的经验:-)

当然,这意味着您应该注意不要为每个用户多次设置用户范围的维度(否则您的段中可能会出现不一致)


(为了完整性起见,这可能需要在启用会话缝合的UserId视图中重复,但我怀疑这是否会有很大的不同).

Google analytics不会更新数据,如果在某个时间点记录了某个维度或度量的值,则该值不会更改。如果在某个时间点记录了某个维度或度量的值,则Google analytics不会更新数据,而该值不会更改。如果记录了某个维度的值,则Google analytics不会更新数据或某个时间点的度量值,该值不会更改。