如何检查我的 google 分析是否在 chrome 扩展上工作?

Fel*_*sar 5 javascript analytics google-analytics google-chrome-extension

我正在尝试在 Google Analytics 上跟踪 chrome 扩展程序。

看起来它配置正确,但我看不到仪表板上的数据。不确定它是否是延迟,是否因为我在开发模式下运行扩展而被忽略,或者我是否需要配置其他东西。

我正在使用以下代码:

const gaScript = document.createElement('script');
    gaScript.type = 'text/javascript';
    gaScript.async = true;
    gaScript.src = 'https://ssl.google-analytics.com/analytics.js';
    gaScript.onload = function() {
      ga.l = +new Date;
      ga('create', 'MY_CODE', 'auto');
      ga('set', 'checkProtocolTask', null); // Disables file protocol checking.
      ga('send', 'pageview');
    }
    const s = document.getElementsByTagName('script')[0];
    s.parentNode?.insertBefore(gaScript, s);
Run Code Online (Sandbox Code Playgroud)

当我检查后台控制台时,在“网络”选项卡上,我可以看到:

  • 对“analytics.js”的请求,我可以看到文件被正确加载
  • 对 URL“collect?v=...”的请求,这似乎表明扩展程序正在将数据正确发送到谷歌服务器。当我检查此 URL 时,我可以看到它正在发送MY_CODE作为跟踪 ID 的参数

但我仍然无法在分析仪表板上看到记录的数据。知道为什么会这样吗?

更新:

多亏了米歇尔,我才能够理解这个问题。Google 创建了一种新的跟踪形式:Global Analytics,其代码不同于标准的 Universal Analytics。

今天创建分析项目的人将默认获得全局分析。我研究了它,我认为该标准现在更适合扩展。我会等待 Google 更新他们的文档以包含此案例以开始使用它

Mic*_*ani 1

为什么不使用显式代码:

// Standard Google Universal Analytics code
(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','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-XXXXXXX-1', 'auto');
ga('set', 'checkProtocolTask', function(){});
ga('send', 'pageview', '/chrome-extension/popup.html');
Run Code Online (Sandbox Code Playgroud)

我已经在我的扩展中尝试过了,效果很好。

这是我完整的工作示例代码: https://www.michelepisani.it/articoli/creare-un-estensione-di-chrome-e-tracciarla-con-google-analytics/