main.go 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // package main -- пускач длся сервера на файбере
  2. //
  3. // Команда запуска обновлятора noip.com
  4. // noip-duc -g p78su.ddns.net,p78git.ddns.net --daemonize -u prospero78su -p Lera_07091978
  5. //
  6. // Профилирование:
  7. //
  8. // go tool pprof http://localhost:29080/debug/pprof/profile?seconds=30
  9. package main
  10. import (
  11. "net/http"
  12. _ "net/http/pprof"
  13. "os"
  14. "time"
  15. "wartank/pkg/components/kernel/logger"
  16. "wartank/server"
  17. )
  18. func profile() {
  19. лог := logger.НовЛоггер("Профиль")
  20. port := "29081"
  21. stage := os.Getenv("STAGE")
  22. if stage == "prod" {
  23. port = "29080"
  24. }
  25. for {
  26. err := http.ListenAndServe("0.0.0.0:"+port, nil)
  27. if err != nil {
  28. лог.Ошибка("profile(): ошибка при запуске профилировщика, err=\n\t%v\n", err)
  29. }
  30. time.Sleep(time.Second * 1)
  31. }
  32. }
  33. var (
  34. // Version -- версия тега хранилища
  35. Version = ""
  36. // Date -- дата релиза
  37. Date = ""
  38. // GoVersion -- версия компилятора
  39. GoVersion = ""
  40. )
  41. func main() {
  42. лог := logger.НовЛоггер("main")
  43. лог.Инфо("main():\n\tgo = %v\n\tvers = %v\n\tdate = %v\n", GoVersion, Version, Date)
  44. go profile()
  45. сервер := server.НовСервер()
  46. go func() {
  47. time.Sleep(time.Minute * 20)
  48. сервер.Отменить()
  49. }()
  50. ош := сервер.Пуск()
  51. лог.Проверить(ош == nil, "Сервер.Пуск(): ошибка при запуске сервера, ош=\n\t%v\n", ош)
  52. }