将 Crashlytics 数据和(可选)Firebase 会话数据导出到 Cloud Logging 后,您可以过滤日志和创建基于日志的指标。这两种方法都有助于查看、使用和分析特定数据。
如果您尚未查看如何使用数据?,请务必查看,其中提供了有关如何使用存储在 Cloud Logging 中的数据的完整列表和示例。
使用查询过滤日志
过滤日志有助于查看特定数据,还可以降低数据存储和进一步分析的费用。您可以使用 LQL(日志记录查询语言)过滤日志。
如需了解如何使用查询过滤日志,请访问使用 Logs Explorer 的查询示例和构建日志查询。下表介绍了这些查询可用的字段。
过滤条件示例
对于 Crashlytics,下面是一些查询的初始过滤条件示例:
查找特定应用版本的所有严重崩溃:
logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.issue.errorType="FATAL" jsonPayload.version.displayVersion="3.2.0"
识别在特定设备型号(例如 Pixel 6a)上发生的崩溃:
logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.device.model="Pixel 6a"
在所有严重事件中搜索特定
OutOfMemoryError:logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.issue.errorType="FATAL" jsonPayload.issue.subtitle="java.lang.OutOfMemoryError"
查找特定 Crashlytics 问题 ID 的事件:
logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.issue.id="ISSUE_ID"
日志架构
每个日志条目都有一个预定义的结构和多个可查询字段(请参阅 LogEntry)。
了解导出数据的日志架构,包括 Crashlytics 数据、Firebase 会话数据和设备日志。
创建基于日志的指标
您可以查看和构建基于日志的指标,然后在 Cloud Monitoring 中使用这些指标创建图表、自定义信息中心和自定义提醒。
利用自动记录的预定义系统指标,例如在特定时间段内发生的日志记录事件的数量。
为您的项目创建用户定义的指标。您可以统计与给定查询匹配的日志条目数,或使用匹配的日志条目跟踪特定值。您可以使用正则表达式进行过滤。请务必查看用户定义的指标的价格。
还可以使用 Cloud Monitoring 记录包含特定消息的日志条目数,或提取日志条目中报告的延迟时间信息。然后,您可以在图表和自定义提醒中使用这些指标。
基于日志的指标示例
以下是两个示例用户定义的基于日志的指标,您可以根据导出的 Crashlytics 和 Firebase 会话数据创建这些指标:
使用 Crashlytics 数据:
创建一个名为firebase/crashlytics_events的指标,其标签为errorType, 并将其定义为:logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents"使用 Firebase 会话数据:
创建一个名为firebase/session_events、标签为eventType的指标,并将其定义为:logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fsession_events"