summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorxengineering <me@xengineering.eu>2026-05-21 20:54:59 +0200
committerxengineering <me@xengineering.eu>2026-05-21 20:54:59 +0200
commitbfabcbed8d15918c698035c3792533d31b756e5d (patch)
tree6dec077ff0fc2ef8261d4d25ea79dfc3bdcee2af
parent242fa643db458663479a2fe3f1c757b5bf05cb5d (diff)
downloadfinserv-bfabcbed8d15918c698035c3792533d31b756e5d.tar
finserv-bfabcbed8d15918c698035c3792533d31b756e5d.tar.zst
finserv-bfabcbed8d15918c698035c3792533d31b756e5d.zip
Fix stop message
-rw-r--r--main.go16
1 files changed, 15 insertions, 1 deletions
diff --git a/main.go b/main.go
index a595ab1..cacd01c 100644
--- a/main.go
+++ b/main.go
@@ -3,6 +3,9 @@ package main
import (
"fmt"
"log"
+ "os"
+ "os/signal"
+ "syscall"
"net/http"
"time"
@@ -34,9 +37,20 @@ func run() {
ReadTimeout: ReadTimeout,
}
- log.Fatal(srv.ListenAndServe())
+ go srv.ListenAndServe()
+
+ await(syscall.SIGTERM, syscall.SIGINT)
}
func hello(w http.ResponseWriter, r *http.Request) {
fmt.Fprintln(w, "Hello world!")
}
+
+func await(signals ...syscall.Signal) {
+ listener := make(chan os.Signal, 1)
+ for _, s := range signals {
+ signal.Notify(listener, s)
+ }
+ sig := <-listener
+ log.Printf("Received OS signal '%v'\n", sig)
+}