Skip to content

Commit 8cefefd

Browse files
committed
Add debug roundtripper to discovery and identity clients for easier debugging
Signed-off-by: Richard Wall <[email protected]>
1 parent 1c0ebaa commit 8cefefd

File tree

4 files changed

+16
-5
lines changed

4 files changed

+16
-5
lines changed

pkg/internal/cyberark/dataupload/dataupload.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ func NewCyberArkClient(trustedCAs *x509.CertPool, baseURL string, authenticateRe
4646
if trustedCAs != nil {
4747
tr.TLSClientConfig.RootCAs = trustedCAs
4848
}
49-
cyberClient.Transport = transport.DebugWrappers(tr)
49+
cyberClient.Transport = transport.NewDebuggingRoundTripper(tr, transport.DebugByContext)
5050

5151
return &CyberArkClient{
5252
baseURL: baseURL,

pkg/internal/cyberark/dataupload/dataupload_test.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import (
1212
"github.com/stretchr/testify/require"
1313
"k8s.io/klog/v2"
1414
"k8s.io/klog/v2/ktesting"
15+
_ "k8s.io/klog/v2/ktesting/init"
1516

1617
"github.com/jetstack/preflight/api"
1718
"github.com/jetstack/preflight/pkg/internal/cyberark/dataupload"
@@ -126,6 +127,11 @@ func TestCyberArkClient_PostDataReadingsWithOptions(t *testing.T) {
126127
// An API token is obtained by authenticating with the ARK_USERNAME and ARK_SECRET from the environment.
127128
// ARK_SUBDOMAIN should be your tenant subdomain.
128129
// ARK_PLATFORM_DOMAIN should be either integration-cyberark.cloud or cyberark.cloud
130+
//
131+
// To enable verbose request logging:
132+
//
133+
// go test ./pkg/internal/cyberark/dataupload/... \
134+
// -v -count 1 -run TestPostDataReadingsWithOptionsWithRealAPI -args -testing.v 6
129135
func TestPostDataReadingsWithOptionsWithRealAPI(t *testing.T) {
130136
platformDomain := os.Getenv("ARK_PLATFORM_DOMAIN")
131137
subdomain := os.Getenv("ARK_SUBDOMAIN")
@@ -137,7 +143,7 @@ func TestPostDataReadingsWithOptionsWithRealAPI(t *testing.T) {
137143
return
138144
}
139145

140-
logger := ktesting.NewLogger(t, ktesting.NewConfig())
146+
logger := ktesting.NewLogger(t, ktesting.DefaultConfig)
141147
ctx := klog.NewContext(t.Context(), logger)
142148

143149
const (
@@ -165,7 +171,7 @@ func TestPostDataReadingsWithOptionsWithRealAPI(t *testing.T) {
165171
cyberArkClient, err := dataupload.NewCyberArkClient(nil, serviceURL, identityClient.AuthenticateRequest)
166172
require.NoError(t, err)
167173

168-
err = cyberArkClient.PostDataReadingsWithOptions(t.Context(), api.DataReadingsPost{}, dataupload.Options{
174+
err = cyberArkClient.PostDataReadingsWithOptions(ctx, api.DataReadingsPost{}, dataupload.Options{
169175
ClusterName: "bb068932-c80d-460d-88df-34bc7f3f3297",
170176
})
171177
require.NoError(t, err)

pkg/internal/cyberark/identity/identity.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import (
1212
"time"
1313

1414
"github.com/cenkalti/backoff/v5"
15+
"k8s.io/client-go/transport"
1516
"k8s.io/klog/v2"
1617

1718
"github.com/jetstack/preflight/pkg/internal/cyberark/servicediscovery"
@@ -212,7 +213,8 @@ func NewWithDiscoveryClient(ctx context.Context, discoveryClient *servicediscove
212213

213214
return &Client{
214215
client: &http.Client{
215-
Timeout: 10 * time.Second,
216+
Timeout: 10 * time.Second,
217+
Transport: transport.NewDebuggingRoundTripper(http.DefaultTransport, transport.DebugByContext),
216218
},
217219

218220
endpoint: endpoint,

pkg/internal/cyberark/servicediscovery/discovery.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ import (
99
"net/url"
1010
"time"
1111

12+
"k8s.io/client-go/transport"
13+
1214
"github.com/jetstack/preflight/pkg/version"
1315
)
1416

@@ -62,7 +64,8 @@ func WithCustomEndpoint(endpoint string) ClientOpt {
6264
func New(clientOpts ...ClientOpt) *Client {
6365
client := &Client{
6466
client: &http.Client{
65-
Timeout: 10 * time.Second,
67+
Timeout: 10 * time.Second,
68+
Transport: transport.NewDebuggingRoundTripper(http.DefaultTransport, transport.DebugByContext),
6669
},
6770
endpoint: prodDiscoveryEndpoint,
6871
}

0 commit comments

Comments
 (0)