2017-10-01 2 views
0

Mes dépendances Gradle:Vertx configuration de la journalisation avec Log4j

compile "org.slf4j:slf4j-log4j12:1.6.1" 
compile "io.vertx:vertx-core:3.4.2" 
compile 'io.vertx:vertx-web:3.4.2' 

Ma config log4 est en src/main/resouces/log4.xml contenu de Config:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 
<log4j:configuration> 
    <appender name="stdout" class="org.apache.log4j.ConsoleAppender"> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%m%n" /> 
     </layout> 
    </appender> 

    <root> 
     <priority value="debug" /> 
     <appender-ref ref="stdout" /> 
    </root> 
</log4j:configuration> 

Avant de créer par exemple Vertx je cette ligne:

System.setProperty(
    "vertx.logger-delegate-factory-class-name", 
    "io.vertx.core.logging.SLF4JLogDelegateFactory" 
) 

Mais lorsque la demande est faite, rien n'est enregistré. Comment puis-je le configurer correctement?

+0

Soit vous avez une propriété système défini comme ' -Dlog4j.configurationFile = src/main/resouces/log4.xml' (assurez-vous qu'il s'agit bien du chemin d'accès complet) ou renommez le fichier en 'log4j2.xml'. S'il vous plaît [ici] (https://logging.apache.org/log4j/2.x/manual/configuration.html) pour plus d'informations. – kaza

+0

Je suppose que c'est juste une faute de frappe, mais le chemin contient '/ resouces /' au lieu de '/ resources', peut-être cela vous cause des problèmes si le dossier a un mauvais nom? – stijena

Répondre

2

Vous souhaitez vous connecter avec log4j mais vous devez définir le nom de la classe d'usine sur slf4j.

Le droit de propriété est la valeur io.vertx.core.logging.Log4jLogDelegateFactory

Voir la section logging dans la documentation.

0

Vous pouvez également configurer journal à l'aide log4j.properties défini dans src/main/resouces/ dossier

# Root logger option 
    log4j.rootLogger=DEBUG, stdout, file 

    # Redirect log messages to console 
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
    log4j.appender.stdout.Target=System.out 
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
    log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 

    log4j.logger.io.netty.handler.codec.http.websocketx= ERROR 

    log4j.appender.file=org.apache.log4j.rolling.RollingFileAppender 
    log4j.appender.file.File=./logs/auth.log 

    log4j.appender.file.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy  
    log4j.appender.file.RollingPolicy.ActiveFileName =./logs/auth.log 


    log4j.appender.file.RollingPolicy.FileNamePattern=./logs/logs.%d{yyyyMMdd}.gz 
    log4j.appender.file.layout = org.apache.log4j.PatternLayout 
    log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n 

J'espère que cela vous aidera :)