Notice
Link
- Today
- Total
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- springboot 재가동
- 말줌임 CSS
- 가변영역 스크롤
- 파티션 빠른 삭제
- 피쉬랜드
- SQL
- 터치좌표 view
- MySQL
- CSS
- reactnative
- vc++
- MariaDB
- mybatis exception
- view 획득
- 스크롤적용
- kill -9
- Activity 전체화면
- MFC
- 시간대별 통계
- CentOS
- 시간대 테이블생성
- c언어
- sql exception
- rn
- 코드로 서버 재실행
- pid 찾아 kill
- springboot
- group by
- ffmpeg
- Back 키 클릭 감지
Archives
개발은 하는건가..
[lo4j2] 로그 파일로 생성되게 하기 본문
반응형
build.gradle 에 configurations 에 아래와 같이 추가
configurations {
all {
exclude group: 'org.apache.logging.log4j', module: 'log4j-to-slf4j'
exclude group: 'ch.qos.logback', module: 'logback-classic'
}
}
dependencies 에 아래와 같이 추가
implementation group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.15.0'
implementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.15.0'
implementation group: 'org.apache.logging.log4j', name: 'log4j-jul', version: '2.15.0'
implementation group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: '2.15.0'
implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.32'
implementation group: 'org.slf4j', name: 'jul-to-slf4j', version: '1.7.32'
application.properties 에 로그 환경 파일 경로 지정
# 윈도우즈 환경일 경우
logging.config=src/main/resources/log4j2.xml
# 리눅스 환경 일 경우
logging.config=classpath:/log4j2.xml
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Properties>
<!-- 로그가 저장될 경로를 속성으로 지정 -->
<property name="LOGS_PATH">/usr/wms_server/server/logs</property>
</Properties>
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="[%d{yyyy-MM-dd HH:mm:ss}:%-3relative] %-5level %logger{35} - %msg%n" />
</Console>
<!-- 로그 파일 생성 분할 규칙 50MB 단위로 압축 및 1일 단위 분할 -->
<RollingFile name ="RollingFile">
<FileName>${LOGS_PATH}/chungho_wms.log</FileName>
<FilePattern>${LOGS_PATH}/chungho_wms.%d{yyyy-MM-dd}.%i.log.gz</FilePattern>
<PatternLayout>
<Pattern>%d{yyyy-MM-dd HH:mm:ss} %5p [%c] %m%n</Pattern>
</PatternLayout>
<Policies>
<SizeBasedTriggeringPolicy size="50MB"/>
<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
</Policies>
<DefaultRolloverStrategy max="7" fileIndex="max" >
<Delete basePath=${LOGS_PATH} maxDepth = "1">
<!-- 3일이 경과한 로그파일은 자동 삭제 -->
<IfLastModified age = "3d"/>
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
</Appenders>
<Loggers>
<!-- FATAL, ERROR, WARN, INFO, DEBUG, TRACE -->
<Root level="INFO">
<AppenderRef ref="console" />
<AppenderRef ref="RollingFile" />
</Root>
</Loggers>
</Configuration>
TimeBasedTriggeringPolicy의 interval 값은 파일명 패턴의 날짜 단위 최소값으로 계산된다.
위의 경우 년-월-일 시간을 가지므로 최소값인 일단위로 동작하므로 1로하면 1일에 한번씩 분할하여 압축된다..
'SpringBoot , Thymeleaf' 카테고리의 다른 글
[mybatis] Sql Exception 처리 (0) | 2023.09.12 |
---|---|
[Springboot] 서버 재가동 RestAPI 코드 작성 (0) | 2023.08.25 |
mybatis DTO 클래스 aliasesPackage 지정 (0) | 2023.05.25 |
[springboot] application.properties 프로파일별로 따로두기 (0) | 2023.02.20 |
[Springboot] jar 파일을 exe 파일로 만들기 (0) | 2023.02.13 |
Comments