func shutdown(runner gin.Runner) { c := make(chan os.Signal, 2) signal.Notify(c, os.Interrupt, syscall.SIGTERM) go func() { s := <-c log.Println("Got signal: ", s) err := runner.Kill() if err != nil { log.Print("Error killing: ", err) } os.Exit(1) }() }