Support Questions
Find answers, ask questions, and share your expertise
Announcements
Check out our newest addition to the community, the Cloudera Innovation Accelerator group hub.

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!