问题与分组

Blipit 接收的每个事件都会得到一个指纹。指纹相同的事件归入同一个问题,问题带有计数、首次和最近出现时间、涉及的 release 和状态。你处理的是问题而不是事件,所以一个触发一万次的 bug 在列表中只是一行。

1指纹如何生成

如果 SDK 发送了 fingerprint 数组,以它为准。否则 Blipit 对异常类型加上最后五个应用内堆栈帧(文件名和函数)做哈希。没有应用内帧时,使用异常类型和消息,其中数字、十六进制地址和 UUID 会被替换,因此“order 4821 not found”和“order 9 not found”会归为一组。没有异常的事件按规范化后的消息分组。

2用规则更改分组

打开项目页面并添加分组规则。规则按顺序执行,第一个匹配的生效。规则可按“异常类型等于”、“消息匹配正则”、“堆栈帧文件名或函数名包含”或“标签等于”匹配。“归组”把所有匹配事件放进一个问题;“忽略”在存储前丢弃事件。规则最多需要一分钟生效。正则限制为 200 个字符,必须能编译,且不能使用反向引用、环视断言或 (a+)+ 之类的嵌套重复。

3解决、忽略、重新打开

问题的状态为未解决、已解决或已忽略。发布修复后将其标记为已解决:如果错误再次出现,问题会作为回归重新打开并向你告警。问题会说明它是在同一个 release 中复发(修复从未上线)还是在后续 release 中复发(有东西重新引入了它)。“忽略”会继续统计事件但停止告警。“重新打开”将其恢复为未解决。问题列表支持批量操作,告警邮件中带有“解决”和“忽略”链接,点击后需确认且只能使用一次。

4暂停告警

在问题页面上,可暂停 1 小时、24 小时、7 天,或接下来的 100 或 1,000 次发生。事件仍会被记录和统计;在暂停结束前会跳过新问题和回归告警。安全告警不受影响。

须知

  • Blipit 保留问题首个事件、每次回归、每个安全事件以及每个 UTC 小时内前 20 个事件的完整载荷。其他事件只存储摘要(id、时间、平台、级别、release、环境、标签、用户 id、SDK)。问题页面会显示“正在显示 M 个事件中 N 个的完整详情”;堆栈跟踪、面包屑和 AI 修复读取最新的完整载荷。
  • 超过套餐的每月事件上限后,每 10 个事件保留 1 个,其余计为已采样丢弃;不会计费。用量页面显示采样数量。
  • 每个项目每小时最多 30 条新问题或回归告警,因此错误风暴不会淹没你的收件箱。

遇到问题?发邮件至 support@blipit.io。每个项目的密钥和确切的 DSN 在 app.blipit.io 的“API 密钥”下。