
jUtilities.1.0.0.source-code.logback.xml Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jUtilities Show documentation
Show all versions of jUtilities Show documentation
Tools for programming in JAVA.
<?xml version="1.0" encoding="UTF-8"?> <configuration debug="false" scan="true" scanPeriod="30 seconds"> <!-- * * La balise PROPERTY permet de créer des variables * --> <!-- Emplacement des fichiers de logs --> <property name="LOGS_FOLDER" value="logs" /> <property name="LOGS_TO_COLLECT_FOLDER" value="logs/collect" /> <!-- Différents formats pour une ligne de logs http://logback.qos.ch/manual/layouts.html --> <property scope="context" name="log.pattern1" value="%d{yyyy/MM/dd HH:mm:ss.SSS} %-5level [%thread][%class{0}.%method:%line][%logger{0}] : %m%n" /> <property scope="context" name="log.pattern2" value="%d{yyyyMMdd'T'HHmmss.SSS} %-5level [%thread][%logger{0}] %m%n" /> <property scope="context" name="log.pattern3" value="%d{yyyy/MM/dd HH:mm:ss.SSS,Europe/Paris} %-5level [%thread] - %logger{36} - %m%n" /> <property scope="context" name="log.pattern_log" value="%d{yyyy/MM/dd HH:mm:ss,SSS} [%thread] %-5level %logger{36} - %m %throwable{0}%n" /> <property scope="context" name="log.pattern_audit" value="%m %throwable{0}%n" /> <property scope="context" name="log.pattern_stdout" value="%d{HH:mm:ss.SSS, Europe/Paris} %highlight(%-5level) [%thread][%logger{0}] : %m%n" /> <property scope="context" name="log.pattern_simple_stdout" value="%m%n" /> <!-- <statusListener class="ch.qos.logback.core.status.NopStatusListener" /> --> <!-- Insert the current time formatted as "yyyyMMdd'T'HHmmss" under the key "bySecond" into the logger context. This value will be available to all subsequent configuration elements. --> <timestamp key="bySecond" datePattern="yyyyMMdd'T'HHmmss" /> <!-- * * * APPENDERS * * Indique où afficher les logs * * * --> <!-- ******** Sur la console --> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <!-- <withJansi>true</withJansi> --> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>DEBUG</level> </filter> <encoder> <charset>utf-8</charset> <pattern>${log.pattern_stdout}</pattern> </encoder> </appender> <!-- ******** Dans un fichier XML --> <appender name="xml" class="ch.qos.logback.core.FileAppender"> <file>${LOGS_FOLDER}/application.xml</file> <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"> <layout class="ch.qos.logback.classic.log4j.XMLLayout"> <locationInfo>true</locationInfo> </layout> </encoder> </appender> <!-- ******** Dans un fichier au format HTML --> <appender name="html" class="ch.qos.logback.core.FileAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>INFO</level> </filter> <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"> <layout class="ch.qos.logback.classic.html.HTMLLayout"> <pattern>%relative%thread%mdc%level%logger%msg</pattern> </layout> </encoder> <file>${LOGS_FOLDER}/application.html</file> </appender> <!-- ******** Fichier par date (troubleshooting) Log jusqu'au niveau debug Insert les numéros de lignes dans les logs --> <appender name="log-file-history" class="ch.qos.logback.core.FileAppender"> <file>${LOGS_FOLDER}/application-troubleshooting-${bySecond}.log </file> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>DEBUG</level> </filter> <encoder> <charset>UTF-8</charset> <outputPatternAsHeader>false</outputPatternAsHeader> <pattern>${log.pattern1}</pattern> </encoder> </appender> <!-- ******** Fichier log pour production Log jusqu'au niveau info --> <appender name="log-file" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${LOGS_FOLDER}/application.log</file> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>INFO</level> </filter> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOGS_TO_COLLECT_FOLDER}/application.%d{yyyyMMdd}.log </fileNamePattern> </rollingPolicy> <encoder> <charset>UTF-8</charset> <outputPatternAsHeader>true</outputPatternAsHeader> <pattern>${log.pattern2}</pattern> </encoder> </appender> <!-- Daily rollover appender that also appends timestamp and rolls over on startup --> <appender name="debugFileAppender" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${LOGS_FOLDER}/application_debug.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${LOGS_TO_COLLECT_FOLDER}/application_debug.%d{yyyyMMdd_HHmmss}.log </fileNamePattern> <TimeBasedFileNamingAndTriggeringPolicy class="fr.manastria.logback.StartupTimeBasedTriggeringPolicy" /> </rollingPolicy> <encoder> <pattern>${log.pattern1}</pattern> </encoder> </appender> <!-- Cette balise permet de définir le niveau globale des logs de l'application et de référencer les différents appenders. --> <root> <level value="INFO" /> <appender-ref ref="STDOUT" /> </root> <!-- * * * LOGGER * * Les classes/packages qui seront tracées * * * --> <!-- additivity=false : empeche les parents de recevoir le log --> <!-- Cette balise permet de redéfinir une configuration différente de la balise <root> sur un package particulier. A l'aide de l'attribut name et level, on peut modifier le niveau de log défini par la balise <root> sur un package spécifique. Cette balise permet également de faire référence à d'autres appenders. L'attribut additivity permet d'indiquer si les logs seront également affichés par les appenders définis dans <root> ou pas. --> <logger name="fr.manastria" additivity="false"> <level value="TRACE" /> <appender-ref ref="STDOUT" /> <appender-ref ref="log-file" /> <appender-ref ref="log-file-history" /> <appender-ref ref="xml" /> <appender-ref ref="html" /> <appender-ref ref="debugFileAppender" /> </logger> </configuration>
© 2015 - 2025 Weber Informatics LLC | Privacy Policy