Nie używam plików konfiguracyjnych ani xml do konfiguracji log4j, ponieważ nie ma potrzeby jej głębokiej konfiguracji. Muszę tylko wydrukować wiadomości na konsolę. tak ja to zrobić:Jak skonfigurować log4j do rejestrowania tylko wiadomości informacyjnych i wyższych?
BasicConfigurator.configure();
i drukować tylko informacje i wyższe wiadomości to zrobić:
Logger LOG = Logger.getLogger(MyClass.class)
LOG.setLevel(Level.INFO);
Niemniej jednak widzę komunikaty debugowania w konsoli zbyt. Ale potrzebuję tylko wydrukować informacje i komunikaty o błędach.
Jak to zrobić?
UPD: stworzyłem plik konfiguracyjny z którym zawiera, jak opisano w poradniku tutaj: manual następujące:
log4j.rootLogger=INFO, stdout
# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L %m%n
log4j.logger.com.messagedna.facade=INFO
log4j.logger.com.messagedna.receiver=INFO
log4j.logger.com.messagedna.util=INFO
log4j.logger.com.messagedna.parser=INFO
I umieścić go na com.messagedna
W każdej klasie Potrzebuję rejestratora, napisałem:
Properties props = new Properties();
try {
props.load(new FileInputStream("/log4j.properties"));
} catch (Exception e){
LOG.error(e);
}
PropertyConfigurator.configure(props);
, ale w kura uruchomić mój app uzyskać następujące:
log4j:WARN No appenders could be found for logger (com.messagedna.server.util.Config).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Twój log4j mieszka w katalogu głównym systemu plików ?! –
Nie mogę działać z takimi pojęciami.Czy chodzi ci o to, gdzie znajduje się plik konfiguracyjny, czy co jeszcze? –