diff options
author | Patrick Steinhardt <psteinhardt@gitlab.com> | 2023-08-24 13:26:49 +0300 |
---|---|---|
committer | Patrick Steinhardt <psteinhardt@gitlab.com> | 2023-08-24 13:44:05 +0300 |
commit | 2dd57f37d2582a2777f0e8117702018ff523fd43 (patch) | |
tree | abbf2f5bda40ecb242729b6e1a3f3de3d09532f6 | |
parent | d36ed0e6110cb8793448b4f298242feb17385e36 (diff) |
gitlab/client: Stop using labkit logger in favor of injected one
Stop using the labkit logger in favor of an injected one which is
typically set up via a call to our own internal `log.Configure()`
function.
-rw-r--r-- | cmd/gitaly/check_test.go | 2 | ||||
-rw-r--r-- | internal/gitlab/client/gitlabnet.go | 11 | ||||
-rw-r--r-- | internal/gitlab/client/gitlabnet_test.go | 12 | ||||
-rw-r--r-- | internal/gitlab/http_client.go | 2 |
4 files changed, 17 insertions, 10 deletions
diff --git a/cmd/gitaly/check_test.go b/cmd/gitaly/check_test.go index 6f7349910..ffaf7c6ec 100644 --- a/cmd/gitaly/check_test.go +++ b/cmd/gitaly/check_test.go @@ -99,5 +99,5 @@ func TestCheckBadCreds(t *testing.T) { require.Error(t, cmd.Run()) require.Contains(t, stdout.String(), `Checking GitLab API access: FAILED`) require.Contains(t, stderr.String(), "HTTP GET to GitLab endpoint /check failed: authorization failed") - require.Regexp(t, `.* level=error msg="Internal API error" .* error="authorization failed" method=GET status=401 url="http://127.0.0.1:[0-9]+/api/v4/internal/check"`, stderr.String()) + require.Regexp(t, `.* level=error msg="Internal API error" .* error="authorization failed" method=GET pid=[0-9]+ status=401 url="http://127.0.0.1:[0-9]+/api/v4/internal/check"`, stderr.String()) } diff --git a/internal/gitlab/client/gitlabnet.go b/internal/gitlab/client/gitlabnet.go index 93d8cd8b5..127797d94 100644 --- a/internal/gitlab/client/gitlabnet.go +++ b/internal/gitlab/client/gitlabnet.go @@ -11,7 +11,7 @@ import ( "time" "github.com/golang-jwt/jwt/v5" - "gitlab.com/gitlab-org/labkit/log" + "github.com/sirupsen/logrus" ) const ( @@ -29,6 +29,7 @@ type ErrorResponse struct { //nolint:revive // This is unintentionally missing documentation. type GitlabNetClient struct { + logger logrus.FieldLogger httpClient *HTTPClient user string password string @@ -51,6 +52,7 @@ func (e *APIError) Error() string { //nolint:revive // This is unintentionally missing documentation. func NewGitlabNetClient( + logger logrus.FieldLogger, user, password, secret string, @@ -61,6 +63,7 @@ func NewGitlabNetClient( } return &GitlabNetClient{ + logger: logger, httpClient: httpClient, user: user, password: password, @@ -164,12 +167,12 @@ func (c *GitlabNetClient) DoRequest(ctx context.Context, method, path string, da start := time.Now() response, err := c.httpClient.Do(request) - fields := log.Fields{ + + logger := c.logger.WithFields(logrus.Fields{ "method": method, "url": request.URL.String(), "duration_ms": time.Since(start) / time.Millisecond, - } - logger := log.WithContextFields(ctx, fields) + }) if err != nil { logger.WithError(err).Error("Internal API unreachable") diff --git a/internal/gitlab/client/gitlabnet_test.go b/internal/gitlab/client/gitlabnet_test.go index 8f4cc8b01..4ff666ee2 100644 --- a/internal/gitlab/client/gitlabnet_test.go +++ b/internal/gitlab/client/gitlabnet_test.go @@ -46,10 +46,14 @@ func TestJWTAuthenticationHeader(t *testing.T) { for _, tc := range tests { t.Run(tc.method+" with "+tc.secret, func(t *testing.T) { - gitlabnet := &GitlabNetClient{ - httpClient: &HTTPClient{Client: server.Client(), Host: server.URL}, - secret: tc.secret, - } + gitlabnet, err := NewGitlabNetClient( + testhelper.NewDiscardingLogEntry(t), + "user", + "password", + tc.secret, + &HTTPClient{Client: server.Client(), Host: server.URL}, + ) + require.NoError(t, err) response, err := gitlabnet.DoRequest(testhelper.Context(t), tc.method, "/jwt_auth", nil) require.NoError(t, err) diff --git a/internal/gitlab/http_client.go b/internal/gitlab/http_client.go index 1b32a25b1..094c52a76 100644 --- a/internal/gitlab/http_client.go +++ b/internal/gitlab/http_client.go @@ -74,7 +74,7 @@ func NewHTTPClient( secret = string(secretData) } - gitlabnetClient, err := client.NewGitlabNetClient(gitlabCfg.HTTPSettings.User, gitlabCfg.HTTPSettings.Password, secret, httpClient) + gitlabnetClient, err := client.NewGitlabNetClient(logger, gitlabCfg.HTTPSettings.User, gitlabCfg.HTTPSettings.Password, secret, httpClient) if err != nil { return nil, fmt.Errorf("instantiating gitlab net client: %w", err) } |