package main import ( "os" "os/signal" "sparkteam-dash/internal/http" "sparkteam-dash/pkg/batchtask" "sparkteam-dash/pkg/config" "sparkteam-dash/pkg/db" "sparkteam-dash/pkg/logger" ) func main() { config.Init() logger.NewLogger(nil) defer func() { if err := recover(); err != nil { logger.Fatalf("%v", err) } }() defer logger.SyncGlobal() db.Init() batchtask.NewBatchWriter() defer batchtask.Batch.Close() go http.RunServer() c := make(chan os.Signal, 1) signal.Notify(c, os.Interrupt, os.Kill) <-c logger.Info("http server exit") }