logback.xml到logback属性文件

时间:2018-04-19 15:43:57

标签: spring-boot logback spring-logback

我有一个.htaccess文件,用于配置如何在Spring启动应用程序中完成日志记录。我想将其更改为logback.xml文件。但我无法找到任何文件。

.properties

<?xml version="1.0" encoding="UTF-8"?>

如何将上述<property name="LOG_FILE" value="${user.home}/my_logs/logs"/> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>INFO</level> </filter> <layout class="ch.qos.logback.classic.PatternLayout"> <Pattern> %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger %c:%L - %msg%n </Pattern> </layout> </appender> <appender name="FILE-AUDIT" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>DEBUG</level> </filter> <file>${LOG_FILE}-debug.log</file> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <Pattern> %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger %c:%L - %msg%n </Pattern> </encoder> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- rollover weekly --> <fileNamePattern>${LOG_FILE}-debug.%d{yyyy-MM-dd}.%i.log </fileNamePattern> <maxHistory>7</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>10MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> </appender> <appender name="FILE-ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>ERROR</level> </filter> <file>${LOG_FILE}-error.log</file> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <Pattern> %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger %c:%L - %msg%n </Pattern> </encoder> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- rollover weekly --> <fileNamePattern>${LOG_FILE}-error.%d{yyyy-MM-dd}.%i.log </fileNamePattern> <maxHistory>7</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>10MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> </appender> <appender name="FILE-INFO" class="ch.qos.logback.core.rolling.RollingFileAppender"> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>INFO</level> </filter> <file>${LOG_FILE}-info.log</file> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <Pattern> %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger %c:%L - %msg%n </Pattern> </encoder> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- rollover weekly --> <fileNamePattern>${LOG_FILE}-info.%d{yyyy-MM-dd}.%i.log </fileNamePattern> <maxHistory>7</maxHistory> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>10MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> </appender> <root level="ALL"> <appender-ref ref="STDOUT"/> <appender-ref ref="FILE-AUDIT"/> <appender-ref ref="FILE-ERROR"/> <appender-ref ref="FILE-INFO"/> </root> <logger name="com.*******.*****.webservices" level="DEBUG"/> <logger name="org.springframework" level="WARN"/> <logger name="springfox.documentation" level="WARN"/> <logger name="org.hibernate" level="ERROR"/> <logger name="org.apache.http" level="WARN"/> <logger name="org.apache.activemq" level="WARN"/> <logger name="com.zaxxer.hikari" level="WARN"/> <logger name="net.sf.ehcache" level="WARN"/> <logger name="org.apache.velocity" level="WARN"/> <logger name="com.amazonaws" level="WARN"/> <logger name="org.apache.tomcat" level="WARN"/> 文件转换为.xml文件。有没有可用的文档或示例。我有一个文档,显示如何配置.properties文件,我可以使用相同的吗?

1 个答案:

答案 0 :(得分:2)

Logback本身只支持XML和Groovy for configuration。但是,Spring Boot有自己的日志记录配置,它通过您的应用程序属性文件进行配置,然后用于配置您正在使用的任何日志记录框架。请参阅Spring Boot文档的Logging chapter以及How-to Logging Guide

正如该操作指南所述,配置的应用程序属性方法实际上只处理设置日志记录级别,并可选择写入除控制台之外的文件。如果你想做一些比这更复杂的事情,你从你的logback.xml文件的外观做起,那么你需要使用像你一直在做的完整的日志记录配置文件。没有.properties配置Logback的方法。

Log4j是一个与Logback不同的日志记录系统,所以我不确定为什么你要查看log4j文档,除非你想使用Log4j而不是Logback。您当然可以从项目中删除Logback并使用Log4j,然后使用Log4j配置文件(例如log4j.properties),这样您就可以使用属性文件而不是XML文件来配置日志记录,但我希望这只是您希望用来决定用于您的应用程序的日志框架的过程的一小部分。