Question

Pouvons-nous une impression de journal DSable pour certains CustMAMT créant un enregistreur?

J'ai deux enregistreurs:

  1. root LOGGER

  2. METRICS LOGGER (qui imprime dans Fichier )

  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>
    

    Je veux désactiver les messages d'impression dans la console pour Logger de fichiers

Était-ce utile?

La solution

La clé pour comprendre est ici http://logging.apache.org/log4j/2.x / manuel / configuration.html # additivité

L'enregistreur racine est un parent de l'enregistreur "Metrics".L'événement journal des "métriques" est ensuite transmis à l'appendeur de racine de racine ("stdout").Ceci est connu comme additivité.Il est possible de le désactiver en définissant l'attribut d'additivité sur l'enregistreur "métriques" sur false.

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top