# 简介
这个模块,将带大家一起从零开始实现一个企业级前端监控系统,我给他起名叫 Beaconify (opens new window),希望能够为用户提供完整的、全景式的监控和埋点方案。目标是覆盖前端生产环境中大部分监控场景。整体项目分为四部分
- 监控SDK: 适配多平台,js、vue、react、小程序等场景,提供性能、异常、白屏、卡顿和用户行为回放等场景。
- 接入后端: 接受监控数据并处理
- 后台管理系统: 提供可视化查看
- 后台管理系统后端: 针对后台管理系统需求提供api
WARNING
我知道node.js做监控系统的后台肯定有性能和瓶颈问题,但作为一名前端coder来说,这是一个最好的学习选择。期待其他语言后端大神开发其他语言的版本。
# 为什么不使用Sentry
首先可以肯定的是,Sentry
是一个优秀的监控系统,但从整体的角度来讲,有一些需求Sentry
还是不太满足。
- Sentry 主要精力还是放在异常监控上,其他方面的监控能力较弱
- 公司内部有其他工具需要联动
- Sentry 使用python开发,前端开发插件有上手成本
- 开源协议问题
- 二次开发成本高
# 能学到什么
- 企业级项目架构设计的完整历程
- 企业级前端监控的实现
- 通过rollup.js (opens new window)定制化自己的脚手架
- 掌握前端
JSSDK
的实际开发应用 - 自己的
npm
包从开发到发布到维护的完整链路 - Midway.js (opens new window) 完整搭建的后端服务
CI\CD
自动化测试及发布Docker
、K8s
结合前端项目的使用- 相关大数据的基础知识
# 前置知识
- 熟悉JavaScript
- 了解Node.js
- 阅读过页面监控相关知识
整体架构 →