ลำดับชั้นของการบันทึก log4j คืออะไร?
DEBUG
INFO
WARN
ERROR
FATAL
ข้อใดให้การบันทึกสูงสุดซึ่งจะเป็นประโยชน์ในการแก้ไขปัญหา ใครสามารถให้คำสั่งซื้อหรือลำดับชั้นที่เข้าสู่ระบบจากสูงสุดไปต่ำสุด? ขอบคุณ!
ลำดับชั้นของการบันทึก log4j คืออะไร?
DEBUG
INFO
WARN
ERROR
FATAL
ข้อใดให้การบันทึกสูงสุดซึ่งจะเป็นประโยชน์ในการแก้ไขปัญหา ใครสามารถให้คำสั่งซื้อหรือลำดับชั้นที่เข้าสู่ระบบจากสูงสุดไปต่ำสุด? ขอบคุณ!
คำตอบ:
ตารางนี้อาจมีประโยชน์สำหรับคุณ:
ลงไปที่คอลัมน์แรกคุณจะเห็นว่าบันทึกการทำงานในแต่ละระดับ เช่นสำหรับWARN ( FATAL, ERROR และ WARN ) จะมองเห็นได้ สำหรับOFFจะไม่มีอะไรปรากฏให้เห็น
OFF
และALL
ดีหลังจากอ่านบางแหล่ง (ไม่พบกรณีพิเศษ) ฉันสงสัยว่าตารางของพวกเขาถูกต้อง
ใช้กำลังอ่านแหล่งที่มา (ข้อความที่ตัดตอนมาจากPriority
และLevel
คอมไพล์คลาส, ระดับ TRACE ถูกนำมาใช้ในเวอร์ชัน 1.2.12):
public final static int OFF_INT = Integer.MAX_VALUE;
public final static int FATAL_INT = 50000;
public final static int ERROR_INT = 40000;
public final static int WARN_INT = 30000;
public final static int INFO_INT = 20000;
public final static int DEBUG_INT = 10000;
public static final int TRACE_INT = 5000;
public final static int ALL_INT = Integer.MIN_VALUE;
หรือlog4j API สำหรับLevel
คลาสซึ่งทำให้ค่อนข้างชัดเจน
เมื่อห้องสมุดตัดสินใจว่าจะพิมพ์คำสั่งที่แน่นอนหรือไม่นั้นจะคำนวณระดับที่มีประสิทธิภาพของLogger
วัตถุที่รับผิดชอบ(ขึ้นอยู่กับการกำหนดค่า) และเปรียบเทียบกับLogEvent
ระดับของ 's (ขึ้นอยู่กับวิธีการที่ใช้ในรหัส - trace / debug / ... / ถึงแก่ชีวิต ) หากLogEvent
ระดับของมากกว่าหรือเท่ากับLogger
ระดับLogEvent
จะถูกส่งไปที่ appender - "printed" ที่แกนกลางมันจะทำให้การเปรียบเทียบเป็นจำนวนเต็มและนี่คือสิ่งที่ค่าคงที่เหล่านี้มาสู่การกระทำ
OFF
FATAL
ERROR
WARN
INFO
DEBUG
TRACE
ALL
trace
พวกเขากล่าวอย่างถูกต้องในภายหลังว่าALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF
(ในที่นั้น<
หมายถึงมีความสำคัญน้อยกว่า)
ลำดับชั้นของระดับการบันทึก log4j มีดังต่อไปนี้ในลำดับสูงสุดถึงต่ำสุด:
ระดับการบันทึกการสืบค้นกลับให้การบันทึกสูงสุดซึ่งจะเป็นประโยชน์ในการแก้ไขปัญหา ระดับการบันทึกของ DEBUG นั้นมีประโยชน์อย่างมากในการแก้ไขปัญหา
นอกจากนี้คุณยังสามารถอ้างอิงลิงค์นี้สำหรับข้อมูลเพิ่มเติมเกี่ยวกับระดับการบันทึก: https://logging.apache.org/log4j/2.0/manual/architecture.html
[นำมาจากhttp://javarevisited.blogspot.com/2011/05/top-10-tips-on-logging-in-java.html]
DEBUG เป็นระดับการบันทึกข้อมูลจาวาต่ำสุดที่ จำกัด และเราควรเขียนทุกอย่างที่เราต้องการในการดีบักแอปพลิเคชั่นโหมดการบันทึกจาวานี้ควรใช้ในการพัฒนาและทดสอบสภาพแวดล้อมเท่านั้นและต้องไม่ใช้ในสภาพแวดล้อมการผลิต
INFO ถูก จำกัด มากกว่าระดับการบันทึก DEBUG java และเราควรบันทึกข้อความที่มีวัตถุประสงค์เพื่อให้ข้อมูลเช่นเซิร์ฟเวอร์เริ่มต้นข้อความขาเข้าข้อความขาออก ฯลฯ ในการบันทึกระดับ INFO ในจาวา
WARN ถูก จำกัด มากขึ้นกว่าระดับการบันทึกข้อมูล INFO java และใช้เพื่อบันทึกการเรียงลำดับคำเตือนของข้อความเช่นการเชื่อมต่อที่หายไประหว่างไคลเอนต์และเซิร์ฟเวอร์ การเชื่อมต่อฐานข้อมูลหายไปซ็อกเก็ตถึงขีด จำกัด ข้อความและระดับการบันทึกข้อมูลจาวาเหล่านี้มีความสำคัญเนื่องจากคุณสามารถตั้งค่าการแจ้งเตือนข้อความการบันทึกเหล่านี้ในจาวาและให้ทีมสนับสนุนของคุณตรวจสอบสภาพการทำงานของจาวาแอปพลิเคชันของคุณและตอบสนองต่อข้อความเตือนนี้ ในระดับ WARN สรุปใช้เพื่อบันทึกข้อความเตือนสำหรับการเข้าสู่ระบบ Java
ข้อผิดพลาดเป็นระดับการบันทึก java ที่ จำกัด มากกว่า WARN และใช้เพื่อบันทึกข้อผิดพลาดและข้อยกเว้นคุณสามารถตั้งค่าการแจ้งเตือนในระดับการบันทึก java นี้และทีมตรวจสอบการแจ้งเตือนเพื่อตอบสนองต่อข้อความนี้ ข้อผิดพลาดร้ายแรงสำหรับการเข้าสู่ระบบใน Java และคุณควรพิมพ์
ระดับการบันทึก Java FATAL กำหนดเหตุการณ์ข้อผิดพลาดที่รุนแรงมากซึ่งอาจทำให้แอปพลิเคชันยกเลิก หลังจากนี้แอปพลิเคชันของคุณส่วนใหญ่จะหยุดทำงานและหยุดทำงาน
ระดับการบันทึกของ OFF ของ Java มีอันดับสูงสุดที่เป็นไปได้และมีวัตถุประสงค์เพื่อปิดการบันทึกใน Java
ลำดับขั้น
error
,info
,debug
ฯลฯ ของคนตัดไม้กำหนดระดับความสำคัญ / ความรุนแรงกับข้อความเข้าสู่ระบบ หากการบันทึกมีผลจริง ๆ (ข้อความจะปรากฏให้เห็น) จะขึ้นอยู่กับระดับการบันทึกที่มีประสิทธิภาพของเครื่องมือบันทึกที่ใช้