惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
云风的 BLOG
云风的 BLOG
IT之家
IT之家
C
Check Point Blog
T
The Blog of Author Tim Ferriss
S
SegmentFault 最新的问题
人人都是产品经理
人人都是产品经理
H
Hackread – Cybersecurity News, Data Breaches, AI and More
美团技术团队
M
MIT News - Artificial intelligence
Jina AI
Jina AI
Blog — PlanetScale
Blog — PlanetScale
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Microsoft Security Blog
Microsoft Security Blog
G
Google Developers Blog
F
Fortinet All Blogs
V
Visual Studio Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Tailwind CSS Blog
Hugging Face - Blog
Hugging Face - Blog
MyScale Blog
MyScale Blog
爱范儿
爱范儿
The Cloudflare Blog
博客园 - 三生石上(FineUI控件)

博客园 - 张润昊

项目文档治理方案形成全过程(证据审计版) Codex Subagent :如何隔离 Coding Agent 的上下文 在AI时代, 关于编程的思考 Coding Agent 工程化实践《一》 : 前端页面自验实践 大模型为什么会产生幻觉?从原理到工程防御 Codex 的 Skill 到底是怎么被调用的? Superpowers:如何约束 Coding Agent 使用 Codex 的一次危险提醒 我的Nginx 的配置分析 NextJS 安全漏洞分析 AI工具学习02 - 使用 ChatGPT 进行 PRD 产品设计 NextJS 02 - 服务端渲染 NextJS01 - page router - 问题列表 Flutter02-布局 Flutter01-本地数据库 isar React 学习 03-两种 Api 的使用 React 学习 02-commit 渲染 React 学习 01-时间切片 安卓低机型卡顿分析以优化方案 命令行 查找某个结尾的文件. 总结下vim快捷键 React技术揭密学习(二) React技术揭密学习(一) Build your own React 记账项目 - webpack优化 React源码解携(二): 走一趟render流程 macos更新后, MySQL不能启动问题
前端监控系统博客总结
张润昊 · 2021-12-27 · via 博客园 - 张润昊

前端监控系统博客总结

总结看了很多很多的文章, 了解了很多方法, 但选出最适合自己的那个, 是最难的.

没想明白的点

  • 页面卡死奔溃的时候, 如何发送异常 -> 心跳包, service worker发送数据
  • 跨域问题: ->
    • 尽可能的Patch信息, 但入侵业务太大了
  • 解决打点GIF中的最大长度问题 ->
    • 分成即时数据上报, 和行为数据上报.
    • http2/头部压缩
    • 压缩日志长度
    • 行为数据较大, 走ajax, (只针对特定站点解决, 跨域问题).
    • 行为数据较大, 可以使用sendBeacon.
  • 点击的监听事件, 在error后面执行, 如何保存起来 -> 后面的数据通过行为数据上报. 错误全部走即时上报
  • 其他script标签引入的sdk中报错, 如何捕获 -> 如果想收集其他sdk的错误, 需要标明<script crossorigin>
  • 异常隔离 -> 区分sdk异常和业务异常

前端监控的目的

  • 了解线上性能信息, 提升用户体验
  • 更快的发现异常, 定位异常, 解决异常

前端监控流程

采集 -> 上传 -> 分析 -> 展示(报警)

采集

  • 环境信息
    • url: 页面 - window.location.href
    • ua: 用户信息 - window.navigator.userAgent
    • token: 前端网页
    • user: 业务相关用户
  • 性能信息
    • 网络层面
    • 页面展示层面
  • 异常信息
    • 语法错误
    • 类型错误
    • 范围错误
    • 引用错误
    • eval错误
    • URL错误
    • 资源加载错误 (只能在捕获阶段获取到)
  • 接口信息
    • XMLHttpRequest方法拦截
    • Fetch方法
  • 行为信息
    • 点击
    • 路由
    • 滚动
    • 鼠标
    • 键盘等
  • 用户自定义信息

流程

  • ajax
  • new Image()
  • sendBeacon

分析

  • 日志上报后, 进行清洗, 获取想要的数据, 落库.
  • 数据量大的时候, 使用就需要使用Hadoop集群

展示(报警)

参考

posted @ 2021-12-27 17:09  张润昊  阅读(94)  评论()    收藏  举报