Разделение Java stdout и stderr с systemd и не заполняя журнал

Я запускаю приложения Java через systemd:

[Unit]
Description=test service

[Service]
Type=simple
EnvironmentFile=/etc/sysconfig/testserver
WorkingDirectory=/opt/testserver
ExecStart=/usr/bin/java -jar /opt/testserver/test.jar
StandardOutput=syslog
StandardError=syslog
User=testserver
Group=testserver
SyslogIdentifier=testserver

[Install]
WantedBy=multi-user.target

Я хочу добраться stdout в /opt/testserver/stdout.log и stderr в /opt/testserver/stderr.log - любые рабочие опции приемлемы (т.е., если возможно сделать через syslog). Если возможный я не хочу регистрировать по крайней мере один из них в журналируемом журнале.

Спасибо...

5
задан 7 March 2015 в 09:24
1 ответ

Я пытаюсь сделать следующее для Logstash, чтобы заменить его скрипт init.d. В основном, завернув его в bash для обеспечения перенаправления stdout и stderr. Не уверен, что это то, что вы хотите, или хотели бы использовать (это не слишком омерзительно, но явно не то, как systemd хочет, чтобы вы это сделали), но мне нужно было что-то, чтобы это началось после Elasticsearch, и я не хотел, чтобы моя команда заметила что-нибудь другое в том, где закончились лог-файлы, так что надеюсь, что это поможет мне, пока они не предоставят один из своих собственных:

[Unit]
Description=Logstash
After=elasticsearch.service
Requires=elasticsearch.service

[Service]
Type=simple
User=logstash
Group=logstash
ExecStart=/bin/bash -c 'exec /opt/logstash/bin/logstash agent \
    -f /etc/logstash/conf.d \
    -l /var/log/logstash/logstash.log \
    >/var/log/logstash/logstash.stdout \
    2>/var/log/logstash/logstash.err'
WorkingDirectory=/var/lib/logstash
LimitNICE=19
LimitNOFILE=16384
Restart=always

[Install]
WantedBy=multi-user.target 

Edit: Я только что понял, что я могу создать /etc/systemd/system/logstash. service.d/after-es.conf следующим образом и не нужно переписывать их init.d скрипт:

[Unit]
After=elasticsearch.service
Requires=elasticsearch.service

Ну, оставив вышеизложенное на случай, если это будет полезно.

.
1
ответ дан 3 December 2019 в 02:03

Теги

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