能否查看Firebase Authentication每日发送的身份验证邮件数量?
可行,但需通过自定义方案实现
Firebase控制台和Google Cloud控制台确实没有提供直接按日统计身份验证邮件发送量的功能,但可以通过以下两种方式实现需求:
方案一:自定义事件记录
在你的应用代码中,每次调用Firebase Auth发送验证邮件、密码重置邮件等接口并确认调用成功后,将一条包含时间戳、邮件类型的记录写入Firebase Firestore或Realtime Database。之后你可以通过查询这些记录,按日期分组统计每日的邮件发送数量。
示例代码片段(以Web端为例):
// 发送验证邮件后记录统计数据 async function sendVerificationEmail(user) { await user.sendEmailVerification(); // 写入Firestore统计集合 await firebase.firestore().collection('auth_email_stats').add({ timestamp: firebase.firestore.FieldValue.serverTimestamp(), email_type: 'verification', user_id: user.uid }); }
方案二:利用Cloud Logging + BigQuery统计
Firebase Auth发送邮件的操作会生成日志,你可以将这些日志导出到BigQuery进行分析:
- 进入Google Cloud控制台的Cloud Logging,创建一个日志导出sink,目标选择BigQuery,日志筛选条件设置为
logName="projects/[你的项目ID]/logs/firebase.googleapis.com%2Fauth"并包含sendEmail相关操作; - 日志导出到BigQuery后,编写SQL查询按日期分组统计邮件发送量,示例查询语句:
SELECT DATE(timestamp) AS date, COUNT(*) AS email_count FROM `[你的BigQuery数据集].[表名]` WHERE jsonPayload.eventType LIKE '%sendEmail%' GROUP BY date ORDER BY date DESC
内容的提问来源于stack exchange,提问作者Toru
相关产品推荐
相关产品推荐

