Skip to main content

Memory Usage

Plugin: proc.plugin Module: /proc/meminfo

Overview

/proc/meminfo provides detailed information about the system's current memory usage. It includes information about different types of memory, RAM, Swap, ZSwap, HugePages, Transparent HugePages (THP), Kernel memory, SLAB memory, memory mappings, and more.

Monitoring /proc/meminfo can be useful for:

  • Performance Tuning: Understanding your system's memory usage can help you make decisions about system tuning and optimization. For example, if your system is frequently low on free memory, it might benefit from more RAM.

  • Troubleshooting: If your system is experiencing problems, /proc/meminfo can provide clues about whether memory usage is a factor. For example, if your system is slow and cached swap is high, it could mean that your system is swapping out a lot of memory to disk, which can degrade performance.

  • Capacity Planning: By monitoring memory usage over time, you can understand trends and make informed decisions about future capacity needs.

This collector is supported on all platforms.

This collector only supports collecting metrics from a single instance of this integration.

Default Behavior

Auto-Detection

This integration doesn't support auto-detection.

Limits

The default configuration for this integration does not impose any limits on data collection.

Performance Impact

The default configuration for this integration is not expected to impose a significant performance impact on the system.

Metrics

Metrics grouped by scope.

The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.

Per Memory Usage instance

This scope has no labels.

Metrics:

MetricDimensionsUnit
system.ramfree, used, cached, buffersMiB
mem.availableavailMiB
mem.swapfree, usedMiB
mem.swap_cachedcachedMiB
mem.zswapin-ram, on-diskMiB
mem.hwcorruptHardwareCorruptedMiB
mem.commitedCommited_ASMiB
mem.writebackDirty, Writeback, FuseWriteback, NfsWriteback, BounceMiB
mem.kernelSlab, KernelStack, PageTables, VmallocUsed, PercpuMiB
mem.slabreclaimable, unreclaimableMiB
mem.hugepagesfree, used, surplus, reservedMiB
mem.thpanonymous, shmemMiB
mem.thp_detailsShmemPmdMapped, FileHugePages, FilePmdMappedMiB
mem.reclaimingActive, Inactive, Active(anon), Inactive(anon), Active(file), Inactive(file), Unevictable, MlockedMiB
mem.high_lowhigh_used, low_used, high_free, low_freeMiB
mem.cmaused, freeMiB
mem.directmaps4k, 2m, 4m, 1gMiB

Alerts

The following alerts are available:

Alert nameOn metricDescription
ram_in_use system.ramsystem memory utilization
ram_available mem.availablepercentage of estimated amount of RAM available for userspace processes, without causing swapping
used_swap mem.swapswap memory utilization
1hour_memory_hw_corrupted mem.hwcorruptamount of memory corrupted due to a hardware failure

Setup

Prerequisites

No action required.

Configuration

File

There is no configuration file.

Options

There are no configuration options.

Examples

There are no configuration examples.


Do you have any feedback for this page? If so, you can open a new issue on our netdata/learn repository.