Support Questions
Find answers, ask questions, and share your expertise

Nifi 1.2.0 on Windows 2012 Server is not rolling over its log files.

Explorer

I have NiFi 1.2.0 installed on the Windows 2012 R2 server, it creates the standard logs files as under:

  • nifi-bootstrap.log
  • nifi-app.log
  • nifi-user.log

Issue is that these files are not rolling over daily or based on size. Can someone help? I have attached the logback.xml file.

Also, are the changes to this logback.xml dynamically implemented, or it requires NiFi to get into effect?

1 ACCEPTED SOLUTION

Contributor

@AViradia

I suspect that Windows locking mechanism restricts the original file to be renamed(Check http://dev.eclipse.org/mhonarc/lists/jetty-users/msg03222.html for details).

You can omit the file property in logback.xml, and then the active log file will be computed a new for each period based on the value of fileNamePattern. A working rollingpolicy for a NiFi node on Windows is as follows:

<appender name="APP_FILE"> 
<!-- <file>${org.apache.nifi.bootstrap.config.log.dir}/nifi-app.log</file> --> 
<rollingPolicy> 
<!-- 
For daily rollover, use 'app_%d.log'. 
For hourly rollover, use 'app_%d{yyyy-MM-dd_HH}.log'. 
To GZIP rolled files, replace '.log' with '.log.gz'. 
To ZIP rolled files, replace '.log' with '.log.zip'. 
--> 
<fileNamePattern>${org.apache.nifi.bootstrap.config.log.dir}/nifi-app_%d{yyyy-MM-dd_HH}.%i.log</fileNamePattern> 
<timeBasedFileNamingAndTriggeringPolicy> 
<maxFileSize>100MB</maxFileSize> 
</timeBasedFileNamingAndTriggeringPolicy> 
<!-- keep 30 log files worth of history --> 
<maxHistory>30</maxHistory> 
</rollingPolicy> 

Ref: https://logback.qos.ch/manual/appenders.html

View solution in original post

3 REPLIES 3

Contributor

Hi Avi,

Please updated the logback.xml with below correction and restart nifi to reflect the changes.

your logback.xml

<fileNamePattern>
C:\NiFi\nifi-1.2.0\logs\nifi-app_%d{yyyy-MM-dd_HH}.%i.zip
</fileNamePattern>

But it should be:

<fileNamePattern>
C:\NiFi\nifi-1.2.0\logs\nifi-app_%d{yyyy-MM-dd_HH}.%i.log.zip
</fileNamePattern>

Contributor

@AViradia

I suspect that Windows locking mechanism restricts the original file to be renamed(Check http://dev.eclipse.org/mhonarc/lists/jetty-users/msg03222.html for details).

You can omit the file property in logback.xml, and then the active log file will be computed a new for each period based on the value of fileNamePattern. A working rollingpolicy for a NiFi node on Windows is as follows:

<appender name="APP_FILE"> 
<!-- <file>${org.apache.nifi.bootstrap.config.log.dir}/nifi-app.log</file> --> 
<rollingPolicy> 
<!-- 
For daily rollover, use 'app_%d.log'. 
For hourly rollover, use 'app_%d{yyyy-MM-dd_HH}.log'. 
To GZIP rolled files, replace '.log' with '.log.gz'. 
To ZIP rolled files, replace '.log' with '.log.zip'. 
--> 
<fileNamePattern>${org.apache.nifi.bootstrap.config.log.dir}/nifi-app_%d{yyyy-MM-dd_HH}.%i.log</fileNamePattern> 
<timeBasedFileNamingAndTriggeringPolicy> 
<maxFileSize>100MB</maxFileSize> 
</timeBasedFileNamingAndTriggeringPolicy> 
<!-- keep 30 log files worth of history --> 
<maxHistory>30</maxHistory> 
</rollingPolicy> 

Ref: https://logback.qos.ch/manual/appenders.html

Explorer

Thanks Shashank, logs are now rolling over on both time and size triggers. Awesome!

; ;