Django-CSR 架构总结 Sentry
- 应用的错误,异常监控统计,报警通知
- 性能监控统计,对问题进行跟踪
- API 简单、易用,自动集成
- 安装简单:架构依赖多,但使用 Docker 可以一个命令安装
- 自动对错误,异常进行统计聚合,按照上下文的 Tag 进行聚合
- 可以对性能进行统计分析,可抽样
- 可视化的趋势分析
- 多租户,支持双因素认证,敏感内容自动脱敏
- 开放的架构:可与 AD 域账号集成,与 Google/Stackoverflow 等账号集成
- 开放的架构:有完善的插件支持:webhook/GitlablJira/Slack/PushOver/....
- 支持不同环境(开发测试、预发、线上)
- 可以配置灵活的告警
- 跨端的支持:Python/Java/JavaScript/Ruby/Go/..., Android /iOS/Web/...
- symbolicator:用来解析函数名,堆栈中的文件位置,代码上下文
- Relay:用来处理收到的请求,会立刻返回 200 或者 429,然后把事件放在内存中排队,然后发到 Kafka ingest-events
- ngest-consumer:消费处理 Relay 发出的消息
- process_event:堆栈处理,插件预处理
- postgresql:用来保存完整的事件数据
- Snuba:事件数据的存储和查询服务
- clickhouse:用作数据仓库,用于 OLAP,搜索,聚合,标签统计
- 用作搜索,图计算,规则处理查询
- Snuba 对 ClickHouse 进行抽象和隔离
- 由两个部分组成的服务
- 提供数据的查询、聚合统计分析服务