main.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package main
  2. import (
  3. "github.com/sirupsen/logrus"
  4. _ "go.uber.org/automaxprocs"
  5. "go.uber.org/zap"
  6. "server/core"
  7. "server/edge/camera"
  8. "server/global"
  9. "server/initialize"
  10. "server/utils/logger"
  11. "server/utils/mqtt"
  12. )
  13. //go:generate go env -w GO111MODULE=on
  14. //go:generate go env -w GOPROXY=https://goproxy.cn,direct
  15. //go:generate go mod tidy
  16. //go:generate go mod download
  17. // @title Gin-Vue-Admin Swagger API接口文档
  18. // @version v2.6.3
  19. // @description 使用gin+vue进行极速开发的全栈开发基础平台
  20. // @securityDefinitions.apikey ApiKeyAuth
  21. // @in header
  22. // @name x-token
  23. // @BasePath /
  24. func main() {
  25. global.GVA_VP = core.Viper() // 初始化Viper
  26. initialize.OtherInit()
  27. global.GVA_LOG = core.Zap() // 初始化zap日志库
  28. zap.ReplaceGlobals(global.GVA_LOG)
  29. global.GVA_DB = initialize.Gorm() // gorm连接数据库
  30. initialize.DBList()
  31. if global.GVA_DB != nil {
  32. initialize.RegisterTables() // 初始化表
  33. // 程序结束前关闭数据库链接
  34. db, _ := global.GVA_DB.DB()
  35. defer db.Close()
  36. }
  37. //一些初始化动作
  38. logger.InitLog() //日志
  39. err := camera.GetCameraDeviceMgr().InitAllCameraDevice()
  40. if err != nil {
  41. logrus.Errorf("InitAllCameraDevice:%s", err.Error())
  42. return
  43. }
  44. mqtt.InitMqtt()
  45. initialize.TimeTasks()
  46. core.RunWindowsServer()
  47. }