diff --git a/management/server/account.go b/management/server/account.go index 9a1ca9866..43e8dc950 100644 --- a/management/server/account.go +++ b/management/server/account.go @@ -1548,6 +1548,11 @@ func domainIsUpToDate(domain string, domainCategory string, claims jwtclaims.Aut } func (am *DefaultAccountManager) SyncAndMarkPeer(ctx context.Context, accountID string, peerPubKey string, meta nbpeer.PeerSystemMeta, realIP net.IP) (*nbpeer.Peer, *types.NetworkMap, []*posture.Checks, error) { + start := time.Now() + defer func() { + log.WithContext(ctx).Debugf("SyncAndMarkPeer: took %s", time.Since(start)) + }() + accountUnlock := am.Store.AcquireReadLockByUID(ctx, accountID) defer accountUnlock() peerUnlock := am.Store.AcquireWriteLockByUID(ctx, peerPubKey) diff --git a/management/server/grpcserver.go b/management/server/grpcserver.go index daa23d2ab..f70781b1a 100644 --- a/management/server/grpcserver.go +++ b/management/server/grpcserver.go @@ -205,6 +205,8 @@ func (s *GRPCServer) Sync(req *proto.EncryptedMessage, srv proto.ManagementServi s.appMetrics.GRPCMetrics().CountSyncRequestDuration(time.Since(reqStart)) } + log.WithContext(ctx).Debugf("Sync: took %s", time.Since(reqStart)) + unlock() unlock = nil diff --git a/management/server/peer.go b/management/server/peer.go index f48ba2d15..55849191d 100644 --- a/management/server/peer.go +++ b/management/server/peer.go @@ -11,11 +11,12 @@ import ( "sync" "time" - "github.com/netbirdio/netbird/management/server/geolocation" "github.com/rs/xid" log "github.com/sirupsen/logrus" "golang.org/x/exp/maps" + "github.com/netbirdio/netbird/management/server/geolocation" + "github.com/netbirdio/netbird/management/server/idp" "github.com/netbirdio/netbird/management/server/posture" "github.com/netbirdio/netbird/management/server/store" @@ -119,6 +120,11 @@ func (am *DefaultAccountManager) GetPeers(ctx context.Context, accountID, userID // MarkPeerConnected marks peer as connected (true) or disconnected (false) func (am *DefaultAccountManager) MarkPeerConnected(ctx context.Context, peerPubKey string, connected bool, realIP net.IP, accountID string) error { + start := time.Now() + defer func() { + log.WithContext(ctx).Debugf("MarkPeerConnected: took %s", time.Since(start)) + }() + var peer *nbpeer.Peer var settings *types.Settings var expired bool @@ -658,6 +664,11 @@ func getFreeIP(ctx context.Context, transaction store.Store, accountID string) ( // SyncPeer checks whether peer is eligible for receiving NetworkMap (authenticated) and returns its NetworkMap if eligible func (am *DefaultAccountManager) SyncPeer(ctx context.Context, sync PeerSync, accountID string) (*nbpeer.Peer, *types.NetworkMap, []*posture.Checks, error) { + start := time.Now() + defer func() { + log.WithContext(ctx).Debugf("SyncPeer: took %s", time.Since(start)) + }() + var peer *nbpeer.Peer var peerNotValid bool var isStatusChanged bool @@ -947,6 +958,11 @@ func (am *DefaultAccountManager) checkIFPeerNeedsLoginWithoutLock(ctx context.Co } func (am *DefaultAccountManager) getValidatedPeerWithMap(ctx context.Context, isRequiresApproval bool, accountID string, peer *nbpeer.Peer) (*nbpeer.Peer, *types.NetworkMap, []*posture.Checks, error) { + start := time.Now() + defer func() { + log.WithContext(ctx).Debugf("getValidatedPeerWithMap: took %s", time.Since(start)) + }() + if isRequiresApproval { network, err := am.Store.GetAccountNetwork(ctx, store.LockingStrengthShare, accountID) if err != nil {