Files
azure-openai-proxy/cmd/main.go
2023-03-28 14:34:21 +08:00

45 lines
794 B
Go

package main
import (
"context"
"github.com/gin-gonic/gin"
"github.com/pkg/errors"
"log"
"net/http"
"os"
"os/signal"
"syscall"
)
func main() {
gin.SetMode(gin.ReleaseMode)
r := gin.Default()
registerRoute(r)
srv := &http.Server{
Addr: ":8080",
Handler: r,
}
runServer(srv)
}
func runServer(srv *http.Server) {
go func() {
log.Printf("Server listening at %s\n", srv.Addr)
if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
panic(errors.Errorf("listen: %s\n", err))
}
}()
quit := make(chan os.Signal)
signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
<-quit
log.Println("Server Shutdown...")
if err := srv.Shutdown(context.Background()); err != nil {
log.Fatal("Server Shutdown:", err)
}
log.Println("Server exiting")
}