Log4j is one of the most widely used Logging frameworks. The question I have encountered is: Why did I use log4j, my program takes so many CPUs? Is it a problem with the log4j design? Here I will list some of the common log4j, for your reference: log4j tells me that there is no correct initialization, what should I do? Phenomenon: Log4J: No appenders Could Be Found for category (some.category.name) .log4j: please initialize the log4j system protness. Cause: Log4j's log output requires an appender, appender type with stdout, file, Database Table, Syslog, etc. If the specified Logger does not and all the ancestors do not have an appender, then this error will be made. Remember: log4j is no default Target Appender. Workaround: The simplest is all the ancestors of all Logger set Appender. Create a file in the program run the following directory: log4j.properties content: log4j.rootCategory = DEBUG, stdoutlog4j.appender.stdout = org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout = org.apache.log4j.PatternLayoutlog4j.appender .stdout.Layout.conversionPattern = [% D {DD MMM YYYY HH: MM: SS, SSS}] [% -5P] [% T] [% x] [% C] [% M]% N then in your Private category logger = category.getroot (); // Most Easy or Private Logger Logger = logger.getlogger (classname);