Как только можно будет отслеживать использование памяти…
check system foo if memory usage > 95% then alert
Используется ли свободная оперативная память или свободные - / + буферы / кеш? (или что-то другое?)
# free -m total used free shared buffers cached Mem: 998 851 146 0 114 70 -/+ buffers/cache: 666 332 Swap: 2047 54 1993
Это может быть получено из источника monit https://github.com/arnaudsj/monit/tree/master/process.
Для linux значение вычисляется в sysdep_LINUX.c и происходит из / proc / meminfo:
si->total_mem_kbyte = systeminfo.mem_kbyte_max - mem_free - buffers - cached;
Другими словами, мониторинг использования памяти MemTotal - MemFree - Buffers - Cached.
В вашем случае 998 - 146 - 114 - 70 = 668
В последней версии Monit (например, 5.25.x) memory usage
value учитывает кеш ZFS ARC - поэтому, если какой-либо из них использует ZFS, используемая память не увеличивается из-за восстанавливаемых данных ARC.
Текущее использование памяти рассчитывается как:
si->memory.usage.bytes = systeminfo.memory.size - zfsarcsize -
(uint64_t)(mem_free + buffers + cached + slabreclaimable) * 1024;
Видеть Вот из более подробной информации.
AFAIK, это основано на:
used memory - cached = 851 - 70 = 781