ex)
1260319443 31852216863 19823135102
1260319443 109 218 109 218
1260319155 1 1 1 1
1260318900 552 46 642 54
1260318600 1663 135 1849 150
1260318300 1106 94 1849 150
1260318000 888 83 996 86
1260317700 1360 107 1441 111
[첫번째 라인]
[timestamp],[incoming bytes counter],[outgoing bytes counter]
[2번재 라인부터는]
[timestamp],
[average incoming transfer rate in bps],[average outgoing transfer rate in bps],[maximum incoming rate in bps],[maximum outgoing rate in bps for current interval]
* Timestamp 변환 방법
엑셀 =(x+y)/86400+DATE(1970,1,1)
PERL -> perl -e 'print scalar localtime(x),"\n"'
x: timestamp
y: the offset in seconds from UTC (우리나라 9시간)
추가설명 (http://www.kawada.kr/?mid=IT&category=2297&document_srl=1869)
The first Line
first line 은 세개의 수자를 가진다.
A. (1st column)
MRTG가 가장 최근에 실행된 timestamp를 나타낸다. timestamp는 unix time으로써 1970년 1월1일부터 초단위로 계산된 시간을 말한다.
B. (2nd column)
'incoming bytes counter'값. 32bit counter인 경우 'ifInOctets'를 통해서 가져온 값.
C. (3rd column)
'outgoing bytes counter' 값. 32bit counter인 경우 'ifOutOctets'를 통해서 가져온 값.
The rest of the File
두번째 줄부터는 5개의 column을 가지는데 세부적으로 살펴보면 다음과 같다.
A. (1st column)
앞에서 설명한 Unix timestamp로써 줄 사이가 일정한 간격으로 증가함을 알 수 있다. 처음에는 5분 간격이고 거의 끝부분에 가면 줄 사이가 하루임을 알 수 있다.
EXCEL에서 다음 공식을 이용하면 현재 우리가 사용하는 시간으로 변경할 수 있다.
=(x+y)/86400+DATE(1970,1,1)아니면 perl을 이용해서 구할 수 있다.
perl -e 'print scalar localtime(x),"\n"'여기서 x는 unix timestamp를 의미하고, y는 경과된 초를 의미한다. 그럼 x에 300을 y에 5를 넣고 결과를 알아보도록 하자. =(300+5)/86400+DATE(1970,1,1)이 되어서 이를 엑섹의 셀서식에서 'yyyy"-"m"-"d h:mm:ss;@'로 변경하면, '1970-1-1 0:05:05'과 같이 됨을 알 수 있다.다른 예로 가장 최근의 log값에서 값을 가져와서 계산해보자.x=1000049400, y=0 일 때 결과는 '2001-9-9 15:30:00' 이 된다.
B. (2nd column)
평균 입력 전달된 비율로써 Byte/sec 단위이다. 이 값은 현재 라인의 값과 이전 라인의 값 사이의 평균값에 해당한다.
C. (3rd column)
평균 출력 전달된 비율로써 Byte/sec 단위이다. 계산은 위와 동일하다.
D. (4th column)
최대 입력 전달된 비율로써 Byte/sec 단위이다. 이 값은 현재의 간격에서 발생되어 갱신된 값들에서 계산된다. 만일 현재의 간격이 1시간이고, 갱신이 매 5분마다 발생했다면, 해당되는 값은 1시간 중에서 5분마다 계산된 값 중에서 가장 큰 값이 해당된다.
E. (5th column)
최대 출력 전달된 비율로써 Byte/sec 단위이다. 계산은 위와 동일하다.