메모리 사용량을 모니터링하려면 어떻게 해야 하나요?

현재 메모리 사용량을 확인하기 위해 'top'을 사용했습니다. 하지만 일정 기간 동안의 메모리 사용량을 모니터링하고 싶습니다. 예를 들어 모니터링을 시작한 다음 몇 가지 명령을 실행하고 마지막으로 모니터링을 중지하고 해당 기간 동안 사용 된 메모리 양을 확인합니다.

우분투 서버에서 이 작업을 수행하려면 어떻게 해야 하나요?

5초 정도마다 크론잡을 시작하고 현재 메모리 사용량을 텍스트 파일에 기록하는 명령을 호출할 수 있을 것 같습니다. 하지만 현재 메모리 사용량을 텍스트 파일에 기록하기 쉬운 형식으로 얻으려면 어떤 명령을 사용해야 하나요?

해결책

이전 답변을 결합하는 것이 좋습니다.

watch -n 5 free -m

리눅스는 여분의 메모리를 하드 드라이브 블록 캐시에 사용하는 것을 좋아합니다. 따라서 무료 메모리만 보고 싶지 않을 것입니다. buffers/cache:행의free열을 보고 싶을 것입니다. 이것은 애플리케이션에서 사용할 수 있는 메모리의 양을 보여줍니다. 그래서 방금free -m`을 실행해서 이 결과를 얻었습니다:

             total       used       free     shared    buffers     cached
Mem:          3699       2896        802          0        247       1120
-/+ buffers/cache:       1528       2170
Swap:         1905         62       1843

1528MB를 사용하고 있고 2170MB**의 여유 공간이 있다는 것을 알 수 있습니다.

참고: 이 '보기' 주기를 중지하려면 Ctrl+C 를 누르면 됩니다.

해설 (7)

하토프 생각한다 '는' 최고의 솔루션입니다.

sudo apt 확보하십시오. install 하토프 '-'

이 프로그램 어떻게 하면 대부분의 ramcomment 디이브이 사용하고 있습니다. 한 원한다면요 종료시킵니다 쉽게 할 수 있습니다. # 39 의 here& 스크린 샷!

[] (http://i.stack.imgur.com/09ONi.png)!

해설 (5)

각 실행 중인 프로세스를 찾는 경우 좋은 사용되는 메모리 분석, 그럼 내가 권능은하나님께 ps_mem.py 추천합니까 체크아웃하기 (늑대굴에서 here dell. pixelbeat.org).

내가 아는 한 줄 위에 있는 설명과 스냅샷 에서 당신이 말한 게 아니라 다른 무료 , 생각했어요 이 유용한 알 수 있습니다.

예 출력:

user@system:~$ sudo ps_mem.py
[sudo] password for user:
 Private  +   Shared  =  RAM used       Program

  4.0 KiB +   7.5 KiB =  11.5 KiB       logger
  4.0 KiB +   8.0 KiB =  12.0 KiB       mysqld_safe
  4.0 KiB +  10.0 KiB =  14.0 KiB       getty
  4.0 KiB +  42.0 KiB =  46.0 KiB       saslauthd (5)
 48.0 KiB +  13.0 KiB =  61.0 KiB       init
 56.0 KiB +  27.5 KiB =  83.5 KiB       memcached
 84.0 KiB +  26.5 KiB = 110.5 KiB       cron
120.0 KiB +  50.0 KiB = 170.0 KiB       master
204.0 KiB + 107.5 KiB = 311.5 KiB       qmgr
396.0 KiB +  94.0 KiB = 490.0 KiB       tlsmgr
460.0 KiB +  65.0 KiB = 525.0 KiB       rsyslogd
384.0 KiB + 171.0 KiB = 555.0 KiB       sudo
476.0 KiB +  83.0 KiB = 559.0 KiB       monit
568.0 KiB +  60.0 KiB = 628.0 KiB       freshclam
552.0 KiB + 259.5 KiB = 811.5 KiB       pickup
  1.1 MiB +  80.0 KiB =   1.2 MiB       bash
  1.4 MiB + 308.5 KiB =   1.7 MiB       fail2ban-server
888.0 KiB +   1.0 MiB =   1.9 MiB       sshd (3)
  1.9 MiB +  32.5 KiB =   1.9 MiB       munin-node
 13.1 MiB +  86.0 KiB =  13.2 MiB       mysqld
147.4 MiB +  36.5 MiB = 183.9 MiB       apache2 (7)
---------------------------------
                        208.1 MiB
=================================

 Private  +   Shared  =  RAM used       Program

39, 유일한 part I don& 점도 마음에 스크립트입니다 루트 권한이 필요한 주장한다. 난 아직 정확한 이유를 파악하기 위해 haven&, t # 39 이 경우. 기회가 있었다.

해설 (7)

free]1 명령을 사용합니다. 예를 들어, 이것은 free -m의 출력입니다:

             total       used       free     shared    buffers     cached
Mem:          2012       1666        345          0        101        616
-/+ buffers/cache:        947       1064
Swap:         7624          0       7624

free -m | grep /+`는 두 번째 줄만 반환합니다:

-/+ buffers/cache:        947       1064
해설 (1)

watch]1 명령이 유용할 수 있습니다. watch -n 5 free`를 사용하면 5초마다 업데이트되는 메모리 사용량을 모니터링할 수 있습니다.

해설 (1)

Cat / proc / 메민포 사용 할 수 있어 ''.

MemTotal:        4039160 kB
MemFree:          309796 kB
MemAvailable:    3001052 kB
Buffers:          345636 kB
Cached:          2341288 kB
SwapCached:            8 kB
Active:          1725160 kB
Inactive:        1551652 kB
Active(anon):     538404 kB
Inactive(anon):    70076 kB
Active(file):    1186756 kB
Inactive(file):  1481576 kB
Unevictable:          32 kB
Mlocked:              32 kB
SwapTotal:       4194300 kB
SwapFree:        4194044 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:        589988 kB
Mapped:           255972 kB
Shmem:             18596 kB
Slab:             374888 kB
SReclaimable:     310496 kB
SUnreclaim:        64392 kB
KernelStack:        6976 kB
PageTables:        26452 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     6213880 kB
Committed_AS:    3589736 kB
VmallocTotal:   34359738367 kB
VmallocUsed:           0 kB
VmallocChunk:          0 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      147392 kB
DirectMap2M:     4046848 kB
해설 (2)

전체적인 시각적 모니터링에만 RAM 사용률을 사용하는 경우, 뵤부 얻게된다면 새벽꺼정 너회의 메모리 사용을 오른쪽 하단 모서리에 단말기 및 터미널 세션을 실행할 때 믿지아니하며.

스크린샷을 통해 알 수 있듯이, 내 가상 머신 (가상) 는 로드하십시오 2.8GHz 프로세서 및 994MB 1h3m 업무가동시간, 0.00 있다 (21%) 의 RAM 에 사용할 수 있는 시스템.

! 뵤부 사용

해설 (0)

한 줄로 솔루션 및 출력:

free -m | grep "Mem:"

예상되는 출력입니다 예를 들어보겠습니다.

Mem:           3944         652         302          18        2990        2930
해설 (0)

꼭 이래야겠어요 경로재설정 [선인장] (http://cacti.net/). 이렇게 하면 너회의 그래프화합니다 메모리 사용량 등을 일정 기간 동안 사용 웹 브라우저를 통해 확인할 수 있습니다.

해설 (0)
    • 메모리 사용량 모니터링

39 m, 앞에 언급된 게시물 중 하나를 더 i& 궤를 같이 하는 선인장 모니터링하도록 메모리 사용량 좋은 방법입니다. 그러나 이후 더 이상 인기 선인장, 그 대안으로 보인다 주류 관련 애플리케이션 호출됨 흑연색.

흑연색 비교적 쉽게 설치할 수 있는 서버 및 unbuntu 설치할 수 있습니다 (이 링크를 체크아웃합니다] 1 쉽게 따를 설치 절차.

이제 흑연색 설치한 뒤, 이를 통해 어떤 메모리 메트릭에 emc. 프로파일링하려는 간격을 보낼 수 있습니다. 모든 호르스트충 모든 분 5 초 마다,

이미 이전 기준에 따라 그래프로 제안됩니다 글, 메모리, 시스템 도구를 사용하여 취합하려면 스크립트입니다 필요한 메모리 정보를 직접 작성할 수 있습니다. 또는, snmp 플러그인에는 that& # 39, ll 미리 작성된 사용할 수 있습니다 모든 작업을 할 수 있습니다.

39, 쓰기, it& 스크립트입니다 프로파일링하려는 경우 자체 메모리 및 메모리 메모리 사용량을 버퍼된 차지하고 있는지 확인하는 ll be 현명한 캐싱된 계산할 때, 그렇지 않으면 데이터 수집 거짓값 you& # 39, ll end up.

대신 이용해야 하는 경우 이미 # 39 는 snmp 플러그인에는 필요한 모든 계산이므로 당신꺼에요, s, here& https://partner. microsoft. 방정식입니다 꽤 잘 작동합니다. 체크기념리비아스나모프.

  • SNMP:* 의 장점

나는 내가 snmp 설치된 모든 원격 노드입니다 모니터합니다. 이렇게 하면 내 모든 시스템에서 하나의 중앙 서버 (s) , 나를 모니터링하도록 필요 없이 플러그인에는 복제본이나 put a 에서 원격 노드입니다.

  • SNMP:* 의 단점

, 는 snmp 에이전트에는 you& # 39 d 가 유지할 수 있도록 각 원격 프로파일링하려는 노드입니다 모니터하려면 설치되어 있는 메모리. 그러나 한 번 이 설치 될 전망이다. # 39 와 같은 도구를 사용하여, re 자동화합니다 you& 경우 또는 퍼핏 또는 이와 유사한 환경에서 툴과도 isn& # 39 이 후, 요리사, 전혀 문제가 없다.

  • 단순화했습니다 SNMP agent 를 원격 노드 (s) *

이후 이 노선은 단순히 파일 및 추가 /etc/snmpd/snmpd.conf vi 는 snmp agent 가 설치되어 있다.

rocommunity  (specify-a-community-string-aka-password-here)

그럼 snmpd 재시작하십시오 俊捞傈飘, 호스트당:

/etc/init.d/snmpd restart

그런 다음, 대신 중앙 서버에 따라 선택할 수 있는 모든 모니터하려면 사용 중인 다른 서버의 경우 다음 명령을 실행합니다.

$ time ./checkMemoryviaSNMP -v2 public gearman001.phs.blah.com 30 90 graphite,10.10.10.10,2003,typical
WARNING: Used = [ 3.26154 GB ], Installed = [ 5.71509 GB ], PCT.Used = [ 57.069% ], Available.Memory = [ 2.00291 GB ]. Buffer = [ 137.594 MB ], Cached = [ 1.3849 GB ]. Thresholds: [ W=(30%) / C=(90%) ].  System Information = [ Linux gearman001.phs.blah.com 2.6.32-504.30.3.el6.x86_64 #1 SMP Thu Jul 9 15:20:47 EDT 2015 x86_64 ].

real    0m0.23s
user    0m0.03s
sys     0m0.02s
해설 (0)