41 lines
816 B
Go
41 lines
816 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"log/slog"
|
|
"net/http"
|
|
"pkg"
|
|
"serviceb/internal/domains/meteo"
|
|
"serviceb/internal/router"
|
|
"time"
|
|
)
|
|
|
|
func init() {
|
|
err := pkg.LoadEnvFile("./../.env")
|
|
if err != nil {
|
|
slog.Warn("error loading env file", "error", err)
|
|
}
|
|
}
|
|
|
|
func main() {
|
|
mux := router.SetupRoutes()
|
|
|
|
meteoService := meteo.NewService()
|
|
meteoHandler := meteo.NewHandler(meteoService)
|
|
meteo.RegisterRoutes(mux, meteoHandler)
|
|
|
|
server := http.Server{
|
|
Addr: ":8090",
|
|
Handler: mux,
|
|
ReadTimeout: 15 * time.Second,
|
|
WriteTimeout: 15 * time.Second,
|
|
IdleTimeout: 60 * time.Second,
|
|
ReadHeaderTimeout: 5 * time.Second,
|
|
}
|
|
|
|
slog.Info("server starting on :8090")
|
|
if err := server.ListenAndServe(); err != nil {
|
|
panic(fmt.Sprintf("server failed, error %s", err))
|
|
}
|
|
}
|