Google analytics Google Analytics自定义维度在gtag中未定义

Google analytics Google Analytics自定义维度在gtag中未定义,google-analytics,analytics,google-tag-manager,google-analytics-userid,custom-dimensions,Google Analytics,Analytics,Google Tag Manager,Google Analytics Userid,Custom Dimensions,我已经设置了4个维度。我的代码如下: <script>//<![CDATA[ window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'UA-XXXXX-1');

我已经设置了4个维度。我的代码如下:

 <script>//<![CDATA[
        window.dataLayer = window.dataLayer || [];
        function gtag() {
            dataLayer.push(arguments);
        }
        gtag('js', new Date());
        gtag('config', 'UA-XXXXX-1');

        gtag('set', {
            'user_id': _spPageInfo.userId,
            'JobTitle': jobTitle,
            'Department': department,
            'UserLocation': Location
        });
        gtag('send', 'pageview');

        //]]>
    </script>
    <script>//<![CDATA[
        // <!-- Google Tag Manager -->
        (function (w, d, s, l, i) {
            w[l] = w[l] || [];
            w[l].push({
                'gtm.start': new Date().getTime(),
                event: 'gtm.js'
            });
            var f = d.getElementsByTagName(s)[0],
                j = d.createElement(s),
                dl = l != 'dataLayer' ? '&l=' + l : '';
            j.async = true;
            j.src =
                'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
            f.parentNode.insertBefore(j, f);
        })(window, document, 'script', 'dataLayer', 'GTM-XXXX');

        // <!-- End Google Tag Manager -->

        //]]>
    </script>
我也在tag manager中设置了Dimension。 在调试模式下,我可以看到Conatiner加载而不是页面加载

在数据层中,我看不到任何事件名称或维度名称

24小时后,其显示未定义。 请告诉我这里缺少什么?

您需要使用配置命令传递自定义映射参数,然后将命名维度值映射到自定义维度。请看一个例子。此外,您需要在config之前调用set,因为config实际上是将pageview命中传递给google analytics,所以在config之后调用set不会影响您的数据 最终,您的代码将如下所示:

gtag('js', new Date());
gtag('set', {'custom_map': {
  'dimension1': 'department',
  'dimension2': 'jobTitile',
  // the same for other custom dimensions
}})
gtag('config', 'UA-XXXXX-1', { 'jobTitile': 'engineer', 'department':'maintenance' });

此外,避免同时使用GTM和gtag代码,否则会将重复的数据发送到分析。

谢谢,现在我看到加载了容器:1{event:'GTM.js',GTM.start:1591683140892,GTM.uniqueventid:4},在加载文档或Dom加载窗口时:{event:'GTM.load',GTM.uniqueventid:215}此消息后的数据层值:{event:'gtm.load',gtm:{start:1591683669174,uniqueventid:215},自定义映射:{dimension1:'user\u id',dimension2:'JobTitle',dimension3:'Department',dimension4:'FacilityLocation'}变量值仍然未定义。您在GTM中看到的将是未定义的,因为GTM使用另一种机制来分析自定义维度。如果您打算使用GTM,请参考相应的GTM文档,这是否意味着我需要从GTM中删除手动输入的自定义维度,并且只保留在JS代码中?因为我现在看到我的身份证号码在工作标题下有两行,一行是工作标题,另一行是开发者。JobTitle是我的维度名称。如果要使用gtag analytics实现,请在代码中保留所有gtag调用。如果要使用GTM并希望在预览选项卡中查看数据,请删除所有代码。按照GTM说明正确配置分析标签。再次说明-GTM和GTM预览模式与您的gtag代码无关。即使您的gtag代码工作正常,您也不会从GTM预览选项卡中看到任何确认。GTM和gtag是两种截然不同的不兼容工具。