Firebase Analytics 事件记录错误
Posted
技术标签:
【中文标题】Firebase Analytics 事件记录错误【英文标题】:Firebase Analytics event logging error 【发布时间】:2016-11-22 19:53:24 【问题描述】:我使用 Firebase Analytics,我的应用使用以下代码记录了一些事件:
Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, "SOME_ID")
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "SOME_TYPE");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);
而且它似乎大部分时间都运行良好。在 logcat 我有这样的东西:
Logging event (FE): select_content, Bundle[_o=app, content_type=SOME_TYPE, item_id=SOME_ID]
但是对于我收到的一些事件
Logging event (FE): select_content, Bundle[_o=app, _ev=item_id, _err=4, content_type=SOME_TYPE]
显然,_err=4 是某种错误代码。什么意思?
在出现错误的情况下,我的item_id
是一个很长的字符串(20-30 个符号)。也许item_id
的长度有限制?
【问题讨论】:
【参考方案1】:根据Official Documentation:
参数名称最长可达 40 个字符,只能包含 字母数字字符和下划线 ("_"),并且必须以 字母字符。参数值最长可达 100 个字符。
因此,它们对 Key 和 Value 都有长度限制。
密钥:40 个字符长
值:100 个字符长
【讨论】:
感谢重播。 Google 如何期望开发者将所有事件值标准化为小于 36 个字符?? 与错误代码 4 无关,但与错误代码 7 相关(“用户属性值太长”):我将用户属性的值剥离为 40 个字符,但事实证明是实际的正如@OdedRegev 提到的,限制是 36 个字符。我尝试缩短属性键,但没有效果。 如果这用于 Firebase+GTM SDK - 您现在可以使用更长的值【参考方案2】:您正在使用超过最大值限制的参数记录事件。随附的 FA/错误日志消息包含您可能错过的更多详细信息。
以下是 Firebase Analytics 错误代码列表: 1 - Firebase 项目 ID 无效。 2 - 事件名称无效(空、太长、无效字符)。 3 - 事件参数名称无效(空、太长、无效字符)。 4 - 事件参数值太长。 5 - 事件有超过 25 个参数。 6 - 用户属性名称无效(空、太长、无效字符)。 7 - 用户属性值太长。 8 - 应用实例记录超过 500 种独特的事件类型。 9 - 应用实例设置超过 25 个唯一用户属性。 10 - 应用实例在一天内超过了转化事件限制。 13 - 事件名称已保留。 14 - 事件参数名称被保留。 15 - 保留用户属性名称。 11、12、16 - 内部错误。
【讨论】:
【参考方案3】:是的,他们对 item_id 的长度有限制。在我的情况下,当我将它与我的应用程序集成时,当我的 item_id 很长时也会出现同样的错误。
【讨论】:
【参考方案4】:请参阅Official Google Docs 中的错误代码值。它明确指出错误 4 表示“事件参数值太长”。希望这也能帮助有不同错误代码的人。
【讨论】:
以上是关于Firebase Analytics 事件记录错误的主要内容,如果未能解决你的问题,请参考以下文章
Firebase Analytics 在应用不活动时错误地记录参与时间
什么是 web 应用程序的 firebase.analytics() 默认记录事件?
使用 Firebase Analytics 事件记录 OneSignal 推送通知
Firebase Analytics / Firebase Crashlytics - 报告错误