pkg/middleware: Check errors (#19749)

* pkg/middleware: Check errors
* pkg/middleware: Log when gzip middleware handler fails
pull/19849/head
Arve Knudsen 6 years ago committed by GitHub
parent 5cf5d89dff
commit 6e7c18fc1c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 11
      pkg/middleware/auth_proxy/auth_proxy_test.go
  2. 3
      pkg/middleware/middleware_test.go
  3. 8
      pkg/middleware/util.go

@ -80,14 +80,15 @@ func TestMiddlewareContext(t *testing.T) {
Convey("with a simple cache key", func() { Convey("with a simple cache key", func() {
// Set cache key // Set cache key
key := fmt.Sprintf(CachePrefix, base32.StdEncoding.EncodeToString([]byte(name))) key := fmt.Sprintf(CachePrefix, base32.StdEncoding.EncodeToString([]byte(name)))
store.Set(key, int64(33), 0) err := store.Set(key, int64(33), 0)
So(err, ShouldBeNil)
// Set up the middleware // Set up the middleware
auth := prepareMiddleware(t, req, store) auth := prepareMiddleware(t, req, store)
id, err := auth.Login() id, err := auth.Login()
So(err, ShouldBeNil)
So(auth.getKey(), ShouldEqual, "auth-proxy-sync-ttl:NVQXE23FNRXWO===") So(auth.getKey(), ShouldEqual, "auth-proxy-sync-ttl:NVQXE23FNRXWO===")
So(err, ShouldBeNil)
So(id, ShouldEqual, 33) So(id, ShouldEqual, 33)
}) })
@ -97,14 +98,14 @@ func TestMiddlewareContext(t *testing.T) {
req.Header.Add("X-WEBAUTH-GROUPS", group) req.Header.Add("X-WEBAUTH-GROUPS", group)
key := fmt.Sprintf(CachePrefix, base32.StdEncoding.EncodeToString([]byte(name+"-"+group))) key := fmt.Sprintf(CachePrefix, base32.StdEncoding.EncodeToString([]byte(name+"-"+group)))
store.Set(key, int64(33), 0) err := store.Set(key, int64(33), 0)
So(err, ShouldBeNil)
auth := prepareMiddleware(t, req, store) auth := prepareMiddleware(t, req, store)
id, err := auth.Login() id, err := auth.Login()
So(auth.getKey(), ShouldEqual, "auth-proxy-sync-ttl:NVQXE23FNRXWOLLHOJQWMYLOMEWWG33SMUWXIZLBNU======")
So(err, ShouldBeNil) So(err, ShouldBeNil)
So(auth.getKey(), ShouldEqual, "auth-proxy-sync-ttl:NVQXE23FNRXWOLLHOJQWMYLOMEWWG33SMUWXIZLBNU======")
So(id, ShouldEqual, 33) So(id, ShouldEqual, 33)
}) })

@ -346,7 +346,8 @@ func TestMiddlewareContext(t *testing.T) {
}) })
key := fmt.Sprintf(cachePrefix, base32.StdEncoding.EncodeToString([]byte(name+"-"+group))) key := fmt.Sprintf(cachePrefix, base32.StdEncoding.EncodeToString([]byte(name+"-"+group)))
sc.remoteCacheService.Set(key, int64(33), 0) err := sc.remoteCacheService.Set(key, int64(33), 0)
So(err, ShouldBeNil)
sc.fakeReq("GET", "/") sc.fakeReq("GET", "/")
sc.req.Header.Add(setting.AuthProxyHeaderName, name) sc.req.Header.Add(setting.AuthProxyHeaderName, name)

@ -4,11 +4,13 @@ import (
"strings" "strings"
"github.com/go-macaron/gzip" "github.com/go-macaron/gzip"
"github.com/grafana/grafana/pkg/infra/log"
"gopkg.in/macaron.v1" "gopkg.in/macaron.v1"
) )
func Gziper() macaron.Handler { func Gziper() macaron.Handler {
macaronGziper := gzip.Gziper() gziperLogger := log.New("gziper")
gziper := gzip.Gziper()
return func(ctx *macaron.Context) { return func(ctx *macaron.Context) {
requestPath := ctx.Req.URL.RequestURI() requestPath := ctx.Req.URL.RequestURI()
@ -25,6 +27,8 @@ func Gziper() macaron.Handler {
return return
} }
ctx.Invoke(macaronGziper) if _, err := ctx.Invoke(gziper); err != nil {
gziperLogger.Error("Invoking gzip handler failed", "err", err)
}
} }
} }

Loading…
Cancel
Save