반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 마크서버
- 자동트윗봇
- 플러그인
- GoogleCloudPlatfor
- CrashReports
- Google Analytics api
- Vue.js
- 마인크래프트
- 면접을위한CS전공지식노트
- 앱 어플리케이션
- 마인크래프트서버
- 여성서버
- 마크모딩
- 구글 애널리틱스 api
- 사회초년생
- 마인크래프트모딩
- 1.14.4
- 스크립트
- 마크플러그인
- TickingENtities
- 공용창고
- 마크여성서버
- 청년
- 마인크래프트스크립트
- 마인크래프트서버설치
- NativeScript
- app-release
- 닉네임변환
- 러시안룰렛게임
- 마크에러
Archives
- Today
- Total
일상일지
[log4j2] 특정 sql 쿼리 로그 filter 사용하여 제외하기 본문
반응형
안녕하세요. 바한입니다.
오늘은 log4j2를 이용하여, 보고싶지 않은 sql로그를 제외해주는 방법을 적어보겠습니다.
sql로그 뿐만 아니라 다른 로그들에도 적용 가능합니다.
log4j2.xml에 다음과 같이 추가
<Logger name="jdbc.sqlonly" additivity="false" level="INFO" >
<appender-ref ref="RoutingAppender">
<ThreadContextMapFilter onMatch="DENY" onMismatch="NEUTRAL"> #여기 추가!
#키와 값이 매치할땐 DENY, 매치하지 않을땐 로그 출력
<KeyValuePair key="log" value="N"/> #여기 추가!
#키 이름 log, 값이 N일때
</ThreadContextMapFilter> #여기 추가!
</appender-ref>
</Logger>
자바 코드 상으로 필요한 부분에 ThreadContext 추가
//키 이름 log, 값 N을 가진 ThreadContext 생성
ThreadContext.put("log", "N");
//키 이름 log를 지워줌
ThreadContext.remove("log");
저는 필요한 Class의 시작부분, 끝 부분에 각각 put과 remove를 넣어주었습니다.
이렇게 하면 ThreadContext의 키가 log, 값이 N일때는 로그를 출력하지 않고, 다른 값이거나 없을 때는 로그를 출력해줍니다.
키와 값은 마음대로 설정하실 수 있습니다.
추가 응용 - .properties 파일에서 YN여부 설정하기
자바 파일. conf.properties에서 tempLogYN을 읽어와 ThreadContext 키 log에 값을 넣어줌
String resource = "properties/conf.properties";
Properties properties = new Properties();
Reader reader = null;
try {
reader = Resources.getResourceAsReader(resource);
} catch (IOException e) {
System.out.println("ERROR");
}
try {
properties.load(reader);
} catch (IOException e) {
System.out.println("ERROR");
}
tempLogYN = properties.getProperty("tempLogYN");
ThreadContext.put("log", tempLogYN);
conf.properties
tempLogYN=N
반응형
'개발' 카테고리의 다른 글
NativeScript와 Vue.js로 api통신 가능한 앱 만들기 (0) | 2022.05.14 |
---|---|
[Twitter API] 크롤링한 데이터를 자동트윗하는 봇 만들기 (0) | 2021.11.13 |
[JBoss EAP 7.2] 소스 내 properties 대신 서버 JAVA_OPTS 환경변수 사용하는 법 (0) | 2021.01.05 |
EgovFrameWork 3.8에 JBoss 7.2 돌아가게 하기 (0) | 2020.09.17 |
구글 애널리틱스 api chartjs 적용하기(실전예제) (6) | 2020.07.30 |
Comments