From 910ecce3e8881ad51f7eddd82b8459de3711fdf8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joan=20L=C3=B3pez=20de=20la=20Franca=20Beltran?= Date: Tue, 25 May 2021 23:43:37 +0200 Subject: [PATCH] Usage Stats: Rename service to use a more idiomatic name --- pkg/infra/usagestats/service.go | 15 +++++++-------- pkg/infra/usagestats/usage_stats.go | 12 ++++++------ pkg/infra/usagestats/usage_stats_service_test.go | 4 ++-- pkg/infra/usagestats/usage_stats_test.go | 10 +++++----- 4 files changed, 20 insertions(+), 21 deletions(-) diff --git a/pkg/infra/usagestats/service.go b/pkg/infra/usagestats/service.go index ffe22d3ffe1..ad6c737583a 100644 --- a/pkg/infra/usagestats/service.go +++ b/pkg/infra/usagestats/service.go @@ -6,21 +6,20 @@ import ( "time" "github.com/grafana/grafana/pkg/bus" + "github.com/grafana/grafana/pkg/infra/log" "github.com/grafana/grafana/pkg/login/social" "github.com/grafana/grafana/pkg/models" "github.com/grafana/grafana/pkg/plugins" + "github.com/grafana/grafana/pkg/registry" "github.com/grafana/grafana/pkg/services/alerting" "github.com/grafana/grafana/pkg/services/sqlstore" - - "github.com/grafana/grafana/pkg/infra/log" - "github.com/grafana/grafana/pkg/registry" "github.com/grafana/grafana/pkg/setting" ) var metricsLogger log.Logger = log.New("metrics") func init() { - registry.RegisterService(&UsageStatsService{ + registry.RegisterService(&Service{ log: log.New("infra.usagestats"), externalMetrics: make(map[string]MetricFunc), }) @@ -33,7 +32,7 @@ type UsageStats interface { type MetricFunc func() (interface{}, error) -type UsageStatsService struct { +type Service struct { Cfg *setting.Cfg `inject:""` Bus bus.Bus `inject:""` SQLStore *sqlstore.SQLStore `inject:""` @@ -48,12 +47,12 @@ type UsageStatsService struct { concurrentUserStatsCache memoConcurrentUserStats } -func (uss *UsageStatsService) Init() error { +func (uss *Service) Init() error { uss.oauthProviders = social.GetOAuthProviders(uss.Cfg) return nil } -func (uss *UsageStatsService) Run(ctx context.Context) error { +func (uss *Service) Run(ctx context.Context) error { uss.updateTotalStats() sendReportTicker := time.NewTicker(time.Hour * 24) @@ -83,7 +82,7 @@ type memoConcurrentUserStats struct { const concurrentUserStatsCacheLifetime = time.Hour -func (uss *UsageStatsService) GetConcurrentUsersStats(ctx context.Context) (*concurrentUsersStats, error) { +func (uss *Service) GetConcurrentUsersStats(ctx context.Context) (*concurrentUsersStats, error) { memoizationPeriod := time.Now().Add(-concurrentUserStatsCacheLifetime) if !uss.concurrentUserStatsCache.memoized.Before(memoizationPeriod) { return uss.concurrentUserStatsCache.stats, nil diff --git a/pkg/infra/usagestats/usage_stats.go b/pkg/infra/usagestats/usage_stats.go index 2b43583acd0..cb8f5c3061a 100644 --- a/pkg/infra/usagestats/usage_stats.go +++ b/pkg/infra/usagestats/usage_stats.go @@ -26,7 +26,7 @@ type UsageReport struct { Packaging string `json:"packaging"` } -func (uss *UsageStatsService) GetUsageReport(ctx context.Context) (UsageReport, error) { +func (uss *Service) GetUsageReport(ctx context.Context) (UsageReport, error) { version := strings.ReplaceAll(uss.Cfg.BuildVersion, ".", "_") metrics := map[string]interface{}{} @@ -239,7 +239,7 @@ func (uss *UsageStatsService) GetUsageReport(ctx context.Context) (UsageReport, return report, nil } -func (uss *UsageStatsService) registerExternalMetrics(metrics map[string]interface{}) { +func (uss *Service) registerExternalMetrics(metrics map[string]interface{}) { for name, fn := range uss.externalMetrics { result, err := fn() if err != nil { @@ -250,11 +250,11 @@ func (uss *UsageStatsService) registerExternalMetrics(metrics map[string]interfa } } -func (uss *UsageStatsService) RegisterMetric(name string, fn MetricFunc) { +func (uss *Service) RegisterMetric(name string, fn MetricFunc) { uss.externalMetrics[name] = fn } -func (uss *UsageStatsService) sendUsageStats(ctx context.Context) error { +func (uss *Service) sendUsageStats(ctx context.Context) error { if !uss.Cfg.ReportingEnabled { return nil } @@ -293,7 +293,7 @@ var sendUsageStats = func(data *bytes.Buffer) { }() } -func (uss *UsageStatsService) updateTotalStats() { +func (uss *Service) updateTotalStats() { if !uss.Cfg.MetricsEndpointEnabled || uss.Cfg.MetricsEndpointDisableTotalStats { return } @@ -333,7 +333,7 @@ func (uss *UsageStatsService) updateTotalStats() { } } -func (uss *UsageStatsService) shouldBeReported(dsType string) bool { +func (uss *Service) shouldBeReported(dsType string) bool { ds := uss.PluginManager.GetDataSource(dsType) if ds == nil { return false diff --git a/pkg/infra/usagestats/usage_stats_service_test.go b/pkg/infra/usagestats/usage_stats_service_test.go index 94149cf4f75..f98f1ab3bae 100644 --- a/pkg/infra/usagestats/usage_stats_service_test.go +++ b/pkg/infra/usagestats/usage_stats_service_test.go @@ -16,9 +16,9 @@ import ( "github.com/stretchr/testify/require" ) -func TestUsageStatsService_GetConcurrentUsersStats(t *testing.T) { +func TestService_GetConcurrentUsersStats(t *testing.T) { sqlStore := sqlstore.InitTestDB(t) - uss := &UsageStatsService{ + uss := &Service{ Bus: bus.New(), SQLStore: sqlStore, License: &licensing.OSSLicensingService{}, diff --git a/pkg/infra/usagestats/usage_stats_test.go b/pkg/infra/usagestats/usage_stats_test.go index 3a1125d505d..21f2abefa12 100644 --- a/pkg/infra/usagestats/usage_stats_test.go +++ b/pkg/infra/usagestats/usage_stats_test.go @@ -29,9 +29,9 @@ import ( // This is to ensure that the interface contract is held by the implementation func Test_InterfaceContractValidity(t *testing.T) { newUsageStats := func() UsageStats { - return &UsageStatsService{} + return &Service{} } - v, ok := newUsageStats().(*UsageStatsService) + v, ok := newUsageStats().(*Service) assert.NotNil(t, v) assert.True(t, ok) @@ -567,7 +567,7 @@ func (pm *fakePluginManager) PanelCount() int { return len(pm.panels) } -func setupSomeDataSourcePlugins(t *testing.T, uss *UsageStatsService) { +func setupSomeDataSourcePlugins(t *testing.T, uss *Service) { t.Helper() uss.PluginManager = &fakePluginManager{ @@ -610,10 +610,10 @@ type httpResp struct { err error } -func createService(t *testing.T, cfg setting.Cfg) *UsageStatsService { +func createService(t *testing.T, cfg setting.Cfg) *Service { t.Helper() - return &UsageStatsService{ + return &Service{ Bus: bus.New(), Cfg: &cfg, SQLStore: sqlstore.InitTestDB(t),