Skip to content

Commit 64f49dd

Browse files
fix: Adding Resolution logs
Signed-off-by: Naman-B-Parlecha <[email protected]>
1 parent ddd5ff8 commit 64f49dd

File tree

2 files changed

+35
-3
lines changed

2 files changed

+35
-3
lines changed

pkg/compact/compact.go

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1324,7 +1324,7 @@ func (cg *Group) compact(ctx context.Context, dir string, planner Planner, comp
13241324
if err != nil {
13251325
return false, nil, retry(errors.Wrapf(err, "upload of %s failed", compID))
13261326
}
1327-
level.Info(cg.logger).Log("msg", "uploaded block", "result_block", compID, "duration", time.Since(begin), "duration_ms", time.Since(begin).Milliseconds())
1327+
level.Info(cg.logger).Log("msg", "uploaded block", "result_block", compID, "duration", time.Since(begin), "duration_ms", time.Since(begin).Milliseconds(), "resolution", ResolutionToString(cg.resolution))
13281328
level.Info(cg.logger).Log("msg", "running post compaction callback", "result_block", compID)
13291329
if err := compactionLifecycleCallback.PostCompactionCallback(ctx, cg.logger, cg, compID); err != nil {
13301330
return false, nil, retry(errors.Wrapf(err, "failed to run post compaction callback for result block %s", compID))
@@ -1345,7 +1345,7 @@ func (cg *Group) compact(ctx context.Context, dir string, planner Planner, comp
13451345
}
13461346

13471347
level.Info(cg.logger).Log("msg", "finished compacting blocks", "duration", time.Since(groupCompactionBegin),
1348-
"duration_ms", time.Since(groupCompactionBegin).Milliseconds(), "result_blocks", compIDStrs, "source_blocks", sourceBlockStr)
1348+
"duration_ms", time.Since(groupCompactionBegin).Milliseconds(), "result_blocks", compIDStrs, "source_blocks", sourceBlockStr, "resolution", ResolutionToString(cg.resolution))
13491349
return true, compIDs, nil
13501350
}
13511351

@@ -1358,7 +1358,7 @@ func (cg *Group) deleteBlock(id ulid.ULID, bdir string, blockDeletableChecker Bl
13581358
// Spawn a new context so we always mark a block for deletion in full on shutdown.
13591359
delCtx, cancel := context.WithTimeout(context.Background(), 5*time.Minute)
13601360
defer cancel()
1361-
level.Info(cg.logger).Log("msg", "marking compacted block for deletion", "old_block", id)
1361+
level.Info(cg.logger).Log("msg", "marking compacted block for deletion", "old_block", id, "resolution", ResolutionToString(cg.resolution))
13621362
if err := block.MarkForDeletion(delCtx, cg.logger, cg.bkt, id, "source of compacted block", cg.blocksMarkedForDeletion); err != nil {
13631363
return errors.Wrapf(err, "mark block %s for deletion from bucket", id)
13641364
}
@@ -1691,3 +1691,18 @@ func (f *GatherNoCompactionMarkFilter) Filter(ctx context.Context, metas map[uli
16911691

16921692
return nil
16931693
}
1694+
1695+
// Func helps convert the Resolution from milliseconds to precise time for logging
1696+
// useful while downsampling and compacting logs
1697+
func ResolutionToString(resolution int64) string {
1698+
switch resolution {
1699+
case 0:
1700+
return "raw"
1701+
case 5 * 60 * 1000:
1702+
return "5m"
1703+
case 60 * 60 * 1000:
1704+
return "1h"
1705+
default:
1706+
return fmt.Sprintf("%dms", resolution)
1707+
}
1708+
}

pkg/compact/downsample/downsample.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ func Downsample(
8080
if origMeta.Thanos.Downsample.Resolution >= resolution {
8181
return id, errors.New("target resolution not lower than existing one")
8282
}
83+
level.Info(logger).Log("msg", "starting downsample operation", "source_resolution", ResolutionToString(origMeta.Thanos.Downsample.Resolution), "target_resolution", ResolutionToString(resolution), "block", origMeta.ULID)
8384

8485
indexr, err := b.Index()
8586
if err != nil {
@@ -279,6 +280,7 @@ func Downsample(
279280
}
280281

281282
id = uid
283+
level.Info(logger).Log("msg", "completed downsample operation", "source_resolution", ResolutionToString(origMeta.Thanos.Downsample.Resolution), "target_resolution", ResolutionToString(resolution), "source_block", origMeta.ULID, "result_block", id)
282284
return
283285
}
284286

@@ -1431,3 +1433,18 @@ func (f *GatherNoDownsampleMarkFilter) Filter(ctx context.Context, metas map[uli
14311433

14321434
return nil
14331435
}
1436+
1437+
// Func helps convert the Resolution from milliseconds to precise time for logging
1438+
// useful while downsampling and compacting logs
1439+
func ResolutionToString(resolution int64) string {
1440+
switch resolution {
1441+
case 0:
1442+
return "raw"
1443+
case 5 * 60 * 1000:
1444+
return "5m"
1445+
case 60 * 60 * 1000:
1446+
return "1h"
1447+
default:
1448+
return fmt.Sprintf("%dms", resolution)
1449+
}
1450+
}

0 commit comments

Comments
 (0)