Firebase Crashlytics 触发器

您可以触发一个函数来响应 Crashlytics 问题事件,包括新问题、回归问题和疾速崩溃提醒。在响应问题事件时,您可以执行以下操作:

如需更多使用场景示例,请参阅 Cloud Functions 有哪些用途?

触发 Crashlytics 函数

要触发 Crashlytics 函数,请先使用 functions.crashlytics.issue() 生成一个 IssueBuilder,然后调用该构建器的相应问题生成函数:

函数说明
onNew()

当您的应用首次遇到某个问题时,就会触发新问题事件。


exports.sendOnNewIssue = functions.crashlytics.issue().onNew(async (issue) => {
  // ...
});
onRegressed()

如果某个问题在 Crashlytics 中完结后又重新出现,则触发回归问题事件。示例:


exports.sendOnRegressedIssue = functions.crashlytics.issue().onRegressed(async (issue) => {
  // ...
});
onVelocityAlert()

当某个给定版本中有大量会话出现崩溃时,就会触发疾速崩溃提醒事件。示例:


exports.sendOnVelocityAlert = functions.crashlytics.issue().onVelocityAlert(async (issue) => {
  // ...
});

访问事件属性

使用 IssueBuilder 创建的每个事件触发器都会返回一个 Issue,其中包含问题的名称、ID、相关应用信息等属性。

例如,当您的应用遇到新问题时,您可以向 Slack 发送一条包含问题 ID 和标题的消息:

exports.postOnNewIssue = functions.crashlytics.issue().onNew(async (issue) => {
  const issueId = issue.issueId;
  const issueTitle = issue.issueTitle;
  const appName = issue.appInfo.appName;
  const appPlatform = issue.appInfo.appPlatform;
  const latestAppVersion = issue.appInfo.latestAppVersion;

  const slackMessage = `<!here|here> There is a new issue - ${issueTitle} (${issueId}) ` +
      `in ${appName}, version ${latestAppVersion} on ${appPlatform}`;

  await notifySlack(slackMessage);
  console.log(`Posted new issue ${issueId} successfully to Slack`);
});

发送以下问题的反馈:

此网页
需要帮助?请访问我们的支持页面