QA不是万能的,用户的浏览环境非常复杂,很多情况无法靠测试用例去覆盖,所以最好建立一个前端错误日志,在真实用户端收集bug. try&catch是一个捕获前端错误的常见方法,比如: { //给所有脚本设置一个统一入口,比如设置一个init函数 init(); }catch(e){ //处理错误,将错误信息上报给服务器 } 像上面这样,所有脚本统一用init作为入口,一旦发生错误就会被try捕获,然后交给catch去处理. 这种做法虽然能够收集错误信息,但弊端是必须统一一个脚本入口,并且把入口放在…
本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU&list=PL6n9fhu94yhUA99nOsJkKXBqokT3MBK0b 总的来说,在Javascript中我们用try/catch语句来获取错误.如果一个错误不是由try..catch语句块捕捉的话,那么则会发出一个onerror事件. 当一个错误如下例中一样出现后,我们想要将一个函数赋给w…
Event reference:      https://developer.mozilla.org/en-US/docs/Web/Events http://w3c.github.io/html/webappapis.html#events 原文: https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror An event handler for the error event. Error ev…
背景 在这越来越发达的网络时代,web应用也是越来越复杂,尤其是前端的开发,也是越来越受重视. 所以在我们前端开发完成后,会有一些列的web应用的上线验证,如自测.QA测试.code review 等,以确保 应用能在生产上没有事故. 但是事以愿违,很多时候我们都会接受的客户的一些线上问题,这些问题有时候可能你是自己开发的原因本身存 在的问题,这样的问题一般能够在测试环境重现,我们很快的能定位到问题关键位置.但是,很多时候有一些问题, 我们在测试中并未发现,可是在线上却有部分人出现了,问题确确实…
详见: http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp75   window.onerror = function(sMessage,sUrl,sLine){}; onerror函数的三个参数用于确定错误确切的信息,代表的意思依次为:错误信息:发生错误的文件:发生错误的行号. 示例: <SCRIPT> window.onerror=fnErrorTrap; function fnErrorTrap(sMsg,sUrl,sL…
背景 现在的前端项目越来越复杂,在不同的客户端会产生各种在开发人员机器上不会出现的问题.当用户报告一个问题给开发人员的时候,开发人员无法直接定位问题.在此前,听过一次鹅厂的前端人员,他们对QQ里面的网页监控的一个讲座,深有感触.但是鹅厂是自己开发了一系统,从开发到运维到错误分析,是一整套的体系.对于我们的项目,我们不可能选择自己开发,在网上找到一个开源的产品 [ Sentry ],基本体现了鹅厂的那套思路. 关于 Sentry Sentry 官网 以下是官网首页关于Sentry的介绍 Stop…
第一步在项目中找到App_Start文件夹下建立一个错误日志过滤器. 第二步在Global.asax文件中注册下日志过滤器 第三步: 继承一个ExceptionFilterAtrribute 第四步:重写基类 /// <summary> /// 重写基类的异常处理方法 /// </summary> /// <param name="actionExecutedContext"></param> public override void O…
前端监控系统 目前已经上线,欢迎使用! 服务器搭建好了,可以着手开发了. 其实前端需要分析的数据有很多,包括,PVUV, 接口请求统计,耗时统计,JS错误统计,用户使用设备统计,用户地域分布,页面用户行为分析等等.这个系统是由JS错误搜集起源,所以先讲讲JS错误日志搜集篇. 一.创建一个js文件,命名为monitor.js 如果要监控前端项目的数据,就需要在页面的最顶部嵌入一段我们的监控代码,这也是最核心的部分,所以我把它单独拎出来立项. 二.开始监控JS的报错日志 window.onerror…
今天一个客户说他们的一个同事用OPPO R11的手机访问不了我们的项目,打开后一片空白,虽然后面发现你的手机网络断了,但是想起来毕竟手机端没有调试的工具可以查看抛出的错误信息,方便我们追踪问题,后端的大牛同事提示我们看看vconsole.js.写这个js的大牛的github地址是:https://github.com/Tencent/vConsole 实现效果地址(可能时间久了就访问不了,各位见谅):https://www.w3cways.com/demo/vconsole/ vConsole:…
错误日志监控也可称为业务逻辑监控, 旨在对业务系统运行过程中产生的错误日志进行收集归纳和监控告警.似乎有那么点曾相识?没错... 就是提到的“APM应用性能监控”.但它又与APM不同,APM系统主要注重应用层的行为分析,收集的更多是运营方向的数据.而sentry所做的是收集应用底层代码的崩溃信息,便于码侬们排查代码异常.简单来说它就是一个面向技术码侬的排障工具. 1. 场景描述 随着运维自动化流程的推进, 各类运维工具和系统也像雨后春笋般涌现. 目前我们自主开发的运维系统的数量已经接近两位数.…