ก่อนอื่นเรากำหนดเส้นทางที่สามารถค้นหาโครงการได้ที่รันไทม์แบบไดนามิก เหตุผลนี้คือการกำหนดค่าเส้นทางไฟล์เอาต์พุต log4j ตามที่คุณต้องการ
<context-Param> <param-Name> WebApprootkey </param-name> <param-value> amt.root </param-value> </context-param>
จากนั้นคุณต้องกำหนดพา ธ ของไฟล์การกำหนดค่าบันทึกโครงการและ Log4j Listener
<context-param> <param-Name> log4jconfiglocation </param-name> <param-value> classpath: conf/log4j.xml </param-value> </context-param> <! </ผู้ฟัง>
ด้วยวิธีนี้การกำหนดค่าของไฟล์ web.xml จะเสร็จสมบูรณ์จากนั้นไฟล์การกำหนดค่าเฉพาะของไฟล์การกำหนดค่าบันทึก:
<? xml version = "1.0" การเข้ารหัส = "utf-8"?> <! doctype log4j: ระบบการกำหนดค่า "log4j.dtd"> <log4j: การกำหนดค่า> <!-ข้อมูลบันทึกเอาต์พุตไปยังคอนโซล-> name = "ConversionPattern" value = "[%d {yyyy-mm-dd hh: mm: ss: sss}] [%-5p] [วิธี:%l]%n%m%n%n" /> < /layout> <! ตั้งค่าระดับสูงสุดของเอาต์พุตบันทึก-> <param name = "levelmax" value = "ข้อผิดพลาด" /> <!-ตั้งค่า xxx ของเอาต์พุตบันทึกค่าเริ่มต้นเป็นเท็จ-> <param name = "AcceptonMatch" value = "true" /> < /filter> < /appender> <! ชื่อพา ธ ของไฟล์เอาท์พุทข้อมูลบันทึก-> <param name = "file" value = "$ {amt.root} /logs/spdbdata.log" /> <!-ตั้งค่าบันทึกเป็นการย้อนกลับหนึ่งชั่วโมง <sayout> <!-ตั้งค่ารูปแบบของเอาต์พุตบันทึก-> <param name = "ConversionPattern" value = "[%d {yyyy-mm-dd hh: mm: ss: ss}] [%-5p] [วิธี:%l]%n%m%n%n"/> ไม่ได้ติดตามกลไกการสืบทอด 2: ชื่อในเครื่องบันทึกมีความสำคัญมาก มันแสดงถึงรูปแบบของแพ็คเกจ logger และมีความสัมพันธ์การรวมบางอย่าง การทดลองแสดงให้เห็นว่า 2-1: เมื่อชื่อของ logger ที่กำหนดมีชื่อเดียวกันมีเพียงคนสุดท้ายเท่านั้นที่สามารถพิมพ์บันทึก 2-2: เมื่อตัวตัดโลดที่สอดคล้องกันมีความสัมพันธ์การรวมตัวอย่างเช่นชื่อ = test.log4j.test8 และ name = test.log4j.test8.uselog4j การกำหนดค่า ความสัมพันธ์การรวมในค่าของชื่อหมายถึงชื่อของคนตัดไม้! ใส่ใจ! 3: การแยกระหว่างระดับที่กำหนดไว้ในตัวบันทึกและระดับที่กำหนดไว้ในตัวกรองใน Appender 4: หาก levelmin> levelmax ที่กำหนดไว้ใน Appender ถูกกำหนดไว้ใน Appender ข้อมูลบันทึกไม่สามารถพิมพ์ได้-> <!-ระบุการตั้งค่า logger หรือไม่ <levle value = "ข้อผิดพลาด"/> <appender-ref ref = "RollingFile"/> </logger> <!-การตั้งค่าตัวบันทึกรูท-> <root> <ระดับ level = "info"/> <Appender-ref ref = "conforming> <Appender-ref ref =" RollingFile "/>โครงสร้างโครงการมีดังนี้:
หลังจากทุกอย่างพร้อมเมื่อเริ่มโครงการคุณสามารถค้นหาไฟล์บันทึกรายวันหรือรายชั่วโมงของคุณได้ที่ตำแหน่งเอาต์พุตที่ระบุ ไฟล์การกำหนดค่าบันทึกยังสามารถขยายขนาดของแต่ละไฟล์และเรื่องย้อนกลับเมื่อเกิดข้อผิดพลาดของไฟล์ ฉันจะไม่เข้าไปดูรายละเอียดที่นี่
บทความข้างต้นขึ้นอยู่กับบันทึกของ Web Project เพื่อระบุวิธีการกำหนดค่าตำแหน่งไฟล์เอาต์พุต ฉันหวังว่ามันจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น