@@ -7,28 +7,16 @@ import (
77
88 "github.com/v3io/sidecar-proxy/pkg/sidecarproxy/metricshandler"
99 "github.com/v3io/sidecar-proxy/pkg/sidecarproxy/metricshandler/abstract"
10- "github.com/v3io/sidecar-proxy/pkg/util"
1110
12- "github.com/gorilla/websocket"
13- "github.com/koding/websocketproxy"
1411 "github.com/nuclio/errors"
1512 "github.com/nuclio/logger"
1613 "github.com/prometheus/client_golang/prometheus"
1714)
1815
19- var (
20- WebsocketUpgrader = util.ExtendedWebSocket {
21- WebsocketUpgrader : websocket.Upgrader {
22- ReadBufferSize : 1024 ,
23- WriteBufferSize : 1024 ,
24- }}
25- )
26-
2716type metricsHandler struct {
2817 * abstract.MetricsHandler
29- metric * prometheus.CounterVec
30- httpProxy * httputil.ReverseProxy
31- webSocketProxy * websocketproxy.WebsocketProxy
18+ metric * prometheus.CounterVec
19+ proxy * httputil.ReverseProxy
3220}
3321
3422func NewMetricsHandler (logger logger.Logger ,
@@ -74,27 +62,21 @@ func (n *metricsHandler) RegisterMetrics() error {
7462
7563func (n * metricsHandler ) Start () error {
7664 http .HandleFunc ("/" , n .onRequest )
77- if err := n .createProxies (); err != nil {
78- return errors .Wrap (err , "Failed to initiate proxies " )
65+ if err := n .createProxy (); err != nil {
66+ return errors .Wrap (err , "Failed to initiate proxy " )
7967 }
8068
8169 // adds one data point on service initialization so metric will be initialized and queryable
8270 n .incrementMetric ()
8371 return nil
8472}
8573
86- func (n * metricsHandler ) createProxies () error {
87- webSocketTargetURL , err := url .Parse ("ws://" + n .ForwardAddress )
88- if err != nil {
89- return errors .Wrap (err , "Failed to parse web socket forward address" )
90- }
91- n .webSocketProxy = websocketproxy .NewProxy (webSocketTargetURL )
92-
74+ func (n * metricsHandler ) createProxy () error {
9375 httpTargetURL , err := url .Parse ("http://" + n .ForwardAddress )
9476 if err != nil {
9577 return errors .Wrap (err , "Failed to parse http forward address" )
9678 }
97- n .httpProxy = httputil .NewSingleHostReverseProxy (httpTargetURL )
79+ n .proxy = httputil .NewSingleHostReverseProxy (httpTargetURL )
9880
9981 return nil
10082}
@@ -125,18 +107,6 @@ func (n *metricsHandler) onRequest(res http.ResponseWriter, req *http.Request) {
125107}
126108
127109func (n * metricsHandler ) forwardRequest (res http.ResponseWriter , req * http.Request ) error {
128- proxyHandler := n .getProxyHandler (res , req )
129- proxyHandler .ServeHTTP (res , req )
110+ n .proxy .ServeHTTP (res , req )
130111 return nil
131112}
132-
133- func (n * metricsHandler ) getProxyHandler (res http.ResponseWriter , req * http.Request ) http.Handler {
134- if n .isWebSocket (res , req ) {
135- return n .webSocketProxy
136- }
137- return n .httpProxy
138- }
139-
140- func (n * metricsHandler ) isWebSocket (res http.ResponseWriter , req * http.Request ) bool {
141- return WebsocketUpgrader .VerifyWebSocket (res , req , nil ) == nil
142- }
0 commit comments