JavaDocs สำหรับjava.util.logging.Level
รัฐ:
ระดับจากมากไปหาน้อยคือ:
SEVERE
(ค่าสูงสุด)WARNING
INFO
CONFIG
FINE
FINER
FINEST
(ค่าต่ำสุด)
ที่มา
import java.util.logging.*;
class LoggingLevelsBlunder {
public static void main(String[] args) {
Logger logger = Logger.getAnonymousLogger();
logger.setLevel(Level.FINER);
System.out.println("Logging level is: " + logger.getLevel());
for (int ii=0; ii<3; ii++) {
logger.log(Level.FINE, ii + " " + (ii*ii));
logger.log(Level.INFO, ii + " " + (ii*ii));
}
}
}
เอาต์พุต
Logging level is: FINER
Jun 11, 2011 9:39:23 PM LoggingLevelsBlunder main
INFO: 0 0
Jun 11, 2011 9:39:24 PM LoggingLevelsBlunder main
INFO: 1 1
Jun 11, 2011 9:39:24 PM LoggingLevelsBlunder main
INFO: 2 4
Press any key to continue . . .
คำชี้แจงปัญหา
ตัวอย่างของฉันชุดLevel
ไปFINER
ดังนั้นผมจึงได้รับการคาดหวังว่าจะดู 2 ข้อความสำหรับแต่ละวง แต่ฉันเห็นข้อความเดียวสำหรับแต่ละลูป ( Level.FINE
ข้อความหายไป)
คำถาม
สิ่งที่ต้องเปลี่ยนแปลงเพื่อดูFINE
( FINER
หรือFINEST
) เอาต์พุต
อัปเดต (โซลูชัน)
ขอบคุณคำตอบของ Vineet Reynoldsเวอร์ชันนี้ทำงานได้ตามความคาดหมายของฉัน จะแสดงINFO
ข้อความ 3 x และ 3 x FINE
ข้อความ
import java.util.logging.*;
class LoggingLevelsBlunder {
public static void main(String[] args) {
Logger logger = Logger.getAnonymousLogger();
// LOG this level to the log
logger.setLevel(Level.FINER);
ConsoleHandler handler = new ConsoleHandler();
// PUBLISH this level
handler.setLevel(Level.FINER);
logger.addHandler(handler);
System.out.println("Logging level is: " + logger.getLevel());
for (int ii=0; ii<3; ii++) {
logger.log(Level.FINE, ii + " " + (ii*ii));
logger.log(Level.INFO, ii + " " + (ii*ii));
}
}
}