我有一个logback.xml文件,它配置如何在我的spring引导应用程序中进行日志记录。我想将它更改为一个.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文件。是否有可用的文档或示例。我有一个说明如何配置log4j.properties文件的文档,我可以使用相同的文档吗?
发布于 2018-04-23 12:37:35
Logback本身只支持XML和Groovy 用于配置。但是,Spring有自己的日志配置,它通过应用程序属性文件进行配置,然后用于配置所使用的任何日志框架。请参阅Spring文档的测井章以及如何伐木指南。
正如指南所述,配置的应用程序属性方法实际上只处理日志级别的设置,以及除了控制台之外还可选择地写入文件。如果您想做一些比这更复杂的事情(从您的logback.xml文件的外观来看),那么您需要像您已经在做的那样使用一个完整的日志配置文件。没有配置Logback的.properties方法。
Log4j是一个与Logback不同的日志系统,所以我不知道为什么要查看log4j文档,除非您想使用Log4j而不是Logback。当然,您可以从项目中删除Logback,转而使用Log4j,然后使用Log4j配置文件(如log4j.properties),这将允许您使用属性文件而不是XML文件来配置日志记录,但我认为这只是您希望用来决定应用程序使用哪个日志框架的进程的一小部分。
https://stackoverflow.com/questions/49925150
复制相似问题