로거 가이드
이 화면은 logger 컴포넌트에 대한 샘플 화면이다.
logger 컴포넌트는 전용브라우저 환경에서만 동작하며, 로그를 파일에 저장하기 위한 기능을 제공한다.
관련 속성으로 log_flag, log_dir, logfile_prefix, log_level, filename_type, enc_flag, utf8_flag, bomwrite_flag, save_days, module_path가 있다.
관련 API로는 init, logdebug, loginfo, logwarn, logerror, logfatal, logmsg가 있다.
환경 설정 관련 API로는 getlogflag, setlogflag, getloglevel, setloglevel, getlogfilenametype, setogfilenametype, getutf8flag, setutf8flag가 있다.
예시
화면 스크립트
// "초기화" 버튼 이벤트 function btnInitXLogger_on_mouseup(objInst) { // 로거 컴포넌트 초기화 this.logger.init(); } // "로그 기록" 버튼 이벤트 function btnLogWrite_on_mouseup(objInst) { this.logger.logdebug("DEBUG MESSAGE"); // DEBUG 레벨 로그 출력 this.logger.loginfo("INFO MESSAGE"); // INFO 레벨 로그 출력 this.logger.logwarn("WARN MESSAGE"); // WARN 레벨 로그 출력 this.logger.logerror("ERROR MESSAGE"); // ERROR 레벨 로그 출력 this.logger.logfatal("FATAL MESSAGE"); // FATAL 레벨 로그 출력 this.logger.logmsg(1, "INFO LEVEL LOG"); // INFO 레벨 로그 출력 this.logger.logmsg(3, "ERROR LEVEL LOG"); // ERROR 레벨 로그 출력 } // "getlogflag" 버튼 이벤트 function btnGetLogFlag_on_mouseup(objInst) { factory.consoleprint("getlogflag Return Value = " + this.logger.getlogflag()); } // "setlogflag" 버튼 이벤트 function btnSetLogFlag_on_mouseup(objInst) { var nLogFlag = this.logger.getlogflag(); if (nLogFlag == 1) { this.logger.setlogflag(0); } else { this.logger.setlogflag(1); } } // "getloglevel" 버튼 이벤트 function btnGetLogLevel_on_mouseup(objInst) { // 로그 레벨 리턴 (0:DEBUG;1:INFO;2:WARN;3:ERROR;4:FATAL) factory.consoleprint("getloglevel Return Value = " + this.logger.getloglevel()); } // "setloglevel" 버튼 이벤트 function btnSetLogLevel_on_mouseup(objInst) { // 로그 기록 필터링 레벨 설정 // 로그 레벨 설정 (0:DEBUG;1:INFO;2:WARN;3:ERROR;4:FATAL) this.logger.setloglevel(1); } // "getlogfilenametype" 버튼 이벤트 function btnGetLogFileNameType_on_mouseup(objInst) { // 로그 파일 이름 형식 // 1 : YYYYMMDD_hhmmss_ThreadID 로그 파일이 시간별로 기록됨, // 2 : YYYYMMDD_hhmmss 로그 파일이 시간별로 기록됨 // 3 : YYYYMMDD 로그 파일이 날짜별로 기록됨 (Default) factory.consoleprint("getlogfilenametype Return Value = " + this.logger.getlogfilenametype()); } // "setlogfilenametype" 버튼 이벤트 function btnSetLogFileNameType_on_mouseup(objInst) { // 로그 파일 이름 형식 // 1 : YYYYMMDD_hhmmss_ThreadID 로그 파일이 시간별로 기록됨, // 2 : YYYYMMDD_hhmmss 로그 파일이 시간별로 기록됨 // 3 : YYYYMMDD 로그 파일이 날짜별로 기록됨 (Default) this.logger.setlogfilenametype(1); } // "getutf8flag" 버튼 이벤트 function btnGetUtf8Flag_on_mouseup(objInst) { factory.consoleprint("getutf8flag Return Value = " + this.logger.getutf8flag()); } // "setutf8flag" 버튼 이벤트 function btnSetUtf8Flag_on_mouseup(objInst) { var nUtf8Flag = this.logger.getutf8flag(); if (nUtf8Flag == 1) { this.logger.setutf8flag(0); } else { this.logger.setutf8flag(1); } }