init.go 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. package main
  2. import (
  3. util "app.yhyue.com/data_processing/common_utils"
  4. "app.yhyue.com/data_processing/common_utils/elastic"
  5. "app.yhyue.com/data_processing/common_utils/log"
  6. "app.yhyue.com/data_processing/common_utils/mongodb"
  7. "esindex/config"
  8. "fmt"
  9. "go.uber.org/zap"
  10. "os"
  11. )
  12. var (
  13. ProjectField = make(map[string]string, 500) //项目字段
  14. ProjectListF = make(map[string]string, 200)
  15. BiddingField = make(map[string]string, 200) //bidding_processing_field, level=1 最外层字段,
  16. BiddingLevelField = make(map[string]map[string]string) //level=2 的第二层字段
  17. )
  18. // InitLog @Description
  19. // @Author J 2022/7/26 15:30
  20. func InitLog() {
  21. logcfg := config.Conf.Log
  22. err := log.InitLog(
  23. log.Path(logcfg.LogPath),
  24. log.Level(logcfg.LogLevel),
  25. log.Compress(logcfg.Compress),
  26. log.MaxSize(logcfg.MaxSize),
  27. log.MaxBackups(logcfg.MaxBackups),
  28. log.MaxAge(logcfg.MaxAge),
  29. log.Format(logcfg.Format),
  30. )
  31. if err != nil {
  32. fmt.Printf("InitLog failed: %v\n", err)
  33. os.Exit(1)
  34. }
  35. }
  36. func InitMgo() {
  37. MgoB = &mongodb.MongodbSim{
  38. MongodbAddr: config.Conf.DB.MongoB.Addr,
  39. DbName: config.Conf.DB.MongoB.Dbname,
  40. Size: config.Conf.DB.MongoB.Size,
  41. UserName: config.Conf.DB.MongoB.User,
  42. Password: config.Conf.DB.MongoB.Password,
  43. }
  44. MgoB.InitPool()
  45. MgoP = &mongodb.MongodbSim{
  46. MongodbAddr: config.Conf.DB.MongoP.Addr,
  47. DbName: config.Conf.DB.MongoP.Dbname,
  48. Size: config.Conf.DB.MongoP.Size,
  49. UserName: config.Conf.DB.MongoP.User,
  50. Password: config.Conf.DB.MongoP.Password,
  51. }
  52. MgoP.InitPool()
  53. MgoQ = &mongodb.MongodbSim{
  54. MongodbAddr: config.Conf.DB.MongoQ.Addr,
  55. DbName: config.Conf.DB.MongoQ.Dbname,
  56. Size: config.Conf.DB.MongoQ.Size,
  57. UserName: config.Conf.DB.MongoQ.User,
  58. Password: config.Conf.DB.MongoQ.Password,
  59. }
  60. MgoQ.InitPool()
  61. }
  62. func InitEs() {
  63. Es = &elastic.Elastic{
  64. S_esurl: config.Conf.DB.Es.Addr,
  65. I_size: config.Conf.DB.Es.Size,
  66. Username: config.Conf.DB.Es.Username,
  67. Password: config.Conf.DB.Es.Password,
  68. }
  69. Es.InitElasticSize()
  70. Es1 = &elastic.Elastic{
  71. S_esurl: config.Conf.DB.Es.AddrP,
  72. I_size: config.Conf.DB.Es.Size,
  73. Username: config.Conf.DB.Es.Username,
  74. Password: config.Conf.DB.Es.Password,
  75. }
  76. Es1.InitElasticSize()
  77. }
  78. func InitField() {
  79. info, _ := MgoB.Find("bidding_processing_field", `{"stype": "project"}`, nil, nil, false, -1, -1)
  80. if len(*info) > 0 {
  81. for _, m := range *info {
  82. if util.IntAll(m["level"]) == 1 {
  83. ProjectField[util.ObjToString(m["field"])] = util.ObjToString(m["ftype"])
  84. } else if util.IntAll(m["level"]) == 2 {
  85. ProjectListF[util.ObjToString(m["field"])] = util.ObjToString(m["ftype"])
  86. }
  87. }
  88. }
  89. log.Info("InitField", zap.Int("ProjectField", len(ProjectField)), zap.Int("ProjectListF", len(ProjectListF)))
  90. }
  91. func InitEsBiddingField() {
  92. info, _ := MgoB.Find("bidding_processing_field", `{"stype": "bidding"}`, nil, nil, false, -1, -1)
  93. if len(*info) > 0 {
  94. for _, m := range *info {
  95. if util.IntAll(m["level"]) == 1 {
  96. BiddingField[util.ObjToString(m["field"])] = util.ObjToString(m["ftype"])
  97. } else if util.IntAll(m["level"]) == 2 {
  98. pfield := util.ObjToString(m["pfield"])
  99. pfieldMap := BiddingLevelField[pfield]
  100. if pfieldMap == nil {
  101. pfieldMap = make(map[string]string, 0)
  102. }
  103. pfieldMap[util.ObjToString(m["field"])] = util.ObjToString(m["ftype"])
  104. BiddingLevelField[pfield] = pfieldMap
  105. }
  106. }
  107. }
  108. log.Info("InitEsBiddingField", zap.Int("BiddingField es 一级字段数量", len(BiddingField)))
  109. log.Info("InitEsBiddingField", zap.Int("BiddingLevelField es 二级字段数量", len(BiddingLevelField)))
  110. }