Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Resync oxy with original repository #2451

Merged
merged 1 commit into from
Nov 22, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 2 additions & 2 deletions glide.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion glide.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import:
- package: github.com/cenk/backoff
- package: github.com/containous/flaeg
- package: github.com/vulcand/oxy
version: 7e9763c4dc71b9758379da3581e6495c145caaab
version: 7b6e758ab449705195df638765c4ca472248908a
repo: https://github.com/containous/oxy.git
vcs: git
subpackages:
Expand Down
4 changes: 3 additions & 1 deletion integration/grpc_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -224,10 +224,12 @@ func (s *GRPCSuite) TestGRPCBuffer(c *check.C) {
var client helloworld.Greeter_StreamExampleClient
client, closer, err := callStreamExampleClientGRPC()
defer closer()
c.Assert(err, check.IsNil)

received := make(chan bool)
go func() {
tr, _ := client.Recv()
tr, err := client.Recv()
c.Assert(err, check.IsNil)
c.Assert(len(tr.Data), check.Equals, 512)
received <- true
}()
Expand Down
2 changes: 1 addition & 1 deletion integration/websocket_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -395,7 +395,7 @@ func (s *WebsocketSuite) TestURLWithURLEncodedChar(c *check.C) {
var upgrader = gorillawebsocket.Upgrader{} // use default options

srv := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
c.Assert(r.URL.Path, check.Equals, "/ws/http%3A%2F%2Ftest")
c.Assert(r.URL.EscapedPath(), check.Equals, "/ws/http%3A%2F%2Ftest")
conn, err := upgrader.Upgrade(w, r, nil)
if err != nil {
return
Expand Down
21 changes: 0 additions & 21 deletions server/adapters.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,29 +2,8 @@ package server

import (
"net/http"

"github.com/containous/traefik/log"
)

// OxyLogger implements oxy Logger interface with logrus.
type OxyLogger struct {
}

// Infof logs specified string as Debug level in logrus.
func (oxylogger *OxyLogger) Infof(format string, args ...interface{}) {
log.Debugf(format, args...)
}

// Warningf logs specified string as Warning level in logrus.
func (oxylogger *OxyLogger) Warningf(format string, args ...interface{}) {
log.Warningf(format, args...)
}

// Errorf logs specified string as Warningf level in logrus.
func (oxylogger *OxyLogger) Errorf(format string, args ...interface{}) {
log.Warningf(format, args...)
}

func notFoundHandler(w http.ResponseWriter, r *http.Request) {
http.NotFound(w, r)
}
17 changes: 6 additions & 11 deletions server/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ import (
"github.com/eapache/channels"
thoas_stats "github.com/thoas/stats"
"github.com/urfave/negroni"
"github.com/vulcand/oxy/cbreaker"
"github.com/vulcand/oxy/connlimit"
"github.com/vulcand/oxy/forward"
"github.com/vulcand/oxy/ratelimit"
Expand All @@ -48,10 +47,6 @@ import (
"golang.org/x/net/http2"
)

var (
oxyLogger = &OxyLogger{}
)

// Server is the reverse-proxy/load-balancer engine
type Server struct {
serverEntryPoints serverEntryPoints
Expand Down Expand Up @@ -959,7 +954,7 @@ func (server *Server) loadConfig(configurations types.Configurations, globalConf
}

fwd, err := forward.New(
forward.Logger(oxyLogger),
forward.Stream(true),
forward.PassHostHeader(frontend.PassHostHeader),
forward.RoundTripper(roundTripper),
forward.ErrorHandler(errorHandler),
Expand Down Expand Up @@ -1006,10 +1001,10 @@ func (server *Server) loadConfig(configurations types.Configurations, globalConf
switch lbMethod {
case types.Drr:
log.Debugf("Creating load-balancer drr")
rebalancer, _ := roundrobin.NewRebalancer(rr, roundrobin.RebalancerLogger(oxyLogger))
rebalancer, _ := roundrobin.NewRebalancer(rr)
if sticky != nil {
log.Debugf("Sticky session with cookie %v", cookieName)
rebalancer, _ = roundrobin.NewRebalancer(rr, roundrobin.RebalancerLogger(oxyLogger), roundrobin.RebalancerStickySession(sticky))
rebalancer, _ = roundrobin.NewRebalancer(rr, roundrobin.RebalancerStickySession(sticky))
}
lb = rebalancer
if err := configureLBServers(rebalancer, config, frontend); err != nil {
Expand Down Expand Up @@ -1080,7 +1075,7 @@ func (server *Server) loadConfig(configurations types.Configurations, globalConf
continue frontend
}
log.Debugf("Creating load-balancer connlimit")
lb, err = connlimit.New(lb, extractFunc, maxConns.Amount, connlimit.Logger(oxyLogger))
lb, err = connlimit.New(lb, extractFunc, maxConns.Amount)
if err != nil {
log.Errorf("Error creating connlimit: %v", err)
log.Errorf("Skipping frontend %s...", frontendName)
Expand Down Expand Up @@ -1151,7 +1146,7 @@ func (server *Server) loadConfig(configurations types.Configurations, globalConf

if config.Backends[frontend.Backend].CircuitBreaker != nil {
log.Debugf("Creating circuit breaker %s", config.Backends[frontend.Backend].CircuitBreaker.Expression)
circuitBreaker, err := middlewares.NewCircuitBreaker(lb, config.Backends[frontend.Backend].CircuitBreaker.Expression, cbreaker.Logger(oxyLogger))
circuitBreaker, err := middlewares.NewCircuitBreaker(lb, config.Backends[frontend.Backend].CircuitBreaker.Expression)
if err != nil {
log.Errorf("Error creating circuit breaker: %v", err)
log.Errorf("Skipping frontend %s...", frontendName)
Expand Down Expand Up @@ -1445,7 +1440,7 @@ func (server *Server) buildRateLimiter(handler http.Handler, rlConfig *types.Rat
return nil, err
}
}
return ratelimit.New(handler, extractFunc, rateSet, ratelimit.Logger(oxyLogger))
return ratelimit.New(handler, extractFunc, rateSet)
}

func (server *Server) buildRetryMiddleware(handler http.Handler, globalConfig configuration.GlobalConfiguration, countServers int, backendName string) http.Handler {
Expand Down
27 changes: 12 additions & 15 deletions vendor/github.com/vulcand/oxy/cbreaker/cbreaker.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion vendor/github.com/vulcand/oxy/cbreaker/effect.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

38 changes: 33 additions & 5 deletions vendor/github.com/vulcand/oxy/cbreaker/fallback.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion vendor/github.com/vulcand/oxy/cbreaker/predicates.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions vendor/github.com/vulcand/oxy/cbreaker/ratio.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.