chore: replace logrus with standard lib log/slog

This commit is contained in:
Christoph Haas
2025-03-02 08:51:13 +01:00
parent 5c51573874
commit 7473132932
30 changed files with 479 additions and 247 deletions

View File

@@ -2,9 +2,9 @@ package wireguard
import (
"context"
"log/slog"
"time"
"github.com/sirupsen/logrus"
evbus "github.com/vardius/message-bus"
"github.com/h44z/wg-portal/internal/app"
@@ -58,12 +58,12 @@ func (m Manager) handleUserCreationEvent(user *domain.User) {
return
}
logrus.Tracef("handling new user event for %s", user.Identifier)
slog.Debug("handling new user event", "user", user.Identifier)
ctx := domain.SetUserInfo(context.Background(), domain.SystemAdminContextUserInfo())
err := m.CreateDefaultPeer(ctx, user.Identifier)
if err != nil {
logrus.Errorf("failed to create default peer for %s: %v", user.Identifier, err)
slog.Error("failed to create default peer", "user", user.Identifier, "error", err)
return
}
}
@@ -75,7 +75,9 @@ func (m Manager) handleUserLoginEvent(userId domain.UserIdentifier) {
userPeers, err := m.db.GetUserPeers(context.Background(), userId)
if err != nil {
logrus.Errorf("failed to retrieve existing peers for %s prior to default peer creation: %v", userId, err)
slog.Error("failed to retrieve existing peers prior to default peer creation",
"user", userId,
"error", err)
return
}
@@ -83,12 +85,12 @@ func (m Manager) handleUserLoginEvent(userId domain.UserIdentifier) {
return // user already has peers, skip creation
}
logrus.Tracef("handling new user login for %s", userId)
slog.Debug("handling new user login", "user", userId)
ctx := domain.SetUserInfo(context.Background(), domain.SystemAdminContextUserInfo())
err = m.CreateDefaultPeer(ctx, userId)
if err != nil {
logrus.Errorf("failed to create default peer for %s: %v", userId, err)
slog.Error("failed to create default peer", "user", userId, "error", err)
return
}
}
@@ -97,7 +99,9 @@ func (m Manager) handleUserDisabledEvent(user domain.User) {
ctx := domain.SetUserInfo(context.Background(), domain.SystemAdminContextUserInfo())
userPeers, err := m.db.GetUserPeers(ctx, user.Identifier)
if err != nil {
logrus.Errorf("failed to retrieve peers for disabled user %s: %v", user.Identifier, err)
slog.Error("failed to retrieve peers for disabled user",
"user", user.Identifier,
"error", err)
return
}
@@ -106,15 +110,19 @@ func (m Manager) handleUserDisabledEvent(user domain.User) {
continue // peer is already disabled
}
logrus.Debugf("disabling peer %s due to user %s being disabled", peer.Identifier, user.Identifier)
slog.Debug("disabling peer due to user being disabled",
"peer", peer.Identifier,
"user", user.Identifier)
peer.Disabled = user.Disabled // set to user disabled timestamp
peer.DisabledReason = domain.DisabledReasonUserDisabled
_, err := m.UpdatePeer(ctx, &peer)
if err != nil {
logrus.Errorf("failed to disable peer %s for disabled user %s: %v",
peer.Identifier, user.Identifier, err)
slog.Error("failed to disable peer for disabled user",
"peer", peer.Identifier,
"user", user.Identifier,
"error", err)
}
}
}
@@ -127,7 +135,9 @@ func (m Manager) handleUserEnabledEvent(user domain.User) {
ctx := domain.SetUserInfo(context.Background(), domain.SystemAdminContextUserInfo())
userPeers, err := m.db.GetUserPeers(ctx, user.Identifier)
if err != nil {
logrus.Errorf("failed to retrieve peers for re-enabled user %s: %v", user.Identifier, err)
slog.Error("failed to retrieve peers for re-enabled user",
"user", user.Identifier,
"error", err)
return
}
@@ -140,15 +150,19 @@ func (m Manager) handleUserEnabledEvent(user domain.User) {
continue // peer was disabled for another reason
}
logrus.Debugf("enabling peer %s due to user %s being enabled", peer.Identifier, user.Identifier)
slog.Debug("enabling peer due to user being enabled",
"peer", peer.Identifier,
"user", user.Identifier)
peer.Disabled = nil
peer.DisabledReason = ""
_, err := m.UpdatePeer(ctx, &peer)
if err != nil {
logrus.Errorf("failed to enable peer %s for enabled user %s: %v",
peer.Identifier, user.Identifier, err)
slog.Error("failed to enable peer for enabled user",
"peer", peer.Identifier,
"user", user.Identifier,
"error", err)
}
}
return
@@ -158,7 +172,9 @@ func (m Manager) handleUserDeletedEvent(user domain.User) {
ctx := domain.SetUserInfo(context.Background(), domain.SystemAdminContextUserInfo())
userPeers, err := m.db.GetUserPeers(ctx, user.Identifier)
if err != nil {
logrus.Errorf("failed to retrieve peers for deleted user %s: %v", user.Identifier, err)
slog.Error("failed to retrieve peers for deleted user",
"user", user.Identifier,
"error", err)
return
}
@@ -169,14 +185,20 @@ func (m Manager) handleUserDeletedEvent(user domain.User) {
}
if m.cfg.Core.DeletePeerAfterUserDeleted {
logrus.Debugf("deleting peer %s due to user %s being deleted", peer.Identifier, user.Identifier)
slog.Debug("deleting peer due to user being deleted",
"peer", peer.Identifier,
"user", user.Identifier)
if err := m.DeletePeer(ctx, peer.Identifier); err != nil {
logrus.Errorf("failed to delete peer %s for deleted user %s: %v",
peer.Identifier, user.Identifier, err)
slog.Error("failed to delete peer for deleted user",
"peer", peer.Identifier,
"user", user.Identifier,
"error", err)
}
} else {
logrus.Debugf("disabling peer %s due to user %s being deleted", peer.Identifier, user.Identifier)
slog.Debug("disabling peer due to user being deleted",
"peer", peer.Identifier,
"user", user.Identifier)
peer.UserIdentifier = "" // remove user reference
peer.Disabled = &deletionTime
@@ -184,8 +206,10 @@ func (m Manager) handleUserDeletedEvent(user domain.User) {
_, err := m.UpdatePeer(ctx, &peer)
if err != nil {
logrus.Errorf("failed to disable peer %s for deleted user %s: %v",
peer.Identifier, user.Identifier, err)
slog.Error("failed to disable peer for deleted user",
"peer", peer.Identifier,
"user", user.Identifier,
"error", err)
}
}
}
@@ -206,14 +230,16 @@ func (m Manager) runExpiredPeersCheck(ctx context.Context) {
interfaces, err := m.db.GetAllInterfaces(ctx)
if err != nil {
logrus.Errorf("failed to fetch all interfaces for expiry check: %v", err)
slog.Error("failed to fetch all interfaces for expiry check", "error", err)
continue
}
for _, iface := range interfaces {
peers, err := m.db.GetInterfacePeers(ctx, iface.Identifier)
if err != nil {
logrus.Errorf("failed to fetch all peers from interface %s for expiry check: %v", iface.Identifier, err)
slog.Error("failed to fetch all peers from interface for expiry check",
"interface", iface.Identifier,
"error", err)
continue
}
@@ -227,14 +253,14 @@ func (m Manager) checkExpiredPeers(ctx context.Context, peers []domain.Peer) {
for _, peer := range peers {
if peer.IsExpired() && !peer.IsDisabled() {
logrus.Infof("peer %s has expired, disabling...", peer.Identifier)
slog.Info("peer has expired, disabling", "peer", peer.Identifier)
peer.Disabled = &now
peer.DisabledReason = domain.DisabledReasonExpired
_, err := m.UpdatePeer(ctx, &peer)
if err != nil {
logrus.Errorf("failed to update expired peer %s: %v", peer.Identifier, err)
slog.Error("failed to update expired peer", "peer", peer.Identifier, "error", err)
}
}
}