demo/dist/demo.js
function traceKitWindowOnError(msg, url, lineNo, colNo, ex) {
	    var stack = null; // If 'ex' is ErrorEvent, get real Error from inside

	    var exception = utils.isErrorEvent(ex) ? ex.error : ex; // If 'msg' is ErrorEvent, get real message from inside

	    var message = utils.isErrorEvent(msg) ? msg.message : msg;

	    if (lastExceptionStack) {
	      TraceKit.computeStackTrace.augmentStackTraceWithInitialElement(lastExceptionStack, url, lineNo, message);
	      processLastException();
	    } else if (exception && utils.isError(exception)) {
	      // non-string `exception` arg; attempt to extract stack trace
	      // New chrome and blink send along a real error object
	      // Let's just report that like a normal error.
	      // See: https://mikewest.org/2013/08/debugging-runtime-errors-with-window-onerror
	      stack = TraceKit.computeStackTrace(exception);
	      notifyHandlers(stack, true);
	    } else {
	      var location = {
	        url: url,
	        line: lineNo,
	        column: colNo
	      };
	      var name = undefined;
	      var groups;

	      if ({}.toString.call(message) === '[object String]') {
	        var groups = message.match(ERROR_TYPES_RE);

	        if (groups) {
	          name = groups[1];
	          message = groups[2];
	        }
	      }

	      location.func = UNKNOWN_FUNCTION;
	      stack = {
	        name: name,
	        message: message,
	        url: getLocationHref(),
	        stack: [location]
	      };
	      notifyHandlers(stack, true);
	    }

	    if (_oldOnerrorHandler) {
	      return _oldOnerrorHandler.apply(this, arguments);
	    }

	    return false;
	  }
function traceKitWindowOnError(msg, url, lineNo, colNo, ex) {
	    var stack = null; // If 'ex' is ErrorEvent, get real Error from inside

	    var exception = utils.isErrorEvent(ex) ? ex.error : ex; // If 'msg' is ErrorEvent, get real message from inside

	    var message = utils.isErrorEvent(msg) ? msg.message : msg;

	    if (lastExceptionStack) {
	      TraceKit.computeStackTrace.augmentStackTraceWithInitialElement(lastExceptionStack, url, lineNo, message);
	      processLastException();
	    } else if (exception && utils.isError(exception)) {
	      // non-string `exception` arg; attempt to extract stack trace
	      // New chrome and blink send along a real error object
	      // Let's just report that like a normal error.
	      // See: https://mikewest.org/2013/08/debugging-runtime-errors-with-window-onerror
	      stack = TraceKit.computeStackTrace(exception);
	      notifyHandlers(stack, true);
	    } else {
	      var location = {
	        url: url,
	        line: lineNo,
	        column: colNo
	      };
	      var name = undefined;
	      var groups;

	      if ({}.toString.call(message) === '[object String]') {
	        var groups = message.match(ERROR_TYPES_RE);

	        if (groups) {
	          name = groups[1];
	          message = groups[2];
	        }
	      }

	      location.func = UNKNOWN_FUNCTION;
	      stack = {
	        name: name,
	        message: message,
	        url: getLocationHref(),
	        stack: [location]
	      };
	      notifyHandlers(stack, true);
	    }

	    if (_oldOnerrorHandler) {
	      return _oldOnerrorHandler.apply(this, arguments);
	    }

	    return false;
	  }
function traceKitWindowOnError ( msg , url , lineNo , colNo , ex ) { var stack = null ; // If 'ex' is ErrorEvent, get real Error from inside var exception = utils . isErrorEvent ( ex ) ? ex . error : ex ; // If 'msg' is ErrorEvent, get real message from inside var message = utils . isErrorEvent ( msg ) ? msg . message : msg ; if ( lastExceptionStack ) { TraceKit . computeStackTrace . augmentStackTraceWithInitialElement ( lastExceptionStack , url , lineNo , message ) ; processLastException ( ) ; } else if ( exception && utils . isError ( exception ) ) { // non-string `exception` arg; attempt to extract stack trace // New chrome and blink send along a real error object // Let's just report that like a normal error. // See: https://mikewest.org/2013/08/debugging-runtime-errors-with-window-onerror stack = TraceKit . computeStackTrace ( exception ) ; notifyHandlers ( stack , true ) ; } else { var location = { url : url , line : lineNo , column : colNo } ; var name = undefined ; var groups ; if ( { } . toString . call ( message ) === '[object String]' ) { var groups = message . match ( ERROR_TYPES_RE ) ; if ( groups ) { name = groups [ 1 ] ; message = groups [ 2 ] ; } } location . func = UNKNOWN_FUNCTION ; stack = { name : name , message : message , url : getLocationHref ( ) , stack : [ location ] } ; notifyHandlers ( stack , true ) ; } if ( _oldOnerrorHandler ) { return _oldOnerrorHandler . apply ( this , arguments ) ; } return false ; }
Ensures all global unhandled exceptions are recorded.
Supported by Gecko and IE.
@param {string} msg Error message.
@param {string} url URL of script that generated the exception.
@param {(number|string)} lineNo The line number at which the error
occurred.
@param {?(number|string)} colNo The column number at which the error
occurred.
@param {?Error} ex The actual Error object.
Ensures all global unhandled exceptions are recorded . Supported by Gecko and IE .