คำถามติดแท็ก log4j

log4j is a popular Java-based logging utility. It is a project of the Apache Software Foundation and is licensed under The Apache Software License, Version 2.0

30
ไม่พบ appenders สำหรับ logger (log4j)?
ฉันใส่ log4j ใน buildpath ของฉัน แต่ฉันได้รับข้อความต่อไปนี้เมื่อฉันเรียกใช้แอปพลิเคชันของฉัน: log4j:WARN No appenders could be found for logger (dao.hsqlmanager). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. คำเตือนเหล่านี้หมายความว่าอย่างไร สิ่งที่ appender ที่นี่?
369 java  eclipse  log4j 

24
วิธีการเริ่มต้น log4j อย่างถูกต้อง?
หลังจากเพิ่ม log4j ในแอปพลิเคชันของฉันฉันจะได้รับเอาต์พุตต่อไปนี้ทุกครั้งที่เรียกใช้แอปพลิเคชันของฉัน: log4j: WARN ไม่พบ appenders สำหรับ logger (slideselector.facedata.FaceDataParser) log4j: WARN โปรดเริ่มต้นระบบ log4j อย่างถูกต้อง ดูเหมือนว่านี่หมายความว่าไฟล์การกำหนดค่าหายไป ไฟล์กำหนดค่านี้ควรอยู่ที่ใดและเนื้อหาเริ่มต้นที่ดีคืออะไร ฉันใช้ Java ธรรมดาสำหรับการพัฒนาแอปพลิเคชันเดสก์ท็อป ดังนั้นจึงไม่มีเว็บเซิร์ฟเวอร์ ฯลฯ ...

16
ใน log4j การตรวจสอบ isDebugEnabled ก่อนการบันทึกปรับปรุงประสิทธิภาพหรือไม่
ฉันใช้Log4Jในแอปพลิเคชันของฉันเพื่อบันทึก ก่อนหน้านี้ฉันใช้การโทรดีบั๊กเช่น: ตัวเลือกที่ 1: logger.debug("some debug text"); แต่บางลิงค์แนะนำว่าควรตรวจสอบisDebugEnabled()ก่อนดีกว่าเช่น: ตัวเลือก 2: boolean debugEnabled = logger.isDebugEnabled(); if (debugEnabled) { logger.debug("some debug text"); } ดังนั้นคำถามของฉันคือ " ตัวเลือก 2 ปรับปรุงประสิทธิภาพหรือไม่ " เพราะในกรณีใด ๆ กรอบ Log4J มีการตรวจสอบเดียวกันสำหรับ debugEnabled สำหรับตัวเลือกที่ 2 อาจเป็นประโยชน์ถ้าเราใช้คำสั่ง debug หลายคำสั่งในวิธีการเดียวหรือคลาสที่กรอบไม่จำเป็นต้องเรียกisDebugEnabled()วิธีการหลายครั้ง (ในการโทรแต่ละครั้ง); ในกรณีนี้จะเรียกisDebugEnabled()ใช้เมธอดเพียงครั้งเดียวและหาก Log4J ได้รับการกำหนดค่าให้ดีบั๊กระดับจริง ๆ แล้วมันจะเรียกisDebugEnabled()เมธอดสองครั้ง: ในกรณีที่กำหนดค่าให้กับตัวแปร debugEnabled และ เรียกจริงโดยวิธี logger.debug () …
207 java  logging  log4j 

4
การกำหนดค่า Log4j Loggers โดยทางโปรแกรม
ฉันกำลังพยายามใช้ SLF4J (มีlog4jผลผูกพัน) เป็นครั้งแรก ฉันต้องการกำหนดค่า Loggers 3 ชื่อที่แตกต่างกันซึ่งสามารถส่งคืนโดย LoggerFactory ซึ่งจะบันทึกระดับต่าง ๆ และส่งข้อความไปยัง appenders ที่ต่างกัน: Logger 1 "FileLogger" บันทึก DEBUG และต่อท้าย DailyRollingFileAppender Logger 2 "TracingLogger" บันทึกการสืบค้นกลับ + และผนวกเข้ากับ JmsAppender Logger 3 "ErrorLogger" จะบันทึก ERROR + และต่อท้ายไปอีกอัน JmsAppender นอกจากนี้ฉันต้องการให้พวกเขากำหนดค่าทางการเขียนโปรแกรม (ใน Java, ตรงข้ามกับ XML หรือlog4j.propertiesไฟล์) ฉันคิดว่าปกติฉันจะกำหนดLoggerบางสิ่งเหล่านี้ในรหัส bootstrapping เช่นinit()วิธีการ อย่างไรก็ตามเนื่องจากฉันต้องการใช้slf4j-log4jฉันสับสนเกี่ยวกับที่ฉันสามารถกำหนด loggers และทำให้พวกเขาสามารถใช้ classpath ฉันไม่เชื่อว่านี่เป็นการละเมิดวัตถุประสงค์พื้นฐานของ …
191 java  logging  log4j  slf4j 

20
จะหยุดการแสดงข้อความ INFO บน spark console ได้อย่างไร?
ฉันต้องการหยุดข้อความต่าง ๆ ที่กำลังมาบน spark shell ฉันพยายามแก้ไข log4j.propertiesไฟล์เพื่อหยุดข้อความเหล่านี้ นี่คือเนื้อหาของ log4j.properties # Define the root logger with appender file log4j.rootCategory=WARN, console log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.target=System.err log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n # Settings to quiet third party logs that are too verbose log4j.logger.org.eclipse.jetty=WARN log4j.logger.org.eclipse.jetty.util.component.AbstractLifeCycle=ERROR log4j.logger.org.apache.spark.repl.SparkIMain$exprTyper=INFO log4j.logger.org.apache.spark.repl.SparkILoop$SparkILoopInterpreter=INFO แต่ข้อความยังคงปรากฏบนคอนโซล นี่คือตัวอย่างข้อความ 15/01/05 15:11:45 INFO SparkEnv: Registering BlockManagerMaster …

6
ลำดับชั้นการบันทึก log4j
ลำดับชั้นของการบันทึก log4j คืออะไร? DEBUG INFO WARN ERROR FATAL ข้อใดให้การบันทึกสูงสุดซึ่งจะเป็นประโยชน์ในการแก้ไขปัญหา ใครสามารถให้คำสั่งซื้อหรือลำดับชั้นที่เข้าสู่ระบบจากสูงสุดไปต่ำสุด? ขอบคุณ!
169 logging  log4j 

2
log4j: บันทึกผลลัพธ์ของคลาสเฉพาะไปยัง appender ที่ระบุ
ฉันใช้ log4j และต้องการกำหนดเส้นทางเอาต์พุตของตัวบันทึกบางตัวไปยังไฟล์ที่ระบุ ฉันมีผู้ใช้หลายคนแล้ว ตอนนี้เพื่อให้การดีบักง่ายขึ้นฉันต้องการบอก log4j ว่าเอาต์พุตที่สร้างโดยคลาสเฉพาะ (เช่น foo.bar.Baz) ควรเขียนลงในไฟล์บันทึกเฉพาะ สามารถทำได้หรือไม่
161 java  log4j  logging  appender 

6
log4j vs logback [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ เรากำลังใช้ log4j ที่อยู่เบื้องหลังเสื้อคลุมตัวเอง เราวางแผนที่จะใช้คุณสมบัติอื่น ๆ อีกมากมายในตอนนี้ เราควรอัพเดทเป็น logback หรือไม่? (ฉันหมายถึงกรอบไม่ใช่ซุ้มเช่น SLF4J)
152 java  logging  log4j  logback 

11
จะส่ง stacktrace ไปยัง log4j ได้อย่างไร?
สมมติว่าคุณตรวจพบข้อยกเว้นและรับสิ่งต่อไปนี้ในเอาต์พุตมาตรฐาน (เช่นพูดคอนโซล) หากคุณทำe.printStackTrace () : java.io.FileNotFoundException: so.txt at java.io.FileInputStream.<init>(FileInputStream.java) at ExTest.readMyFile(ExTest.java:19) at ExTest.main(ExTest.java:7) ตอนนี้ฉันต้องการส่งสิ่งนี้แทนคนตัดไม้เช่น, พูด, log4j เพื่อรับสิ่งต่อไปนี้: 31947 [AWT-EventQueue-0] ERROR Java.io.FileNotFoundException: so.txt 32204 [AWT-EventQueue-0] ERROR at java.io.FileInputStream.<init>(FileInputStream.java) 32235 [AWT-EventQueue-0] ERROR at ExTest.readMyFile(ExTest.java:19) 32370 [AWT-EventQueue-0] ERROR at ExTest.main(ExTest.java:7) ฉันจะทำสิ่งนี้ได้อย่างไร try { ... } catch (Exception e) { final String s; ... …

18
ฉันควรวางไฟล์ log4j.properties ไว้ที่ไหน
ฉันเขียนโครงการบริการเว็บโดยใช้ netbeans 6.7.1 กับ glassfish v2.1 ใส่ log4j.properties ไปยัง root dir ของโครงการและใช้: static Logger logger = Logger.getLogger(MyClass.class); ในตัวสร้าง: PropertyConfigurator.configure("log4j.properties"); และในฟังก์ชั่น: logger.info("..."); logger.error("..."); // ... แต่เป็นข้อมูลข้อผิดพลาด (อันที่จริงฉันพยายามใส่ไว้เกือบทุก dir ที่ฉันรู้): log4j:ERROR Could not read configuration file [log4j.properties]. java.io.FileNotFoundException: log4j.properties (The system cannot find the file specified) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:106) at …

7
Java Logging เทียบกับ Log4J [ปิด]
ปิด . คำถามนี้เป็นคำถามความคิดเห็นตาม ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบพร้อมข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ยังคงคุ้มค่าที่จะเพิ่มไลบรารี log4j ลงในโปรเจ็กต์ Java 5 เพียงเพื่อเข้าสู่ระบบสมมติว่ามีข้อยกเว้นบางประการสำหรับไฟล์ที่มีการตั้งค่าโรลโอเวอร์ที่ดี หรือสิ่งอำนวยความสะดวก util.logging มาตรฐานจะทำงานได้เช่นกัน? คุณคิดอย่างไร?

8
การกำหนดค่า log4j ผ่านอาร์กิวเมนต์ JVM?
ตัวแปรใดบ้างที่ฉันต้องตั้งค่า / ส่งผ่านเป็นอาร์กิวเมนต์ไปยัง JVM เพื่อให้ log4j ทำงานได้อย่างถูกต้อง และโดยถูกต้องฉันหมายถึงไม่บ่นและพิมพ์ไปที่คอนโซล ฉันสามารถดูตัวอย่างทั่วไปได้หรือไม่? หมายเหตุ: ฉันต้องการหลีกเลี่ยงการสร้างไฟล์ log4j.properties ในแอปพลิเคชัน
133 java  logging  log4j 


9
การเปลี่ยนระดับการบันทึก log4j แบบไดนามิก
วิธีต่างๆในการเปลี่ยนระดับบันทึก log4j แบบไดนามิกมีอะไรบ้างเพื่อที่ฉันจะได้ไม่ต้องปรับใช้แอปพลิเคชันอีกครั้ง การเปลี่ยนแปลงจะถาวรในกรณีเหล่านี้หรือไม่?
127 java  logging  log4j  runtime 

8
เกิดอะไรขึ้นกับการเข้าสู่ระบบใน Java? [ปิด]
ตามที่กล่าวไว้ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา เหตุใดจึงต้องใช้หนึ่งในแพ็คเกจต่อไปนี้แทนแพ็กเกจอื่น ๆ การบันทึก Java การบันทึกคอมมอนส์ log4j SLF4J Logback
117 java  logging  log4j  logback  slf4j 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.