[awk,uptime] top cpu load average 10 이상 사용자 하고 프로세스 로그 체크 용-ILE/SH/BASH/CSH2008. 5. 15. 20:17
http://suite.tistory.com/2008 02 fs
awk , uptime 이용
데비안 리눅스 sh 에서 테스트 한것임 sleep 이 잘안되면 그냥 cron 으로 1분씩 돌려도 될것같구
로그가 계속 쌓이니 디스크 사이즈도 혹시 모를 사항에 대한 고려를...
==== 소스 =====
#!/bin/sh
FILE_PS_LOG=`pwd`/ps.log
FILE_W_LOG=`pwd`/w.log
date > $FILE_PS_LOG
date > $FILE_W_LOG
while [ true ]
do
CUR_LOAD=`uptime | awk '{print $11}' | awk -F. '{print $1}'`
if [ "$CUR_LOAD" -gt 9 ]; then
date >> $FILE_PS_LOG
echo " OVER LOAD AVERAGE 10 " >>$FILE_PS_LOG
ps -efl >> $FILE_PS_LOG
date >> $FILE_PS_LOG
echo " OVER LOAD AVERAGE 10 " >>$FILE_PS_LOG
date >> $FILE_W_LOG
w >> $FILE_W_LOG
date >> $FILE_W_LOG
fi
sleep 60
done
추가 댓글 :
date >> $FILE_TOP_LOG
echo " OVER LOAD AVERAGE 10 " >>$FILE_TOP_LOG
top -b -n 01 >> $FILE_TOP_LOG
date >> $FILE_TOP_LOG
'용-ILE > SH/BASH/CSH' 카테고리의 다른 글
[stty] 콘솔 한글 안써질때 한글 쓰기 putty (0) | 2008.05.15 |
---|---|
[date] 하루전 날짜 구하기 리눅스 , 유닉스 (0) | 2008.05.15 |
[CSH] ipcrm 계정 으로 공유메모리 내리기. (0) | 2008.05.15 |
[CSH] 특정 계정 아파치 프로세스 죽이기 (0) | 2008.05.15 |
expr 숫자 계산 (0) | 2008.05.15 |