Artigos

Tire duas dúvidas com o especialista no assunto Dr. Daphnis Citti de Lauro

자바 log4j 예제

다음은 이 예제에서 만든 간단한 구성 파일입니다. 다시 한 번 수정해 보겠습니다: 이제 log4j.properties 예제를 통해 특정 위치로 로그 메시지를 출력해 보겠습니다. – 레벨이 (심각도의 오름차순) 다음 값 중 하나가 될 수있는 곳 : 모두, 디버그, 정보, 경고, 오류, 치명적 및 꺼져. 이러한 상수는 클래스 org.apache.log4j.Level에 정의되어 있습니다. 왜 “log4j.rootLogger”가 두 번 기록됩니까? 허용되는가요? 나는 그것이 로그 파일 의 상단에 한 번만 작성되어야한다고 생각합니다. 임계값 속성을 사용하여 다른 로깅 수준을 설정합니다. 이 자습서에서는 log4j2.xml 파일로 Log4j2를 구성하고 로깅을 콘솔 및 파일로 인쇄하는 방법을 보여 드리겠습니다. 패키지 com.crm.genericLibrary; 가져오기 자바.util.Properties; 가져오기 org.apache.log4j.Logger; 가져오기 org.apache.log4j.Property구성기; /** * * @author Krishna.M * * * 공공 클래스 GetLogger { 공개 정적 로거 쓰기로그 (클래스 이름){ 로거 로그 = Logger.getLogger (클래스 이름); 속성 = 새 속성(); properties.put(“log4j.rootLogger”, “정보,콘솔,파일”); /*콘솔에 대한 속성*/ 속성.put(“log4j.appender.Console”, “org.apache.log4j.ConsoleAppender”); properties.put(“log4j.appender.Console.layout”, “org.apache.log4j.PatternLayout”); properties.put(“log4j.appender.console.layout.layout.ConvertPattern”, “%-4r [%d] [%-5p] [%c%x] – %m%n”); /*파일*/속성.put(“log4j.appender.File”, “org.apache.log4j.FileAppender”); properties.put(“log4j.appender.File.File”,”로그/crm.log”); properties.put(“log4j.appender.File.layout”,”org.apache.log4j.PatternLayout”); properties.put(“log4j.appender.File.layout.layout.ConvertPattern”,%-4r [%d] [%-5p] [%-5p] [%c%x] – %m%n”); 속성 구성자.구성(속성); 반환 로그; } } 대부분의 로깅 구현은 로거 이름을 로깅 구성과 일치시키는 계층적 체계를 사용합니다. 이 체계에서 로거 이름 계층 구조는 Java 패키지 이름에 사용되는 계층 구조와 매우 유사한 방식으로 로거 이름의 `.` 문자로 표시됩니다. 예를 들어 org.apache.logging.appender 및 org.apache.logging.filter 모두 조직.apache.logging을 부모로 가지고 있습니다. 대부분의 경우 응용 프로그램은 현재 클래스의 이름을 LogManager.getLogger(…)에 전달하여 로거 이름을 지정합니다. 이 사용법은 매우 일반적이기 때문에 Log4j 2는 로거 이름 매개 변수가 생략되거나 null일 때 기본값으로 제공합니다. 예를 들어 로거 아래의 모든 예제에서 “org.apache.test.MyTest”의 이름이 있습니다.