config.go 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. package config
  2. import (
  3. . "app.yhyue.com/moapp/jybase/mongodb"
  4. "app.yhyue.com/moapp/jybase/mysql"
  5. "flag"
  6. "github.com/zeromicro/go-zero/core/conf"
  7. "github.com/zeromicro/go-zero/core/logx"
  8. )
  9. var UserMgo *MongodbSim
  10. var DbConf *dbConf
  11. var JianYu *mysql.Mysql
  12. var Subjectdb *mysql.Mysql
  13. var logc Logc
  14. type dbConf struct {
  15. User *MgoConf
  16. InitConfig []*ExpireConfig
  17. DailyConfig []*ExpireConfig
  18. StatisticTime string
  19. JianYu *MysqlConf
  20. Subjectdb *MysqlConf
  21. }
  22. type MysqlConf struct {
  23. DbName string
  24. Address string
  25. UserName string
  26. PassWord string
  27. MaxOpenConns int
  28. MaxIdleConns int
  29. }
  30. type ExpireConfig struct {
  31. CycleDays int64
  32. EndDays int64
  33. StartDays int64
  34. }
  35. type MgoConf struct {
  36. Address string
  37. Size int
  38. DbName string
  39. UserName string
  40. Password string
  41. }
  42. // 日志信息
  43. type Logc struct {
  44. Mode string
  45. Path string
  46. Level []string
  47. KeepDays int
  48. }
  49. var logFile = flag.String("lf", "./logs.yaml", "the config file")
  50. var configFile = flag.String("rf", "./config.yaml", "the config file")
  51. func init() {
  52. //util.ReadConfig(&DbConf)
  53. //初始化日志信息
  54. //日志初始化
  55. conf.MustLoad(*logFile, &logc)
  56. conf.MustLoad(*configFile, &DbConf)
  57. if len(logc.Level) > 0 {
  58. for _, v := range logc.Level {
  59. logx.MustSetup(logx.LogConf{
  60. Mode: logc.Mode,
  61. Path: logc.Path,
  62. Level: v,
  63. KeepDays: logc.KeepDays,
  64. })
  65. logx.Info(v, "--日志记录")
  66. }
  67. }
  68. //初始化mongo用户库
  69. UserMgo = &MongodbSim{
  70. MongodbAddr: DbConf.User.Address,
  71. Size: DbConf.User.Size,
  72. DbName: DbConf.User.DbName,
  73. UserName: DbConf.User.UserName,
  74. Password: DbConf.User.Password,
  75. }
  76. UserMgo.InitPool()
  77. JianYu = &mysql.Mysql{
  78. Address: DbConf.JianYu.Address,
  79. UserName: DbConf.JianYu.UserName,
  80. PassWord: DbConf.JianYu.PassWord,
  81. DBName: DbConf.JianYu.DbName,
  82. MaxOpenConns: DbConf.JianYu.MaxOpenConns,
  83. MaxIdleConns: DbConf.JianYu.MaxIdleConns,
  84. }
  85. JianYu.Init()
  86. Subjectdb = &mysql.Mysql{
  87. Address: DbConf.Subjectdb.Address,
  88. UserName: DbConf.Subjectdb.UserName,
  89. PassWord: DbConf.Subjectdb.PassWord,
  90. DBName: DbConf.Subjectdb.DbName,
  91. MaxOpenConns: DbConf.Subjectdb.MaxOpenConns,
  92. MaxIdleConns: DbConf.Subjectdb.MaxIdleConns,
  93. }
  94. Subjectdb.Init()
  95. }