命令被忽略.未知目标:在Google Analytics跟踪代码中设置自定义维度时未定义

crm*_*cco 9 javascript google-analytics web-analytics

我在我的Google Analytics跟踪代码中设置了自定义维度,但是我在Chrome控制台中看到了一个奇怪的错误,其中启用了Google Analytics调试程序.

这是我在每个页面上触发的代码.我正在向区域帐户以及全局/汇总帐户报告,我创建了两个跟踪器来实现此目的.

<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','https://www.google-analytics.com/analytics.js','ga');

    ga('create', 'UA-85521872-1', 'auto', 'crmpiccoglobal');
    ga('create', 'UA-85521872-3', 'auto', 'crmpiccoregion');

    ga('set', 'dimension1', 'premium');

    ga('crmpiccoglobal.send', 'pageview');
    ga('crmpiccoregion.send', 'pageview');
</script>
Run Code Online (Sandbox Code Playgroud)

在控制台中我看到了这个:

运行命令:ga("set","dimension1","premium")

analytics_debug.js:10命令被忽略.未知目标:未定义

我已经在GA中创建了自定义维度,我想在其中访问它.

Eik*_*rff 17

您需要在"set"命令中使用跟踪器名称,​​否则GA会将命令应用于默认跟踪器t0(在您的示例中不存在):

  ga('crmpiccoglobal.set', 'dimension1', 'premium');
  ga('crmpiccoregion.set', 'dimension1', 'premium');

  ga('crmpiccoglobal.send', 'pageview');
  ga('crmpiccoregion.send', 'pageview');
Run Code Online (Sandbox Code Playgroud)

  • 就我而言,我使用GTM来插入分析.它将名称设置为gtm1 (4认同)

Cul*_*tes 5

如果您使用 Google Tag Manager 加载您的 Google Analytics 并且您不知道正在创建什么跟踪器,请使用以下命令:

sendGa(name : string, data: any) {
    (<any>window).ga(() => {
        const trackers = (<any>window).ga.getAll();
        const firstTracker = trackers[0];
        const trackerName = firstTracker.get('name');
        (<any>window).ga(trackerName + '.' + name, data);
    });
}
Run Code Online (Sandbox Code Playgroud)

文档:https : //developers.google.com/analytics/devguides/collection/analyticsjs/accessing-trackers

  • 您可以使用“firstTracker.get('name')”获取跟踪器名称 https://developers.google.com/analytics/devguides/collection/analyticsjs/accessing-trackers#getting_data_stored_on_a_tracker (2认同)