나는 리눅스에 별로 익숙하지 않다. 따라서 다른 사람들에게는 이것이 간단한 질문일 수 있습니다. 우리가 달릴 때탑c 명령 - 서버의 현재 상태에 대한 평균 대기 시간(wa)을 얻습니다. 지난 1개월 동안 평균 대기 시간이 얼마나 되었는지 알고 싶습니다. 이 정보를 얻을 수 있는 방법이 있나요?
답변1
이 정보를 정기적으로 기록하여 한 달 동안 보관해야 합니다.
sysstat
와 같은 리소스 사용량 추적 도구가 있습니다 atop
.
적어도 atop
데비안에서는 10분마다 샘플링된 정보가 /var/log/atop
.
글로벌 CPU 사용량 정보는 다음 명령어를 통해 조회할 수 있습니다.
atop -r /path/to/log/file -PCPU
매뉴얼 atop
페이지는 이 출력에 대한 설명을 제공하며, 각 줄에 대해 6번째 필드는 해당 기간의 초 수를 보고하고, 7번째 필드는 초당 CPU 틱 수를 보고하고, 13번째 필드는 보고서를 보고한다는 것을 알 수 있습니다. 초당 CPU 틱 수입니다. CPU 틱 수입니다.기다리다똑딱거리는 소리.
따라서 GNU 도구를 사용한다고 가정하면 다음과 같이 할 수 있습니다.
start=$(date -d '1 month ago' +%s)
find /var/log/atop -maxdepth 1 -name 'atop_[0-9]*' \
-newermt "@$start" -exec atop -r {} -PCPU \; |
awk -v start="$start" '
$3 >= start {t += $6 * $7; w += $13}
END {printf "%.2f%%\n", w * 100 / t}'
답변2
, ,...를 사용하여 장기간에 걸쳐 시스템 성능을 모니터링 할 수 있어야 합니다 sysstat
.sar
인터넷에서 이러한 프로그램을 찾아보세요. 시작하기 위한 링크는 다음과 같습니다.https://www.thegeekstuff.com/2011/03/sar-examples/