2017-09-22 21 views
3

다른 응용 프로그램에서 사용할 수있는 log4j2를 사용하는 콘솔 및 롤링 파일 appender로 log4j2 등록 정보 파일 구성을 원합니다. 로그 구성은 프로덕션 환경에서 로그를 회전시켜야합니다.콘솔 및 롤링 파일 appender를 사용하는 매우 간단한 log4j2 등록 정보 구성 파일

+0

-

다음은 ConsoleAppenderRollingFileAppender 가진 하나 개의 샘플 log4j2 구성 파일입니다. –

+0

사실 저는 업계 표준에 따라 표준 log4j2 구성을 찾고 있습니다. 몇 가지 변경 사항을 통해 회사의 여러 애플리케이션에서이를 사용할 수 있습니다. –

답변

9

로깅 또는 log4j2 구성에 대한 업계 표준이 없다고 생각합니다. 누구나 응용 프로그램의 필요에 따라 구성을 변경합니다. 다른 응용 프로그램을 사용할 수> 당신이 무슨 뜻인지

status = warn 
name= properties_configuration 

# Give directory path where log files should get stored 
property.basePath = ./log/ 

# ConsoleAppender will print logs on console 
appender.console.type = Console 
appender.console.name = consoleLogger 
appender.console.target = SYSTEM_OUT 
appender.console.layout.type = PatternLayout 

# Specify the pattern of the logs 
appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} %level [%t] [%c] [%M] [%l] - %msg%n 


# RollingFileAppender will print logs in file which can be rotated based on time or size 
appender.rolling.type = RollingFile 
appender.rolling.name = fileLogger 
appender.rolling.fileName=${basePath}/app.log 
appender.rolling.filePattern=${basePath}app_%d{yyyyMMdd}.log.gz 
appender.rolling.layout.type = PatternLayout 
appender.rolling.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} %level [%t] [%c] [%M] [%l] - %msg%n 
appender.rolling.policies.type = Policies 

# Rotate log file each day 
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy 
appender.rolling.policies.time.interval = 1 
appender.rolling.policies.time.modulate = true 
appender.rolling.strategy.type = DefaultRolloverStrategy 
appender.rolling.strategy.delete.type = Delete 
appender.rolling.strategy.delete.basePath = ${basePath} 
appender.rolling.strategy.delete.maxDepth = 1 
appender.rolling.strategy.delete.ifLastModified.type = IfLastModified 
# Delete files older than 30 days 
appender.rolling.strategy.delete.ifLastModified.age = 30d 

# Mention package name here in place of example. Classes in this package or subpackages will use ConsoleAppender and RollingFileAppender for logging 
logger.example.name = example 
logger.example.level = debug 
logger.example.additivity = false 
logger.example.appenderRef.rolling.ref = fileLogger 
logger.example.appenderRef.console.ref = consoleLogger 

# Configure root logger for logging error logs in classes which are in package other than above specified package 
rootLogger.level = error 
rootLogger.additivity = false 
rootLogger.appenderRef.rolling.ref = fileLogger 
rootLogger.appenderRef.console.ref = consoleLogger 
+0

대단히 감사합니다. 정말 도움이됩니다. –

+0

늦게 답장을 드려 죄송합니다. 호스트 IP 주소를 로그 파일에 추가해야합니다. 응용 프로그램의 Java 코드 코드를 수정하지 않고도 가능합니까? –

+0

@SubhajitPal 가능하다고 생각합니다. 이 [link] (https://logging.apache.org/log4j/2.x/manual/configuration.html#Property_Substitution)을 확인하십시오. 또 다른 중요한 점은 완전히 다른 질문이므로 새로운 질문을해야한다는 것입니다. –