magic starSummarize by Aili

Sentry调研

🌈 摘要

本文介绍了Sentry这个错误监控和上报平台的相关情况,包括Sentry的背景、功能特点、优缺点等。

🙋 Q&A

[01] Sentry 简介

1. Sentry 是什么?

  • Sentry 是一个全平台的错误监控和上报平台,支持私有部署和公有云版本
  • Sentry 是一个开源项目,支持100多种平台和库的接入,有丰富的 API 支持
  • 目前已有 68000 家组织在使用 Sentry 进行错误监控

2. Sentry 公司的发展历程是什么?

  • Sentry 在 2011 年开源发布了 1.0 版本,经过 10 年多的经营开发,已发布了 21 个主要版本
  • Sentry 从 2015 年开始融资,经历了 5 轮融资,目前最新估值已达 10 亿美元

[02] Sentry 的数据接入

1. Sentry 支持哪些平台和库的接入?

  • Sentry 支持 100 多种平台和库的接入,接入方式简单,成功率很高
  • Sentry 使用 Project 的概念来管理实例,每个 Project 可以对接一种类型的平台

2. 以前端监控为例,Sentry 如何进行数据接入?

  • 首先需要创建 Project,然后安装 SDK 并进行初始化配置
  • Sentry 支持自动采集错误和自定义上报错误,如 window.onerror、window.unhandledrejection 等
  • Sentry 还支持对前端框架(React、Vue 等)的错误上报

[03] Sentry 的错误管理

1. Sentry 如何管理错误?

  • Sentry 使用 issue 面板来管理错误,可以管理整个 issue 的生命周期
  • Sentry 支持配置对接外部的管理平台(如 Jira),支持数十种外部系统的对接
  • 对 issue 的基本操作有查询、Resolve、Review、Merge、Ignore 等

2. Sentry 如何展示错误的上下文信息?

  • 进入每个 issue 的详细界面可以查看错误的具体位置(前端支持配置 sourcemap)
  • 能够查看当前 issue 发生的时间线等上下文情况

[04] Sentry 的性能上报

1. Sentry 如何进行性能监控?

  • Sentry 使用 Tracing 概念上报性能数据,需要在初始化时配置 integrations
  • Sentry 支持自动采集性能数据(如页面加载、CSS 加载、JS 加载、XHR 等),也支持手动上报 Trace
  • Sentry 把上报的数据分为 Trace、Transactions、Spans 三个层级

2. Sentry 如何展示性能监控数据?

  • Sentry 针对每种平台都内置了相关的性能数据统计功能,如 FCP、LCP、FID、CLS 等
  • Sentry 能够为每个页面、每个 Transactions 生成性能报告

[05] Sentry 的其他功能

1. Sentry 还有哪些其他功能?

  • Sentry 还提供了仪表盘、tag 查询、版本功能、软件架构、私有化部署等功能

[06] Sentry 的优缺点

1. Sentry 的优点有哪些?

  • 整体易用性非常高,接入顺畅、界面流畅美观
  • 错误追踪流程非常完备,第三方扩展丰富
  • 聚焦错误日志,对减少错误率、系统 bug 非常有帮助
  • 支持私有化部署,受小公司欢迎

2. Sentry 的缺点有哪些?

  • 严重依赖上报信息的质量
  • 无法替代日志系统,Sentry 能做的,日志系统都能做
  • 无法替代传统的指标监控等,单纯基于 Sentry 无法发现隐藏的 bug 和业务逻辑问题
  • Sentry 前端监控能力相对较弱,指标也不够多
Shared by zhangjiaqi ·
© 2024 NewMotor Inc.