专栏名称: 程序员成长指北
专注 Node.js 技术栈分享,从 前端 到 Node.js 再到 后端数据库,祝您成为优秀的高级 Node.js 全栈工程师。一个有趣的且乐于分享的人。座右铭:今天未完成的,明天更不会完成。
今天看啥  ›  专栏  ›  程序员成长指北

什么?原来前端错误上报这么简单!!

程序员成长指北  · 公众号  ·  · 2024-08-03 22:22
    

主要观点总结

文章介绍了如何搭建一个用于监控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' );      ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览