init.go 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package init
  2. import (
  3. elastic "app.yhyue.com/moapp/jybase/esv1"
  4. "app.yhyue.com/moapp/jybase/mysql"
  5. "bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/usercenter"
  6. "bp.jydev.jianyu360.cn/SocialPlatform/knowledgeBase/entity"
  7. "bp.jydev.jianyu360.cn/SocialPlatform/knowledgeBase/rpc/knowledge/internal/config"
  8. "flag"
  9. _ "github.com/go-sql-driver/mysql"
  10. "github.com/zeromicro/go-zero/core/conf"
  11. "github.com/zeromicro/go-zero/core/discov"
  12. "github.com/zeromicro/go-zero/core/logx"
  13. "github.com/zeromicro/go-zero/zrpc"
  14. "log"
  15. )
  16. var configF = flag.String("ff", "etc/knowledge.yaml", "the config file")
  17. //
  18. var logFile = flag.String("lf", "etc/logs.yaml", "the config file")
  19. var logc entity.Logc
  20. func init() {
  21. conf.MustLoad(*configF, &config.C)
  22. //初始化mysql
  23. mm := config.C.MysqlMain
  24. if mm.Address != "" {
  25. log.Println("--初始化 mysql--")
  26. entity.Mysql = &mysql.Mysql{
  27. Address: mm.Address,
  28. UserName: mm.UserName,
  29. PassWord: mm.PassWord,
  30. DBName: mm.DbName,
  31. MaxOpenConns: mm.MaxOpenConns,
  32. MaxIdleConns: mm.MaxIdleConns,
  33. }
  34. entity.Mysql.Init()
  35. }
  36. //初始化 elasticsearch
  37. es := config.C.Es
  38. if es.Addr != "" {
  39. log.Println("--初始化 elasticsearch--")
  40. log.Println(es.Addr, es.Size)
  41. elastic.InitElasticSize(es.Addr, es.Size)
  42. }
  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. //初始化资源中台相关
  57. userCenterClient := zrpc.MustNewClient(zrpc.RpcClientConf{
  58. Etcd: discov.EtcdConf{
  59. Hosts: config.C.UserCenterConf.Etcd.Hosts,
  60. Key: config.C.UserCenterConf.Etcd.Key,
  61. },
  62. })
  63. entity.UserCenterLib = usercenter.NewUserCenter(userCenterClient)
  64. }