Java 正在回滚的日志文件追加器不工作

Java 正在回滚的日志文件追加器不工作,java,logging,logback,Java,Logging,Logback,下面是我的logback配置 <appender name="TIME_BASED_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>C:\\Users\\ADMIN\\Documents\\NetBeansProjects\\timelog.log</file> <rollingPolicy class="ch.qos.logback.core.ro

下面是我的logback配置

<appender name="TIME_BASED_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>C:\\Users\\ADMIN\\Documents\\NetBeansProjects\\timelog.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">      
        <!-- daily rollover -->
        <fileNamePattern>C:\\Users\\ADMIN\\Documents\\NetBeansProjects\\timelog.%d{yyyy-MM-dd-HH-mm}.log</fileNamePattern>
        <maxHistory>30</maxHistory>
        <maxFileSize>1M</maxFileSize>
        <totalSizeCap>10M</totalSizeCap>

    </rollingPolicy>
    <encoder>
        <pattern>%relative [%thread] %-5level %logger{35} - %msg%n</pattern>
    </encoder>
  </appender> 

  <logger name="timeBased" level="INFO">
    <appender-ref ref="TIME_BASED_FILE"/>
    <appender-ref ref="consoleAppender"/>
  </logger> 

此代码仅在控制台上打印,未在指定目录中创建任何文件。文件夹具有所有写入权限。出什么事了?Logback也不会显示任何错误。请帮忙。我正在使用windows7。

您需要将M替换为MB并更正文件名模式 下面的例子对我很有用:

<appender name="TIME_BASED_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>C:\\Users\\ADMIN\\Documents\\NetBeansProjects\\timelog.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
        <!-- daily rollover -->
        <fileNamePattern>C:\\Users\\admin\\Documents\\NetBeansProjects\\timelog.%d{yyyy-MM-dd-HH-mm}.%i.log</fileNamePattern>
        <maxHistory>30</maxHistory>
        <maxFileSize>1MB</maxFileSize>
        <totalSizeCap>10MB</totalSizeCap>

    </rollingPolicy>
    <encoder >
        <pattern>%relative [%thread] %-5level %logger{35} - %msg%n</pattern>
    </encoder>
</appender>

C:\\Users\\ADMIN\\Documents\\NetBeansProjects\\timelog.log
C:\\Users\\admin\\Documents\\NetBeansProjects\\timelog.%d{yyyy-MM-dd-HH-MM}.%i.log
30
1MB
10MB
%相对[%thread]-5级别%logger{35}-%msg%n

日志配置文件在哪里?它在项目类路径中。被发现后,我通过改变编码器模式进行了验证,etci尝试了你的建议,仍然没有结果。这是系统问题还是什么?@Shades88我不知道没有日志。检查是否有对该目录的写入权限。嘿,M到MB和缺少的%i是缺少的部分。我粘贴了您提供的配置,但忘记更正日志路径。非常感谢,现在可以用了。很高兴能为您提供帮助。有关如何使用groovy配置配置滚动文件appender,请参见此示例
<appender name="TIME_BASED_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>C:\\Users\\ADMIN\\Documents\\NetBeansProjects\\timelog.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
        <!-- daily rollover -->
        <fileNamePattern>C:\\Users\\admin\\Documents\\NetBeansProjects\\timelog.%d{yyyy-MM-dd-HH-mm}.%i.log</fileNamePattern>
        <maxHistory>30</maxHistory>
        <maxFileSize>1MB</maxFileSize>
        <totalSizeCap>10MB</totalSizeCap>

    </rollingPolicy>
    <encoder >
        <pattern>%relative [%thread] %-5level %logger{35} - %msg%n</pattern>
    </encoder>
</appender>