发送JS错误日志到服务器

JS记录错误日志/捕捉错误   

//onerror提供异常信息,文件路径和发生错误代码的行数的三个参数。

window.onerror = function(e,url,index){ var msg = e.message || e|| "未知错误";
alert("错误信息:"+msg+",错误路径:"+ul+",行数:"+index); }

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

var
logger = (function(){

    var
loghost = http://127.0.0.1/log.gif?;

    var
log = function(err){

        var
img = new
Image(0,0);

        var
_url =[];

        _url.push(‘name‘+‘=‘+encodeURIComponent(err.name));

        _url.push(‘message‘+‘=‘+encodeURIComponent(err.message));

        _url.push(‘location‘+‘=‘+encodeURIComponent(err.location));

        if(err.line)

            _url.push(‘line‘+‘=‘+encodeURIComponent(err.line));

        if(err.func)

            _url.push(‘func‘+‘=‘+encodeURIComponent(err.func));

        var
url = _url.join(‘&‘);

        img.src = loghost+url;

        console.log(img.src);

    }

    return
{log:log};

})();

function
trapError(msg, URI, ln) {

    // wrap our unknown error condition in an object

    var
error = new
Error(msg);

    error.location = URI; // add custom property

    error.line = ln;

    logger.log(error);

    warnUser();

    return
true; // stop the yellow triangle

}

window.onerror = trapError;

function
foo() {

    try
{

        riskyOperation();

    } catch
(err) {

        // add custom property

        err.location = location.href;

        err.func = ‘foo‘;

        logger.log(err);

        warnUser();

    }

}

function
warnUser() {

    alert("An error has occurred while processing this page.\

        Our engineers have been alerted!");

    // do something

}

foo();

  

发送JS错误日志到服务器,布布扣,bubuko.com

时间: 2024-10-10 07:40:57

发送JS错误日志到服务器的相关文章

搭建前端监控系统(二)JS错误日志收集篇

===================代码展示================    监控系统地址: Demo地址                          页面探针代码: GitHub地址             分析后台地址: GitHub地址                        展示平台地址: GitHub地址                        ===================代码展示================ 对于前端应用来说,Js错误的发生直接

捕获JS 错误日志

最近在做项目的过程中,发现很多JS报错没有引起重视,我就想想把JS错误捕获了,然后展示在我们一个平台上 具体实现代码: window.onerror = function(message, url, lineNumber,columnNo,error) {     var data = {         'message':message,         'url':url,         'error':error.stack     };     $.ajax({         ur

Yii2 捕获错误日志

在技术开发中,捕获程序框架错误,是非常必要的一件事情,我们公司使用Yii2框架,简单说下Yii2的错误捕获处理 Yii2 web应用 1 配置如下 其中errorHandler就是错误处理配置,执行ErrorController的actionError 'components' => [     "urlManager" => require (__DIR__ . '/router.php'),     'errorHandler' => [         'err

7.用邮件发送错误日志

参考网址: http://php.net/manual/zh/function.error-log.php[可以解决"怎么发送错误日志到邮件"问题] http://bbs.csdn.net/topics/330204372 [可以解决问题 "Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missin

关闭服务器HTTPERR错误日志

远程登录服务器后,发现服务器的C盘满了,我感觉奇怪,记得我已经把日志移动到D盘了,怎么C盘容量还在不断减少,不断排查,发现 C:\WINDOWS\system32\LogFiles\HTTPERR 目录下有大量log文件,占用了大量空间,C盘满的原因就是这个目录的文件引起的. 默认情况下,Windows 2003服务器会把所有IIS访问错误的记录写入该目录下的 log 文件中,如果访问量比较大,可能一段时间后,日志文件就会占满C盘空间,导致服务器死机. 关闭HTTPERR目录日志文件的方法是:运

MSMQ向远程服务器发送消息错误总结

一:路径错误(Path)错误 如果向远程服务器发送消息,请使用格式名的形式,如: FormatName:Direct=TCP:121.0.0.1\\private$\\queueFormatName:Direct=OS:machinename\\private$\\queuenameFormatName:DIRECT=http://222.10.xx.xx/msmq/Private$/test注意:FontName是区分大小写的.如果表达式为"FORMATNAME:Dire......"

将android客户端的错误日志压缩上传到服务器

原文:将android客户端的错误日志压缩上传到服务器 源代码下载地址:http://www.zuidaima.com/share/1550463760370688.htm

PHP 错误与异常 笔记与总结(7)将错误日志以邮件方式发送

当系统发生了很严重的问题,需要立刻发送给管理员.可以通过 error_log() 将错误以邮件形式发送到邮箱. 在 php.ini 中设置: sendmail_from = [email protected] 然后设置: sendmail_path = "G:\sendmail\sendmail.exe -t" 其中:G:\sendmail\sendmail.exe 是邮件客户端的地址. 代码: <?php //关闭错误显示 ini_set('display_errors', 0

从 Node.js 错误中获得的经验

有多少次你发现自己在终端或监控系统内查看堆栈轨迹,但并不能看出个所以然来?如果你的回答是“很多次”,那么这篇帖子你应该看看.如果你不经常碰上这种情况也没关系,你也可以看看这篇文章解闷. 当处理 Node.js 服务器的复杂数据时,要会从可返回给请求方的错误中总结经验,具备此能力至关重要.在处理一个请求时,一个错误出现会引起链接里另一个错误的出现,于是问题就来了.当此脚本出现时,一旦你生成了新错误,并将它返回到了链接,那你就丢失了与原始错误的所有连接.    达尔文达尔文翻译于 5天前 0人顶 顶