hugh 的个人博客

Everyday is a new day

前端监控实践记录

1. 为什么需要前端监控

a. 前端框架日益复杂

b. 前端负责的业务逻辑越来越重

c. 浏览器的多样性

d. 前端作为入口,是我们了解应用健康程度的首选方式, 同时前端沟通了用户及后台, 让我们能获取更多更全面的数据

 

2. 如何结合现有条件快速推进前端监控项目

一个前端监控项目常规来说:

 a.  首先得有一个数据后台,用于数据收集、过滤、存储, 通常是消息中间件 + 大数据存储+ 流式数据处理

 b.  其次需要一个展示前端,用于聚合展示数据

对于一个小型公司, 可能搭建一整套的服务存在的很多难点, 人员成本、维护成本等.. 这些都限制了前端监控的落地

 

那么如何合理利用公司现有的技术或服务,辅助我们落地一个前端监控项目呢?

一般公司内都有tracking跟踪的服务, 我们完全可以依赖该服务的数据,进行扩展, 已满足90%前端监控的需求

 

3. 如何做?

tracking服务, 是前端手动或者自动埋点上报的系统,数据包含了ua、reffer、url、os信息、brower信息、ip信息...

有了数据, 我们只需要开发一个展示的服务即可

 

 

1)、了解应用访问的pv、uv、应用的复杂性,

如每日uv 在10w, 高峰期6个小时, 占80%, 平均每个用户收20条记录(pageload、error等主要信息)

     100,000 * 20 * 80% / (6*60*60) = 74.1 /s

2). 数据库、技术框架选择

对于日百万tracking数据的量级, 使用node(集群部署)+mongodb(分片集群) ,不需要大数据处理方案也可以轻松实现我们的需求

 

3). 功能分解

a.  错误监控

b. 请求详情监控

c. 资源加载监控

d. 性能监控

e. 用户轨迹还原

 

大纲如上, 接下来就是实操的过程了...未完待续

 

 

 

 

 


标题:前端监控实践记录
作者:hugh0524
地址:https://blog.uproject.cn/articles/2019/02/20/1550658565260.html