Firebase Analytics的app_open事件特定日期后未同步至BigQuery如何解决
排查Firebase与BigQuery app_open事件同步停止问题
1. 先确认关联状态没断
- 登Firebase控制台,进项目设置的「集成」页,看看BigQuery关联是不是还在活跃状态,别是不小心被断开了。
- 去BigQuery里查关联数据集的权限,确保
firebase-measurement@system.gserviceaccount.com这个服务账号还能编辑或拥有这个数据集,权限丢了也会同步失败。
2. 区分是采集端还是同步端的问题
- 打开Firebase Analytics的「事件」页面,看看特定日期后
app_open在控制台里有没有数据:- 如果控制台也没数据,那就是App端的问题:检查Firebase SDK初始化正常不,是不是更了SDK版本出兼容问题;另外确认没手动关掉
app_open的自动采集(默认是开的)。 - 控制台有数据但BigQuery没有,那就是同步链路出问题了。
- 如果控制台也没数据,那就是App端的问题:检查Firebase SDK初始化正常不,是不是更了SDK版本出兼容问题;另外确认没手动关掉
3. 检查BigQuery的同步配置
- 进BigQuery找关联的Firebase数据集,看看有没有最新日期的
events_YYYYMMDD表,要是连表都没生成,说明同步没跑起来。 - 看看数据集的刷新设置,是不是被改成暂停了,默认是每日同步的。
4. 查日志找具体报错
- 在Firebase的BigQuery集成页面,看同步状态日志,特定日期后有没有报错,比如权限错误、数据格式异常之类的,这些都会导致同步停掉。
- 如果是数据量太大导致延迟,等会儿再看,或者找Firebase支持确认下队列情况。
用app_open统计用户打开数和次数
同步恢复后,或者要从现有数据统计,直接用BigQuery SQL查询即可:
每日统计(独立用户数+总打开次数)
SELECT DATE(event_date) AS event_date, COUNT(DISTINCT user_pseudo_id) AS unique_open_users, -- 每日独立打开用户数 COUNT(event_name) AS total_open_times -- 每日总打开次数 FROM `你的项目ID.analytics_xxxxxx.events_*` -- 替换成自己的数据集路径 WHERE event_name = 'app_open' AND _TABLE_SUFFIX BETWEEN '起始日期YYYYMMDD' AND '结束日期YYYYMMDD' -- 替换成目标日期范围 GROUP BY event_date ORDER BY event_date DESC;
时间段累计统计
SELECT COUNT(DISTINCT user_pseudo_id) AS total_unique_users, -- 时间段内独立用户数 COUNT(event_name) AS total_open_count -- 时间段内总打开次数 FROM `你的项目ID.analytics_xxxxxx.events_*` WHERE event_name = 'app_open' AND _TABLE_SUFFIX BETWEEN '20240101' AND '20240630'; -- 替换成目标时间段
提示:如果你的App用了登录用户ID(user_id),可以把user_pseudo_id换成user_id,这样统计的是登录用户的打开数据,更精准。
内容的提问来源于stack exchange,提问作者Ameya Warade
相关产品推荐
相关产品推荐

