message.go 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package main
  2. import (
  3. "app.yhyue.com/moapp/MessageCenter/entity"
  4. "flag"
  5. "fmt"
  6. "github.com/tal-tech/go-zero/core/logx"
  7. "os"
  8. "os/signal"
  9. "syscall"
  10. "app.yhyue.com/moapp/MessageCenter/api/internal/config"
  11. "app.yhyue.com/moapp/MessageCenter/api/internal/handler"
  12. "app.yhyue.com/moapp/MessageCenter/api/internal/svc"
  13. "bp.jydev.jianyu360.cn/BaseService/gateway/core/node"
  14. "github.com/tal-tech/go-zero/core/conf"
  15. "github.com/tal-tech/go-zero/rest"
  16. )
  17. var configFile = flag.String("f", "etc/message-api.yaml", "the config file")
  18. var logFile = flag.String("lf", "etc/logs.yaml", "the logs file")
  19. var logc entity.Logc
  20. func main() {
  21. flag.Parse()
  22. var c config.Config
  23. conf.MustLoad(*configFile, &c)
  24. //注册代理服务
  25. closeNotify, err := node.NewNode(c.Gateway.Etcd...).Register(c.Gateway.ServerCode, fmt.Sprint(c.Port))
  26. if err != nil {
  27. panic(err)
  28. }
  29. go func() {
  30. ctx := svc.NewServiceContext(c)
  31. server := rest.MustNewServer(c.RestConf)
  32. defer server.Stop()
  33. handler.RegisterHandlers(server, ctx)
  34. fmt.Printf("Starting server at %s:%d...\n", c.Host, c.Port)
  35. server.Start()
  36. }()
  37. quit := make(chan os.Signal, 1)
  38. signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
  39. <-quit
  40. closeNotify()
  41. }
  42. func init() {
  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. }