Skip to content

Commit 60a9036

Browse files
authored
[Disk Manager] Add context handling in collectListerMetricsTask (#4633)
1 parent 763fc4a commit 60a9036

File tree

1 file changed

+22
-19
lines changed

1 file changed

+22
-19
lines changed

cloud/tasks/collect_lister_metrics_task.go

Lines changed: 22 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -51,30 +51,33 @@ func (c *collectListerMetricsTask) Run(
5151
ticker := time.NewTicker(c.metricsCollectionInterval)
5252
defer ticker.Stop()
5353

54-
for range ticker.C {
55-
for _, taskStatus := range taskStatuses {
56-
err := c.collectTasksMetrics(
57-
ctx,
58-
func(context.Context) ([]storage.TaskInfo, error) {
59-
return c.storage.ListTasksWithStatus(
60-
ctx,
61-
taskStatus,
62-
)
63-
},
64-
taskStatus,
65-
)
54+
for {
55+
select {
56+
case <-ctx.Done():
57+
return ctx.Err()
58+
case <-ticker.C:
59+
for _, taskStatus := range taskStatuses {
60+
err := c.collectTasksMetrics(
61+
ctx,
62+
func(context.Context) ([]storage.TaskInfo, error) {
63+
return c.storage.ListTasksWithStatus(
64+
ctx,
65+
taskStatus,
66+
)
67+
},
68+
taskStatus,
69+
)
70+
if err != nil {
71+
return err
72+
}
73+
}
74+
75+
err := c.collectHangingTasksMetrics(ctx)
6676
if err != nil {
6777
return err
6878
}
6979
}
70-
71-
err := c.collectHangingTasksMetrics(ctx)
72-
if err != nil {
73-
return err
74-
}
7580
}
76-
77-
return nil
7881
}
7982

8083
func (c *collectListerMetricsTask) Cancel(

0 commit comments

Comments
 (0)