문제

일부 customm 생성 로거를 생성 할 수 있습니까?

두 개의 로거가 있습니다.

  1. root 로거

  2. 메트릭 로거 ( 파일 에 인쇄 )

  3. <Appenders>
        <File name="file" fileName="app.log">
            <PatternLayout>
                <Pattern>%d %p %c{1.} [%t] %m %ex%n</Pattern>
            </PatternLayout>
        </File>
    
        <Console name="STDOUT" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-mm-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </Console>
    
    
    </Appenders>
    
    <Loggers>
    
        <logger name="metrics" level="info" additivity="true">
            <AppenderRef ref="file"/>
        </logger>      
    
        <root level="info">
            <AppenderRef ref="STDOUT"/>
        </root>
    
    </Loggers>
    
    .

    파일 로거

    에 대한 콘솔에서 인쇄 메시지를 비활성화하고 싶습니다.

도움이 되었습니까?

해결책

이해의 열쇠는 여기에 있습니다 http://logging.apache.org/log4j/2.x / manual / configuration.html # additivity

루트 로거는 로거 "메트릭"의 부모입니다."메트릭"의 로그 이벤트는 루트 로거의 Appender ( "stdout")로 전달됩니다.이것은 추가로 알려져 있습니다.로거 "메트릭"에서 additivity 속성을 false로 설정하여 비활성화 할 수 있습니다.

<logger name="metrics" level="info" additivity="false">
        <AppenderRef ref="file"/>
</logger>
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top