hotamul의 개발 이야기

python으로 sar 명령 실행하기 본문

etc.

python으로 sar 명령 실행하기

hotamul 2023. 3. 12. 00:55

sysstat, sar을 이용한 resource 모니터링에서 sar을 이용해 resource 사용량 확인 방법에 대해서 알아보았다.

아래는 python으로 해당 명령을 실행하고 결과를 print 하기 예시

import subprocess

# sar 명령어 실행
sar_process = subprocess.Popen(['sar', '-u', '1', '3'], stdout=subprocess.PIPE)

# sar 결과를 딕셔너리로 파싱
output = sar_process.communicate()[0].decode()
lines = output.split('\n')
header = lines[2].split()
cpu_usage = {}
for line in lines[3:]:
    if line:
        fields = line.split()
        timestamp = fields[0] + ' ' + fields[1]
        cpu_stats = {}
        for i, field in enumerate(fields[2:]):
            cpu_stats[header[i+2]] = float(field)
        cpu_usage[timestamp] = cpu_stats

# 출력
print(cpu_usage)

 

https://stackoverflow.com/questions/4789837/how-to-terminate-a-python-subprocess-launched-with-shell-true

Comments