Java приложение, работающее как служба разветвления в systemd, остается неактивным (даже мертвым), даже если оно действительно запущено - PullRequest
0 голосов
/ 11 февраля 2020

Я борюсь с этим в течение нескольких дней, и ответ на все подобные вопросы не может помочь мне.
Приложение, работающее как служба: Java приложение, встроенное в пакет rpm
========= служебный файл ===========

[Unit]
Description=cdb-filemover: feedsinout

[Service]
Type=forking
Restart=on-abnormal
RestartSec=1min
TimeoutSec=1min
IgnoreSIGPIPE=no
KillMode=process
TimeoutStopSec=30s
GuessMainPID=yes
RemainAfterExit=no
ExecStart=/local/apps/cdb-filemover-feedsinout/scripts/service feedsinout start

стартовый скрипт

app=cdb-filemover
flavor=$1
options=""
version=$(cat /local/apps/$app-$flavor/version || echo none)
properties="-Dapp.name=$app -Dapp.version=$version -Dflavor=$flavor -Dnet.spy.log.LoggerImpl=net.spy.memcached.compat.log.Log4JLogger"
main=com.xxx.xxx.filemover.Main
user=xxxx
start() {
 . /home/$user/.bashrc
 cd /local/apps/$app-$flavor
 su --session-command="java $options $properties -cp .:\* $main >> /local/logs/cdb/$app-$flavor.out 2>&1 &" $user
 exit 0
 }

статус на сервере

[BETA:xxx@xxxx:~]$ sudo systemctl status cdb-filemover-feedsinout
鈼cdb-filemover-feedsinout.service - cdb-filemover: feedsinout
   Loaded: loaded (/etc/systemd/system/cdb-filemover-feedsinout.service; static; vendor preset: disabled)
   Active: inactive (dead)

Feb 10 08:59:00 hostname systemd[1]: Started cdb-filemover: feedsinout.
Feb 10 09:01:57 hostname systemd[1]: Starting cdb-filemover: feedsinout...
Feb 10 09:01:57 hostname service[24505]: cat: /local/apps/cdb-filemover-feedsinout/version: No such file or directory
Feb 10 09:01:57 hostname su[24510]: (to pcadmin) root on none
Feb 10 09:01:57 hostname service[24515]: cat: /local/apps/cdb-filemover-feedsinout/version: No such file or directory
Feb 10 09:01:57 hostname systemd[1]: Started cdb-filemover: feedsinout.
Feb 10 09:03:23 hostname systemd[1]: Starting cdb-filemover: feedsinout...
Feb 10 09:03:23 hostname service[25280]: cat: /local/apps/cdb-filemover-feedsinout/version: No such file or directory
Feb 10 09:03:23 hostname su[25285]: (to pcadmin) root on none
Feb 10 09:03:23 hostname systemd[1]: Started cdb-filemover: feedsinout.

на самом деле он работает

[xxx:xxx@xxx:~]$ ps -ef | grep filemover
pcadmin   7515  6691  0 04:18 pts/0    00:00:00 grep --color=auto filemover
*pcadmin  25287     1  0 Feb10 ?        00:01:35 java -Dapp.name=cdb-filemover -Dapp.version=none -Dflavor=feedsinout -Dnet.spy.log.LoggerImpl=net.spy.memcached.compat.log.Log4JLogger -cp .:* com.xxx.xxx.filemover.Main*

Может кто-нибудь помочь с этим? Любые предложения будут оценены.

...