O que o monit considera como uso de memória?

3

Uma vez pode ter uso de memória monit monitor…

check system foo
  if memory usage > 95% then alert

Utiliza RAM livre ou livre - / + buffers / cache? (ou algo mais?)

# free -m
             total       used       free     shared    buffers     cached
Mem:           998        851        146          0        114         70
-/+ buffers/cache:        666        332
Swap:         2047         54       1993
    
por John Bachir 08.11.2011 / 03:24

3 respostas

4

Isso pode ser obtido da fonte de link .

Para o Linux, o valor é computado em sysdep_LINUX.c e é fornecido por / proc / meminfo:

si->total_mem_kbyte = systeminfo.mem_kbyte_max - mem_free - buffers - cached;

Em outras palavras, monit use como memória MemTotal - MemFree - Buffers - Em cache.

No seu caso 998 - 146 - 114 - 70 = 668

    
por 13.12.2014 / 23:34
0

Na última versão do Monit (isto é: 5.25.x), o valor memory usage é responsável pelo cache do ARC do ZFS - portanto, se algum lugar estiver usando o ZFS, a memória usada não será expandida pelos dados recuperáveis do ARC.

O uso de memória atual é calculado como:

si->memory.usage.bytes = systeminfo.memory.size - zfsarcsize -
(uint64_t)(mem_free + buffers + cached + slabreclaimable) * 1024;

Veja aqui de mais detalhes.

    
por 25.07.2018 / 12:36
-1

AFAIK, baseado em:

used memory - cached = 851 - 70 = 781
    
por 08.11.2011 / 03:51