Вход в Embedded Tomcat

Поскольку вы используете встроенный tomcat, возможно, вы можете мне помочь.

Я начинаю кота, используя

некоторый код

tomcat.start();

некоторый код

и tomcat запускается успешно, но журналы tomcat(говоря о журналах, специфичных для tomcat) не генерируются в папке журналов tomcat. Но когда я запускаю не внедренный tomcat(через startup.sh), тогда журналы генерируются в папке журналов tomcat.

Есть ли у вас какие-либо идеи. В чем проблема. Нужно ли указывать путь (или включать журналы) программно в случае встроенного tomcat.

1 ответ

Решение

Смотреть на catalina.sh - у него есть параметр CATALINA_OUTговоря

#     CATALINA_OUT  (Optional) Full path to a file where stdout and stderr
#                   will be redirected.
#                   Default is $CATALINA_BASE/logs/catalina.out

Затем в том же сценарии он используется так:

"$_RUNJAVA" <....lots of other parameters among multiple lines.....> \
  org.apache.catalina.startup.Bootstrap "$@" start \
  >> "$CATALINA_OUT" 2>&1 &

Итак, как вы можете видеть, скрипт запуска Tomcat перенаправляет стандартный вывод на catalina.out,

Если вы запускаете Tomcat самостоятельно, перенаправьте его стандартный вывод в другое место или посмотрите на LOGGING_CONFIG Параметр, как переопределить это.

Другие вопросы по тегам