@@ -45,17 +45,18 @@ type BlocksCleaner struct {
45
45
lastOwnedUsers []string
46
46
47
47
// Metrics.
48
- runsStarted prometheus.Counter
49
- runsCompleted prometheus.Counter
50
- runsFailed prometheus.Counter
51
- runsLastSuccess prometheus.Gauge
52
- blocksCleanedTotal prometheus.Counter
53
- blocksFailedTotal prometheus.Counter
54
- blocksMarkedForDeletion prometheus.Counter
55
- tenantBlocks * prometheus.GaugeVec
56
- tenantMarkedBlocks * prometheus.GaugeVec
57
- tenantPartialBlocks * prometheus.GaugeVec
58
- tenantBucketIndexLastUpdate * prometheus.GaugeVec
48
+ runsStarted prometheus.Counter
49
+ runsCompleted prometheus.Counter
50
+ runsFailed prometheus.Counter
51
+ runsLastSuccess prometheus.Gauge
52
+ blocksCleanedTotal prometheus.Counter
53
+ blocksFailedTotal prometheus.Counter
54
+ blocksMarkedForDeletion prometheus.Counter
55
+ tenantBlocks * prometheus.GaugeVec
56
+ tenantMarkedBlocks * prometheus.GaugeVec
57
+ tenantPartialBlocks * prometheus.GaugeVec
58
+ tenantBucketIndexLastUpdate * prometheus.GaugeVec
59
+ blocksMarkedForNoCompactionOnStorage * prometheus.GaugeVec
59
60
}
60
61
61
62
func NewBlocksCleaner (cfg BlocksCleanerConfig , bucketClient objstore.Bucket , usersScanner * cortex_tsdb.UsersScanner , cfgProvider ConfigProvider , logger log.Logger , reg prometheus.Registerer ) * BlocksCleaner {
@@ -69,6 +70,10 @@ func NewBlocksCleaner(cfg BlocksCleanerConfig, bucketClient objstore.Bucket, use
69
70
Name : "cortex_compactor_block_cleanup_started_total" ,
70
71
Help : "Total number of blocks cleanup runs started." ,
71
72
}),
73
+ blocksMarkedForNoCompactionOnStorage : promauto .With (reg ).NewGaugeVec (prometheus.GaugeOpts {
74
+ Name : "cortex_compactor_blocks_marked_for_no_compaction_on_storage_total" ,
75
+ Help : "Total number of blocks marked for on storage." ,
76
+ }, []string {"user" }),
72
77
runsCompleted : promauto .With (reg ).NewCounter (prometheus.CounterOpts {
73
78
Name : "cortex_compactor_block_cleanup_completed_total" ,
74
79
Help : "Total number of blocks cleanup runs successfully completed." ,
@@ -241,6 +246,7 @@ func (c *BlocksCleaner) deleteUserMarkedForDeletion(ctx context.Context, userID
241
246
c .tenantBlocks .DeleteLabelValues (userID )
242
247
c .tenantMarkedBlocks .DeleteLabelValues (userID )
243
248
c .tenantPartialBlocks .DeleteLabelValues (userID )
249
+ c .blocksMarkedForNoCompactionOnStorage .DeleteLabelValues (userID )
244
250
245
251
if deletedBlocks > 0 {
246
252
level .Info (userLogger ).Log ("msg" , "deleted blocks for tenant marked for deletion" , "deletedBlocks" , deletedBlocks )
@@ -331,6 +337,7 @@ func (c *BlocksCleaner) cleanUser(ctx context.Context, userID string, firstRun b
331
337
// Generate an updated in-memory version of the bucket index.
332
338
w := bucketindex .NewUpdater (c .bucketClient , userID , c .cfgProvider , c .logger )
333
339
idx , partials , err := w .UpdateIndex (ctx , idx )
340
+ c .blocksMarkedForNoCompactionOnStorage .WithLabelValues (userID ).Set (float64 (idx .TotalBlocksBlocksMarkedForNoCompaction ))
334
341
if err != nil {
335
342
return err
336
343
}
0 commit comments