2 개의 파일에 비동기 적으로 로깅하려면 하나는 시스템 로깅 용이고 다른 하나는 사용자 작업 로깅 용입니다.2 파일에 비동기로 로깅
<configuration debug="true">
<property name="LOG_DIR" value="C:/blah" />
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{DD/MM/YYYY-HH:mm:ss.SSS} %-5level %logger{36} - %msg%n
</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>${LOG_DIR}/log.txt</file>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg%n
</pattern>
</encoder>
</appender>
<logger name="com.logger.name" level="DEBUG" />
<appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="FILE" />
</appender>
<root level="warn">
<appender-ref ref="STDOUT" />
<appender-ref ref="ASYNC" />
</root>
</configuration>
그리고 나는 이런 로거를 만들 : 지금까지 내가 한 파일에 로그인하고, 내 설정 파일은 다음과 같습니다
public static final Logger LOG = LoggerFactory.getLogger("com.logger.name");
이 잘 작동하지만 내가 2에 로그인하려면 별도의 파일, 두 번째 구성 파일을 작성해야합니까? 두 번째 Logger
개체도 필요합니까? 하나의 구성을 갖고 싶고 어떤 파일이 Logger
개체를 만들 때 기록되는지를 지정하고 싶습니다. 가능합니까? 감사!
편집 그냥 하나 개의 파일과 다른 시스템 로그에 사용자 작업을 기록 할 명확히합니다.
그래서 나는 'AsyncAppender'에서 파일 appenders를 참조 할 필요가 없다는 것을 의미합니까? 또한 2 파일에 로깅 할 때 Java에서 로거를 초기화하는 방법은 무엇입니까? – Sionnach733
@ Sionnach733 대답을 업데이트했습니다. 이미 비동기가 필요합니다. 대신 두 번째 파일에 대해 하나 더 appender를 만듭니다. –
확인해 주셔서 감사합니다. 나는 내 질문을 다시해야한다. 한 파일에 사용자 작업을 기록하고 다른 파일에 시스템 로그를 기록하려고합니다. – Sionnach733