authenticate: refactor middleware, logging, and tests (#30)

- Abstract remaining middleware from authenticate into internal.
- Use middleware chaining in authenticate.
- Standardize naming of Request and ResponseWriter to match std lib.
- Add healthcheck / ping as a middleware.
- Internalized wraped_writer package adapted from goji/middleware.
- Fixed indirection issue with reverse proxy map.
This commit is contained in:
Bobby DeSimone 2019-01-25 20:58:50 -08:00 committed by GitHub
parent b9c298d278
commit 7e1d1a7896
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
21 changed files with 768 additions and 397 deletions

View file

@ -3,6 +3,7 @@ package log // import "github.com/pomerium/pomerium/internal/log"
import (
"context"
"net/http"
"os"
"github.com/rs/zerolog"
@ -102,3 +103,9 @@ func Printf(format string, v ...interface{}) {
func Ctx(ctx context.Context) *zerolog.Logger {
return zerolog.Ctx(ctx)
}
// FromRequest gets the logger in the request's context.
// This is a shortcut for log.Ctx(r.Context())
func FromRequest(r *http.Request) *zerolog.Logger {
return Ctx(r.Context())
}