From 3cb04fffd9552001ad2bb8eb0ca1e24c07edb448 Mon Sep 17 00:00:00 2001 From: oppiliappan Date: Tue, 12 May 2026 09:55:05 +0000 Subject: [PATCH] appview/metrics: support request hijacking permits websocket upgrades in pipeline endpoints Signed-off-by: oppiliappan --- appview/metrics/middleware.go | 10 ++++++++++ 1 file(s) changed, 10 insertion(s)(+), 0 deletion(s)(-) diff --git a/appview/metrics/middleware.go b/appview/metrics/middleware.go --- a/appview/metrics/middleware.go +++ b/appview/metrics/middleware.go @@ -1,7 +1,9 @@ package metrics import ( + "bufio" "fmt" + "net" "net/http" "time" @@ -16,6 +18,14 @@ func (r *statusRecorder) WriteHeader(status int) { r.status = status r.ResponseWriter.WriteHeader(status) +} + +func (r *statusRecorder) Hijack() (net.Conn, *bufio.ReadWriter, error) { + h, ok := r.ResponseWriter.(http.Hijacker) + if !ok { + return nil, nil, fmt.Errorf("underlying ResponseWriter does not support hijacking") + } + return h.Hijack() } func Middleware(next http.Handler) http.Handler { -- tangled.sh