다른 도메인의 스크립트에서 발생하는 클라이언트 측 오류를 어떻게 식별합니까?클라이언트 측 오류 및 "스크립트 오류"로깅
Google지도 JS SDK와 같이 다른 도메인에서 호스팅되는 여러 스크립트를 사용하는 평균 크기의 웹 응용 프로그램이 있다고 가정 해 보겠습니다.
언젠가는 오류 로그에 Script error
을 받기 시작했습니다. 이는 제 3 자 코드에서 오류가 발생했음을 의미합니다.
하지만 코드에서 결국 실패한 타사 코드를 호출 한 정확한 방법을 어떻게 찾을 수 있습니까?
PS : 오류는 개발자가 재현 할 수 없으며 클라이언트 컴퓨터에서만 발생합니다.
PPS : 위의 오류에 대해 window.onerror
DOUSE NOT은 호출 스택, 적절한 오류 메시지, 파일 이름 및 행 번호를 제공합니다. 따라서 문자 그대로 Script error
오류 메시지 외에 도움이되는 것은 없습니다.
PPPS :
제 3자는 스크립트가 예전에 비슷한 문제를 가지고 있었고, 내 솔루션는 ...
// The parameters are automatically passed to the window.onerror handler...
function myErrorFunction(message, url, linenumber) {
$.post(
"https://host.and/path/to/script/that/stores/entries",
{
"url":url, // URL of the page where the error occured
"lineNumber":linenumber, // Line number where the error occer
"message":message //error message
},
function(){
//callback function for the $.post()
if(console)
if(console.log)
console.log("Error reported.");
}
);
}
window.onerror = myErrorFunction; //adds function "myErrorFunction" to the onError Event
더 얻으려면
elmah https://code.google.com/p/elmah/를 사용하면 가능한 모든 정보를 포함한 모든 예외를 기록 할 수 있습니다. – HaBo
@HaBo : uhm, asp.net? o_O – zerkms
프레임 워크에 의존하지 않으려면이 window.onerror를 호출하여 Ajax 메서드를 호출하여 오류를 저장하십시오. – HaBo