![Unix/Linux 시스템의 프로세스 기록](https://linux55.com/image/40423/Unix%2FLinux%20%EC%8B%9C%EC%8A%A4%ED%85%9C%EC%9D%98%20%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4%20%EA%B8%B0%EB%A1%9D.png)
나는 이것이 ps -efl
*nix 시스템에서 실행 중인 프로세스를 보여준다는 것을 알고 있습니다.
ps
나는 가급적 제공된 모든 정보(예: %CPU
) 를 사용하여 (과거) 특정 컴퓨터에서 실행 중인 프로세스의 기록을 확인하고 싶습니다 %MEM
.
어떤 명령줄 유틸리티를 사용할 수 있으며 이 정보는 .bash_history
파일과 유사한 위치에 저장되어 있습니까?
답변1
노력하다 atop
. 다양한 시스템 정보(프로세스, CPU, 메모리, 디스크 및 네트워크 사용량)의 구성 가능한 기록을 저장할 수 있습니다. 참고: 물론 모든 것을 기록하는 것은 아닙니다. 단지 정기적으로 "스냅샷"을 찍을 뿐입니다.
편집: 명확하지 않은 경우 (데비안에서 사용되는 디렉터리) atop
에 저장된 주기적 스냅샷을 수행하는 데몬이 있습니다 ./var/log/atop
답변2
당신은 줄 수 있습니다모니터링 실행한 번의 기회. atop
이러한 일시적 프로세스를 기록하는 데 사용되는 "샘플링" 방법보다 더 안정적입니다 . 그러나 ps
CPU 및 메모리 사용량과 같은 많은 정보를 기록하지는 않습니다 .
바라보다:
- https://www.brendangregg.com/blog/2014-07-28/execsnoop-for-linux.html
- https://github.com/brendangregg/perf-tools
- https://github.com/iovisor/bcc
편집: execsnoop
이것은 본질적으로 Python 스크립트이므로 이미 pid를 구문 분석합니다(참조소스 코드), 다음을 사용하여 스크립트를 조정할 수 있습니다.프수틸꼭 필요한 경우 CPU 및 메모리 사용량을 인쇄할 수 있습니다.