log4j - วิธีการบันทึก
คลาส Logger มีวิธีการที่หลากหลายในการจัดการกิจกรรมการบันทึก คลาส Logger ไม่อนุญาตให้เราสร้างอินสแตนซ์อินสแตนซ์ Logger ใหม่ แต่มีวิธีการแบบคงที่สองวิธีในการรับอ็อบเจ็กต์ Logger -
- public static Logger getRootLogger();
- public static Logger getLogger(String name);
วิธีแรกในสองวิธีนี้จะคืนค่า root logger ของแอปพลิเคชันและไม่มีชื่อ
อินสแตนซ์อ็อบเจ็กต์ Logger ที่มีชื่ออื่น ๆ จะได้รับผ่านวิธีที่สองโดยส่งชื่อของตัวบันทึก ชื่อของคนตัดไม้อาจเป็นสตริงใดก็ได้ที่คุณสามารถส่งผ่านได้โดยปกติจะเป็นคลาสหรือชื่อแพ็กเกจตามที่เราใช้ในบทสุดท้ายและจะกล่าวถึงด้านล่าง -
static Logger log = Logger.getLogger(log4jExample.class.getName());
วิธีการบันทึก
เมื่อเราได้รับอินสแตนซ์ของคนตัดไม้ที่มีชื่อแล้วเราสามารถใช้วิธีการต่างๆของคนตัดไม้ในการบันทึกข้อความ คลาส Logger มีวิธีการพิมพ์ข้อมูลการบันทึกดังต่อไปนี้
# | วิธีการและคำอธิบาย |
---|---|
1 | public void debug(Object message) พิมพ์ข้อความที่มีระดับ Level.DEBUG |
2 | public void error(Object message) พิมพ์ข้อความที่มีระดับ Level.ERROR |
3 | public void fatal(Object message) พิมพ์ข้อความที่มีระดับระดับ FATAL |
4 | public void info(Object message) พิมพ์ข้อความที่มีระดับ Level.INFO |
5 | public void warn(Object message) มันพิมพ์ข้อความที่มีระดับระดับคำเตือน |
6 | public void trace(Object message) พิมพ์ข้อความที่มีระดับ Level.TRACE |
ทุกระดับถูกกำหนดไว้ใน org.apache.log4j.Level คลาสและวิธีการใด ๆ ที่กล่าวถึงข้างต้นสามารถเรียกได้ดังนี้ -
import org.apache.log4j.Logger;
public class LogClass {
private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class);
public static void main(String[] args) {
log.trace("Trace Message!");
log.debug("Debug Message!");
log.info("Info Message!");
log.warn("Warn Message!");
log.error("Error Message!");
log.fatal("Fatal Message!");
}
}
เมื่อคุณรวบรวมและเรียกใช้ LogClass โปรแกรมมันจะสร้างผลลัพธ์ต่อไปนี้ -
Debug Message!
Info Message!
Warn Message!
Error Message!
Fatal Message!
ข้อความดีบักทั้งหมดมีเหตุผลมากขึ้นเมื่อใช้ร่วมกับระดับ เราจะกล่าวถึงระดับต่างๆในบทถัดไปจากนั้นคุณจะมีความเข้าใจเป็นอย่างดีเกี่ยวกับวิธีใช้วิธีการเหล่านี้ร่วมกับการดีบักในระดับต่างๆ