1 votes

Comment relancer automatiquement un processus (wso2am)?

J'ai un script de démarrrage à partir de

   # Fichier upstart Ubuntu à /etc/init/wso2am.conf
#!upstart
description "wso2am" 

pre-start script
    mkdir -p /var/log/wso2am/
end script

respawn
respawn limit 15 5

start on runlevel [2345]
stop on runlevel [06]

script
    # Pas sûr de pourquoi $HOME est nécessaire, mais nous avons constaté que c'est le cas :
    export JAVA_HOME="/usr/lib/jvm/jdk1.8.0_111"

    #exec /usr/local/bin/node $JAVA_HOME/node/notify.js 13002 >> /var/log/node.log 2>&1
end script

Et mon fichier de service est également créé comme

 # Ceci est /usr/lib/systemd/system/wso2am.service
# (ou /lib/systemd/system/wso2am.service dépendant de 
# votre distribution Linux )
[Unit]
Description=démon du serveur wso2am
Documentation=https://docs.wso2.com/
After==network.target wso2am.service

[Service]
# voir man systemd.service 
User=tel
Group=tel
TimeoutStartSec=0
Type=simple
KillMode=process
ExecStart= /bin/bash -lc '/home/tel/Documents/vz/wso2am-2.1.0/wso2am-2.1.0/bin/wso2server.sh --start'
RemainAfterExit=true
ExecStop = /bin/bash -lc '/home/tel/Documents/vz/wso2am-2.1.0/wso2am-2.1.0/bin/wso2server.sh --stop'
StandardOutput=journal
Restart = always
RestartSec=2

[Install]
WantedBy=default.target 

J'essaie d'arrêter le processus (wso2am)

ps -ef | grep wso2am
Kill -9 ID_du_processus

État du processus

Mais je ne parviens pas à trouver le processus automatiquement respawn/restart. Comment vérifier le mécanisme de réapparition automatique sur Ubuntu ?

0voto

Aquiel Womble Points 46

J'ai résolu ce problème avec l'aide de l'équipe Wso2. Ici, nous avons mentionné l'étape pour le problème de configuration système-D.

Script System-D pour le fichier de service wso2am.service.

[Unit]
Description=démon du serveur wso2am
Documentation=https://docs.wso2.com/
After=network.target

[Service]
ExecStart=/bin/sh -c 'XXX/Wso2serve start'
ExecStop=/bin/sh -c 'XXX/Wso2server.sh stop'
ExecRestart=/bin/sh -c 'XXX/Wso2server.sh restart'
PIDFile=/xxx/wso2carbon.pid
User=
Group=
Type=forking
Restart=always
RestartSec=2
StartLimitInterval=60s
StartLimitBurst=3
StandardOutput=journal

[Install]
WantedBy=multi-user.target

Maintenant, lorsque vous recherchez le processus wso2am, utilisez la commande suivante.

ps -ef | grep java

Ensuite, choisissez le PID du processus java wso2am et tuez-le.

kill -9 

Exécutez immédiatement

ps -ef | grep java

de nouveau et vérifiez que le processus n'est plus là. Ensuite, dans les 2 secondes comme nous l'avions spécifié RestartSec=2, vous verrez que le processus du serveur wso2 est de nouveau en cours d'exécution avec un PID différent

Merci, Vivek KT.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X