Signal telegraf process until it exits (#5169)

This commit is contained in:
Daniel Nelson 2018-12-26 18:54:50 -08:00 committed by GitHub
parent b1baa54cc4
commit c12eecc90e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 5 deletions

View File

@ -134,6 +134,7 @@ func (a *Agent) Run(ctx context.Context) error {
return err return err
} }
log.Printf("D! [agent] Stopped Successfully")
return nil return nil
} }

View File

@ -152,11 +152,17 @@ case $1 in
if [ -e $pidfile ]; then if [ -e $pidfile ]; then
pidofproc -p $pidfile $daemon > /dev/null 2>&1 && status="0" || status="$?" pidofproc -p $pidfile $daemon > /dev/null 2>&1 && status="0" || status="$?"
if [ "$status" = 0 ]; then if [ "$status" = 0 ]; then
if killproc -p $pidfile SIGTERM && /bin/rm -rf $pidfile; then # periodically signal until process exists
log_success_msg "$name process was stopped" while true; do
else if ! pidofproc -p $pidfile $daemon > /dev/null; then
log_failure_msg "$name failed to stop service" break
fi fi
killproc -p $pidfile SIGTERM 2>&1 >/dev/null
sleep 2
done
log_success_msg "$name process was stopped"
rm -f $pidfile
fi fi
else else
log_failure_msg "$name process is not running" log_failure_msg "$name process is not running"