Check manual page of mem_linux
|Linux: Detailed Usage of RAM, Swap, VMalloc and other Memory Areas|
|Distribution||official part of Check_MK|
/proc/meminfo. You can define levels on every useful value, not only on RAM and Swap. Please note that the Linux memory management is very complex. This check takes all this into account and also correctly handles the concept of caching and the fact that Linux swaps out inactive parts of processes even if there is enough RAM left.
This is not a bug, it's a feature. In fact it is the only way to do it right (at least for Linux): What parts of a process currently reside in physical RAM and what parts are swapped out is not related in a direct way with the current memory usage.
Linux tends to swap out parts of processes even if RAM is available. It does this in situations where disk buffers (are assumed to) speed up the overall performance more than keeping rarely used parts of processes in RAM.
For example after a complete backup of your system you might experiance that your swap usage has increased while you have more RAM free then before. That is because Linux has taken RAM from processes in order to increase disk buffers.
Check Status: Per default the check status is either
OK in case no RAM is corrupted or
CRIT in case at least 1 Byte of RAM is corrupted. It is possible to
change this behaviour by configuring the warning and critical levels in WATO
Memory and Swap usage on Linux. In case the parameter
Upper levels for Hardware Corrupted is configured with
Absolute levels or
Percentual levels the corresponding levels are considered to generate
CRIT. In case the parameter is configured to
Do not impose levels the check status is always
OK independent of a possible RAM corruption.
One service is created for each Linux host.