added reload signal
This commit is contained in:
27
main.go
27
main.go
@@ -906,6 +906,9 @@ func main() {
|
||||
killSignals := make(chan os.Signal, 1)
|
||||
signal.Notify(killSignals, syscall.SIGINT, syscall.SIGTERM)
|
||||
|
||||
reloadSignals := make(chan os.Signal, 1)
|
||||
signal.Notify(reloadSignals, syscall.SIGUSR1)
|
||||
|
||||
flag.Parse()
|
||||
|
||||
confStr, err := os.ReadFile(*configFlag)
|
||||
@@ -1062,7 +1065,29 @@ func main() {
|
||||
}
|
||||
}
|
||||
|
||||
<-killSignals
|
||||
killLoop:
|
||||
for {
|
||||
select {
|
||||
case <-killSignals:
|
||||
break killLoop
|
||||
case <-reloadSignals:
|
||||
confStr, err := os.ReadFile(*configFlag)
|
||||
if err != nil {
|
||||
log.Fatalf("Unable to open config: %v", err)
|
||||
}
|
||||
|
||||
err = yaml.Unmarshal(confStr, &conf)
|
||||
if err != nil {
|
||||
log.Fatalf("Unable to parse config: %v", err)
|
||||
}
|
||||
|
||||
lvl, err := log.ParseLevel(conf.Logging.Level)
|
||||
if err != nil {
|
||||
log.Fatalf("Failure setting logging level: %v", err)
|
||||
}
|
||||
log.SetLevel(lvl)
|
||||
}
|
||||
}
|
||||
|
||||
for _, s := range sockets {
|
||||
_ = s.Close()
|
||||
|
Reference in New Issue
Block a user