http: Ensure server loggers are not nil (fixes #2849)

This commit is contained in:
Matthew Holt 2019-10-31 11:45:18 -06:00
parent 8ef0a0b4f8
commit fb06c041c4
No known key found for this signature in database
GPG key ID: 2A349DD577D586A5
2 changed files with 7 additions and 5 deletions

View file

@ -479,9 +479,11 @@ func (app *App) automaticHTTPS() error {
// rest of the redirects
if len(redirServerAddrs) > 0 {
app.Servers["remaining_auto_https_redirects"] = &Server{
Listen: redirServerAddrs,
Routes: redirRoutes,
tlsApp: tlsApp, // required to solve HTTP challenge
Listen: redirServerAddrs,
Routes: redirRoutes,
tlsApp: tlsApp, // required to solve HTTP challenge
logger: app.logger.Named("log"),
errorLogger: app.logger.Named("log.error"),
}
}
}

View file

@ -91,7 +91,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
zap.Object("request", loggableReq),
)
if s.Logs != nil {
if s.accessLogger != nil {
wrec := NewResponseRecorder(w, nil, nil)
w = wrec
accLog := s.accessLogger.With(
@ -107,7 +107,7 @@ func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
repl.Set("http.response.latency", latency.String())
logger := accLog
if s.Logs.LoggerNames != nil {
if s.Logs != nil && s.Logs.LoggerNames != nil {
logger = logger.Named(s.Logs.LoggerNames[r.Host])
}