systemctl: Записать консольное сообщение в конкретный файл

У меня есть служба, настроенная с помощью systemctl. Это файл конфигурации:

[Unit]
Description=eureka-server
After=syslog.target

[Service]
User=bhushanp
#User=root
ExecStart=/usr/bin/java -jar /home/bhushanp/apps/eureka_server.jar > /var/log/es.log 2>>&1
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

Но он не записывает журналы в файл /var/log/es.log.
Любая помощь приветствуется.

0
задан 22 June 2017 в 20:53
1 ответ

ExecStart не управляется оболочкой, поэтому, если вы этого хотите, добавьте к нему префикс / bin / sh -c и укажите аргументы. Я бы порекомендовал вам лучше подключить stdout к журналу и посмотреть вывод журнала с помощью journalctl -u foo.service , чем извлекать его из файла на диске.

Если вы хотите следить за журналом. аналогично tail -f , вы можете использовать journalctl -f -u foo.service .

2
ответ дан 4 December 2019 в 13:31

Теги

Похожие вопросы