From 982b60450069ca68db0c1c55b455245c80220201 Mon Sep 17 00:00:00 2001
From: Deluan <deluan@navidrome.org>
Date: Wed, 14 Dec 2022 09:35:30 -0500
Subject: [PATCH] Add username to authenticated log messages

---
 server/auth.go                 | 1 +
 server/subsonic/middlewares.go | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/server/auth.go b/server/auth.go
index d3c3ea50a..138ca121f 100644
--- a/server/auth.go
+++ b/server/auth.go
@@ -217,6 +217,7 @@ func UsernameFromConfig(r *http.Request) string {
 func contextWithUser(ctx context.Context, ds model.DataStore, username string) (context.Context, error) {
 	user, err := ds.User(ctx).FindByUsername(username)
 	if err == nil {
+		ctx = log.NewContext(ctx, "username", username)
 		ctx = request.WithUsername(ctx, user.UserName)
 		return request.WithUser(ctx, *user), nil
 	}
diff --git a/server/subsonic/middlewares.go b/server/subsonic/middlewares.go
index 7b1482f62..92c08e682 100644
--- a/server/subsonic/middlewares.go
+++ b/server/subsonic/middlewares.go
@@ -98,7 +98,9 @@ func authenticate(ds model.DataStore) func(next http.Handler) http.Handler {
 			//	}
 			//}()
 
+			ctx = log.NewContext(r.Context(), "username", username)
 			ctx = request.WithUser(ctx, *usr)
+			ctx = request.WithUsername(ctx, usr.UserName)
 			r = r.WithContext(ctx)
 
 			next.ServeHTTP(w, r)