diff --git a/service/ccm/service.go b/service/ccm/service.go index c59521a5..0d89527d 100644 --- a/service/ccm/service.go +++ b/service/ccm/service.go @@ -201,17 +201,6 @@ func (s *Service) Start(stage adapter.StartStage, scope *adapter.Scope) error { return nil } - if s.usageTracker != nil { - scope.Add(func() error { - s.usageTracker.cancelPendingSave() - saveErr := s.usageTracker.Save() - if saveErr != nil { - s.logger.Error("save usage statistics: ", saveErr) - } - return nil - }) - } - s.userManager.UpdateUsers(s.users) credentials, err := platformReadCredentials(s.ctx, s.credentialPath) @@ -223,7 +212,17 @@ func (s *Service) Start(stage adapter.StartStage, scope *adapter.Scope) error { if s.usageTracker != nil { err = s.usageTracker.Load() if err != nil { - s.logger.Warn("load usage statistics: ", err) + s.logger.Error("load usage statistics: ", err, ", usage tracking and saving disabled") + s.usageTracker = nil + } else { + scope.Add(func() error { + s.usageTracker.cancelPendingSave() + saveErr := s.usageTracker.Save() + if saveErr != nil { + s.logger.Error("save usage statistics: ", saveErr) + } + return nil + }) } } diff --git a/service/ocm/service.go b/service/ocm/service.go index cafcfadd..300d158e 100644 --- a/service/ocm/service.go +++ b/service/ocm/service.go @@ -222,17 +222,6 @@ func (s *Service) Start(stage adapter.StartStage, scope *adapter.Scope) error { return nil } - if s.usageTracker != nil { - scope.Add(func() error { - s.usageTracker.cancelPendingSave() - saveErr := s.usageTracker.Save() - if saveErr != nil { - s.logger.Error("save usage statistics: ", saveErr) - } - return nil - }) - } - s.userManager.UpdateUsers(s.users) credentials, err := platformReadCredentials(s.ctx, s.credentialPath) @@ -244,7 +233,17 @@ func (s *Service) Start(stage adapter.StartStage, scope *adapter.Scope) error { if s.usageTracker != nil { err = s.usageTracker.Load() if err != nil { - s.logger.Warn("load usage statistics: ", err) + s.logger.Error("load usage statistics: ", err, ", usage tracking and saving disabled") + s.usageTracker = nil + } else { + scope.Add(func() error { + s.usageTracker.cancelPendingSave() + saveErr := s.usageTracker.Save() + if saveErr != nil { + s.logger.Error("save usage statistics: ", saveErr) + } + return nil + }) } } diff --git a/service/ssmapi/server.go b/service/ssmapi/server.go index 16a126ac..381b4d60 100644 --- a/service/ssmapi/server.go +++ b/service/ssmapi/server.go @@ -97,18 +97,19 @@ func (s *Service) Start(stage adapter.StartStage, scope *adapter.Scope) error { } err := s.loadCache() if err != nil { - s.logger.Error(E.Cause(err, "load cache")) + s.logger.Error("load cache: ", err, ", saving disabled") + } else { + saveTicker := time.NewTicker(1 * time.Minute) + scope.Add(func() error { + saveTicker.Stop() + saveErr := s.saveCache() + if saveErr != nil { + s.logger.Error(E.Cause(saveErr, "save cache")) + } + return nil + }) + go s.loopSaveCache(scope.Context(), saveTicker) } - saveTicker := time.NewTicker(1 * time.Minute) - scope.Add(func() error { - saveTicker.Stop() - saveErr := s.saveCache() - if saveErr != nil { - s.logger.Error(E.Cause(saveErr, "save cache")) - } - return nil - }) - go s.loopSaveCache(scope.Context(), saveTicker) if s.tlsConfig != nil { err = s.tlsConfig.Start() if err != nil {