57 lines
995 B
Go
57 lines
995 B
Go
package main
|
|
|
|
import (
|
|
"time"
|
|
|
|
"git.pyer.club/kingecg/godaemon"
|
|
"git.pyer.club/kingecg/gologger"
|
|
)
|
|
|
|
var daemon *godaemon.GoDaemon
|
|
|
|
func main() {
|
|
gologger.Configure(gologger.LoggersConfig{
|
|
Appenders: map[string]gologger.LogAppenderConfig{
|
|
"flog": {
|
|
Type: "file",
|
|
Options: map[string]interface{}{
|
|
"file": "flog.log",
|
|
},
|
|
},
|
|
},
|
|
Categories: map[string]gologger.LogConfig{
|
|
"default": {
|
|
Appenders: []string{"flog"},
|
|
Level: "debug",
|
|
},
|
|
},
|
|
})
|
|
daemon := godaemon.NewGoDaemon(start, stop)
|
|
daemon.Start()
|
|
}
|
|
|
|
func start(g *godaemon.GoDaemon) {
|
|
l := gologger.GetLogger("task")
|
|
for {
|
|
time.Sleep(time.Second * 1)
|
|
l.Debug("task running:", g.GetPid())
|
|
}
|
|
}
|
|
|
|
func stop(g *godaemon.GoDaemon) {
|
|
l := gologger.GetLogger("task")
|
|
l.Debug("called stop")
|
|
if g == nil {
|
|
l.Debug("Daemon is nil")
|
|
return
|
|
}
|
|
if g.Running == nil {
|
|
l.Debug("task is nil")
|
|
return
|
|
}
|
|
if g != nil && g.Running != nil {
|
|
l.Debug("To kill")
|
|
g.Running.Process.Kill()
|
|
}
|
|
}
|