package init import ( "app.yhyue.com/moapp/jyInfo/entity" "app.yhyue.com/moapp/jyInfo/rpc/manager/internal/config" "app.yhyue.com/moapp/jyInfo/rpc/model" "flag" "fmt" "github.com/zeromicro/go-zero/core/conf" "github.com/zeromicro/go-zero/core/logx" "log" _ "github.com/go-sql-driver/mysql" "github.com/jinzhu/gorm" ) var configF = flag.String("ff", "etc/manager.yaml", "the config file") var C config.Config var DB *gorm.DB var err error // var logFile = flag.String("lf", "etc/logs.yaml", "the config file") var logc entity.Logc //管理员 var MUserIdMap = map[string]bool{} func init() { conf.MustLoad(*configF, &C) //初始化msyql mm := C.MysqlMain data_source := fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8&parseTime=True&loc=Local", mm.UserName, mm.PassWord, mm.Address, mm.DbName, ) DB, err = gorm.Open("mysql", data_source) if err != nil { panic(err) } DB.DB().SetMaxOpenConns(mm.MaxOpenConns) // 最大连接数 DB.DB().SetMaxIdleConns(mm.MaxIdleConns) // 最大空闲数 log.Println("初始化 mysql") //初始redis rm := C.Redis model.InitRedis(&rm) model.InitMysql(&mm) //初始NSQ nm := C.Nsq model.InitNsqConfig(&nm) //初始es es := C.Es model.InitEs(&es) //管理员信息 if len(C.ManagerUserId) > 0 { for _, v := range C.ManagerUserId { MUserIdMap[v] = true } } //初始化日志信息 conf.MustLoad(*logFile, &logc) if len(logc.Level) > 0 { for _, v := range logc.Level { logx.MustSetup(logx.LogConf{ Mode: logc.Mode, Path: logc.Path, Level: v, KeepDays: logc.KeepDays, }) logx.Info(v, "--日志记录") } } }