Web/스프링

log4j2.properties 프로퍼티 완료 예제. 트러블슈팅 내용 포함

벨포트조던 2018. 11. 29.
반응형

아래는 내가 설정한 거의 최종 설정인데... 


https://logging.apache.org/log4j/2.x/manual/configuration.html   ( 예제 인데.. )
여기서도 설명이 부족한 경우가 많음. 영어도 부족한데 양도 드럽게 많아서 보기 힘듬....

[ 추가 ] https://howtodoinjava.com/log4j2/log4j2-rollingfileappender-example/


우선 가장 해결하기 짜증낫던 것은.


appender.rolling.filePattern = target/rolling2/test1-%d{MM-dd-yy-HH-mm-ss}-%i.log.gz


 저대로 하면 초당 파일이 하나씩 생성됨. 아래처럼 바꾸면 괜찮은거같음. 몇칠 안지나봐서 모르겟음 (확인사항)


파일 크기 단위는 뺏음. 

appender.rolling.strategy.max 이건 갯수인지 잘 모르겟음.


우선은 기본적인 것은 돌아가서 일단 내비두고 몇칠뒤에 다시 테스트



log4j2 는 아닌데 어느정도 옵션값에 대한 설명을 볼수 있음.

http://www.egovframe.go.kr/wiki/doku.php?id=egovframework:rte3:fdl:%EC%84%A4%EC%A0%95_%ED%8C%8C%EC%9D%BC%EC%9D%84_%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94_%EB%B0%A9%EB%B2%95


라인별 설명

https://www.elastic.co/guide/en/elasticsearch/reference/master/logging.html


한글 주석

https://github.com/nexacro-spring/nexacro-core/blob/master/src/test/resources/log4j2.xml


------------------------------------------------------------------------------------------------------------------------

status = error

dest = err

name = PropertiesConfig

 

property.filename = /data/logs/tomcat/log4j2.log

 

filter.threshold.type = ThresholdFilter

filter.threshold.level = info

 

appender.console.type = Console

appender.console.name = STDOUT

appender.console.layout.type = PatternLayout

appender.console.layout.pattern = [%p], %d{yyyy-MM-dd HH:mm:ss}, %m %n 

appender.console.filter.threshold.type = ThresholdFilter

appender.console.filter.threshold.level = info

 

appender.rolling.type = RollingFile

appender.rolling.name = RollingFile

appender.rolling.fileName = ${filename}

appender.rolling.filePattern = ${filename}.%d{MM-dd-yyyy}.log

appender.rolling.layout.type = PatternLayout

appender.rolling.layout.pattern = [%p], %d{yyyy-MM-dd HH:mm:ss} %c{1}:%L - %m%n

#appender.rolling.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

appender.rolling.policies.type = Policies

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.max = 90

appender.rolling.filter.threshold.type = ThresholdFilter

appender.rolling.filter.threshold.level = info

 

logger.rolling.name = com.example.my.app

logger.rolling.level = info

logger.rolling.additivity = false

logger.rolling.appenderRef.rolling.ref = RollingFile

 

rootLogger.level = all

#rootLogger.appenderRefs = rolling, stdout

rootLogger.appenderRef.rolling.ref = RollingFile

#rootLogger.appenderRef.stdout.ref = STDOUT


------------정리 ---------------------------------------------

name = PropertiesConfig

 

property.filename = /data/logs/tomcat/log4j2.log

 

appender.console.type = Console

appender.console.name = STDOUT

appender.console.layout.type = PatternLayout

appender.console.layout.pattern = [%p], %d{yyyy-MM-dd HH:mm:ss}, %m %n 

appender.console.filter.threshold.type = ThresholdFilter

appender.console.filter.threshold.level = info

 

appender.rolling.type = RollingFile

appender.rolling.name = RollingFile

appender.rolling.fileName = ${filename}

appender.rolling.filePattern = ${filename}.%d{yyyy-MM-dd}.log

appender.rolling.layout.type = PatternLayout

appender.rolling.layout.pattern = [%p], %d{yyyy-MM-dd HH:mm:ss} %c{1}:%L - %m%n

appender.rolling.policies.type = Policies

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.max = 3

appender.rolling.filter.threshold.type = ThresholdFilter

appender.rolling.filter.threshold.level = info


#for java code

#logger.rolling.name = Application

#logger.rolling.level = info

#logger.rolling.additivity = false

#logger.rolling.appenderRef.rolling.ref = RollingFile


rootLogger.level = all

rootLogger.appenderRefs = rolling, STDOUT

rootLogger.appenderRef.rolling.ref = RollingFile

rootLogger.appenderRef.stdout.ref = STDOUT



반응형

댓글