Incorrect memory usage metrics for individual processes (Servers for Linux)

Deprecated

New Relic Servers is no longer available. For infrastructure monitoring, please use New Relic Infrastructure. For how to switch to Infrastructure from Servers, see the transition guide.

Problem

New Relic Servers for Linux reports an incorrect physical memory usage metric compared to what you expect for individual processes.

Cause

There are two primary reasons New Relic Servers for Linux might report a different value for physical memory than you expect:

  • Different tools calculate memory differently. Some tools calculate used memory by including buffering and caching. New Relic Servers' calculation of used memory does not include buffering and caching. To compare your host's calculated memory usage to the memory usage displayed in New Relic Servers, use the command free on your command line, as shown in the following example. In the output, the -/+ buffers/cache row does not include memory used by buffering and caching. This is how New Relics Servers calculates that value and so this should most closely match the value in the Servers UI.

    $ free -h
                     total       used       free     shared    buffers     cached
        Mem:          489M       248M       241M       5.9M        11M       118M
        -/+ buffers/cache:       118M       371M
        Swap:           0B         0B         0B
    
  • The New Relic Servers monitor calculates memory usage by multiplying a host's reported virtual set size by its number of active instances. This means it cannot distinguish between whether memory is shared between similar instances of a process or is unique to a specific instance. As a result, the per-process memory may be slightly higher than the overview memory chart.

    Running New Relic Servers as root will not modify the way the monitor calculates this data and will not affect your memory usage metrics.

For more help

New Relic Servers is unavailable as of May 15, 2018. For more information: