Укажите свой собственный Форматер в файле конфигурации java logger - PullRequest
1 голос
/ 06 февраля 2010

Я написал Formatter (test.MyFormatter), расширив класс java.util.logging.Formatter;

Теперь я хочу использовать test.MyFormatter вместо java.util.logging.SimpleFormatter:

вФайл конфигурации я заменил запись:

java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

с

java.util.logging.ConsoleHandler.formatter = test.MyFormatter

к сожалению, это не работает.

может кто-нибудь объяснить мне, если я делаю:

  1. правильно
  2. если да, то почему это не работает?

Ответы [ 2 ]

1 голос
/ 06 февраля 2010

Согласно javadoc ваша конфигурация верна.

Если он не работает, дважды проверьте, что

  1. test.MyFormatter в вашем классе путь
  2. Убедитесь, что вы случайно не используете Log4J или Commons-logging.
  3. Убедитесь, что ваша конфигурация загружена.
  4. Убедитесь, что ваш MyFormatter имеет открытый конструктор без параметров.
0 голосов
/ 06 февраля 2010

Необходимо переопределить конфигурацию по умолчанию, используя класс LogManager . Примерно так:

LogManager.getLogManager().readConfiguration(
      getClass().getResourceAsStream("path/to/logging.xml");
...