문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
java:logback:asyncappender [2019/08/26 15:27] kwon37xi [Reactor Logback] |
java:logback:asyncappender [2023/12/01 13:19] (현재) kwon37xi [AsyncAppender] |
||
---|---|---|---|
줄 2: | 줄 2: | ||
* Logback의 비동기 어펜더 및 기타 고속 어펜더들 | * Logback의 비동기 어펜더 및 기타 고속 어펜더들 | ||
* 비동기 로깅의 경우 Method name, Line Number 등이 출력되지 않는다. | * 비동기 로깅의 경우 Method name, Line Number 등이 출력되지 않는다. | ||
+ | |||
===== AsyncAppender ===== | ===== AsyncAppender ===== | ||
비동기 Appender는 확실히 빠르지만 부하가 심한 상황에서 WARN 이하 레벨의 로그는 기본적으로 20% 유실 될 수 있고, 비동기 큐에 로그가 쌓인 상태에서 프로세스가 종료되면 해당 로그는 기록되지 않고 종료된다. | 비동기 Appender는 확실히 빠르지만 부하가 심한 상황에서 WARN 이하 레벨의 로그는 기본적으로 20% 유실 될 수 있고, 비동기 큐에 로그가 쌓인 상태에서 프로세스가 종료되면 해당 로그는 기록되지 않고 종료된다. | ||
줄 27: | 줄 28: | ||
* 기본적으로 AsyncAppender는 코드 정보(클래스, | * 기본적으로 AsyncAppender는 코드 정보(클래스, | ||
* 단, 하나의 로그를 Async가 아닌 Appender와 함께 호출하며 해당 Appender에서 이미 코드 정보를 읽어들였다면 AsyncAppender에서도 코드 정보를 자동으로 가지게 된다. | * 단, 하나의 로그를 Async가 아닌 Appender와 함께 호출하며 해당 Appender에서 이미 코드 정보를 읽어들였다면 AsyncAppender에서도 코드 정보를 자동으로 가지게 된다. | ||
+ | * Queue 크기는 '' | ||
+ | * '' | ||
+ | |||
+ | ===== Logstash - AsyncDisruptorAppender ===== | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
- | ===== Reactor Logback ===== | + | ===== Reactor Logback |
* https:// | * https:// | ||
+ | * **Deprecated 예정이므로 사용하지 말 것. Momory Leak도 있어보임** [[https:// | ||
* 기본 backlog 갯수가 100만개이다. 설정을 변경해야한다. | * 기본 backlog 갯수가 100만개이다. 설정을 변경해야한다. | ||
* groovy로 설정하려면 logback 1.1.3 버전 이상 필요. [[http:// | * groovy로 설정하려면 logback 1.1.3 버전 이상 필요. [[http:// |