gvmstat

   gvmstat

  사용법


	gvmstat [options] file
	gvmstat -p [options] file

	Options are as follows:

	-?            print this help
	-,            put a comma in graph number
	-0            zero based graph
	-B            bar graph
	-b            draw border line
	-C bg:c1:c2   colors of the graph, colors must be 6 hex digits:
	                  bg: background color; def: ffffff
	                  c1: foreground color1; def: 0000ff
	                  c2: foreground color2; def: ff0000
	-c config     configuration file for maximum values and titles
	-D directory  output directory; def: .
	-e dot        X-axis extension
	-G fn[:[[max][-min]][:title]][,fn[:[[max][-min]][:title]]]...  draw graphs for the specified fields
	                (without -p) fn: cpu,r,b,w,swap,free,re,mf,pio,fr,de,sr,in,sy,cs
	                (with -p) fn: swap,free,re,mf,fr,de,sr,epi,epo,epf,api,apo,apf,fpi,fpo,fpf
	-h height     height per graph
	-i interval   interval (second)
	-l n          draw vertical lines on graph every n'th data
	-L toplabel   specify top label
	-m            print maximum values for each field
	-N            write time info(HH:MM:SS) at the bottom of the graph
	-n count      count of data to be processed
	-o outfile    output file,  def: vmstat[.gif]
	-P            print only maximum value and minimum value for each field
	-p            input file as output of '# gvmstat -p'
	-s start      starting data to be processed. n or HHMMSS or HH:MM:SS
	-S skiplist   list starting word to skip (separated by comma)
	-T title      specify title; def: vmstat
	-t HHMMSS     starting time of gathering data
	-V            show version
	-v            print data in text without graph
	-W            generate HTML page
	-w width      width of the graph
	-y            skip unknown field name in config file

	file          output of "vmstat" command
  설명

gvmstat는 vmstat 명령어의 출력을 저장한 file을 읽어 들여, 주요 필드에 대하여 GIF 파일포멧의 그래프를 만든다.

# vmstat 30 > vmstat.log vmstat의 출력은 다음과 같은 형태이다.

 procs     memory            page            disk          faults      cpu
 r b w   swap  free  re  mf pi po fr de sr s0 s1 s2 s3   in   sy   cs us sy id
 2 0 0  40720 36488  19 1171 660 127 322 52688 35 2 11 5 17 2086 5581 5394 27 6 67
 0 0 0 6834952 96880  2 1360 423 60 328 0 37 2 5  2 10 1625 24257 5995 22 6 72
 0 0 0 6826888 98000  2 1451 179 38 351 26752 43 0 5 2 8 1628 25939 6106 22 6 72
... skip ...

vmstat의 출력물에서 다음과 같은 필드가 선택되어 그래프를 그리는데 사용된다.

r, b, w, swap, free, pio(pi + po), sr, in, sy, cs, cpu(us + sy) 각각의 필드에 대한 의미는 vmstat 메뉴얼 페이지를 참고한다. # man vmstat vmstat의 결과물에서 첫번째 데이타는 사용되지 않고, 두번째 데이타부터 사용된다. 첫번째 데이타는 시스템 부팅부터 지금까지 평균이며, 측정한 시점의 데이타에 대한 정확도가 없기 때문에 사용되지 않는다.

-s 옵션을 사용하여 시작하는 데이타의 위치를 지정할 수 있는데, 여기서 -s 10 이라고 지정하면 실제 데이타 파일에서는 11번째 데이타부터 그래프를 그린다. 위에서 설명했듯이 데이타 파일의 첫번째 데이타는 유효한 데이타로 간주하지 않는다.

데이타 파일에 #으로 시작하는 라인이 있으면 그 라인을 스킵한다.

09시 정각에 30초 간격으로 데이타를 수집하였다고 가정하면, 그래프 상에서 09시 00분 30초에 표시된 값은 09시 00분 00초 부터 09시 00분 30초 동안의 초당값이다.

  vmstat의 출력물, vmstat.log를 가지고 각 옵션에 대하여 설명한다.

명령어 설명
# gvmstat vmstat.log 옵션 없이 그래프를 만든다. -o 옵션을 지정하지 않으면, 디폴트로 vmstat.gif 파일을 만든다.
# gvmstat -B vmstat.log -B 옵션은 막대 그래프를 만든다.
# gvmstat -t 090000 -i 30 vmstat.log

# gvmstat -t 090000 -i 30 -l 0 vmstat.log

# gvmstat -t 090000 -i 30 -N vmstat.log

# gvmstat -t 090000 -i 30 -e 5 -N -n 120 vmstat.log

-t 090000 -i 30 옵션은 그래프의 X축에 시간을 표시한다. 데이타를 수집한 시작 시간은 09시 00분 00초이고, 시간 간격은 30초이다.

-i 옵션과 함께 -l 0 옵션을 사용하면, 10 분 간격으로 회색 점선을 그린다.

-i 옵션과 함께 -N 옵션을 사용하면, 60 dot 간격으로 그래프의 하단에 시간(HH:MM:SS)을 표시한다.

-e 옵션과 함께 -N 옵션을 사용하면 그래프의 구간을 자세히 볼 수 있다.

# gvmstat -w 200 vmstat.log -w 200 옵션은 그래프의 폭을 200 dot로 지정한다. 이 옵션이 지정되어 있지 않으면, 데이타의 개수 만큼의 폭을 차지하며, 그 폭이 480 dot 보다 적으면, 480 dot로 사용된다. -w 0 옵션을 지정하면, 실제 데이타 양 만큼의 폭으로 그래프를 만든다.
# gvmstat -s 100 -n 200 vmstat.log -s 100 옵션은 100 번째 데이타부터 읽어 들인다. -n 200 옵션은 200개의 데이타에 대해서만 그래프를 만든다.

-i 옵션과 함께 -s 옵션에서 다음과 같이 시간을 지정하면 그 시간부터 그래프를 그린다.

HHMMSS or HH:MM:SS Exam)     # gvmstat -i 30 -t 090000 -s 10:00:00 vmstat.log
# gvmstat -e 10 -n 40 vmstat.log -e 10 옵션은 1 개의 데이타가 X축으로 10 dot의 간격을 가지게 한다. -n 40 옵션은 40 개의 데이타로 그래프를 만든다.
# gvmstat -h 100 vmstat.log -h 100 옵션은 각 단위 그래프의 높이가 100 dot의 크기를 가지게 한다.
# gvmstat -T "July 1" vmstat.log -T "July 1" 옵션은 그래프의 상단에 제목을 쓰는데 사용된다. -T "" 또는 -T . 옵션을 사용하면, 상단의 제목을 쓰지 않는다. 디폴트는 "vmstat" 이다.
# gvmstat -G cpu,cs,r,free vmstat.log -G cpu,cs,r,free 옵션은 vmstat 데이타 중에 cpu   cs   r   free 필드에 대한 그래프만 그려준다.

-G fn[:[[max][-min]][:title]][,fn[:[[max][-min]][:title]]]...

fn 필드명을 지정한다. 필드명은 다음과 같다.
cpu r b w swap free re mf pio fr de sr in sy cs
[max][-min] 그래프의 최대값과 최소값을 지정한다.
title 그래프의 제목을 지정한다.

  • -G and -c option 에 대한 자세한 설명
  • # gvmstat -c gvm.conf vmstat.log -c gvm.conf 옵션은 구성파일 gvm.conf를 지정한다.

    구성파일의 형식은 다음과 같으며, 한 라인에 하나의 필드를 정의한다.

    fn[:[[max][-min]][:title]] 구성파일에는 각 그래프의 최대값과 최소값과 그래프 제목을 지정할 수 있다. 공백 라인과 '#' 문자로 시작하는 라인은 스킵된다.

    fn 필드명을 지정한다. 필드명은 다음과 같다.
    cpu r b w swap free re mf pio fr de sr in sy cs
    [max][-min] 그래프의 최대값과 최소값을 지정한다.
    title 그래프의 제목을 지정한다. 제목에 "."을 지정하면 그래프의 제목을 표시하지 않는다.

  • -G and -c option 에 대한 자세한 설명
  • 다음은 구성파일에 대한 예제이다.
    
    pio::PIO - Page In/Out
    pio:1000
    pio:1000-500
    pio:-0
    pio:1000-500: Page In/Out
    # gvmstat -C 00ffff:: vmstat.log

    # gvmstat -C :ff00ff:00cc00 vmstat.log

    -C 00ffff:: 옵션은 그래프의 배경 색으로 RGB #00ffff를 지정한다. 배경 색에는 transparent를 지정할 수 있다. 이 경우 그래프의 배경 색은 투명하게 된다.

    -C :ff00ff:00cc00 옵션은 그래프의 선의 색을 RGB #ff00ff와 #00cc00으로 지정한다.

    # gvmstat -W vmstat.log -W 옵션은 HTML 페이지를 만든다. -o옵션을 사용하지 않으면, 디폴트로 "vmstat.html" 파일이 생성된다. 이 HTML 파일에는 각 필드에 대한 최대 값이 하단에 정리되어 있다.
    -, 옵션을 지정하면 그래프의 Y축 숫자에 3자리 마다 콤마를 추가한다.
    -0 옵션은 그래프의 시작값(Y축)을 0부터 시작한다. 디폴트로 그래프의 시작값은 데이타의 최소값과 최대값에 따라 결정된다.
    -b 옵션은 츨력되는 이미지에 외곽선을 그린다.
    -o outfile 옵션은 출력될 그래프의 파일명을 지정한다. 디폴트는 "vmstat"이다.
    실제 출력될 파일명에는 ".gif" 가 추가된다. 따라서 디폴트로 생성될 파일명은 "vmstat.gif" 가 된다.
    -D directory 옵션은 출력될 그래프를 만들 디렉토리명을 지정한다. 디폴트는 "."이다. 지정한 디렉토리가 없으면 새로 만들어 준다. 단 최하단의 디렉토리만 만든다.
    -l n 옵션은 출력될 그래프에 n 간격의 데이타에 회색 점선을 그린다.
    n이 0이고 -i 옵션과 함께 사용하면 10 분 간격으로 회색 점선을 그린다.
    -L toplabel 옵션을 사용하여, 그림의 상단에 배경색을 회색으로 하는 글자를 표시할 수 있다.
    -m 옵션은 선택된 각 필드에 대한 최대 값을 출력한다.
    -P 옵션은 각각의 그래프의 우측에 표시될 최대값과 최소값을 다음과 같은 형식으로 표준출력으로 출력한다.

    fn:max-min

    이때 그래프는 만들지 않는다. 표준출력으로 출력되는 값을 리다이렉트(redirect)하여 파일로 저장하면, -c 옵션에 구성파일로 사용할 수 있다.
    vmstat 명령어로 여러 개의 파일을 만들었을 경우에 각각에 대하여 그래프를 그리면, 그래프의 최대값과 최소값은 수집된 데이타에 의해 자동으로 의해 결정된다. 만일 3개의 파일이 있다고 가정하면, 각각의 파일들이 최대값과 최소값이 다를 수 있다. 이 경우 3개의 데이타를 그래프 상에서 비교할 때, 최대값과 최소값이 다르기 때문에 비교하기가 어려울 수 있다.
    이러한 경우, -P 옵션을 사용하여 각각 수집된 데이타 파일에 대하여 최대값 및 최소값을 구해서 공통된 최대값과 최소값을 구성파일로 만들어 -c 옵션에 구성파일로 지정하여 다시 3개의 파일에 대하여 그래프를 그리면 공통된 최대값과 최소값을 가지는 3개의 그래프 파일을 만들 수 있다.

    다음은 -P 옵션을 사용한 결과 화면이다.
    
    
    # gvmstat -P vmstat.log
    cpu:100-0
    r:10-0
    b:10-0
    w:10-0
    swap:272800-272500
    free:12500-11600
    re:50-0
    mf:600-0
    pio:200-0
    fr:50-0
    de:50-0
    sr:50-0
    in:500-200
    sy:1000-0
    cs:1000-0
    

    -P 옵션의 결과값을 저장한 파일은 adjmaxmin 명령어에 의해 가공되어 구성파일로 사용될 수 있다.

    -p 옵션은 "# vmstat -p" 명령어로 수집한 데이타에 대하여 그래프를 그린다.
    -S skiplist
    -S 옵션을 사용하여 데이타로 사용되지 않는 입력라인을 제거할 수 있다. file속에 있는 내용 중에 데이타가 아닌 라인이 있을 경우, -S 옵션을 사용하여, 그 라인에서 시작하는 문자열을 지정하여 스킵할 수 있다. 스킵하고 싶은 문자열이 여러 개가 있을 경우에 콤마(,)로 구분한다. 지정한 문자열과 입력 데이타 라인과 비교하여, 일치하면 그 라인을 스킵한다. 입력 라인에서 시작 부분의 whitespace (공백 또는 탭)는 비교되지 않는다.

    Solars 11 버전의 vmstat 명령어에는 -T 옵션을 사용하여 시간 정보를 출력할 수 있는데, vmstat 명령어에 -T 옵션을 사용하여 데이타를 수집했다면, -S 옵션을 사용하여 그 정보를 제거하여야 한다.

    -V -V 옵션을 지정하면, 명령어의 버전 정보를 보여준다.
    -v 옵션은 그래프를 만들지 않고 데이타 파일에 있는 값을 출력한다.
    -y 옵션은 -c config 옵션과 함께 사용될 수 있다. 이 옵션을 지정하면 config 파일에 알 수 없는 필드명이 있을 때, 프로세스를 종료하지 않고 그 필드명을 스킵한다.