cri: get pid count from container metrics

This reduces latency of calling ListPodSandboxStats() by avoiding calling
shim API Task().

Signed-off-by: Eric Lin <linxiulei@gmail.com>
This commit is contained in:
Eric Lin
2024-06-21 15:29:32 +00:00
parent 741c4bde51
commit f6e731c809
4 changed files with 73 additions and 59 deletions

View File

@@ -420,7 +420,7 @@ func TestListContainerStats(t *testing.T) {
if tt.before != nil {
tt.before()
}
got, err := c.toCRIContainerStats(tt.args.ctx, tt.args.stats, tt.args.containers)
css, err := c.toContainerStats(tt.args.ctx, tt.args.stats, tt.args.containers)
if tt.after != nil {
tt.after()
}
@@ -428,6 +428,10 @@ func TestListContainerStats(t *testing.T) {
t.Errorf("ListContainerStats() error = %v, wantErr %v", err, tt.wantErr)
return
}
var got *runtime.ListContainerStatsResponse
if err == nil {
got = c.toCRIContainerStats(css)
}
if !reflect.DeepEqual(got, tt.want) {
t.Errorf("ListContainerStats() = %v, want %v", got, tt.want)
}