log4j.properties 파일에서 log4j.rootLogger 속성의 중요성은 무엇입니까?이 부동산을 사용하지 않으면 어떻게 됩니까?
의 의의는 무엇입니까?log4j.rootLogger
에 있어서의 재산.log4j.properties
파일? 이 자산을 사용하지 않으면 어떻게 됩니까?
예:
# Set root logger level to DEBUG and its only appender to A1.
log4j.rootLogger=DEBUG, A1
# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
이 속성을 다음과 같이 설정하면 어떻게 됩니까?ERROR
모드를 선택합니다.
Samudra Gupta는 그의 책에서1 다음과 같이 설명합니다.
그
Logger
object는 응용 프로그램 개발자가 메시지를 기록하기 위해 사용하는 주요 객체입니다.그Logger
애플리케이션의 특정 인스턴스 내에서 동작하는 오브젝트는 부모-자녀 계층을 따릅니다.
다음과 같은 설정이 있는 경우:
log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
log4j.logger.com.me.proj2=INFO
로거 계층은 다음과 같이 표시됩니다.2
Samudra Gupta는 계속해서 다음과 같이 설명합니다.
계층의 맨 위에는 루트 로거가 있습니다.루트 로거는 커스텀로거 계층의 범위 밖에 존재합니다.가능한 모든 로거 계층의 루트 로거로 항상 존재하며 네임스페이스는 없습니다.기타 모든 응용 프로그램 고유
Logger
오브젝트는 루트 로거의 하위 오브젝트입니다.로거의 부모-자녀 관계는 같은 애플리케이션 내에서 동작하는 로거의 의존성을 나타냅니다.하위 로거는 부모 로거에서 속성을 트리 위로 재귀적으로 상속할 수 있습니다.일반적으로 하위 로거는 상위 로거에서 다음 속성을 상속합니다.
Level
: 자녀 로거가 명시적 트리 레벨을 지정하지 않은 경우 가장 가까운 부모 레벨 또는 계층에서 재귀적으로 발견된 첫 번째 적절한 레벨을 사용합니다.Appender
: 로거에 Appender가 연결되어 있지 않은 경우 자녀 로거는 가장 가까운 부모 로거의 Appender 또는 트리에서 재귀적으로 발견된 첫 번째 Appender를 사용합니다.ResourceBundle
:ResourceBundles
는 로깅 메시지의 현지화에 사용되는 키 값 패턴 속성 파일입니다.하위 로거는 다음을 상속합니다.ResourceBundle
부모 로거에 관련지어져 있습니다.
메모들
1 Samudra Gupta, Pro Apache Log4j, 제2판 (Berkeley, CA: Appress, 2005), 24-25, ISBN13: 978-1-59059-499-5
2 Domino Mitchell, Java 로그인, http://happygiraffe.net/blog/2008/09/03/logging-in-java/, 2014년 5월 26일 취득.
대답하다
이 부동산을 사용하지 않으면 어떻게 됩니까?
rootLogger를 레벨과 appender로 설정하지 않으면 경고가 표시됩니다.
" " " " 행을 하거나 " " " 를 log4j.rootLogger=DEBUG, stdout
「log4j.properties」 「rootlogger」 「rootlogger」 「rootlogger」는 「log4j.properties」입니다.이치노
#log4j.rootLogger=DEBUG, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
다음과 같은 출력이 표시됩니다.
log4j:WARN No appenders could be found for logger (log4jtests.Log4jHelloWorld).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
log4j.rootLogger 속성은 rootLogger의 레벨(여기서는 DEBUG)과 Appender(여기서는 A1)를 설정합니다.이것은 필수가 아닙니다.루트 로거는 기본 Appender가 연결되어 있지 않으며 Appender 없이 존재할 수 있습니다.따라서 log4j 속성 파일은 이 속성을 설정하지 않아도 됩니다.
루트 로거는 Java의 Object 클래스와 유사한 log4j 계층에서 가장 높은 로거입니다.
언급URL : https://stackoverflow.com/questions/23869207/what-is-the-significance-of-log4j-rootlogger-property-in-log4j-properties-file
'itsource' 카테고리의 다른 글
푸른색 클라우드 제공자에 개인 링크를 생성하려고 할 때 발생하는 문제 (0) | 2022.11.04 |
---|---|
MacOS에서 MariaDB 10.4의 루트 비밀번호를 설정하는 방법 (0) | 2022.11.04 |
폴더가 있는지 확인하는 방법 (0) | 2022.11.04 |
JetBrains 웹IDE: PHP 변수 유형 힌트입니까? (0) | 2022.11.04 |
MySQL에서 타임스탬프 날짜를 날짜 전용 매개 변수와 비교하는 방법 (0) | 2022.11.04 |