솔라리스 프로세스가 얼마나 많은 메모리를 소비하는지 확인하는 방법? 할당 된 총 주소 공간과 RAM에 상주하는 양을 모두 원합니다.
awk 스크립트로 pmap 출력을 합산하려고 시도했지만 추악한 해킹이었습니다. 스크립트를 작성하는 더 좋은 방법이 있습니까?
솔라리스 프로세스가 얼마나 많은 메모리를 소비하는지 확인하는 방법? 할당 된 총 주소 공간과 RAM에 상주하는 양을 모두 원합니다.
awk 스크립트로 pmap 출력을 합산하려고 시도했지만 추악한 해킹이었습니다. 스크립트를 작성하는 더 좋은 방법이 있습니까?
답변:
prstat -s rss
'-s'는 prstat 출력을 rss 열을 기준으로 정렬합니다 (다른 열에 대해서는 매뉴얼 페이지 참조). 또한 사용자 별 누적에 대해 '-a'옵션을 시도하십시오.
ps -eo pid,pmem,vsz,rss,comm | sort
-rnk2 | head
상위 10 개 RAM 소비자. '-o pmem'은 상주 메모리의 백분율, 즉 프로세스에서 사용 된 RAM을 표시합니다.
ls -lh /proc/{pid}/as
프로세스의 전체 주소 공간 (vsz)을 표시하는 쉬운 방법입니다. pgrep과 함께 사용하여 사용자, 패턴 등으로 누적 할 수 있습니다. 예 :
for pid in `pgrep -U webserver`; do ls -lh /proc/$pid/as; done
글쎄, 일부 매뉴얼 페이지를 읽은 후 다음을 얻었습니다.
ps -o vsz -p $PID | tail -1
매우 간단합니다. 상주 규모의 형식은 rss입니다.
Zenoss 커뮤니티 관리자로서의 $ .02 ...
Zenoss는 모든 네트워크 장치 및 서버의 상태와 서버에서 실행중인 프로세스를 모니터링 할 수 있습니다. 커뮤니티 회원 중 한 명이 최근 SNMP를 통해 Solaris 용 프로세스 모니터링을 제출했습니다. http://community.zenoss.org/docs/DOC-5882