main.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package main
  2. import (
  3. "fmt"
  4. "fwh-toolbox-server/cache"
  5. "fwh-toolbox-server/config"
  6. "fwh-toolbox-server/database"
  7. // "fwh-toolbox-server/database"
  8. _ "fwh-toolbox-server/docs" // swag 自动生成文档
  9. "fwh-toolbox-server/logger"
  10. "fwh-toolbox-server/routes"
  11. "fwh-toolbox-server/scheduler"
  12. "fwh-toolbox-server/networkEvents"
  13. "github.com/gofiber/fiber/v2"
  14. "github.com/gofiber/swagger"
  15. "go.uber.org/zap"
  16. )
  17. func main() {
  18. var cfg *config.Config
  19. var err error
  20. cfg, err = config.LoadConfig()
  21. if err != nil {
  22. panic(err)
  23. }
  24. err = logger.Init(cfg.AppEnv)
  25. if err != nil {
  26. panic(err)
  27. }
  28. err = database.Init(cfg)
  29. if err != nil {
  30. panic(err)
  31. }
  32. cache.Init(cfg.RedisAddr)
  33. scheduler.Init()
  34. app := fiber.New()
  35. app.Use(func(c *fiber.Ctx) error {
  36. logger.Log.Info("请求", zap.String("path", c.Path()))
  37. return c.Next()
  38. })
  39. // 注册 Swagger 路由
  40. app.Get("/swagger/*", swagger.HandlerDefault)
  41. routes.Setup(app)
  42. // 启动第一个监听
  43. // go func() {
  44. go func() {
  45. if err := networkEvents.InitEvio(); err != nil {
  46. fmt.Println(err.Error())
  47. panic(err)
  48. }
  49. }()
  50. err = app.Listen("localhost:" + cfg.AppPort)
  51. if err != nil {
  52. panic(err)
  53. }
  54. }