在Windows Server 2016上运行的NiFi无法与回传文件附加程序一起正常使用。 下面是我为文件滚动编写的代码,结果就是这样。
<appender name="APP_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${user.dir}/logs/nifi-app.log</file>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{35} - %msg %n</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${user.dir}/logs/nifi-app.%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>1MB</maxFileSize>
<maxHistory>3</maxHistory>
<totalSizeCap>10MB</totalSizeCap>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
结果:文件滚动不起作用,仅增加文件大小。
<appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${user.dir}/logs/test.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${user.dir}/logs/test-%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
<maxFileSize>1MB</maxFileSize>
<maxHistory>30</maxHistory>
<totalSizeCap>10MB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{35} - %msg %n</pattern>
</encoder>
</appender>
结果:文件滚动不起作用,仅增加文件大小。
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${user.dir}/logs/file.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${user.dir}/logs/file_%i.log.gz</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>10</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>1MB</maxFileSize>
</triggeringPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{35} - %msg %n</pattern>
</encoder>
</appender>
结果:在下一卷中,将删除之前的10个文件,并同时创建具有相同内容的10个文件。
<appender name="Fixed-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${user.dir}/logs/fixed-file.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${user.dir}/logs/fixed-file.%i.log.gz</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>10</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>1MB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{35} - %msg %n</pattern>
</encoder>
</appender>
结果:在下一卷中,将删除之前的10个文件,并同时创建具有相同内容的10个文件。
如何设置才能正常工作?