system.mem Metrics from DataDog
2018-08-29 本文已影响23人
xufeibuaa
Name
- system.mem.buffered
- MB (Uint)
- The amount of physical RAM used for file buffers.
- system.mem.cached
- MB (Uint)
- The amount of physical RAM used as cache memory.
- system.mem.free
- MB (Uint)
- The amount of free RAM.
- system.mem.page_tables
- MB (Uint)
- The amount of memory dedicated to the lowest page table level.
- system.mem.pct_usable
- fraction (Uint)
- The amount of usable physical RAM as a fraction of the total.
- system.mem.shared
- MB (Uint)
- The amount of physical RAM used as shared memory.
- system.mem.slab
- MB (Uint)
- The amount of memory used by the kernel to cache data structures for its own use.
- system.mem.total
- MB (Uint)
- The total amount of physical RAM.
- system.mem.usable
- MB (Uint)
- Value of MemAvailable from /proc/meminfo if present, but falls back to adding free + buffered + cached memory if not.
- system.mem.used
- MB (Uint)
- The amount of RAM in use.
- system.swap.cached
- MB (Uint)
- The amount of swap used as cache memory.
- system.swap.free
- MB (Uint)
- The amount of free swap space.
- system.swap.pct_free
- fraction (Uint)
- The amount of swap space not in use as a fraction of the total.
- system.swap.total
- MB (Uint)
- The total amount of swap space.
- system.swap.used
- MB (Uint)
- The amount of swap space in use.
计算公式:
system.mem.total = physTotal = MemTotal / 1024
system.mem.free = physFree = MemFree / 1024
system.mem.buffered = physBuffers = Buffers / 1024
system.mem.cached = physCached = Cached / 1024
system.mem.shared = physShared = Shmem / 1024
system.mem.slab = physSlab = Slab / 1024
system.mem.page_tables = physPageTables = PageTables / 1024
system.mem.used = physUsed = physTotal - physFree
if MemAvailable:
physUsable = MemAvailable / 1024
else:
physUsable = physFree + physBuffers + physCached
system.mem.usable = physUsable
system.mem.pct_usable = physPctUsable = physUsable / physTotal
system.swap.total = swapTotal = SwapTotal / 1024
system.swap.free = swapFree = SwapFree / 1024
system.swap.cached = swapCached = SwapCached / 1024
system.swap.used = swapUsed = swapTotal - swapFree
system.swap.pct_free = swapPctFree = swapFree / swapTotal
数据来源
针对Linux系统,内存相关Metrics来自/proc/meminfo文件。
/proc/meminfo文件内容示例
cat /proc/meminfo
MemTotal: 30716112 kB
MemFree: 1500476 kB
MemAvailable: 9589168 kB
Buffers: 84 kB
Cached: 8168688 kB
SwapCached: 0 kB
Active: 20373928 kB
Inactive: 3593908 kB
Active(anon): 17035548 kB
Inactive(anon): 590728 kB
Active(file): 3338380 kB
Inactive(file): 3003180 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 2160 kB
Writeback: 0 kB
AnonPages: 15798992 kB
Mapped: 630452 kB
Shmem: 1827160 kB
Slab: 4452204 kB
SReclaimable: 2138868 kB
SUnreclaim: 2313336 kB
KernelStack: 69808 kB
PageTables: 156740 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 15358056 kB
Committed_AS: 36459124 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 278560 kB
VmallocChunk: 34359278592 kB
HardwareCorrupted: 0 kB
AnonHugePages: 2367488 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 342016 kB
DirectMap2M: 31115264 kB