java - logback 文件运行几天后消失

标签 java slf4j logback user-permissions

我有一个名为appname的java程序,它正在使用 logbacksl4fj用于记录。

期望:

  • 日志文件每天午夜滚动,所有生成的日志文件将根据以下时间保留 30 天: 设置<maxHistory>30</maxHistory>

  • 使用绝对路径来指定日志文件模式,如 <fileNamePattern>/var/log/appname/logfile.%d{yyyy-MM-dd}.log</fileNamePattern>

  • 已创建用户 appname在linux服务器(CentOS)上成为java程序的所有者appname.jar/var/log/appname ,只有这个appname允许用户运行该程序。

我遇到的问题:

不幸的是,在 appname 发生 5 天后,我让它继续运行。程序启动,文件滚动工作正常,但 logfile.log(滚动记录当天的数据)消失, 所有生成的日志文件(前几天的日志)仍然存在。

编辑:我运行了该程序两次,logfile.log 在第 4 天(我第一次运行它)消失了,并在第 5 天(我第二次运行它)消失了

帮助:

有人对此有任何想法吗?

我的猜测:

  1. 是否与logback&sl4fj有关
  2. 权限问题?
  3. 是因为日志文件大小的原因吗(没有设置限制大小,每个15GB左右)?

<configuration debug="true"> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder><pattern>%-4relative [%thread] %-5level %logger{35} - %msg %n</pattern></encoder> </appender> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>/var/log/appname/logfile.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>/var/log/appname/logfile.%d{yyyy-MM-dd}.log</fileNamePattern> <maxHistory>30</maxHistory> </rollingPolicy> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5p %c - %m%n</pattern> </encoder> </appender> <root level="DEBUG"> <appender-ref ref="FILE" /> <!-- <appender-ref ref="STDOUT" /> --> </root> </configuration> <logger name="org.apache.zookeeper"> <level value="ERROR"/> <appender-ref ref="FILE"/> </logger>

任何帮助将不胜感激,提前致谢!

最佳答案

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

经过多天的测试,我发现我的logback文件中缺少上述行,将其添加为logback文件的第一行后,滚动工作正常,希望它可以帮助与我有类似问题的人。

关于java - logback 文件运行几天后消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24025806/

相关文章:

logging - Logback中的标记

java - Spring Boot 带有自定义 logback 配置

java - 如何在 Java 中打印这个特定的金字塔?

java - Spring Boot中slf4j的正确配置是什么

java - 将 Java Web 应用程序从 MySQL 迁移到 ORACLE

java - 通过外部属性文件重定向 Commons 日志记录而不编辑 jar 或 SLF4J?

java - Maven 测试范围

grails - 为 Log4j2 配置 Grails 3

java - Primefaces 中是否有任何选取框效果行为......?

java - 在android中反转/突出显示按钮的适当方法