Merge pull request #4934 from thaJeztah/stats_improve

cli/command/container: use ping-result for OS-version
This commit is contained in:
Sebastiaan van Stijn 2024-03-11 12:59:47 +01:00 committed by GitHub
commit d06f137170
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 6 additions and 9 deletions

View File

@ -106,15 +106,6 @@ var acceptedStatsFilters = map[string]bool{
func RunStats(ctx context.Context, dockerCLI command.Cli, options *StatsOptions) error { func RunStats(ctx context.Context, dockerCLI command.Cli, options *StatsOptions) error {
apiClient := dockerCLI.Client() apiClient := dockerCLI.Client()
// Get the daemonOSType if not set already
if daemonOSType == "" {
sv, err := apiClient.ServerVersion(ctx)
if err != nil {
return err
}
daemonOSType = sv.Os
}
// waitFirst is a WaitGroup to wait first stat data's reach for each container // waitFirst is a WaitGroup to wait first stat data's reach for each container
waitFirst := &sync.WaitGroup{} waitFirst := &sync.WaitGroup{}
// closeChan is a non-buffered channel used to collect errors from goroutines. // closeChan is a non-buffered channel used to collect errors from goroutines.
@ -267,6 +258,12 @@ func RunStats(ctx context.Context, dockerCLI command.Cli, options *StatsOptions)
format = formatter.TableFormatKey format = formatter.TableFormatKey
} }
} }
if daemonOSType == "" {
// Get the daemonOSType if not set already. The daemonOSType variable
// should already be set when collecting stats as part of "collect()",
// so we unlikely hit this code in practice.
daemonOSType = dockerCLI.ServerInfo().OSType
}
statsCtx := formatter.Context{ statsCtx := formatter.Context{
Output: dockerCLI.Out(), Output: dockerCLI.Out(),
Format: NewStatsFormat(format, daemonOSType), Format: NewStatsFormat(format, daemonOSType),