Привет.
Есть метод, который бросает исключение:
throws ClientProtocolException, ServerException,
UnsecuredConnectionAttemptError, IOException{
Как регистрировать эти исключения в журнале с помощью log4j ?
Перехватит его в catch
и записать в лог с нужным вам уровнем.
// в начале класса
private static final Logger logger = LogManager.getLogger(<имя класса>.class);
try {
// код
} catch(ClientProtocolException | ServerException |
UnsecuredConnectionAttemptError | IOException ex) {
logger.error("Что-то пошло не так", ex);
throw ex;
}
Если вы активно используете потоки, то есть возможность подвесить обработчик исключений на поток. Тогда, если во время работы возникает исключение и оно не обрабатывается, то его можно будет перехватить и сделать какую то полезную работу, например сделать запись в лог.
Выглядит это следующим образом:
Thread thread = new Thread(() -> {
method();
});
thread.setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread t, Throwable e) {
//логирование сообщений об ошибках
}
});
thread.start();
private static void method(){
// что то там кидается
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Создайте программу-тест для проверки знаний таблицы умноженияС помощью случайных чисел создайте 5 примеров
Подскажите, пожалуйста, возможно ли создать Java generic класс, который принимает только Number или String и ничего болееЕсли указывать тип отличный...
При запуске Tomcat в Eclipse все происходит нормальноКогда пытаюсь запустить JSP файл выскакивает ошибка