我正在开发一个spring boot应用程序,在这里我从Consul中的YML文件中读取logback配置。以下是我在YML文件中使用的配置。
logging: file: ./logs/application.log pattern: console: "%d %-5level %logger : %msg%n" file: "%d %-4relative [%thread] %-5level %logger{35} - %msg%n" level: org.springframework.web: ERROR com.myapp.somepackage: DEBUG appenders: logFormat: "%d %-4relative [%thread] %-5level %logger{35} - %msg%n" currentLogFilename: ./logs/application.log archivedLogFilenamePattern: ./logs/application-%d{yyyy-MM-dd}-%i.log.gz archivedFileCount: 7 timeZone: UTC maxFileSize: 30KB maxHistory: 30
现在已经生成了日志文件,但是滚动追加程序无法正常工作,对此有任何帮助,我正在努力寻找类似的内容,例如当我们从logback.xml文件执行滚动追加程序时,请执行以下操作
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- daily rollover. Make sure the path matches the one in the file element or else the rollover logs are placed in the working directory. --> <fileNamePattern>./logs/myapp/application_%d{yyyy-MM-dd}.%i.log</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>5MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> <!-- keep 30 days' worth of history --> <maxHistory>30</maxHistory> </rollingPolicy>
我需要从YML文件进行配置
经过大量搜索后,我发现,Spring Boot尚不支持此功能。这些选项仅是:
# LOGGING logging.config= # Location of the logging configuration file. For instance `classpath:logback.xml` for Logback logging.exception-conversion-word=%wEx # Conversion word used when logging exceptions. logging.file= # Log file name. For instance `myapp.log` logging.level.*= # Log levels severity mapping. For instance `logging.level.org.springframework=DEBUG` logging.path= # Location of the log file. For instance `/var/log` logging.pattern.console= # Appender pattern for output to the console. Only supported with the default logback setup. logging.pattern.file= # Appender pattern for output to the file. Only supported with the default logback setup. logging.pattern.level= # Appender pattern for log level (default %5p). Only supported with the default logback setup. logging.register-shutdown-hook=false # Register a shutdown hook for the logging system when it is initialized.
因此,暂时不要在此上浪费时间。它将在20MB之后滚动,但文件名类似于$ {your_file_name} .log.1等。Spring应该支持将滚动文件名模式提供给我们。而且它也不是存档文件。