diff --git a/cmd/server/main.go b/cmd/server/main.go index 2283447..136970a 100644 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -55,12 +55,26 @@ func main() { wisdomService := service.NewWisdomService(genAdapter, verifier, quoteService) // Create server configuration - serverConfig := server.DefaultConfig() - serverConfig.Address = addr + serverConfig := &server.Config{ + Address: cfg.Server.Address, + Timeouts: server.TimeoutConfig{ + Read: cfg.Server.Timeouts.Read, + Write: cfg.Server.Timeouts.Write, + Connection: cfg.Server.Timeouts.Connection, + }, + } + + // Start metrics and pprof HTTP server + go func() { + http.Handle("/metrics", promhttp.Handler()) + logger.Info("starting metrics server", "address", cfg.Metrics.Address) + if err := http.ListenAndServe(cfg.Metrics.Address, nil); err != nil { + logger.Error("metrics server failed", sl.Err(err)) + } + }() // Create server - srv := server.NewTCPServer(wisdomService, - server.WithConfig(serverConfig), + srv := server.NewTCPServer(wisdomService, serverConfig, server.WithLogger(logger)) // Start server