mirror of
https://github.com/containers/podman.git
synced 2025-08-06 03:19:52 +08:00
Add 'stats-dump' file to exported checkpoint
There was the question about how long it takes to create a checkpoint. CRIU already provides some statistics about how long it takes to create a checkpoint and similar. With this change the file 'stats-dump' is included in the checkpoint archive and the tool checkpointctl can be used to display these statistics: ./checkpointctl show -t /tmp/cp.tar --print-stats Displaying container checkpoint data from /tmp/dump.tar [...] CRIU dump statistics +---------------+-------------+--------------+---------------+---------------+---------------+ | FREEZING TIME | FROZEN TIME | MEMDUMP TIME | MEMWRITE TIME | PAGES SCANNED | PAGES WRITTEN | +---------------+-------------+--------------+---------------+---------------+---------------+ | 105405 us | 1376964 us | 504399 us | 446571 us | 492153 | 88689 | +---------------+-------------+--------------+---------------+---------------+---------------+ Signed-off-by: Adrian Reber <areber@redhat.com>
This commit is contained in:
@ -21,6 +21,7 @@ import (
|
||||
"time"
|
||||
|
||||
metadata "github.com/checkpoint-restore/checkpointctl/lib"
|
||||
"github.com/checkpoint-restore/go-criu/v5/stats"
|
||||
cdi "github.com/container-orchestrated-devices/container-device-interface/pkg"
|
||||
"github.com/containernetworking/plugins/pkg/ns"
|
||||
"github.com/containers/buildah/pkg/chrootuser"
|
||||
@ -1013,6 +1014,7 @@ func (c *Container) exportCheckpoint(options ContainerCheckpointOptions) error {
|
||||
metadata.ConfigDumpFile,
|
||||
metadata.SpecDumpFile,
|
||||
metadata.NetworkStatusFile,
|
||||
stats.StatsDump,
|
||||
}
|
||||
|
||||
if c.LogDriver() == define.KubernetesLogging ||
|
||||
@ -1197,7 +1199,7 @@ func (c *Container) checkpoint(ctx context.Context, options ContainerCheckpointO
|
||||
if !options.Keep && !options.PreCheckPoint {
|
||||
cleanup := []string{
|
||||
"dump.log",
|
||||
"stats-dump",
|
||||
stats.StatsDump,
|
||||
metadata.ConfigDumpFile,
|
||||
metadata.SpecDumpFile,
|
||||
}
|
||||
@ -1564,8 +1566,8 @@ func (c *Container) restore(ctx context.Context, options ContainerCheckpointOpti
|
||||
cleanup := [...]string{
|
||||
"restore.log",
|
||||
"dump.log",
|
||||
"stats-dump",
|
||||
"stats-restore",
|
||||
stats.StatsDump,
|
||||
stats.StatsRestore,
|
||||
metadata.NetworkStatusFile,
|
||||
metadata.RootFsDiffTar,
|
||||
metadata.DeletedFilesFile,
|
||||
|
Reference in New Issue
Block a user