검색결과 리스트
글
!markdown
# Logback
## 모든 로그는 Logger를 통하게 하라.
Logback의 `FileAppender`를 사용할 때, Exception객체를 통한 에러출력(printStackTrace())이 자동으로 로그파일에 저장될 거라고 생각하면 안된다.
### 1. Exception
보통 `에러로그(StackTrace)`가 출력될 때, Console에는 기본적으로 출력이 되는 것이며, `Console Appender가 출력하는 것이 아니다.`
마찬가지로 `File Appender를 통해 File에 따로 로그를 찍을때`, printStackTrace를 통해서 터져나온 `에러가 파일에 저장되지 않는다.`
때문에, 다음과 같이 `logger를 이용하여 에러를 표출`해줘야 한다.
- Before
```java
private final Logger logger = LoggerFactory.getLogger(getClass());
try{
throw new Exception("!!!Error!!!");
}catch(Exception e){
e.printStackTrace();
}
```
- After
```java
private final Logger logger = LoggerFactory.getLogger(getClass());
try{
throw new Exception("!!!Error!!!");
}catch(Exception e){
logger.error("messege", e);
}
```
### 2. 다른 방법?
기존 소스를 건드리지 않는 다른방법이 있을까요? ...
### 3. 참조
- Avoid printStackTrace(); use a logger call instead: [https://stackoverflow.com/questions/10477607/avoid-printstacktrace-use-a-logger-call-instead](https://stackoverflow.com/questions/10477607/avoid-printstacktrace-use-a-logger-call-instead)
- How to print stack trace in log file: [https://stackoverflow.com/questions/10040834/how-to-print-stack-trace-in-log-file](https://stackoverflow.com/questions/10040834/how-to-print-stack-trace-in-log-file)
- Handle all exceptions: [https://stackoverflow.com/questions/18499223/handle-all-exceptions](https://stackoverflow.com/questions/18499223/handle-all-exceptions)
'LANGUAGE > Java & Groovy ' 카테고리의 다른 글
[Java] Logback - logback-test.xml과 개발용 설정 만들기 (0) | 2018.01.31 |
---|---|
[Java] Logback - 실행중에 Logger Level 변경 (0) | 2018.01.31 |
[Java] Logback - 컬러링 (0) | 2017.11.11 |
[Java] 형형색색 색깔 출력 ( print ) (0) | 2017.11.11 |
[Groovy] JDK버전별 (0) | 2017.11.10 |