사용자 도구

사이트 도구


java:logback:asyncappender

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
다음 판 양쪽 다음 판
java:logback:asyncappender [2019/02/25 11:48]
kwon37xi
java:logback:asyncappender [2019/03/22 17:45]
kwon37xi [Reactor Logback]
줄 27: 줄 27:
   * 기본적으로 AsyncAppender는 코드 정보(클래스,메소드,줄번호)를 남기지 않는데, ''includeCallerData=true''를 통해서 가능하다. 물론 성능저하가 발생할 것이다.   * 기본적으로 AsyncAppender는 코드 정보(클래스,메소드,줄번호)를 남기지 않는데, ''includeCallerData=true''를 통해서 가능하다. 물론 성능저하가 발생할 것이다.
   * 단, 하나의 로그를 Async가 아닌 Appender와 함께 호출하며 해당 Appender에서 이미 코드 정보를 읽어들였다면 AsyncAppender에서도 코드 정보를 자동으로 가지게 된다.   * 단, 하나의 로그를 Async가 아닌 Appender와 함께 호출하며 해당 Appender에서 이미 코드 정보를 읽어들였다면 AsyncAppender에서도 코드 정보를 자동으로 가지게 된다.
 +
 +
 ===== Reactor Logback ===== ===== Reactor Logback =====
   * https://github.com/reactor/reactor-addons/tree/master/reactor-logback   * https://github.com/reactor/reactor-addons/tree/master/reactor-logback
 +  * 기본 backlog 갯수가 100만개이다. 설정을 변경해야한다.
   * groovy로 설정하려면 logback 1.1.3 버전 이상 필요. [[http://jira.qos.ch/browse/LOGBACK-1008|LOGBACK-1008]]   * groovy로 설정하려면 logback 1.1.3 버전 이상 필요. [[http://jira.qos.ch/browse/LOGBACK-1008|LOGBACK-1008]]
   * [[https://mvnrepository.com/artifact/io.projectreactor.addons/reactor-logback|Maven Repository for reactor-logback]]   * [[https://mvnrepository.com/artifact/io.projectreactor.addons/reactor-logback|Maven Repository for reactor-logback]]
   * 성능 테스트 결과 유실이 없게 설정할 경우 Reactor Logback이 Logback 기본 AsyncAppender보다 훨씬 빠르다.   * 성능 테스트 결과 유실이 없게 설정할 경우 Reactor Logback이 Logback 기본 AsyncAppender보다 훨씬 빠르다.
 +  * 메소드 이름, 줄 번호 등이 출력되지 않는다.
 +  * [[https://dzone.com/articles/ratpacked-use-asynchronous-logging|Ratpacked: Use Asynchronous Logging]]
  
 <code xml> <code xml>
줄 47: 줄 52:
   <!-- Wrap calls to the console logger with async dispatching to Disruptor. -->   <!-- Wrap calls to the console logger with async dispatching to Disruptor. -->
   <appender name="async" class="reactor.logback.AsyncAppender">   <appender name="async" class="reactor.logback.AsyncAppender">
 +    <!-- Backlog size for logging events. Change size if they are picked up slowly.
 +         Default is 1024 * 1024 -->
 +    <backlog>50000</backlog>
 +    <!-- Caller data is relatively slow, so per default disabled -->
 +    <includeCallerData>false</includeCallerData>
     <appender-ref ref="stdout"/>     <appender-ref ref="stdout"/>
   </appender>   </appender>
java/logback/asyncappender.txt · 마지막으로 수정됨: 2023/12/01 13:19 저자 kwon37xi