initconfig.go 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. package common
  2. import (
  3. "flag"
  4. "log"
  5. "strings"
  6. . "app.yhyue.com/moapp/jybase/es"
  7. "app.yhyue.com/moapp/jybase/mongodb"
  8. "app.yhyue.com/moapp/jybase/mysql"
  9. "app.yhyue.com/moapp/jybase/redis"
  10. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/usercenter"
  11. "bp.jydev.jianyu360.cn/CRM/application/api/internal/config"
  12. "bp.jydev.jianyu360.cn/CRM/application/entity"
  13. "github.com/zeromicro/go-zero/core/conf"
  14. "github.com/zeromicro/go-zero/core/logx"
  15. "github.com/zeromicro/go-zero/zrpc"
  16. )
  17. var configFile = flag.String("fs", "etc/crmapplication.yaml", "the config file")
  18. var C config.Config
  19. //
  20. var logFile = flag.String("lf", "etc/logs.yaml", "the config file")
  21. var logc entity.Logc
  22. var dbFile = flag.String("df", "etc/db.yaml", "the db file")
  23. var DB config.Db
  24. var (
  25. MgoBidding mongodb.MongodbSim
  26. MgoEnt mongodb.MongodbSim
  27. MainMysql *mysql.Mysql
  28. BaseMysql *mysql.Mysql
  29. CrmMysql *mysql.Mysql
  30. Mgo mongodb.MongodbSim
  31. UserCenterRpc usercenter.UserCenter
  32. )
  33. func init() {
  34. conf.MustLoad(*configFile, &C)
  35. log.Println("初始化配置") //
  36. //初始化日志信息
  37. conf.MustLoad(*logFile, &logc)
  38. if len(logc.Level) > 0 {
  39. for _, v := range logc.Level {
  40. logx.MustSetup(logx.LogConf{
  41. Mode: logc.Mode,
  42. Path: logc.Path,
  43. Level: v,
  44. KeepDays: logc.KeepDays,
  45. })
  46. logx.Info(v, "--日志记录")
  47. }
  48. }
  49. conf.MustLoad(*dbFile, &DB)
  50. //初始化mysql
  51. if DB.Mysql.Main.Address != "" {
  52. log.Println("--初始化 main mysql--")
  53. MainMysql = &mysql.Mysql{
  54. Address: DB.Mysql.Main.Address,
  55. UserName: DB.Mysql.Main.UserName,
  56. PassWord: DB.Mysql.Main.Password,
  57. DBName: DB.Mysql.Main.DbName,
  58. MaxOpenConns: DB.Mysql.Main.MaxOpenConns,
  59. MaxIdleConns: DB.Mysql.Main.MaxIdleConns,
  60. }
  61. MainMysql.Init()
  62. }
  63. if DB.Mysql.BaseService.Address != "" {
  64. log.Println("--初始化 base mysql--")
  65. BaseMysql = &mysql.Mysql{
  66. Address: DB.Mysql.BaseService.Address,
  67. UserName: DB.Mysql.BaseService.UserName,
  68. PassWord: DB.Mysql.BaseService.Password,
  69. DBName: DB.Mysql.BaseService.DbName,
  70. MaxOpenConns: DB.Mysql.BaseService.MaxOpenConns,
  71. MaxIdleConns: DB.Mysql.BaseService.MaxIdleConns,
  72. }
  73. BaseMysql.Init()
  74. }
  75. if DB.Mysql.CrmService.Address != "" {
  76. log.Println("--初始化 crm mysql--")
  77. CrmMysql = &mysql.Mysql{
  78. Address: DB.Mysql.CrmService.Address,
  79. UserName: DB.Mysql.CrmService.UserName,
  80. PassWord: DB.Mysql.CrmService.Password,
  81. DBName: DB.Mysql.CrmService.DbName,
  82. MaxOpenConns: DB.Mysql.CrmService.MaxOpenConns,
  83. MaxIdleConns: DB.Mysql.CrmService.MaxIdleConns,
  84. }
  85. CrmMysql.Init()
  86. }
  87. //初始化数据库配置
  88. rm := DB.Redis
  89. if len(rm.Addr) > 0 {
  90. logx.Info("--初始化 redis--")
  91. redis.InitRedisBySize(strings.Join(rm.Addr, ","), 100, 30, 300)
  92. }
  93. if DB.Mongo.Main.Address != "" {
  94. logx.Info("--初始化 mongodb--")
  95. Mgo = mongodb.MongodbSim{
  96. MongodbAddr: DB.Mongo.Main.Address,
  97. Size: DB.Mongo.Main.Size,
  98. DbName: DB.Mongo.Main.DbName,
  99. }
  100. Mgo.InitPool()
  101. }
  102. if DB.Mongo.Bidding.Address != "" {
  103. logx.Info("--初始化 mongodb Bidding --")
  104. MgoBidding = mongodb.MongodbSim{
  105. MongodbAddr: DB.Mongo.Bidding.Address,
  106. Size: DB.Mongo.Bidding.Size,
  107. DbName: DB.Mongo.Bidding.DbName,
  108. Password: DB.Mongo.Bidding.Password,
  109. UserName: DB.Mongo.Bidding.UserName,
  110. }
  111. MgoBidding.InitPool()
  112. }
  113. if DB.Mongo.Ent.Address != "" {
  114. logx.Info("--初始化 mongodb ent --")
  115. MgoEnt = mongodb.MongodbSim{
  116. MongodbAddr: DB.Mongo.Ent.Address,
  117. Size: DB.Mongo.Ent.Size,
  118. DbName: DB.Mongo.Ent.DbName,
  119. Password: DB.Mongo.Ent.Password,
  120. UserName: DB.Mongo.Ent.UserName,
  121. }
  122. MgoEnt.InitPool()
  123. }
  124. //初始化 elasticsearch
  125. if DB.Es.Addr != "" {
  126. log.Println("--初始化 elasticsearch--")
  127. NewEs(DB.Es.Version, DB.Es.Addr, DB.Es.Size, DB.Es.UserName, DB.Es.Password)
  128. }
  129. UserCenterRpc = usercenter.NewUserCenter(zrpc.MustNewClient(C.UserCenterRpc))
  130. }