sudo apt install dstat
sudo dstat --output ~/Hardware-Data/dstat-log.csv -cdnpmrt

 

 

dstat options

-top-cpu – process using most CPU

-top-mem – process consuming the most memory

  • cdngyt 옵션은 다음과 같습니다.
  1. c : CPU 통계 =cpu usage
  2. d : 디스크 통계
  3. n : 네트워크 통계
  4. g : 페이지 통계
  5. y : 시스템 통계
  6. t : 타임스탬프

 

 

그외 추가적인 옵션들 (dstat --help 치면 나옴)

 

 

dstat

 

total cpu usage usr 사용자 프로스가 사용중인 CPU
(-c CPU 사용률) sys 시스템 프로스세가 사용중인 CPU
(usr+sys_idl = 100%) idl 유휴 cpu
  wai wating process 수
  stl  
dsk/total read 디스크의 읽기수
(-d 디스크상태) writ 디스크의 쓰기수
net/total recv 입력받은 크기
(-n 네트워크 상태) send 보낸 크기
paging in page in 수
(-g 페이징 확인) out page out 수
system int interrupt
(-y 시스템 통계) csw context switch
procs run 실행중인 prcoess수
(-p 프로세스 상태) blk block된 process수
  new 새로운 자식(spawned) process수
memory-usage used 사용된 메모리
(-m 메모리 상태) free 여유 메모리
  buff 버퍼에 사용된 메모리
  cach 캐쉬에 사용된 메모리
io/total read 블록장치 처리량 (읽은거)
(-r 단위는 카운트임) writ 블록장치 처리량 (쓴거)
     
sudo apt install dstat
# csv파일로 save
sudo dstat --output ~/Hardware-Data/dstat-log.csv -cdnpmrt
# download
scp -i /Users/heoyunseo/desktop/aws_pem/ys.pem -r ubuntu@50.17.89.10:/home/ubuntu/Hardware-Data/ .
  • 저장된 파일을 열어보면 다음과같이 보임.

여기서 에러발생 →일반적인 방법으로 csv파일을 열려고 하면 pandas가 못읽어들임

참조 : https://stackoverflow.com/questions/40560614/how-to-import-the-output-of-dstat-into-pandas

이래 처럼 읽어오면 정상적으로 읽어진다.

 

import pandas as pd
import io
fn = r'./dstat-log.csv'
with open(fn) as f:
data = f.read().replace('|', '  ')
data = data[data.rfind('system"\\n')+8:]
data = data.replace(',', ' ')
data
cols = 'totalcpuusage_usr totalcpuusage_sys totalcpuusage_idl totalcpuusage_wai totalcpuusage_stl ' \\
'dsktotal_read dsktotal_writ ' \\
'nettotal_recv nettotal_send procs_run procs_blk procs_new ' \\
'memoryusage_used memoryusage_free memoryusage_buff memoryusage_cach ' \\
'iototal_read iototal_writ '  \\
'system_time'.split()
df = pd.read_csv(io.StringIO(data), delim_whitespace=True, skiprows=2, header=None, names=cols)
df

이렇게 열면 정상적으로 보인다~

 

 

'<하드웨어> > CPU' 카테고리의 다른 글

DSTAT options  (0) 2022.01.09

+ Recent posts