diff options
author | John Cai <jcai@gitlab.com> | 2022-03-23 05:31:03 +0300 |
---|---|---|
committer | John Cai <jcai@gitlab.com> | 2022-03-25 15:37:24 +0300 |
commit | 2c733149a8681beec22d0aedf56c3aa0e6d1ca5b (patch) | |
tree | 4f4de86676ffbab05ce7198887fdfe41de37dbc6 | |
parent | e02ef6d6cb7476c830eef2d1bd87dc8f28a3c1e1 (diff) |
maintenance: Remove OptimizeRepository metrics
ff2f4ee8 (housekeeping: Track total number of optimization calls
2022-03-18) added a metric to keep track of the total number of
optimization calls. We also already track the latency of an
OptimizeRepository call. This makes the similiar metrics in
internal/gitaly/maintenance redundant.
Remove the metrics that track OptimizeRepository in
internal/gitaly/maintenance.
Changelog: changed
-rw-r--r-- | internal/gitaly/maintenance/optimize.go | 27 | ||||
-rw-r--r-- | internal/gitaly/maintenance/optimize_test.go | 59 |
2 files changed, 0 insertions, 86 deletions
diff --git a/internal/gitaly/maintenance/optimize.go b/internal/gitaly/maintenance/optimize.go index 35dd5c1ec..29886b615 100644 --- a/internal/gitaly/maintenance/optimize.go +++ b/internal/gitaly/maintenance/optimize.go @@ -10,7 +10,6 @@ import ( "time" "github.com/grpc-ecosystem/go-grpc-middleware/logging/logrus/ctxlogrus" - "github.com/prometheus/client_golang/prometheus" "github.com/sirupsen/logrus" "gitlab.com/gitlab-org/gitaly/v14/internal/git/repository" "gitlab.com/gitlab-org/gitaly/v14/internal/gitaly/config" @@ -19,28 +18,6 @@ import ( "gitlab.com/gitlab-org/gitaly/v14/proto/go/gitalypb" ) -var ( - repoOptimizationHistogram = prometheus.NewHistogram( - prometheus.HistogramOpts{ - Name: "gitaly_daily_maintenance_repo_optimization_seconds", - Help: "How many seconds each repo takes to successfully optimize during daily maintenance", - Buckets: []float64{0.01, 0.1, 1.0, 10.0, 100}, - }, - ) - repoOptimizationTotal = prometheus.NewCounterVec( - prometheus.CounterOpts{ - Name: "gitaly_daily_maintenance_repo_optimization_total", - Help: "How many total repository optimizations", - }, - []string{"status"}, - ) -) - -func init() { - prometheus.MustRegister(repoOptimizationHistogram) - prometheus.MustRegister(repoOptimizationTotal) -} - // WorkerFunc is a function that does a unit of work meant to run in the background type WorkerFunc func(context.Context, logrus.FieldLogger) error @@ -147,14 +124,10 @@ func optimizeRepoAtPath(ctx context.Context, l logrus.FieldLogger, s config.Stor if err != nil { logEntry.WithError(err).Errorf("maintenance: repo optimization failure") - repoOptimizationTotal.WithLabelValues("failed").Inc() return err } logEntry.Info("maintenance: repo optimization succeeded") - repoOptimizationTotal.WithLabelValues("ok").Inc() - repoOptimizationHistogram.Observe(time.Since(start).Seconds()) - return nil } diff --git a/internal/gitaly/maintenance/optimize_test.go b/internal/gitaly/maintenance/optimize_test.go index 9a2196d69..4b7f1efd7 100644 --- a/internal/gitaly/maintenance/optimize_test.go +++ b/internal/gitaly/maintenance/optimize_test.go @@ -1,15 +1,12 @@ package maintenance import ( - "bytes" "context" - "errors" "math/rand" "path/filepath" "testing" "time" - "github.com/prometheus/client_golang/prometheus/testutil" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "gitlab.com/gitlab-org/gitaly/v14/internal/backchannel" @@ -149,59 +146,3 @@ func TestOptimizeReposRandomly_cancellationOverride(t *testing.T) { require.NoError(t, walker(ctx, testhelper.NewDiscardingLogEntry(t), []string{cfg.Storages[0].Name})) } - -type mockOptimizerMetrics struct { - err error -} - -func (m mockOptimizerMetrics) OptimizeRepository(_ context.Context, _ repo.GitRepo) error { - return m.err -} - -func TestOptimizeReposRandomly_metrics(t *testing.T) { - cfgBuilder := testcfg.NewGitalyCfgBuilder() - cfg := cfgBuilder.Build(t) - - gittest.InitRepo(t, cfg, cfg.Storages[0]) - ctx := testhelper.Context(t) - - testCases := []struct { - desc string - err error - expectedMetrics string - }{ - { - desc: "optimization succeeds", - expectedMetrics: `# HELP gitaly_daily_maintenance_repo_optimization_total How many total repository optimizations -# TYPE gitaly_daily_maintenance_repo_optimization_total counter -gitaly_daily_maintenance_repo_optimization_total{status="ok"} 1 -`, - }, - { - desc: "optimization fails", - err: errors.New("something didn't work"), - expectedMetrics: `# HELP gitaly_daily_maintenance_repo_optimization_total How many total repository optimizations -# TYPE gitaly_daily_maintenance_repo_optimization_total counter -gitaly_daily_maintenance_repo_optimization_total{status="failed"} 1 -`, - }, - } - repoOptimizationTotal.Reset() - for _, tc := range testCases { - t.Run(tc.desc, func(t *testing.T) { - ticker := helper.NewManualTicker() - ticker.Tick() - defer ticker.Stop() - defer repoOptimizationTotal.Reset() - mo := &mockOptimizerMetrics{err: tc.err} - walker := OptimizeReposRandomly(cfg.Storages, mo, ticker, rand.New(rand.NewSource(1))) - - require.NoError(t, walker(ctx, testhelper.NewDiscardingLogEntry(t), []string{cfg.Storages[0].Name})) - require.NoError(t, testutil.CollectAndCompare( - repoOptimizationTotal, - bytes.NewBufferString(tc.expectedMetrics), - "gitaly_daily_maintenance_repo_optimization_total"), - ) - }) - } -} |