diff --git a/pkg/analyzer/analyzers/client.go b/pkg/analyzer/analyzers/client.go index 92c9e4e2e8fd..db57e960abac 100644 --- a/pkg/analyzer/analyzers/client.go +++ b/pkg/analyzer/analyzers/client.go @@ -28,6 +28,7 @@ func CreateLogFileName(baseName string) string { return logFileName } +// This returns a client that is restricted and filters out unsafe requests returning a success status code. func NewAnalyzeClient(cfg *config.Config) *http.Client { client := &http.Client{ Transport: AnalyzerRoundTripper{parent: http.DefaultTransport}, @@ -43,6 +44,22 @@ func NewAnalyzeClient(cfg *config.Config) *http.Client { } } +// This returns a client that is unrestricted and does not filter out unsafe requests returning a success status code. +func NewAnalyzeClientUnrestricted(cfg *config.Config) *http.Client { + client := &http.Client{ + Transport: http.DefaultTransport, + } + if cfg == nil || !cfg.LoggingEnabled { + return client + } + return &http.Client{ + Transport: LoggingRoundTripper{ + parent: client.Transport, + logFile: cfg.LogFile, + }, + } +} + type LoggingRoundTripper struct { parent http.RoundTripper // TODO: io.Writer diff --git a/pkg/analyzer/analyzers/opsgenie/opsgenie.go b/pkg/analyzer/analyzers/opsgenie/opsgenie.go index f63efd4408ce..11ab1a21fa35 100644 --- a/pkg/analyzer/analyzers/opsgenie/opsgenie.go +++ b/pkg/analyzer/analyzers/opsgenie/opsgenie.go @@ -132,7 +132,7 @@ func (h *HttpStatusTest) RunTest(cfg *config.Config, headers map[string]string) } // Create new HTTP request - client := analyzers.NewAnalyzeClient(cfg) + client := analyzers.NewAnalyzeClientUnrestricted(cfg) req, err := http.NewRequest(h.Method, h.Endpoint, data) if err != nil { return false, err