메모리 사용량을 그래프로 표시하는 스크립트가 있습니까 (예 : 원형 차트). 각 프로세스는 별도의 조각이됩니까?
시간 경과에 따른 메모리 사용량을 그래프로 나타 내기 위해 Munin 같은 것을 찾고있는 것이 아니라 단일 시점에서 프로세스 별 메모리 사용량을 보여줍니다.
내 요청을 더 모호하게 만들기 위해 헤드리스 서버 (X 응용 프로그램 없음)를위한 것입니다. 가장 간단한 방법은 PNG 파일 또는 HTML 파일을 작성하는 것입니다 (Javascript를 사용하여 프로세스 필터링, 그래프 유형 간 변경 등을 허용 할 수 있음).
프로세스 당 메모리 계산은 몇 가지 이유로 까다 롭습니다. 간단한 모니터링의 경우 gkrellmd 또는 nagios 스크립트로 충분할 것입니다. 더 높은 정확도를 원하면 더 세게보아야합니다.
smemProportional Set Size의 개념을 소개합니다.
물리적 메모리의 많은 부분이 일반적으로 여러 응용 프로그램간에 공유되기 때문에 RSS (Resident Set Size)로 알려진 메모리 사용량의 표준 측정은 메모리 사용량을 크게 과대 평가합니다. 대신 PSS는 각 응용 프로그램의 각 공유 영역에 대한 "공정한 공유"를 측정하여 현실적인 측정을 제공합니다.
예 : GNOME을 시작하면 각 애플릿과 프로그램에 대해 하나씩 여러 프로세스가 시작됩니다. 그들은 모두 libglib에 연결됩니다. Linux는 libglib를 하나의 메모리 블록에로드하고 libglib를 원하는 모든 프로세스에 매핑합니다. 순진한 메모리 계정은 연결된 모든 프로세스에 대해 전체 libglib 크기를 계산합니다.
smem은 libglib를 사용하는 프로세스간에 libglib의 비용을 나누어 현실을 더 가깝게 보여줍니다. 또한 웹 사이트에서 메모리 사용량을 표시하는 여러 옵션이 있습니다.
그러나 최신 커널 (> 2.6.27)이 필요합니다.
선반에서 아무것도 생각할 수 없습니다
그러나 PHP script exec'ing ps -AH v | awk '{print $ 8, $ 9, $ 10}' 그리고 pChart 와 함께 사용하면 원하는 작업을 수행 할 수있는 웹 페이지를 얻을 수 있습니까? (Kb 단위의 사용, 총 비율 및 프로세스 이름)
sarface 살펴보십시오-sar 데이터에 따라 다르며 메모리 사용량 (및 기타 모든 sar/sysstat 데이터)을 실시간으로 모니터링 할 수 있습니다.
그리고 collectd 는 어떻습니까?
스스로 해. RRD 데이터베이스를 업데이트하는 간단한 셸 스크립트를 만듭니다. 그런 다음 rrdtool을 사용하여 그래프를 그립니다.
정말로 낮은 수준의 세부 사항에 관심이 있다면 collectl을 잊지 마십시오. 다음은보고 할 수있는 프로세스 별 메모리 활용 유형의 예입니다.
RECORD 1 cag-dl585-02 (1244758290.002) (2009 년 6 월 11 일 목요일 18:11:30) PROCESS SUMMARY (카운터는/초) # PID 사용자 S VmSize VmLck VmRSS VmData VmStk VmExe VmLib MajF MinF 명령 9089 root S 66856K 0 2328K 1440K 212K 736K 6812K 00 sendmail : 9097 smmsp S 57600K 0 1772K 1304K 204K 736K 5904K 0 0 sendmail : 9108 루트 S 6428K 0 360K 180K 84K 88K 1944K 000 gpm 9120 루트 S 74808K 0 1136K 476K 520K 48K 1920K 000 crond 9173 xfs S 20904K 0 1828K 1124K 88K 104K 3084K 0 0 xfs
특정 프로세스에 관심이있는 경우 적절한 필터 (스레드를 표시하는 스위치 포함)를 지정할 수 있습니다.
일반적으로 메모리에 관심이 있다면 슬래브 세부 정보를 표시하고 vmstat 형식 출력도 표시 할 수 있습니다. 기존 도구에서 이미 데이터를 표시하는데 vmstat 형식으로 데이터를 표시하려는 이유는 무엇입니까? 간단합니다. 집합 적으로 통계를 파일에 기록하고 나중에 여러 형식으로 재생할 수 있습니다.
시도해보세요. 좋아할 것입니다.
다른 시간 간격으로 메모리 스냅 샷을 원하는 경우 ... 원하는 간격으로 cron 작업을 설정하고 스크립트를 실행하십시오.
도움이 되길 바랍니다 ....
음, gnuplot FAQ는 원형 차트를 지원하지 않음 라고 말하지만 Bernhard Reiter의 piechart 를 제안합니다. .
#top 또는 #sysstat를 사용할 수 있습니다.
This 정확히 찾고있는 것은 아니지만 this reference ( "Per Process Memory Usage"찾기)를 사용하여 필요에 맞게 조정할 수 있습니다.
kSar, sar 데이터를 기반으로하지만 Java 기반이므로 플랫폼 독립적이며 원격 호스트에 ssh하여 데이터를 가져올 수 있습니다.
더 자세히 설명하지는 않았지만 collectl에는 구분 기호로 구분 된 출력을 생성하는 옵션이 있으므로 gnuplot의 경우 공백이있는 데이터를 생성하면 모든 설정이 완료됩니다. Excel에도 잘로드됩니다. 쉼표를 원하면 구분 기호를 변경할 수 있으며 실제로 rrd 경로를 수행하려면 (플롯이 데이터와 일치 할 필요가 없기 때문에주의하십시오!) 구분 기호를 콜론으로 변경하고 타임 스탬프를 UTC로 변경할 수도 있습니다. -표
phpsysinfo 어떻게 든 프로세스 정보를 볼 수있는 기능을 제공하지 않습니까?