Когда Tomcat запускается как служба, он помещает свой выходной журнал:
\logs\stderr.log
\logs\stdout.log
Как записать эти файлы журнала, когда Tomcat запускался как BAT в Windows?
P.S .: Я пытался запустить Tomcat с помощью:
call startup > ../logs/consolelog.log 2<&1
Но выход consolelog.log
всего 5 строк
Using CATALINA_BASE: "C:\Java\Tomcat 5.0"
Using CATALINA_HOME: "C:\Java\Tomcat 5.0"
Using CATALINA_TMPDIR: "C:\Java\Tomcat 5.0\temp"
Using JRE_HOME: "C:\Program Files\Java\jdk1.5.0_22"
Using CLASSPATH: "C:\Java\Tomcat 5.0\bin\bootstrap.jar"
и много вывода в консоли
Для тех, на кого принятый ответ не работает:
У меня была такая же ситуация, но я использовал (liferay -> tomcat) startup.bat, и он всегда открывал консоль tomcat. Способ редактирования файла startup.bat так, чтобы он выводил журнал в файл, был таким:
Ищите строку:
call "%EXECUTABLE%" start %CMD_LINE_ARGS%
и отредактируйте его так, чтобы он выглядел так:
call "%EXECUTABLE%" run >..\logs\outputfile.log 2>&1 start %CMD_LINE_ARGS% run >..\logs\outputfile.log 2>&1
Вы можете найти свой вывод в папке журналов tomcat. Это файл outputfile.log. Решение - эксперимент с тем, что я нашел на эта страница, который был связан с этот форум. Удачи.
редактировать conf/logging.properties
и измените эту строку
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
к
.handlers = 1catalina.org.apache.juli.FileHandler
Тогда он войдет только в catalina.<date>.log
, а не на консоль.
Я не проверял дважды, но я думаю, что вы можете просто перенаправить консольный ввод-вывод стандартным способом Windows и Unix:
tomcart-start > C:\mylog\log.txt
Я обновил startup.bat
call "%EXECUTABLE%" jpda run >..\logs\server.log 2>&1 start %CMD_LINE_ARGS% >..\logs\server.log 2>&1
Работает для меня.
Насколько я понимаю, в вашем случае я бы не стал использовать вызов запуска.
Пытаться:
catalina run > ..\logs\consolelog.all 2>&1
или
catalina run > ..\logs\consolelog.out 2> ..\logs\consolelog.err
вызов запуска в конце звонки каталина старт, который запускает новую консоль. С другой стороны Каталина Беги запускается в той же консоли, и вы можете перенаправить свой stdout, stderr по своему усмотрению.