사이트 내 전체검색
모든 자바스크립트 에러 잠재우기 (에러 디버그)
로빈아빠
https://cmd.kr/javascript/761 URL이 복사되었습니다.

본문

모든 자바스크립트 에러 잠재우기

별로 권장하지는 않지만 익스플러로에 자바스크립트 에러 표시가 걸리시는 분들은 아래 스크립트를 하단에 삽입하여 보십시오.
모든 에러메시지가 출력 되지 않습니다.
window.onerror = ErrorSetting 
var e_msg="";
var e_file="";
var e_line=""; 
function ErrorSetting(msg, file_loc, line_no) {
	e_msg=msg;
	e_file=file_loc;
	e_line=line_no;
	return true; 
}



* 자바스크립트 에러 디버그
var isDebugging = true;
function ErrorSetting(msg, file_loc, line_no) {
	var e_msg=msg;
	var e_file=file_loc;
	var e_line=line_no;
	var error_d = "Error in file: " + file_loc +
			"\nline number:" + line_no +
			"\nMessage:" + msg;
	if(isDebugging)
		alert("Error Found !!!\n--------------\n"+error_d);

	return true;
}
window.onerror = ErrorSetting;


조금더 확장해서 ajax로 에러 기록 할 경우
var isDebugging = false;
var logJsErrors = true;
function ErrorSetting(msg, file_loc, line_no) {
	var e_msg=msg;
	var e_file=file_loc;
	var e_line=line_no;
	var error_d = "Error in file: " + file_loc +"\nline number:" 
			+ line_no +
			"\nMessage:" + msg;

	if(logJsErrors){
		theData = "file="+file_loc+"&line="+line_no+"&err="+msg;
		ajaxCtrl(
			function(){
				return true;
			},"ajxerrorLogger.php",theData
		);
	}

	if(isDebugging)
		alert("Error Found !!!\n--------------\n"+error_d);

	return true;
}
window.onerror = ErrorSetting;


에러 기록
<?
if($_POST && $_POST['file']!=''){
	$filename = "./errlogs.txt";
	$fh = fopen($filename,"a+");

	//the content is in the form
	//Date    File    LineNo    Error Message
	//(tab delimited)
	$fcontent = date("d/m/Y h:i:s", mktime())."\t".
	$_POST['file']."\t".$_POST['line']."\t".$_POST['err']."\r\n";
	if (is_writable($filename)) {
		if (fwrite($fh, $fcontent) === FALSE) {
		}
		fclose($fh);
	}
}

$fh = fopen($filename,"a+");
?>


출처 : http://www.codeproject.com/KB/trace/LogJavaScriptErrors.aspx

댓글목록

등록된 댓글이 없습니다.

831 (4/17P)

Search

Copyright © Cmd 명령어 18.216.70.205