2 minute read

tl;dr

  • sar는 linux에서 제공하는 모니터링 tool로 (System Activity Report), 다음과 같이 사용하여 CPU나 메모리 등 장비의 리소스 상태를 모니터링하는 데 사용할 수 있다.

      sar ${interval in seconds} ${number of intervals} # real time monitoring
      sar -f /var/log/sa/sa${dd} -s ${start time in hh:mm:ss} -e ${end time in hh:mm:ss} -i ${interval in seconds} # past records
    

sar 소개

  • sysstat 패키지에 포함된 sadc (System Activity Data Collector)가 cron을 통해 주기적으로 모니터링을 실시하고 결과를 /var/log/sa/ 에 저장이 된다. 수집된 결과를 sar로 조회할 수 있다.
    • 쉽게 말해 sar는 수집 값을 조회하는 클라이언트 역할이고, sadcsar의 백엔드다.

사용법

1. 간단한 사용법

  • sar이라고 입력하면 아래와 같이 지금으로부터 1-2시간 이전의 CPU 모니터링 정보를 보여준다.

2. Real time 모니터링

  • 과거가 아닌 현재부터 real-time으로 모니터링하고 싶다면 아래와 같은 형식으로 간단히 사용할 수 있다.

      sar ${interval in seconds} ${number of intervals} # real time monitoring
    

3. 이전 날짜의 기록 조회

  • 이전 날짜에 대한 sar를 보고 싶다면, 우선 sadc 로그가 어디에 남는지 알아야 하는데, RHEL의 경우 /var/log/sasa${dd} 형식으로 저장된다.

      ls /var/log/sa
    

  • 이 데이터 파일을 -f 옵션으로 조회할 수 있다.

      sar -f /var/log/sa/sa${dd}
    
  • 특정 시간대에 특정 interval 기준으로만 데이터를 보고 싶다면 start time과 end time, interval을 나타내는 옵션을 사용할 수 있다.

      sar -f /var/log/sa/sa${dd} -s ${start time in hh:mm:ss} -e ${end time in hh:mm:ss} -i ${interval in seconds} # past records
    
  • (e.g.) 12월 3일 날짜의 sar 로그 중 21시-23시 데이터를 5분 간격으로 보고싶다면 다음과 같이 입력하면 된다.

      sar -f /var/log/sa/sa03 -s 21:00:00 -e 23:00:00 -i 300
    
    • -f: sar 데이터 파일을 읽기 위한 argument
    • -s: start time (hh:mm:ss)
    • -e: end time (hh:mm:ss)
    • -i: interval (in seconds)

데이터 보관 기간 설정

  • sarsysstat이라는 리눅스 패키지에 포함되어 있기 때문에 sysstat config file을 변경하면 된다.

      vi /etc/sysconfig/sysstat
    
      # sysstat-10.1.5 configuration file.
        
      # How long to keep log files (in days).
      # If value is greater than 28, then log files are kept in
      # multiple directories, one for each month.
      HISTORY=28
        
      # Compress (using gzip or bzip2) sa and sar files older than (in days):
      COMPRESSAFTER=31
        
      # Parameters for the system activity data collector (see sadc manual page)
      # which are used for the generation of log files.
        
      # Compression program to use.
      ZIP="bzip2"
        
      SADC_OPTIONS="-S DISK -S SNMP"
    
  • HISTORY 부분을 바꾸면 된다.

읽을거리

  1. man sar
  2. sysstat/sysstat: Performance monitoring tools for Linux
  3. Youtube - How to use the sar command: 2-Minute Linux Tips

Tags:

Categories:

Updated: