monitor a good
Former-commit-id: 5a37bfdfe208d3d1a71e6b4924209d0c8e6f53a0
This commit is contained in:
26
main.go
26
main.go
@@ -1,8 +1,9 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"local/rssmon3/copart/config"
|
||||
"local/rssmon3/copart/server"
|
||||
"local/rssmon2/monitor"
|
||||
"local/rssmon3/config"
|
||||
"local/rssmon3/server"
|
||||
"log"
|
||||
"os"
|
||||
"os/signal"
|
||||
@@ -24,12 +25,13 @@ func main() {
|
||||
if err := s.Routes(); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
go func(c chan os.Signal) {
|
||||
if err := s.Run(); err != nil {
|
||||
log.Println(err)
|
||||
}
|
||||
c <- syscall.SIGINT
|
||||
}(sigc)
|
||||
go InterruptAfter(s.Run, sigc)
|
||||
|
||||
m, err := monitor.New()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
go InterruptAfter(m.Run, sigc)
|
||||
|
||||
signal.Notify(sigc,
|
||||
syscall.SIGHUP,
|
||||
@@ -38,5 +40,13 @@ func main() {
|
||||
syscall.SIGQUIT,
|
||||
)
|
||||
<-sigc
|
||||
can()
|
||||
config.Values().DB.Close()
|
||||
}
|
||||
|
||||
func InterruptAfter(foo func() error, c chan os.Signal) {
|
||||
if err := foo(); err != nil {
|
||||
log.Println(err)
|
||||
}
|
||||
c <- syscall.SIGINT
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user