2017-08-10 6 views
0

Comment obtenir l'emplacement du journal à partir du code d'application du ressort. J'implémente la fonctionnalité de journalisation pour le service web Spring en utilisant logback-classic. Dans le fichier logback.xml, je dois mentionner l'emplacement où mon fichier journal personnalisé doit être créé. J'ai utilisé ci-dessous snippet comme appender dans le fichier logback.xml.Emplacement du fichier journal du serveur IBM WAS à partir du code d'application Spring

<appender name="FILE" 
    class="ch.qos.logback.core.rolling.RollingFileAppender"> 
    <file>${logroot}/wsp-bloa.log</file> 
    <encoder> 
     <pattern>%d{ISO8601}|%t|%p|%c{1}|%m%n</pattern> 
    </encoder> 
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> 
     <level>${logger.level}</level> 
    </filter> 
    <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> 
     <fileNamePattern>${logroot}/wsp-bloa%i.log.gz</fileNamePattern> 
     <minIndex>1</minIndex> 
     <maxIndex>5</maxIndex> 
    </rollingPolicy> 

    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> 
     <maxFileSize>5MB</maxFileSize> 
    </triggeringPolicy> 
</appender> 

S'il vous plaît laissez-moi savoir si nous avons une autre option pour obtenir SERVER_LOG_ROOT autre que d'avoir l'ajout variable machine virtuelle Java dans les propriétés personnalisées pour imiter l'environnement SERVER_LOG_ROOT quelque chose comme cette clé: logroot, valeur: $ {SERVER_LOG_ROOT}

Répondre

1

Non; les variables websphere ne sont pas disponibles pour la recherche et ne sont pas enregistrées automatiquement en tant que propriétés jvm.

Vous devez l'ajouter comme vous l'avez dit en tant que propriétés personnalisées JVM ou utiliser des entrées d'environnement de ressources pour mapper le dossier sur une propriété personnalisée que vous pouvez rechercher avec jndi.