Process Log 저장문의

안녕하세요.

우분투 초보입니다.

현재 여러가지 공부중인데요.

aprocess에 대하여 1분 단위의 프로세스 사용현황 및 메모리 사용현황을 기록중입니다.

내용을 아래와 같습니다.

check.sh 생성

#!/bin/bash

LOG_FILE="check.log"

while :
do
echo date "+%y%m%d %H:%M:%S"" : "ps --no-headers -C aprocess -o pid,comm,pcpu,vsize >> $LOG_FILE
sleep 60
done

이렇게 만들어서 현재 사용중인데요,
문제는 Top으로 보았을때 프로세스 정보와 일치하지 않는 상황이 발생하여서 이부분을 어떻게 해결해야하는지 방법을 강구중입니다.

pcpu 가 해당 프로세스 정보를 가져오는데, 전체 CPU 4개입니다.
top로 보았을때 100% 이면 로그에 저장되는값은 25% 가 되는 상황이 발생하고 있습니다.

이부분에 대한 해결 방법을 찾고 있습니다.

고수분들의 조언 부탁드립니다.

감사합니다.

top에서 보여지는 %CPU는 각 100xCPU수를 나타냅니다.
ps에서 보여지는 점유율은 전체 CPU에서 점유율을 나타내기 때문에 25%(4CPU 이므로)로 나타납니다.

ps에서 각CPU별 점유율을 나타내는 옵션을 짧은 영어로는 못찾았네요 ㅠ.ㅠ