методы наиболее успешной практики log4j для регистрации во внутренней библиотеке (дважды регистрирующийся)

Вот моя установка:

  • WEBAPP: Весеннее веб-приложение MVC
  • БИБЛИОТЕКА: внутренняя библиотека я использую в WEBAPP

В WEBAPP мне определили обработчик исключений в моем "основном" диспетчере следующим образом:

@ExceptionHandler(Exception.class)
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
public final ModelAndView handleException(
        final Exception e,
        final HttpServletRequest request)
{
   //some stuff...
    LOG.error(message, e);
   //some more stuff...
}

где РЕГИСТРАЦИЯ - мой log4j лесоруб, определенный статически в классе.

В БИБЛИОТЕКЕ я регистрирую любые исключения, поскольку ошибка тогда повторно бросает их в клиента. В этом случае клиент - WEBAPP. Теперь, как вы видите, каждый раз, когда ошибка происходит, у меня есть 2 записи в журнале! Один для БИБЛИОТЕКИ и один для WEBAPP.

Я не хочу удалять обработчик исключений для WEBAPP, так как исключения могут быть брошены за пределами БИБЛИОТЕКИ, и я хочу зарегистрировать их прежде, чем возвратить 500 клиенту WEBAPP.

Какие-либо предложения?

0
nl ja de

1 ответы

Я проявляю подход, что необходимо только поймать исключение, если вы планируете делание с этим чего-то в том пятне. Регистрация исключения ничего не делает. Моя рекомендация не состоит в том, чтобы загрузить ваша библиотека. Просто позволяйте пузырю исключения обычно, так как он кажется, что вы не пытаетесь сделать что-либо специальное в своей библиотеке.

0
добавлено
Spring Framework and more
Spring Framework and more
839 участник(ов)

чат о spring framework и связанных с ним технологиях. We're discussing: job, tech questions, beer meet up/networking: tech review ,LinkedIn skills, SOF q/a raise up& etc. languages: russian,java,eng.