diff --git a/pkg/monitoring/monitoring.go b/pkg/monitoring/monitoring.go index 08f22bba..35fd71c0 100644 --- a/pkg/monitoring/monitoring.go +++ b/pkg/monitoring/monitoring.go @@ -63,12 +63,22 @@ func (sm *ServerMonitoring) Run() error { glog.Infof("[%v] Prometheus metric is enabled at %v", sm.tag, srv.Addr+metricPath) monitoringServerMux.Handle(metricPath, promhttp.Handler()) } - return srv.ListenAndServe() + + err := srv.ListenAndServe() + if err == http.ErrServerClosed { + glog.Infof("[%v] The main HTTP server has been closed", sm.tag) + return nil + } + return err } return nil } func (sm *ServerMonitoring) Shutdown(ctx context.Context) error { + if sm.server == nil { + return nil + } + glog.Infof("[%v] Shutting down monitoring server", sm.tag) return sm.server.Shutdown(ctx) } diff --git a/pkg/worker/worker.go b/pkg/worker/worker.go index 5ea942ba..4ebb2b9c 100644 --- a/pkg/worker/worker.go +++ b/pkg/worker/worker.go @@ -58,7 +58,7 @@ func (wrk *Worker) startModules() { return } if err := s.Run(); err != nil { - glog.Errorf("failed start server") + glog.Errorf("failed start server: [%v]", err) } }() }