mirror of
				https://github.com/caddyserver/caddy.git
				synced 2025-11-04 03:27:23 -05:00 
			
		
		
		
	* reverseproxy: Add more debug logs This makes debug logging very noisy when reverse proxying, but I guess that's the point. This has shown to be useful in troubleshooting infrastructure issues. * Update modules/caddyhttp/reverseproxy/streaming.go Co-authored-by: Francis Lavoie <lavofr@gmail.com> * Update modules/caddyhttp/reverseproxy/streaming.go Co-authored-by: Francis Lavoie <lavofr@gmail.com> * Add opt-in `trace_logs` option * Rename to VerboseLogs --------- Co-authored-by: Francis Lavoie <lavofr@gmail.com>
		
			
				
	
	
		
			37 lines
		
	
	
		
			688 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			688 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package reverseproxy
 | 
						|
 | 
						|
import (
 | 
						|
	"bytes"
 | 
						|
	"net/http/httptest"
 | 
						|
	"strings"
 | 
						|
	"testing"
 | 
						|
 | 
						|
	"github.com/caddyserver/caddy/v2"
 | 
						|
)
 | 
						|
 | 
						|
func TestHandlerCopyResponse(t *testing.T) {
 | 
						|
	h := Handler{}
 | 
						|
	testdata := []string{
 | 
						|
		"",
 | 
						|
		strings.Repeat("a", defaultBufferSize),
 | 
						|
		strings.Repeat("123456789 123456789 123456789 12", 3000),
 | 
						|
	}
 | 
						|
 | 
						|
	dst := bytes.NewBuffer(nil)
 | 
						|
	recorder := httptest.NewRecorder()
 | 
						|
	recorder.Body = dst
 | 
						|
 | 
						|
	for _, d := range testdata {
 | 
						|
		src := bytes.NewBuffer([]byte(d))
 | 
						|
		dst.Reset()
 | 
						|
		err := h.copyResponse(recorder, src, 0, caddy.Log())
 | 
						|
		if err != nil {
 | 
						|
			t.Errorf("failed with error: %v", err)
 | 
						|
		}
 | 
						|
		out := dst.String()
 | 
						|
		if out != d {
 | 
						|
			t.Errorf("bad read: got %q", out)
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 |