Ведение журнала для использования java.util.logging - PullRequest
2 голосов
/ 26 февраля 2011

Я пытаюсь использовать ведение журнала общего достояния и хочу использовать java.util.logging в качестве основного механизма.

LogTest.java

import org.apache.commons.logging.*;

public class LogTest { 

        public static void main(String args[]) {
            System.setProperty("java.util.logging.config.file","log.properties");
            Log logger = LogFactory.getLog(LogTest.class);
            logger.trace("trace msg");
        }
}

У меня есть src / main / resources / log.properties (я использую проект maven)

handlers=java.util.logging.ConsoleHandler

# Default global logging level.
# Loggers and Handlers may override this level
.level=ALL

Я не могу видеть вывод. Подскажите, пожалуйста, как программно настроить log.properties для использования ведения журналов Java.

Ответы [ 3 ]

4 голосов
/ 25 января 2013

Вам необходимо указать регистратор, который реализует интерфейс Log. В этом случае Jdk14Logger .

Извлечение Как использовать 'Apache Commons Logging' с 'Java SE Logging'? для получения более подробной информации.

За исключением ссылки:

Поместите файл "commons-logging.properties" в путь к классу вашего приложения. Содержимое этого файла должно выглядеть так: org.apache.commons.logging.Log=org.apache.commons.logging.impl.Jdk14Logger Установка этого свойства указывает Commons-Logging использовать JDK Logger (т. е. Java SE Logger) как реализация Log.

Затем поместите log-config.properties в ваш путь к классам и настройте его соответствующим образом.

Если вы решите изменить impls в будущем, из коробки будет доступно больше регистраторов .

0 голосов
/ 31 июля 2014

создать commons-logging.properties в вашем пути к классам:

org.apache.commons.logging.LogFactory=org.apache.commons.logging.impl.LogFactoryImpl
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Jdk14Logger

установить java.util.logging.config.file перед вашим экземпляром Logger:

System.setProperty("java.util.logging.config.file","log.properties");

тогда журналирование JDK будет appender всеми журналами, которые использует org.apache.commons.logging. *;

пример: spring, hibernate, strutsи т.д.

0 голосов
/ 26 февраля 2011
# Loggers and Handlers may override this level

Попробуйте добавить java.util.logging.ConsoleHandler.level=ALL в свои log.properties.

...