| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- // package main -- пускач для десктопа на лорке
- //
- // Профилирование:
- //
- // go tool pprof http://localhost:29080/debug/pprof/profile?seconds=30
- package main
- import (
- "log"
- "net/http"
- _ "net/http/pprof"
- "os"
- "time"
- "wartank/desc_lorca"
- )
- func профилировать() {
- порт := "29081"
- стенд := os.Getenv("STAGE")
- if стенд == "prod" {
- порт = "29080"
- }
- for {
- ош := http.ListenAndServe("0.0.0.0:"+порт, nil)
- if ош != nil {
- log.Printf("профилировать(): при запуске pprof, err=\n\t%v\n", ош)
- }
- time.Sleep(time.Second * 1)
- }
- }
- var (
- // Version -- версия тега хранилища
- Version = ""
- // Date -- дата релиза
- Date = ""
- // GoVersion -- версия компилятора
- GoVersion = ""
- )
- func main() {
- log.Printf("server/main():\n\tgo = %v\n\tvers = %v\n\tdate = %v\n", GoVersion, Version, Date)
- go профилировать()
- десктоп, ош := desc_lorca.НовДесктопЛорка()
- if ош != nil {
- log.Printf("main(): при создании ДесктопЛорка, ош=\n\t%v\n", ош)
- os.Exit(1)
- }
- go func() {
- time.Sleep(time.Minute * 20)
- десктоп.Отменить()
- }()
- if ош = десктоп.Пуск(); ош != nil {
- log.Printf("main(): при работе десктопа, ош=\n\t%v\n", ош)
- os.Exit(2)
- }
- }
|