Apache NiFi - การบันทึก

Apache NiFi ใช้ไลบรารีการบันทึกย้อนกลับเพื่อจัดการการบันทึก มีไฟล์ logback.xml อยู่ในไดเรกทอรี conf ของ NiFi ซึ่งใช้เพื่อกำหนดค่าการบันทึกใน NiFi บันทึกถูกสร้างขึ้นในโฟลเดอร์บันทึกของ NiFi และไฟล์บันทึกจะเป็นไปตามที่อธิบายไว้ด้านล่าง

nifi-app.log

นี่คือไฟล์บันทึกหลักของ nifi ซึ่งบันทึกกิจกรรมทั้งหมดของแอปพลิเคชัน apache NiFi ตั้งแต่การโหลดไฟล์ NAR ไปจนถึงข้อผิดพลาดเกี่ยวกับเวลาทำงานหรือกระดานข่าวที่พบโดยส่วนประกอบ NiFi ด้านล่างนี้คือ appender เริ่มต้นในlogback.xml ไฟล์สำหรับ nifi-app.log ไฟล์.

<appender name="APP_FILE"
class="ch.qos.logback.core.rolling.RollingFileAppender">
   <file>${org.apache.nifi.bootstrap.config.log.dir}/nifi-app.log</file>
   <rollingPolicy
      class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
      <fileNamePattern>
         ${org.apache.nifi.bootstrap.config.log.dir}/
	      nifi-app_%d{yyyy-MM-dd_HH}.%i.log
      </fileNamePattern>
      <maxFileSize>100MB</maxFileSize>
      <maxHistory>30</maxHistory>
   </rollingPolicy>
   <immediateFlush>true</immediateFlush>
   <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
      <pattern>%date %level [%thread] %logger{40} %msg%n</pattern>
   </encoder>
</appender>

ชื่อ appender คือ APP_FILE และคลาสคือ RollingFileAppender ซึ่งหมายความว่าคนตัดไม้กำลังใช้นโยบายย้อนกลับ โดยค่าเริ่มต้นขนาดไฟล์สูงสุดคือ 100 MB และสามารถเปลี่ยนเป็นขนาดที่ต้องการได้ การเก็บรักษาสูงสุดสำหรับ APP_FILE คือไฟล์บันทึก 30 ไฟล์และสามารถเปลี่ยนแปลงได้ตามความต้องการของผู้ใช้

nifi-user.log

บันทึกนี้ประกอบด้วยเหตุการณ์ของผู้ใช้เช่นการรักษาความปลอดภัยของเว็บการกำหนดค่า API ของเว็บการอนุญาตผู้ใช้ ฯลฯ ด้านล่างนี้คือ appender สำหรับ nifi-user.log ในไฟล์ logback.xml

<appender name="USER_FILE"
   class="ch.qos.logback.core.rolling.RollingFileAppender">
   <file>${org.apache.nifi.bootstrap.config.log.dir}/nifi-user.log</file>
   <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
      <fileNamePattern>
         ${org.apache.nifi.bootstrap.config.log.dir}/
	      nifi-user_%d.log
      </fileNamePattern>
      <maxHistory>30</maxHistory>
   </rollingPolicy>
   <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
      <pattern>%date %level [%thread] %logger{40} %msg%n</pattern>
   </encoder>
</appender>

ชื่อ appender คือ USER_FILE เป็นไปตามนโยบายโรลโอเวอร์ ระยะเวลาเก็บรักษาสูงสุดสำหรับ USER_FILE คือ 30 ไฟล์บันทึก ด้านล่างนี้คือตัวบันทึกเริ่มต้นสำหรับ USER_FILE appender ที่มีอยู่ใน nifi-user.log

<logger name="org.apache.nifi.web.security" level="INFO" additivity="false">
   <appender-ref ref="USER_FILE"/>
</logger>
<logger name="org.apache.nifi.web.api.config" level="INFO" additivity="false">
   <appender-ref ref="USER_FILE"/>
</logger>
<logger name="org.apache.nifi.authorization" level="INFO" additivity="false">
   <appender-ref ref="USER_FILE"/>
</logger>
<logger name="org.apache.nifi.cluster.authorization" level="INFO" additivity="false">
   <appender-ref ref="USER_FILE"/>
</logger>
<logger name="org.apache.nifi.web.filter.RequestLogger" level="INFO" additivity="false">
   <appender-ref ref="USER_FILE"/>
</logger>

nifi-bootstrap.log

บันทึกนี้ประกอบด้วยบันทึก bootstrap เอาต์พุตมาตรฐานของ apache NiFi (system.out ทั้งหมดเขียนด้วยรหัสส่วนใหญ่สำหรับการดีบัก) และข้อผิดพลาดมาตรฐาน (system.err ทั้งหมดเขียนในโค้ด) ด้านล่างนี้เป็น appender เริ่มต้นสำหรับ nifi-bootstrap.log ใน logback.log

<appender name="BOOTSTRAP_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
   <file>${org.apache.nifi.bootstrap.config.log.dir}/nifi-bootstrap.log</file>
   <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
      <fileNamePattern>
         ${org.apache.nifi.bootstrap.config.log.dir}/nifi-bootstrap_%d.log
      </fileNamePattern>
      <maxHistory>5</maxHistory>
   </rollingPolicy>
   <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
      <pattern>%date %level [%thread] %logger{40} %msg%n</pattern>
   </encoder>
</appender>

ไฟล์ nifi-bootstrap.log ชื่อ appender คือ BOOTSTRAP_FILE ซึ่งเป็นไปตามนโยบายการย้อนกลับ การเก็บรักษาสูงสุดสำหรับ BOOTSTRAP_FILE appender คือ 5 ไฟล์บันทึก ด้านล่างนี้คือตัวบันทึกเริ่มต้นสำหรับไฟล์ nifi-bootstrap.log

<logger name="org.apache.nifi.bootstrap" level="INFO" additivity="false">
   <appender-ref ref="BOOTSTRAP_FILE" />
</logger>
<logger name="org.apache.nifi.bootstrap.Command" level="INFO" additivity="false">
   <appender-ref ref="CONSOLE" />
   <appender-ref ref="BOOTSTRAP_FILE" />
</logger>
<logger name="org.apache.nifi.StdOut" level="INFO" additivity="false">
   <appender-ref ref="BOOTSTRAP_FILE" />
</logger>
<logger name="org.apache.nifi.StdErr" level="ERROR" additivity="false">
   <appender-ref ref="BOOTSTRAP_FILE" />
</logger>