// Command server starts the ExploreDNS HTTP API server. package main import ( "flag" "fmt" "log" "os" "os/signal" "syscall" "time" "github.com/hits/ExploreDNS/web/api" ) func main() { addr := flag.String("addr", ":8080", "listen address (host:port)") flag.Parse() srv := api.NewServer(*addr) if err := srv.Start(); err != nil { fmt.Fprintf(os.Stderr, "Error: %v\n", err) os.Exit(1) } log.Printf("ExploreDNS API server listening on %s", srv.Addr()) quit := make(chan os.Signal, 1) signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM) <-quit log.Println("Shutting down...") if err := srv.Shutdown(15 * time.Second); err != nil { log.Printf("Shutdown error: %v", err) } }