Служба Custon в Unix с update-rc.d + LOG? - PullRequest
0 голосов
/ 05 октября 2011

У меня есть Java-программа, выступающая в роли сетевого сервера.Благодаря утилите update-rc.d я установил сервис на сервере Debian / Unix, чтобы он работал постоянно без подключения во время сеанса SSH.

Поскольку моя программа находится в байт-коде java, ине родной исполняемый файл Unix, я использовал следующий учебник, чтобы заставить его работать как демон: java как служба демона

Проблема в том, что я не вижу выводпрограмма большеМне нужно увидеть выходные данные программы, так как она показывает трассировку стека, когда происходит исключение.Как перенаправить стандартный поток вывода и сообщения об ошибках в файл журнала?

Альтернативный вопрос: Как запустить программу Java и обеспечить ее непрерывную работу даже при выходе из SSH?

1 Ответ

1 голос
/ 06 октября 2011

Вы можете заключить команду запуска приложения в скрипт оболочки и перенаправить туда вывод:

/usr/bin/java -jar app.jar >> /var/log/app/app.log 2>&1

Но я бы порекомендовал использовать некоторые каркасы ведения журналов, чтобы получить больший контроль над файлами журналов. Что-то вроде slf4j с logback или любым другим бэкэндом.

Альтернативный вопрос: как запустить java-программу и обеспечить ее непрерывную работу даже при выходе из SSH?

Вы можете сделать это с помощью screen :

screen java -jar app.jar ...

Затем после входа в SSH запустите

screen -r

для возобновления сеанса экрана.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...