本指南概述了修正常见实现错误时常用的问题排查步骤。
没有事件
如果您的事件未显示在 Google Analytics 中,则应注意以下一些常见问题。
首先,选择您的客户:
- 您使用的 api_secret 是否正确? - 请检查您使用的是否是正确数据流的 - api_secret。如果您为多个数据流设置 Measurement Protocol,则每个数据流都将有自己的密钥。
- 您的 api_secret 是否仍有效? - 为了帮助打击垃圾内容,您可以撤消 - api_secret。请确保您使用的- api_secret仍然有效。有权访问您的数据流的其他用户可能不小心撤消了对其的访问权限。
- 您的 api_secret 是否复制正确? - api_secret区分大小写。仔细检查 Google Analytics 界面中的- api_secret是否与在代码中使用的完全相同。
- 不要使用 - advertising_id。- 不支持将“ - advertising_id”用作有效的设备标识符。如果您使用的是 Firebase,请使用- app_instance_id;如果您使用的是 gtag.js,请使用- client_id。
- 您使用的 - firebase_app_id是否正确?- 请确保您使用的是 Firebase 应用的标识符。此值可在 Firebase 控制台中的以下位置下找到:项目设置 > 常规 > 您的应用 > 应用 ID。 - firebase_app_id不同于- app_instance_id。
- 您使用的 - app_instance_id是否正确?- 请确保您使用的是特定于 Firebase 应用安装的标识符。此值需要通过 Google Analytics for Firebase SDK 进行检索。 - Android - getAppInstanceId()
- Kotlin - getAppInstanceId()
- Swift - appInstanceID()
- Objective-C - appInstanceID
- C++ - GetAnalyticsInstanceId()
- Unity - GetAnalyticsInstanceIdAsync()
 - app_instance_id不同于- firebase_app_id。
ID 无效
由于 Measurement Procotol 支持来自 Google Analytics for Firebase SDK 和 gtag.js 的 ID,因此请确保您使用的是正确的 ID。您应该使用哪些 ID 取决于您使用的是 Google Analytics for Firebase SDK 还是 gtag.js。下文简要介绍了您应该使用哪些 ID:
Google Analytics for Firebase SDK
如果您使用的是 Google Analytics for Firebase SDK,则应该使用以下 ID:
- firebase_app_id- 可将此 ID 添加到请求的查询参数中。此 ID 可唯一标识您的 Firebase 应用。您的应用的所有用户都具有相同的- firebase_app_id。此值可在 Firebase 控制台中的以下位置下找到:
 项目设置 > 常规 > 您的应用 > 应用 ID
- app_instance_id- 可将此 ID 添加到请求的 POST 正文中。此 ID 可唯一标识 Firebase 应用的指定安装。此值会因应用的每次安装而异。各个 Firebase 平台请求此值的方法如下所示:
您不应使用以下 ID:
- firebase_instance_id- 不应将此 ID 添加到请求中。此 ID 用于标识应用的指定实例,但仅适用于 Firebase。它用于 FCM 消息等任务。
gtag.js
如果您使用的是 gtag.js,则您应该使用的 ID 如下所示:
- measurement_id- 可将此 ID 添加到请求的查询参数中。此 ID 可唯一标识数据流。您网站的所有用户都具有相同的- measurement_id。此值可在 Google Analytics 界面中的以下位置下找到:
 管理 > 数据流 > 选择您的数据流 > 衡量 ID
- client_id- 可将此 ID 添加到请求的 POST 正文中。此 ID 可唯一标识 Web 客户端的指定用户实例。此值会因应用的每个用户而异。如需了解如何检索此值,请参阅这些示例。
服务器端代码植入事件缺失
借助安装了 Measurement Protocol 客户端的服务器端跟踪代码管理器,您可以将事件以 Measurement Protocol 格式发送到容器。然后,容器会使用与所有其他 SGTM 事件相同的机制将这些事件发送到 Google Analytics。
如果您想使用 Measurement Protocol 的所有功能,请直接将事件发送到 Measurement Protocol,而不是发送到容器。