initconfig.go 3.0 KB

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