2026-05-12 13:59:15 +08:00
|
|
|
package main
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"context"
|
|
|
|
|
"os"
|
|
|
|
|
"os/signal"
|
2026-05-20 11:36:39 +08:00
|
|
|
"prompts-core/controller"
|
2026-05-12 13:59:15 +08:00
|
|
|
"syscall"
|
|
|
|
|
|
2026-06-10 16:32:42 +08:00
|
|
|
"gitea.redpowerfuture.com/red-future/common/http"
|
|
|
|
|
"gitea.redpowerfuture.com/red-future/common/jaeger"
|
|
|
|
|
_ "gitea.redpowerfuture.com/red-future/common/swagger"
|
2026-05-12 13:59:15 +08:00
|
|
|
_ "github.com/gogf/gf/contrib/drivers/pgsql/v2"
|
|
|
|
|
_ "github.com/gogf/gf/contrib/nosql/redis/v2"
|
|
|
|
|
"github.com/gogf/gf/v2/frame/g"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
|
ctx, cancel := context.WithCancel(context.Background())
|
|
|
|
|
defer cancel()
|
|
|
|
|
defer jaeger.ShutDown(ctx)
|
|
|
|
|
// 注册路由
|
|
|
|
|
http.RouteRegister([]interface{}{
|
2026-05-20 11:36:39 +08:00
|
|
|
controller.Prompt,
|
|
|
|
|
controller.Session,
|
2026-05-12 13:59:15 +08:00
|
|
|
})
|
|
|
|
|
|
2026-05-18 19:19:17 +08:00
|
|
|
// 监听退出信号,确保 Ctrl+C 能完整退出并关闭 gateway server
|
2026-05-12 13:59:15 +08:00
|
|
|
quit := make(chan os.Signal, 1)
|
|
|
|
|
signal.Notify(quit, os.Interrupt, syscall.SIGTERM)
|
|
|
|
|
<-quit
|
|
|
|
|
|
|
|
|
|
g.Log().Infof(ctx, "[main] 收到退出信号,开始优雅退出...")
|
|
|
|
|
cancel()
|
|
|
|
|
_ = http.Httpserver.Shutdown()
|
|
|
|
|
}
|