initconfig.go 4.4 KB

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