Oll*_*nes 11 firebase google-bigquery crashlytics firebase-crash-reporting google-data-studio
我已将我的 firebase crashlytics 数据链接到 bigquery 并设置了谷歌提供的数据工作室模板。除了我的仪表板所需的最重要的指标之外,还有很多很棒的数据:无崩溃用户和无崩溃会话的百分比。
在我可以用来计算这个的模式中没有什么突出的。
有什么想法可以得到这个值吗?它显示在 firebase 仪表板中,因此它必须可用。
我查看了文档并找到了event_name='app_exception'. 有了它,你可以写一个查询
WITH userCrashes AS (
  SELECT user_pseudo_id, MAX(event_name = 'app_exception') hasCrash 
  FROM `firebase-public-project.analytics_153293282.events_20181003` 
  GROUP BY 1
)
SELECT
  IF(hasCrash,'crashed','crash-free') crashState,
  COUNT(DISTINCT user_pseudo_id) AS users,
  ROUND(COUNT(DISTINCT user_pseudo_id) / SUM(COUNT(DISTINCT user_pseudo_id)) OVER (),2) AS userShare
FROM userCrashes
GROUP BY 1
但事件参数中也有一个标志“致命”。在示例数据中,它总是正确的,但如果您想尊重它,您可以执行以下操作
WITH userCrashes AS (
  SELECT 
    user_pseudo_id, 
    MAX(event_name = 'app_exception') hasCrash,
    MAX(event_name = 'app_exception' 
      AND (select value.int_value=1 from unnest(event_params) where key='fatal')
    ) hasFatalCrash
  FROM `firebase-public-project.analytics_153293282.events_20181003` 
  GROUP BY 1
)
SELECT
  IF(hasCrash,'crashed','crash-free') crashState,
  IF(hasFatalCrash,'crashed fatal','crash-free') fatalCrashState,
  COUNT(DISTINCT user_pseudo_id) AS users,
  ROUND(COUNT(DISTINCT user_pseudo_id) / SUM(COUNT(DISTINCT user_pseudo_id)) OVER (),2) AS userShare
FROM userCrashes
GROUP BY 1,2
免责声明:我从未使用过 firebase,所以这只是基于文档和示例数据。不过,希望它有所帮助。
| 归档时间: | 
 | 
| 查看次数: | 2645 次 | 
| 最近记录: |