merge: 合并OMC分支

This commit is contained in:
TsMask
2024-07-10 14:18:48 +08:00
parent 17c0011c6b
commit 625ed57a50
260 changed files with 9167 additions and 14857 deletions

View File

@@ -9,10 +9,13 @@ import (
"strconv"
"strings"
_ "net/http/pprof"
"nms_cxy/features/dbrest"
"nms_cxy/features/event"
"nms_cxy/features/fm"
"nms_cxy/features/lm"
"nms_cxy/features/mml"
"nms_cxy/features/pm"
"nms_cxy/lib/dborm"
"nms_cxy/lib/global"
@@ -21,7 +24,6 @@ import (
"nms_cxy/omc/config"
"nms_cxy/src"
"nms_cxy/src/framework/middleware"
libSession "nms_cxy/src/lib_features/session"
"github.com/gin-gonic/gin"
"golang.org/x/net/http2"
@@ -138,61 +140,69 @@ func HttpListenWebServer(addr string) {
}
func main() {
// src 配置中心初始加载
src.ConfigurationInit()
app := src.AppEngine()
conf := config.GetYamlConfig()
log.InitLogger(conf.Logger.File, conf.Logger.Duration, conf.Logger.Count, "omc", config.GetLogLevel())
fmt.Printf("OMC version: %s\n", global.Version)
if conf.Pprof.Enabled {
// 启用pprof HTTP服务
go func() {
fmt.Println(http.ListenAndServe(conf.Pprof.Addr, nil))
}()
}
log.InitLogger(conf.Logger.File, conf.Logger.Duration, conf.Logger.Count, "omc:", config.GetLogLevel())
fmt.Printf("OMC restagent version: %s\n", global.Version)
log.Infof("========================= OMC startup =========================")
log.Infof("OMC version: %s %s %s", global.Version, global.BuildTime, global.GoVer)
log.Infof("OMC restagent version: %s %s %s", global.Version, global.BuildTime, global.GoVer)
err := dborm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
conf.Database.Host, conf.Database.Port, conf.Database.Name)
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
if err != nil {
fmt.Println("dborm.initDbClient err:", err)
os.Exit(4)
}
err = fm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
conf.Database.Host, conf.Database.Port, conf.Database.Name)
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
if err != nil {
fmt.Println("dborm.initDbClient err:", err)
os.Exit(4)
}
err = pm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
conf.Database.Host, conf.Database.Port, conf.Database.Name)
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
if err != nil {
fmt.Println("dborm.initDbClient err:", err)
os.Exit(4)
}
err = dbrest.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
conf.Database.Host, conf.Database.Port, conf.Database.Name)
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
if err != nil {
fmt.Println("dbrest.initDbClient err:", err)
os.Exit(4)
}
err = lm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
conf.Database.Host, conf.Database.Port, conf.Database.Name)
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
if err != nil {
fmt.Println("lm.initDbClient err:", err)
os.Exit(4)
}
mml.InitMML()
// 将 mux.Router 注册到 gin.Engine
// 默认路由组
defaultUriGroup := app.Group(config.DefaultUriPrefix)
defaultUriGroup.Use(middleware.PreAuthorize(nil))
defaultUriGroup.Use(libSession.SessionHeader())
defaultUriGroup.Any("/*any", gin.WrapH(routes.NewRouter()))
// 可配置前缀路由组
uriGroup := app.Group(config.UriPrefix)
uriGroup.Use(libSession.SessionHeader())
uriGroup.Any("/*any", gin.WrapH(routes.NewRouter()))
// AMF上报的UE事件, 无前缀,暂时特殊处理
app.POST(event.UriUEEvent, event.PostUEEventFromAMF)
app.POST(event.UriUEEventAMF, event.PostUEEventFromAMF)
for _, rest := range conf.Rest {
// ipv4 goroutines