From abb738013a3d0648e71793991334c858ce75428e Mon Sep 17 00:00:00 2001 From: Stanislav Chzhen Date: Fri, 22 Nov 2024 17:18:47 +0300 Subject: [PATCH] Pull request 2308: AGDNS-2374-slog-client-storage Squashed commit of the following: commit 670ce6f7267ae6447c179ba491fc18c01cffa1ab Merge: b3029a041 098cbab7e Author: Stanislav Chzhen Date: Fri Nov 22 17:09:08 2024 +0300 Merge branch 'master' into AGDNS-2374-slog-client-storage commit b3029a041aa0f4b536dd899f162fcee2b7d5127b Author: Stanislav Chzhen Date: Fri Nov 22 16:53:18 2024 +0300 all: slog client storage --- internal/client/storage.go | 5 ++--- internal/client/storage_test.go | 6 +++--- internal/home/clientshttp.go | 2 +- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/internal/client/storage.go b/internal/client/storage.go index c3820cd8..1548683a 100644 --- a/internal/client/storage.go +++ b/internal/client/storage.go @@ -15,7 +15,6 @@ import ( "github.com/AdguardTeam/AdGuardHome/internal/whois" "github.com/AdguardTeam/golibs/errors" "github.com/AdguardTeam/golibs/hostsfile" - "github.com/AdguardTeam/golibs/log" "github.com/AdguardTeam/golibs/logutil/slogutil" ) @@ -506,7 +505,7 @@ func (s *Storage) FindByMAC(mac net.HardwareAddr) (p *Persistent, ok bool) { // RemoveByName removes persistent client information. ok is false if no such // client exists by that name. -func (s *Storage) RemoveByName(name string) (ok bool) { +func (s *Storage) RemoveByName(ctx context.Context, name string) (ok bool) { s.mu.Lock() defer s.mu.Unlock() @@ -516,7 +515,7 @@ func (s *Storage) RemoveByName(name string) (ok bool) { } if err := p.CloseUpstreams(); err != nil { - log.Error("client storage: removing client %q: %s", p.Name, err) + s.logger.ErrorContext(ctx, "removing client", "name", p.Name, slogutil.KeyError, err) } s.index.remove(p) diff --git a/internal/client/storage_test.go b/internal/client/storage_test.go index a2101013..b87383d0 100644 --- a/internal/client/storage_test.go +++ b/internal/client/storage_test.go @@ -735,7 +735,7 @@ func TestStorage_RemoveByName(t *testing.T) { for _, tc := range testCases { t.Run(tc.name, func(t *testing.T) { - tc.want(t, s.RemoveByName(tc.cliName)) + tc.want(t, s.RemoveByName(ctx, tc.cliName)) }) } @@ -744,8 +744,8 @@ func TestStorage_RemoveByName(t *testing.T) { err = s.Add(ctx, existingClient) require.NoError(t, err) - assert.True(t, s.RemoveByName(existingName)) - assert.False(t, s.RemoveByName(existingName)) + assert.True(t, s.RemoveByName(ctx, existingName)) + assert.False(t, s.RemoveByName(ctx, existingName)) }) } diff --git a/internal/home/clientshttp.go b/internal/home/clientshttp.go index 6d06ae00..8cea8650 100644 --- a/internal/home/clientshttp.go +++ b/internal/home/clientshttp.go @@ -369,7 +369,7 @@ func (clients *clientsContainer) handleDelClient(w http.ResponseWriter, r *http. return } - if !clients.storage.RemoveByName(cj.Name) { + if !clients.storage.RemoveByName(r.Context(), cj.Name) { aghhttp.Error(r, w, http.StatusBadRequest, "Client not found") return