主要观点总结
文章介绍了如何搭建一个用于监控Vue项目错误的Node.js服务。服务包括部署后台服务、收集前端错误、提交信息到后台分析源码位置及记录日志,以及使用不同的方式处理js、vue和window的错误。通过解析source map文件,找出源代码中的错误位置。同时,服务还提供了上传js.map文件的功能,以便更准确地解析错误。最后,文章还介绍了如何在服务器上持久化运行该服务,以及如何处理跨域问题。
关键观点总结
关键观点1: 部署后台服务
使用express搭建后台服务,监听前端发送的错误信息。
关键观点2: 收集前端错误
使用try-catch、window.addEventListener、unhandledrejection等方式收集前端错误。
关键观点3: 提交信息到后台分析源码位置及记录日志
通过Ajax将错误信息发送到后台,并在后台解析source map文件,找出源码中的错误位置。
关键观点4: 处理js、vue和window的错误
使用不同的方式处理同步、异步、资源加载、Promise、async/await的错误,并通过Vue的全局错误处理函数收集vue错误。
关键观点5: 上传js.map文件
在打包Vue项目时,将js.map文件上传到服务器,以便更准确地解析错误。
关键观点6: 在服务器上持久化运行服务
使用pm2在服务器上运行Node.js服务,实现服务的持久化运行。
关键观点7: 处理跨域问题
在服务端设置CORS,允许特定的来源访问该服务。
文章预览
大厂技术 高级前端 Node进阶 点击上方 程序员成长指北 ,关注公众号 回复 1 ,加入高级Node交流群 前言 项目上线之后,用户如果出现错误(代码报错、资源加载失败以及其他情况),基本上没有办法复现,如果用户出了问题但是不反馈或直接不用了,对开发者或公司来说都是损失。 由于我这个项目比较小,只是一个迷你商城,所以不需要收集很复杂的数据,只需要知道有没有资源加载失败、哪行代码报错就可以了,市面上有很多现成的监控平台比如sentry,在这里我选择通过nodejs自己搭一个服务。 概述 我的项目是使用Vue2写的,所以本文主要是讲Vue相关的部署过程 1、部署后台服务(使用express) 2、收集前端错误(主要是Vue) 3、提交信息到后台分析源码位置及记录日志 js异常处理 function test1 ( ) { console .log( 'test1 Start' );
………………………………