diff --git a/daemon/daemon_unix.go b/daemon/daemon_unix.go index 4818d06f60..55f82ba839 100644 --- a/daemon/daemon_unix.go +++ b/daemon/daemon_unix.go @@ -1440,40 +1440,40 @@ func (daemon *Daemon) statsV1(s *types.StatsJSON, stats *statsV1.Metrics) (*type } if stats.Memory != nil { - raw := make(map[string]uint64) - raw["cache"] = stats.Memory.Cache - raw["rss"] = stats.Memory.RSS - raw["rss_huge"] = stats.Memory.RSSHuge - raw["mapped_file"] = stats.Memory.MappedFile - raw["dirty"] = stats.Memory.Dirty - raw["writeback"] = stats.Memory.Writeback - raw["pgpgin"] = stats.Memory.PgPgIn - raw["pgpgout"] = stats.Memory.PgPgOut - raw["pgfault"] = stats.Memory.PgFault - raw["pgmajfault"] = stats.Memory.PgMajFault - raw["inactive_anon"] = stats.Memory.InactiveAnon - raw["active_anon"] = stats.Memory.ActiveAnon - raw["inactive_file"] = stats.Memory.InactiveFile - raw["active_file"] = stats.Memory.ActiveFile - raw["unevictable"] = stats.Memory.Unevictable - raw["hierarchical_memory_limit"] = stats.Memory.HierarchicalMemoryLimit - raw["hierarchical_memsw_limit"] = stats.Memory.HierarchicalSwapLimit - raw["total_cache"] = stats.Memory.TotalCache - raw["total_rss"] = stats.Memory.TotalRSS - raw["total_rss_huge"] = stats.Memory.TotalRSSHuge - raw["total_mapped_file"] = stats.Memory.TotalMappedFile - raw["total_dirty"] = stats.Memory.TotalDirty - raw["total_writeback"] = stats.Memory.TotalWriteback - raw["total_pgpgin"] = stats.Memory.TotalPgPgIn - raw["total_pgpgout"] = stats.Memory.TotalPgPgOut - raw["total_pgfault"] = stats.Memory.TotalPgFault - raw["total_pgmajfault"] = stats.Memory.TotalPgMajFault - raw["total_inactive_anon"] = stats.Memory.TotalInactiveAnon - raw["total_active_anon"] = stats.Memory.TotalActiveAnon - raw["total_inactive_file"] = stats.Memory.TotalInactiveFile - raw["total_active_file"] = stats.Memory.TotalActiveFile - raw["total_unevictable"] = stats.Memory.TotalUnevictable - + raw := map[string]uint64{ + "cache": stats.Memory.Cache, + "rss": stats.Memory.RSS, + "rss_huge": stats.Memory.RSSHuge, + "mapped_file": stats.Memory.MappedFile, + "dirty": stats.Memory.Dirty, + "writeback": stats.Memory.Writeback, + "pgpgin": stats.Memory.PgPgIn, + "pgpgout": stats.Memory.PgPgOut, + "pgfault": stats.Memory.PgFault, + "pgmajfault": stats.Memory.PgMajFault, + "inactive_anon": stats.Memory.InactiveAnon, + "active_anon": stats.Memory.ActiveAnon, + "inactive_file": stats.Memory.InactiveFile, + "active_file": stats.Memory.ActiveFile, + "unevictable": stats.Memory.Unevictable, + "hierarchical_memory_limit": stats.Memory.HierarchicalMemoryLimit, + "hierarchical_memsw_limit": stats.Memory.HierarchicalSwapLimit, + "total_cache": stats.Memory.TotalCache, + "total_rss": stats.Memory.TotalRSS, + "total_rss_huge": stats.Memory.TotalRSSHuge, + "total_mapped_file": stats.Memory.TotalMappedFile, + "total_dirty": stats.Memory.TotalDirty, + "total_writeback": stats.Memory.TotalWriteback, + "total_pgpgin": stats.Memory.TotalPgPgIn, + "total_pgpgout": stats.Memory.TotalPgPgOut, + "total_pgfault": stats.Memory.TotalPgFault, + "total_pgmajfault": stats.Memory.TotalPgMajFault, + "total_inactive_anon": stats.Memory.TotalInactiveAnon, + "total_active_anon": stats.Memory.TotalActiveAnon, + "total_inactive_file": stats.Memory.TotalInactiveFile, + "total_active_file": stats.Memory.TotalActiveFile, + "total_unevictable": stats.Memory.TotalUnevictable, + } if stats.Memory.Usage != nil { s.MemoryStats = types.MemoryStats{ Stats: raw, @@ -1546,41 +1546,41 @@ func (daemon *Daemon) statsV2(s *types.StatsJSON, stats *statsV2.Metrics) (*type } if stats.Memory != nil { - raw := make(map[string]uint64) - raw["anon"] = stats.Memory.Anon - raw["file"] = stats.Memory.File - raw["kernel_stack"] = stats.Memory.KernelStack - raw["slab"] = stats.Memory.Slab - raw["sock"] = stats.Memory.Sock - raw["shmem"] = stats.Memory.Shmem - raw["file_mapped"] = stats.Memory.FileMapped - raw["file_dirty"] = stats.Memory.FileDirty - raw["file_writeback"] = stats.Memory.FileWriteback - raw["anon_thp"] = stats.Memory.AnonThp - raw["inactive_anon"] = stats.Memory.InactiveAnon - raw["active_anon"] = stats.Memory.ActiveAnon - raw["inactive_file"] = stats.Memory.InactiveFile - raw["active_file"] = stats.Memory.ActiveFile - raw["unevictable"] = stats.Memory.Unevictable - raw["slab_reclaimable"] = stats.Memory.SlabReclaimable - raw["slab_unreclaimable"] = stats.Memory.SlabUnreclaimable - raw["pgfault"] = stats.Memory.Pgfault - raw["pgmajfault"] = stats.Memory.Pgmajfault - raw["workingset_refault"] = stats.Memory.WorkingsetRefault - raw["workingset_activate"] = stats.Memory.WorkingsetActivate - raw["workingset_nodereclaim"] = stats.Memory.WorkingsetNodereclaim - raw["pgrefill"] = stats.Memory.Pgrefill - raw["pgscan"] = stats.Memory.Pgscan - raw["pgsteal"] = stats.Memory.Pgsteal - raw["pgactivate"] = stats.Memory.Pgactivate - raw["pgdeactivate"] = stats.Memory.Pgdeactivate - raw["pglazyfree"] = stats.Memory.Pglazyfree - raw["pglazyfreed"] = stats.Memory.Pglazyfreed - raw["thp_fault_alloc"] = stats.Memory.ThpFaultAlloc - raw["thp_collapse_alloc"] = stats.Memory.ThpCollapseAlloc s.MemoryStats = types.MemoryStats{ // Stats is not compatible with v1 - Stats: raw, + Stats: map[string]uint64{ + "anon": stats.Memory.Anon, + "file": stats.Memory.File, + "kernel_stack": stats.Memory.KernelStack, + "slab": stats.Memory.Slab, + "sock": stats.Memory.Sock, + "shmem": stats.Memory.Shmem, + "file_mapped": stats.Memory.FileMapped, + "file_dirty": stats.Memory.FileDirty, + "file_writeback": stats.Memory.FileWriteback, + "anon_thp": stats.Memory.AnonThp, + "inactive_anon": stats.Memory.InactiveAnon, + "active_anon": stats.Memory.ActiveAnon, + "inactive_file": stats.Memory.InactiveFile, + "active_file": stats.Memory.ActiveFile, + "unevictable": stats.Memory.Unevictable, + "slab_reclaimable": stats.Memory.SlabReclaimable, + "slab_unreclaimable": stats.Memory.SlabUnreclaimable, + "pgfault": stats.Memory.Pgfault, + "pgmajfault": stats.Memory.Pgmajfault, + "workingset_refault": stats.Memory.WorkingsetRefault, + "workingset_activate": stats.Memory.WorkingsetActivate, + "workingset_nodereclaim": stats.Memory.WorkingsetNodereclaim, + "pgrefill": stats.Memory.Pgrefill, + "pgscan": stats.Memory.Pgscan, + "pgsteal": stats.Memory.Pgsteal, + "pgactivate": stats.Memory.Pgactivate, + "pgdeactivate": stats.Memory.Pgdeactivate, + "pglazyfree": stats.Memory.Pglazyfree, + "pglazyfreed": stats.Memory.Pglazyfreed, + "thp_fault_alloc": stats.Memory.ThpFaultAlloc, + "thp_collapse_alloc": stats.Memory.ThpCollapseAlloc, + }, Usage: stats.Memory.Usage, // MaxUsage is not supported Limit: stats.Memory.UsageLimit,