diff --git a/app/app.go b/app/app.go index 06787aa..dd6488c 100644 --- a/app/app.go +++ b/app/app.go @@ -286,8 +286,11 @@ func (app *App) handleAuthToken(w http.ResponseWriter, r *http.Request) { func (app *App) Exit() (firstCall bool) { if app.server != nil { - log.Printf("Received Exit command, waiting for all clients to close sessions...") - return app.server.Close() + firstCall = app.server.Close() + if firstCall { + log.Printf("Received Exit command, waiting for all clients to close sessions...") + } + return firstCall } return true } diff --git a/main.go b/main.go index b7e2241..06cbaa4 100644 --- a/main.go +++ b/main.go @@ -120,7 +120,9 @@ func registerSignals(app *app.App) { s := <-sigChan switch s { case syscall.SIGINT, syscall.SIGTERM: - if !app.Exit() { + if app.Exit() { + fmt.Println("Send ^C to force exit.") + } else { os.Exit(5) } }