У меня есть пример кода, как показано ниже, в моем классе, и я попытался запустить приложение на сервере. В нашем приложении мы обычно используем logger.error, чтобы помещать исключения в журналы ошибок. По ошибке я не сохранил logger.error и напрямую использовал e.printStackTrace() в блоке catch.
Если мы запустим приложение локально (Eclipse IDE), мы получим всю трассировку стека, напечатанную в консоли eclipse. Но если развернуть приложение на сервере и запустить его на сервере (без использования logger.error), где будет напечатано это исключение?
Создает ли сервер временный журнал для хранения такой трассировки стека? Если да, то каков путь к этому файлу журнала?
try {
// ...
} catch (SomeException e) {
e.printStackTrace();
}
Хотя это может показаться глупым, я сомневаюсь в этом и хочу знать, где будет напечатано исключение.
Спасибо заранее.
Спасибо, Динеш
Зависит от того, какой сервер вы используете? Кот?
разворачиваем и запускаем приложение на хосте linux
Используете ли вы какую-либо структуру ведения журнала, если да, то проверьте расположение файлов журнала в файлах конфигурации. например, если используется log4j, вы можете найти расположение файлов журнала в log4j.xml




Это зависит от того, какой сервер приложений вы используете, и от конфигурации ведения журнала. Но с Tomcat и конфигурацией ведения журнала по умолчанию должен быть файл с именем catalina.out, в котором развернуто ваше приложение.
Это должно напечатать исключение в вашем выходном потоке, который должен быть консольным.