initconfig.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  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/CRM/application/api/internal/config"
  10. "bp.jydev.jianyu360.cn/CRM/application/entity"
  11. "github.com/zeromicro/go-zero/core/conf"
  12. "github.com/zeromicro/go-zero/core/logx"
  13. )
  14. var configFile = flag.String("fs", "etc/crmapplication.yaml", "the config file")
  15. var C config.Config
  16. //
  17. var logFile = flag.String("lf", "etc/logs.yaml", "the config file")
  18. var logc entity.Logc
  19. var dbFile = flag.String("df", "etc/db.yaml", "the db file")
  20. var DB config.Db
  21. var (
  22. MainMysql *mysql.Mysql
  23. BaseMysql *mysql.Mysql
  24. SurvivalTime int
  25. Mgo mongodb.MongodbSim
  26. )
  27. func init() {
  28. conf.MustLoad(*configFile, &C)
  29. log.Println("初始化配置") //
  30. //初始化日志信息
  31. conf.MustLoad(*logFile, &logc)
  32. if len(logc.Level) > 0 {
  33. for _, v := range logc.Level {
  34. logx.MustSetup(logx.LogConf{
  35. Mode: logc.Mode,
  36. Path: logc.Path,
  37. Level: v,
  38. KeepDays: logc.KeepDays,
  39. })
  40. logx.Info(v, "--日志记录")
  41. }
  42. }
  43. conf.MustLoad(*dbFile, &DB)
  44. //初始化mysql
  45. if DB.Mysql.Main.Address != "" {
  46. log.Println("--初始化 mysql--")
  47. MainMysql = &mysql.Mysql{
  48. Address: DB.Mysql.Main.Address,
  49. UserName: DB.Mysql.Main.UserName,
  50. PassWord: DB.Mysql.Main.Password,
  51. DBName: DB.Mysql.Main.DbName,
  52. MaxOpenConns: DB.Mysql.Main.MaxOpenConns,
  53. MaxIdleConns: DB.Mysql.Main.MaxIdleConns,
  54. }
  55. MainMysql.Init()
  56. }
  57. if DB.Mysql.BaseService.Address != "" {
  58. log.Println("--初始化 mysql--")
  59. BaseMysql = &mysql.Mysql{
  60. Address: DB.Mysql.BaseService.Address,
  61. UserName: DB.Mysql.BaseService.UserName,
  62. PassWord: DB.Mysql.BaseService.Password,
  63. DBName: DB.Mysql.BaseService.DbName,
  64. MaxOpenConns: DB.Mysql.BaseService.MaxOpenConns,
  65. MaxIdleConns: DB.Mysql.BaseService.MaxIdleConns,
  66. }
  67. BaseMysql.Init()
  68. }
  69. //初始化数据库配置
  70. rm := DB.Redis
  71. if len(rm.Addr) > 0 {
  72. logx.Info("--初始化 redis--")
  73. redis.InitRedisBySize(strings.Join(rm.Addr, ","), 100, 30, 300)
  74. }
  75. if DB.Mongo.Main.Address != "" {
  76. logx.Info("--初始化 mongodb--")
  77. Mgo = mongodb.MongodbSim{
  78. MongodbAddr: DB.Mongo.Main.Address,
  79. Size: DB.Mongo.Main.Size,
  80. DbName: DB.Mongo.Main.DbName,
  81. }
  82. Mgo.InitPool()
  83. }
  84. }