처음으로

MRTG의 cfg파일에는 여러 가지 포맷이 설정되어 있다.
반드시 들어가야하는 포맷이 있고 다양한 기능구현을 위한 포맷등이 있다.
여기서 설명하는 것은 cfg파일내에 있는 Options들의 설명이며 다양한 네트웍장비의 자원분석을 위해 cfg파일을 만드는데 많은 도움이 될 것이다.
cfg파일포맷에 대한 설명을 MRTG 2.8.9버전으로 설명되었음을 참고바란다.

Multi Router Traffic Grapher -- Configuration File Format

This file is for use with MRTG 2.8.9
Note:

  • Keyword들의 앞에 공백문자가 있어서는 안된다. 즉, 반드시 첫컬럼부터 시작이 되어야한다.
  • Lines which follow a keyword line which do start with a blank are appended to the keyword line
  • 공백라인은 무시된다.
  • #으로 시작되는 행은 주석처리된다.

Global Configuration

WorkDir

mrtg실행결과 생성되는 웹페이지나 로그파일들이 생성될 위치를 지정한다.

, MRTG실행 결과후에 생성되는 웹페이지구성파일들(*.html, *.png, *.log, *.old)이 생성될 위치이다.

mrtg를 실행하기 전에 여기서 지정된 디렉토리가 반드시 존재해야한다.

만약 존재하지 않는다면 mrtg실행시 에러가 발생하게된다.

따라서 mrtg를 실행하기전에 반드시 이 디렉토리경로를 생성해줘야한다.

그리고 이 디렉토리경로는 웹데몬(대부분 nobody)이 읽을 수 있는 퍼미션(permission)을 가져야한다.

실행이 정상적으로 되었다면 후에 결과페이지를 볼 경우에 이 페이지를 로딩하여 보게된다.

:

WorkDir: /home/mrtg/www/

Optional Global Parameters


Refresh

mrtg의 실행결과를 웹브라우즈로 확인해 볼 때에 몇초에 한번씩 재로딩이 되도록 할 것인가를 설정한 것이다.

기본값은 300으로 5분에 한번씩 웹브라우즈의 결과를 재로딩하게 된다.

이 값을 너무 작게 주면 웹서버에 부하를 가져올 수 있으므로 적당한 값으로 조절하여 사용한다.

Example:

Refresh: 600

Interval

mrtg실행주기를 설정한다.

설정하지 않는다면 기본값으로 5분에 한번 실행이된다.

mrtg가 실행되면 두가지 작업을 하게된다.

첫 번째는 WorkDir에서 설정한 디렉토리위치에 HTML웹페이지를 생성하게되며,

두 번째는 생성된 HTML웹페이지내에 META 헤드를 생성하게된다.

Example:

Interval: 10

WriteExpires

yes로 설정하면 html과 gif파일에 대한 Expiration 태그를 포함한 *.meta 파일을 생성하게된다.

meta파일은 html이 생성되는 동일한 디렉토리에 생성되며 이설정이 올바르게 작동하기위해서는 httpd.conf 파일이나 .htaccess파일내에 MetaDir 과 MetaFiles를 설정해야한다.

아파이 1.2이상의 버전을 사용할 경우에는 이설정과 동일한 효과를 얻기위해 mod_expire를 사용할 수 있다.

Example:

WriteExpires: Yes

IconDir

mrtg에서 사용하는 아이콘파일들의 위치설정

mrtg에서 소스에 들어있는 아이콘을 사용하지 않으려면 동일한 이름을 가진 다른이미지를 만들어서 여기서 지정한 경로에 삽입하면 다른이미지의 사용또한 얼마든지 사용가능하다.

실무 프로젝트시에는 이런 이미지까지 세밀하게 신경을 써서 제작을 하게된다.

Example:

IconDir: /mrtgicons/

LoadMIBs

MIB 파일들이 존재하는 위치를 지정한다.

이 설정으로 MIB값을 사용했을 경우에는 캐시파일이 WorkDir에 지정한 경로(웹페이지가 생성되는 위치)에 생성이 된다.

Example:

LoadMIBs: /dept/net/mibs/netapp.mib,/usr/local/lib/ft100m.mib

Language

mrtg 실행결과 생성되는 웹페이지에서 사용하게될 언어를 지정한다.

MRTG문서를 보면 지원가능한 언어로 danish, french, english, dutch, brazilian, russian, spanish, greek, italian등이 지원되는 것으로 되어있지만 위의 예처럼 korean으로 설정하면 한국어로 결과페이지를 볼 수가 있다.

Example:

Language: danish

UseRRDTool

Setting UseRRDTool to Yes in your mrtg.cfg file enables rrdtool mode. In rrdtool mode, mrtg relies on rrdtool to do its logging. Graphs and html pages will be generated on the fly by the 14all.cgi which can be found in the contrib section together with a short readme ... This feature has been contributed by Rainer.Bawidamann@informatik.uni-ulm.de. Please check his website for more information: http://www.uni-ulm.de/~rbawidam/mrtg-rrd/

Example:

 UseRRDTool: Yes

Configuration for each Target you want to monitor


Target

cfg내의 키워드중에서 가장 중요하다고 할 수 있는 것이다.

한마디로 Target 키워드의 기능은 MRTG가 어떤 자원에 대한 모니터를 할 것인가(구체적인 객체지정)를 설정한다고 할 수 있다.

또한 Target 키워드는 cfg파일내의 키워드중 가장 다양한 설정이 가능한 것이기도 하다.

Target바로 다음에 따라오는 대문자("[ ]")내의 문자는 mrtg실행결과 WorDir에서 지정한 위치에 생성되는 html 파일과 log 파일들, 그리고 png파일들(또는 gif파일들)의 파일명으로 사용이 된다.

이 설정이 어려우신 분들은 "cfgmaker"툴을 사용하여 생성할 수도 있음을 기억해주기 바란다.

 

먼저 Target설정의 가장 일반적인 설정 예를 하나 들어보도록 하자.

Target[superuser]: 2:public@superuser.co.kr

 

[superuser]

대부분 모니터링대상 장비의 이름으로 지정한다.

, 다른 장비들(내의 포트들)을 구분하기위한 방법이며 mrtg실행결과 생성되는 웹페이지의 파일들이 이 이름으로 생성이된다.

, superuser.html, superuser.png, superuser.log, superuser.old등과 같이 생성이 되며 당연히 웹브라우즈로 결과를 볼 때에도 이 파일로 로딩이 된다.

, http://도메인/mrtg결과디렉토리/superuser.html로 웹브라우즈에서 로딩된다는 의미이다.

 

2

대상장비(스위치, 라우터등)의 포트번호이다.

즉 라우터나 스위치에서는 하나의 포터만이 있는 것이 아니라 여러개의 포트(4, 8, 16, 24등 다양함)들이 존재하며 MRTG에서는 주로 이 포트들을 대상으로 모니터링을 하게된다.

여기서 public 앞에 붙은 번호는 라우터나 스위치의 모니터링대상 포트이다.

 

public

이것은 community name이다. 이것은 SNMP에서 기본적인 보안을 위한 패스워드라고 볼 수도 있다.

community name이란 SNMP의 일반적인 보안을 위해서 사용하는 인증암호와 같은 것으로 기본값으로 public을 갖는다.

하지만 보안을 위해서는 다른 값으로 설정할 것을 권한다.

대부분 MRTG의 실행에서 에러가 발생하는 원인이 이 community name이 정확하지 않아서 발생하는 에러이다.

 

superuser.co.kr

이것은 대상장비의 도메인이거나 ip address이면 된다.

, 모니터링하고자 하는 대상을 정확히 구분하기 위하여 대상장비의 ip 또는 도메인을 정확히 입력하면 된다.

만약 위의 Target부분을 ip address로 표현해 본다면 다음과 같이 표시할 수 있다.

Target[superuser]: 2:public@192.168.0.5

만약, superuser.co.kr이란 대상장비의 정보가 /etc/hosts 파일에 superuser라는 이름으로 들어있다면 Target부분은 다음과 같이 표시할 수도 있다.

Target[superuser]: 2:public@superuser

  

트래픽모니터링이 아니라 대상장비의 다양한자원들(DISK, MEMORY, CPU사용량)의 사용량을 모니터링한다면 Target부분이 좀더 복잡해질 수 있다.

하지만 이 장에서는 단지 대상장비의 트래픽 모니터링만을 대상으로 하므로 보기에 그렇게 어렵지가 않다.

물론, 이책에서는 네트웍장비들의 트래픽뿐아니라 다양한 자원들(CPU, MEMORY, DISK등)의 모니터링을 하는 방법을 함께 설명하고 있다.

그러기 위해서 SNMP와 MIB값에 대한 정확한 이해와 사용법의 이해가 따라야 할 것이다.

 

 

OID값을 직업 입력하여 사용하는 예를 하나 들어보자.

Target[superuser]: 1.3.6.1.2.1.2.2.1.14.1&1.3.6.1.2.1.2.2.1.20.1:public@superuser.co.kr

위의 설정예를 보면 symbolic 값이 아니라 OID값을 직접 입력하여 사용하였다.

사용형식은 다음과 같다.

'OID_1&OID_2:community@router'

위의 설정은 대상장비의 온도와 습도 모니터링하기위한 그래프로 그려내기 위한 설정이다.

 

 

·         MRTG knows a number of symbolical SNMP variable names. See the file mibhelp.txt for a list of known names. One example are the ifInErrors and ifOutErrors. This means you can specify the above as:

Example:

 Target[ezwf]: ifInErrors.1&ifOutErrors.1:public@myrouter

·         Sometimes SNMP interface index can change, like when new interfaces are added or removed. This can cause all Target entries in your config file to become wrong by offset, causing MRTG to graphs wrong instances etc. MRTG supports IP address instead of ifindex in target definition. Then MRTG will query snmp device and try to map IP address to current ifindex, You can use IP address in every type of target definition, by adding IP address of the numbered interface after OID and separation char '/'

Make sure that given IP address is used on your same target router, your same target router, especially when graphing two different OIDs and/or interface split by '&' delimiter.

Example:

 Target[ezwf]: /1.2.3.4:public@wellfleet-fddi.ethz.ch
 Target[ezci]: -/1.2.3.4:public@ezci-ether.ethz.ch
 Target[ezwf]: 1.3.6.1.2.1.2.2.1.14/1.2.3.4&/1.2.3.4:public@myrouter
 Target[ezwf]: ifInErrors/1.2.3.4&ifOutErrors/1.2.3.4:public@myrouter

·         When the SNMP interface index changes, you can key that interface by its 'Physical Address', sometimes called a 'hard address', which is the SNMP variable 'ifPhysAddress'. Internally, MRTG matches the Physical Address from the *.cfg file to its current index, and then uses that index for the rest of the session.

You can use the Physical Address in every type of target definition, by adding the Physical Address after the OID and separation char '!' (analogous to the IP address option). The Physical address is specified as either '-' delimited octets, such as ``0a-0-f1-5-23-18'' (omit the double quotes) or a string with exactly two chars per octet such as ``0a00f1052318''. Note that there are 6 octets for for ethernet hard addresses but other types of network connections may differ.

There is a utility 'cfgmaker_phys' that can be used to convert every interface index or IP addresses to the new Physical Address format, ``cfgmaker_phys old.cfg > new.cfg'' or it can be combined with 'cfgmaker' as follows ``cfgmaker public@1.2.3.4 | cfgmaker_phys > new.cfg''. If however you only want to convert some - not all - of the interfaces, this must be done manually.

Example:

 Target[ezwf]: !0a-0b-0c-0d:public@wellfleet-fddi.ethz.ch
 Target[ezci]: -!0-f-bb-05-71-22:public@ezci-ether.ethz.ch
 Target[ezwf]: 1.3.6.1.2.1.2.2.1.14!0a-00-10-23-44-51&!0a-00-10-23-44-51:public@myrouter
 Target[ezwf]: ifInErrors!0a-00-10-23-44-51&ifOutErrors!0a-00-10-23-44-51:public@myrouter

·         In all places where ``community@router'' is accepted, you can add additional parameters for the SNMP communication using colon-separated suffixes. The full syntax is as follows:

·          community@router[:port[:timeout[:retries[:backoff]]]]

where the meaning of each parameter is as follows:

port

the UDP port under which to contact the SNMP agent (default: 161)

timeout

initial timeout for SNMP queries, in seconds (default: 2.0)

retries

number of times a timed-out request will be retried (default: 5)

backoff

factor by which the timeout is multiplied on every retry (default: 1.0).

A value that equals the default value can be omitted. Trailing colons can be omitted, too.

Example:

  Target[ezci]: 1:public@ezci-ether.ethz.ch:9161::4

This would refer to the input/output octet counters for the interface with ifIndex 1 on ezci-ether.ethz.ch, as known by the SNMP agent listening on UDP port 9161. The standard initial timeout (2.0 seconds) is used, but the number of retries is set to four. The backoff value is the default.

·         if you want to monitor something which does not provide data via snmp you can use some external program to do the data gathering.

The external command must return 4 lines of output:

Line 1

current state of the first variable, normally 'incoming bytes count'

Line 2

current state of the second variable, normally 'outgoing bytes count'

Line 3

string (in any human readable format), telling the uptime of the target.

Line 4

string, telling the name of the target.

Depending on the type of data your script returns you might want to use the 'gauge' or 'absolute' arguments for the Options keyword.

Example:

 Target[ezwf]: `/usr/local/bin/df2mrtg /dev/dsk/c0t2d0s0`

Note the use of the backticks (`), not apostrophes (') around the command.

·         You can also use several statements in a mathematical expression. This could be used to aggregate both B channels in an ISDN connection or multiple T1s that are aggregated into a single channel for greater bandwidth. Note the whitespace arround the target definitions.

Example:

 Target[ezwf]: 2:public@wellfleetA + 1:public@wellfleetA
              * 4:public@ciscoF

RouterUptime

이설정은 동일한 라우터를 사용하여 동일한 분석을 여러개 동시에 분석할 경우에 community name과 address를 여러번 반복하여 사용하지 않도록 하기위한 설정이다.

In cases where you calculate the used bandwidth from several interfaces you normaly don't get the router uptime and router name displayed on the web page.

If these interfaces are on the same router and the uptime and name should be displayed nevertheless you have to specify its community and address again with the RouterUptime keyword.

Example:

 Target[kacisco.comp.edu]: 1:public@194.64.66.250 + 2:public@194.64.66.250
 RouterUptime[kacisco.comp.edu]: public@194.64.66.250

 


MaxBytes

설정한 변수들이 가질 수 있는 최대값으로 만약 대상장비가 라우터라면 이 장비의 인터페이스(Interface)가 전송할 수 있는 최대 bps(bytes per second)가 된다.

만약 이 수치이상의 값이 리턴되어 오면 무시해 버리게 된다.

MaxBytes는 Y측 그래프와 관계가 있음도 주지하기 바란다.

참고로, 네트웍환경에 따른 수치는 다음과 같다.

  • T1 = 193000
  • 56K = 7000
  • Ethernet = 1250000 (10MB NIC, 100MB인 경우는 12500000가 됨)

MaxBytes와 관련된 Option은 AbsMax와  MaxBytes1, MaxBytes2등의 사용법과 함께 참조하면 좀더 다양한 구현을 할 수가 있다.

만약 모니터링하는 변수의 두값의 MaxBytes값이 다를 경우에는 MaxBytes 대신에 MaxBytes1 그리고 MaxBytes2로 지정할 수 있다.

Example:

MaxBytes[ezwf]: 1250000

MaxBytes1

두변수의 최대값이 다를 경우에 설정하는 첫 번째 변수의 최대값설정.

 


MaxBytes2

두변수의 최대값이 다를 경우에 설정하는 두번째 변수의 최대값설정.


Title

WorkDir에 지정된 곳에 mrtg실행결과 생성되는 웹페이지파일의 <title> 제목</title> 부분에 들어가는 "제목"이다.

, 웹브라우즈의 맨위에 나타나는 제목부분에 나타나는 부분이란 의미이다.

주의 할 것은 바로 뒤에 설명되는 PageTop에서 맨 처음나타나는 부분과 Title부분을 혼돈해서는 안된다.

PageTop은 단지 웹페이지의 최상단에 나타낼 내용임을 주지하기 바란다.

실행된 결과를 웹브라우즈로 확인했을 경우에 웹브라우즈의 최상단 바(bar)에 나타나는 제목으로 확인하거나 "소스보기"등으로 확인이 가능하다.

Example:

 Title[ezwf]: Traffic Analysis for Our Nice Company

PageTop

WorkDir에 지정된 위치의 웹파일(html파일)의 최상단에 출력될 내용이다.

몇 개의 라인으로 구성할 수도 있으며 뒤따르는 모든 라인또한 최상단에 이어서 출력되며, 라인과 라인을 구분할 때에는 "\n"을 사용하면 된다.

Example:

 PageTop[ezwf]: <H1>Traffic Analysis for ETZ C95.1</H1>
   Our Campus Backbone runs over an FDDI line\n
   with a maximum transfer rate of 12.5 megabytes per
   Second.

Optional Target Configuration Tags


AddHead

PageTop과 같이 mrtg의 결과로 생성되는 웹페이지 파일에 삽입이 되는 것으로서 </titel> 태그와 </head>태그 사이에 들어가는 내용이다.

Example:

 AddHead[ezwf]: <link rev="made" href="mailto:mrtg@blabla.edu";>

AbsMax

MaxBytes값에서 지정한 수치이상의 트래픽을 모니터링하고자할 때 사용하는 keyword이다.

예를 든다면 프레임릴레이(Frame Relay)의 트래픽을 모니터링하고자 할 때 도달할 수 없는 절대최대값을 주기위해 사용할 수 있다.

We need to know this in order to sort out unrealistic values returned by the routers. If you do not set AbsMax, rateup will ignore values higher than MaxBytes.

Example:

AbsMax[ezwf]: 2500000

Unscaled

4개의 그래프 즉, day, week, month, year 그래프에서 Y축그래프가 MaxBytes에서 지정한 수치에 미치지 못하는 부분을 축약(생략)하여 표현하기위한 설정이다.

, 불필요한 부분을 보지 않기위한 설정이라는 것을 의미한다.

설정할 때에는 day, week, month, year의 첫 영문자만으로 표시한다.

, dw 또는 ymwd와 같이...

Example:

 Unscaled[ezwf]: ym

WithPeak

MRTG는 원래 대상장비의 모니터링된 송수신값의 평균값만으로 그래프를 그리게 되는데 이 옵션을 사용하게되면 daily, weekly, monthly, yearly의 그래프에서 5분주기의 평균값뿐만아니라 최대전송량까지도 함께 표시가된다.

위의 예처럼 일(day),주(week),월(month),년(year) 4가지의 그래프중에서 원하는 그래프의 첫문자로 지정하면 된다.

Examples:

WithPeak[ezwf]: ym

Suppress

기본적으로 mrtg는 4개의 일(day),주(week),월(month),년(year) 그래프를 그린다.

하지만 불필요한 그래프가 있을 경우에는 여기서 지정하면된다.

, 여기서 지정된 그래프는 웹페이지에 나타나지 않는다.

Example:

 Suppress[ezwf]: y

Directory

기본적으로 mrtg는 WorkDir에서 지정한 위치에 모든파일(html, gif, log등)을 생성하게된다.

하지만 Directory 옵션을 사용하면 WorkDir에서 지정한 디렉토리아래에 Directory옵션에서 지정한 디렉에 결과파일들을 저장하게 된다.

예를 들면

WorkDir: /home/mrtg/www

Directory[superuser]: superuser

라고 설정이 되었다면 결과파일들은 /home/mrtg/www/superuser 아래에 저장이 될 것이다.

참고로 mrtg는 이 디렉토리를 생성하여 저장하지는 않는다. 따라서 mrtg가 실행되기전에 이 디렉토리는 생성이 되어있어야한다.


XSize and YSize

X축과 Y축의 크기를 픽셀단위로 지정한다.

mrtg에서 생성되는 결과 그래프는 X축과 Y축의 크기가 각각 400픽셀과 100픽셀이다.

하지만 그래프의 크기를 직접지정하여 생성하고자 한다면 이 옵션을 사용하여 지정하면 된다.

, X축의 크기는 20에서 600픽셀사이의 값까지만 허용되고, Y축의 크기는 20픽셀보다는 커야한다.

Example:

 XSize[ezwf]: 300
 YSize[ezwf]: 300

XZoom and YZoom

보다더 큰 그래프를 원할 경우에 사용하는 옵션이다.

아래의 예는 X축과 Y축의 크기를 각각 2배씩 크게 생성하게 된다.

Example:

 XZoom[ezwf]: 2.0
 YZoom[ezwf]: 2.0

XScale and YScale

X축의 크기와 Y축의 크기를 정확히 실제사이즈고 그리고자할 경우에 사용하는 옵션이다.

하지만 이 옵션을 사용하면 그래프의 모양이 이상하게 보일 수 있으므로 사용시에는 신중해야한다.

Example:

 XScale[ezwf]: 1.5
 YScale[ezwf]: 1.5

YTics and YTicsFactor

mrtg는 기본적으로 하나의 그래프에 4개의 라인까지 나타내는 것이 가능하다.

YTics는 이보다 많은 라인을 나타내고자할 때 사용하는 옵션이다.

그리고 YTicsFactor 옵션을 사용하면 이들의 YLegend에 사용된 값들을 조정할 수가 있다.

YTics의 기본값은 4이며, YTicsFactor의 기본값은 1.0이다.

예를 들어보자.

결과값의 범위가 0에서 700이며, 모두 8라인을 각각의 그래프에서 그리고자 하며 0, 1, 2, 3, 4, 5, 6, 7대신 0, 100, 200, 300, 400, 500, 600,. 700값을 사용하고자 한다면 YTics와 YTicsFactor를 다음과 같이 설정하면 된다.

YTics[superuser]: 7
YTicsFactor[superuser]: 0.01

Step

기본값인 5*60, 즉 300초(5분) 주기로 그려지는 그래프를 다른 주기로 변경하고자할 때 사용하는 옵션이다.

Example:

 Step[ezwf]: 60

Options

Options 키워드에서 설정가능한 옵션에는 다음과 같은 것들이 있다.

 

growright

이 옵션값을 사용하게되면 오른쪽가장자리부터 그래프가 그려지기 시작하여 왼쪽으로 갈수록 이전그래프가 되도록 한다.

기본적으로 MRTG는 왼쪽에서부터 오른쪽으로 그래프가 그려지게 되어있다.

, 왼쪽에서부터 새로운 그래프가 그려지며, 오른쪽으로 갈수록 예전 그래프라는 것이다.

 

bits

 

기본적으로 MRTG는 Byte for Second단위, bit 단위에 8을 곱한 단위, 즉 Byte단위를 사용하여 그래프를 그린다.

하지만 이 옵션값(bits)를 사용하면 8을 곱하지 않고 bit단위(bits per second)로 그래프를 그린다.

기본값은 byte단위임에 주의하자.

 

perminute

모니터링되는 모든 변수값들은 모두 60이 곱해져서 계산이 된다.

즉 초단위가 아니라 분단위를 사용한다는 것이다.

작은값일 경우에 좀더 정확한 그래프가 그려질 수 있다.

 

perhour

모니터링되는 모든 변수값들은 모두 3600이 곱해져서 계산이 된다.

즉 초단위가 아니라 시단위를 사용한다는 것이다.

작은값일 경우에 좀더 정확한 그래프가 그려질 수 있다.

 

noinfo

결과 웹페이지내에서 uptime과 device이름에 대한 정보를 나타내지 않는다.

 

nopercent

결과 그래프내에서 퍼센트표시를 표시하지 않도록 한다.

 

transparent

gif파일을 배경에 투명하게 생성한다.

 

integer

그래프하단에 나타내는 결과수치표를 콤마없는 정수로 표시한다.

 

dorelpercent

The relative percentage of IN-traffic to OUT-traffic is calculated and displayed in the graph as an additional line. Note: Only a fixed scale is available (from 0 to 100%). Therefore for IN-traffic greater than OUT-traffic also 100% is displayed. If you suspect that your IN-traffic is not always less than or equal to your OUT-traffic you are urged to not use this options. Note: If you use this option in combination with the Colours options, a fifth colour-name colour-value pair is required there.

gauge

Treat the values gathered from target as absolute and not as ever incrementing counters. This would be useful to monitor things like disk space, processor load, temperature, and the like ...

In the absence of 'gauge' and 'absolute' options, MRTG treats variable as a counter and calculates the difference between the current and the previous value and divides that by the elapsed time between the last two readings to get the value to be plotted.

absolute

This is for data sources which reset their value when they are read. This means that rateup does not havt to build the difference between this and the last value read from the data source. The value obtained is still divided by the elapsed time between the last two readings, which makes it different from the 'gauge' option. Useful for external data gatherers.

unknaszero

Log unknown data as zero instead of the default behaviour of repeating the last value seen. Be careful with this, often a flat line in the graph is much more obvious than a line at 0.

Example:

 Options[ezwf]: growright, bits

kilo

기본단위(kilo)에 곱해지는 수치를 변경하고자 할 경우에 사용한다.

, 일반적인 단위를 표시할 경우에는 1k = 1000 이라는 등식이 성립하지만 bit와 byte등에서의 1kByte, 1MB등으로 나타내려면 기본적으로 kilo단위에 곱하는 1000이라는 수치는 정확한 수치가 아니다.

따라서 KB, MB등에는 1024라는 단위를 적용해야 한다.

이럴 경우에 kilo라는 단위에 1024를 지정해주면 정확한 계산이 나올 수 있다.

, 1kB = 1024B, 1MB = 1024kB 이런 등식을 위해서 "kilo 1024"로 지정해 주는 것이다.

하지만 기본값은 1000임에 유의하자.

이는 MRTG가 네트웍의 트래픽만을 모니터링하는 유틸리티가 아니며, 다른값들 즉 CPU사용량 또는 온습도 모니터링등 다양한 자원모니터링에도 사용이 되기 때문이다.

Example:

 kilo[ezwf]: 1024

kMG

Change the default multiplier prefixes (,k,M,G,T,P). In the tag ShortLegend define only the basic units. Format: Comma seperated list of prefixed. Two consecutive commas or a comma at start or end of the line gives no prefix on this item. Note: If you do not want prefixes, then leave this line blank.

Example: velocity in nm/s (nanometers per second) displayed in nm/h.

 ShortLegend[ezwf]: m/min
 kMG[ezwf]: n,u,m,,k,M,G,T,P
 options[ezwf]: perhour

Colours

The Colours tag allows you to override the default colour scheme. Note: All 4 of the required colours must be specified here. The colour name ('Colourx' below) is the legend name displayed, while the RGB value is the real colour used for the display, both on the graph and in the html doc.

Format is: Colour1#RRGGBB,Colour2#RRGGBB,Colour3#RRGGBB,Colour4#RRGGBB

Important: If you use the dorelpercent options tag a fifth colour name colour value pair is required: Colour1#RRGGBB,Colour2#RRGGBB,Colour3#RRGGBB,Colour4#RRGGBB,Colour5#RRGGBB

Colour1

First variable (normally Input) on default graph

Colour2

Second variable (normally Output) on default graph

Colour3

Max first variable (input)

Colour4

Max second variable (output)

RRGGBB

2 digit hex values for Red, Green and Blue

Example:

 Colours[ezwf]: GREEN#00eb0c,BLUE#1000ff,DARK GREEN#006600,VIOLET#ff00ff

Background

이 옵션을 사용하면 mrtg실행결과 생성되는 결과 웹페이지의 배경색을 지정할 수 있다.

 

Example:

 Background[ezwf]: #a0a0a0a

YLegend, ShortLegend, Legend[1234]

mrtg 실행결과 생성되는 결과 웹페이지들에 대해 다음 키워드들을 사용함으로써 다양한 레이블(범례, Legend)을 사용할 수 있다.

 

YLegend

Y축 그래프에서 사용할 레이블을 지정한다.

레이블의 길이가 Y축의 길이보다 클 경우에는 생략되어 보이지 않을 수도 있다.

 

ShortLegend

결과로 생성되는 각각의 그래프 하단에 나타내는 최대값(Max), 평균값(Average), 현재값(Current)에 대한 문자단위(기본값 b/s)를 지정한다.

 

Legend[1234IO]

범례(레이블)에 대한 문자를 다르게 지정할 수 있다.

아래의 예를 보자.

 

  • YLegend[superuser]: Bits per Second
  • ShortLegend[superuser]: b/s
  • Legend1[superuser]: Incoming Traffic in Bits per Second
  • Legend2[superuser]: Outgoing Traffic in Bits per Second
  • Legend3[superuser]: Maximal 5 Minute Incoming Traffic
  • Legend4[superuser]: Maximal 5 Minute Outgoing Traffic
  • LegendI[superuser]: &nbsp;In:
  • LegendO[superuser]: &nbsp;Out:

만약 아래예와 같이 LegendI와 LegendO에 아무른 설정값도 설정되어 있지않다면

LegendO[superuser]:

결과 웹페이지에는 이에 대한 범례표시(레이블)가 나타나지 않는다.


Timezone

지역시간대를 지정한다.

Example:

Timezone[superuser]: GMT

Weekformat

By default, mrtg (actually rateup) uses the strftime(3) '%W' option to format week numbers in the monthly graphs. The exact semantics of this format option vary between systems. If you find that the week numbers are wrong, and your system's strftime(3) routine supports it, you can try another format option. The POSIX '%V' option seems to correspond to a widely used week numbering convention. The week format character should be specified as a single letter; either W, V, or U.

Example:

 Weekformat[ezwf]: V

Threshold Checking

Through its threshold checking functionality mrtg is able to detect threshold problems for the various targets and can call external scripts to handle those problems (send email or a page to an administrator).

Threshold checking is configured through the following parameters:


ThreshDir

If you want to be able to detect when a parameter is OK again (back within threshold), you must define this directory. Temporary files will be stored here between runnings to indicate which parameters had threshold problems on the previous running. (GLOBAL OPTION)


ThreshMinI

This is the minimum acceptable value for the Input (first) parameter. If the parameter falls below this value, the program specified in ThreshProgI will be run. (PER TARGET)


ThreshMaxI (PER TARGET)

This is the maximum acceptable value for the Input (first) parameter. If the parameter falls above this value, the program specified in ThreshProgI will be run.


ThreshProgI

This defines a program to be run if ThreshMinI or ThreshMaxI is broken. (It currently passes 3 arguments: the $router variable, the threshold value broken, and the current parameter value. This can be changed as required.)


ThreshProgOKI

This defines a program to be run if the parameter is currently OK (based on ThreshMinI and ThreshMaxI), but wasn't OK on the previous running -- based on the files found in ThreshDir.


ThreshMinO, ThreshMaxO, ThreshProgO, and ThreshProgOKO

They work the same as their *I counterparts, except on the Output (second) parameter.


Two very special Target names

cfg내의 문자수를 좀 줄이는 방법에 대해서 간단히 소개한다.

사실 cfg파일을 들여다 보면 각 행마다 동일한 target이름들이 "[" 와 "]" 사이에 있는 것을 볼 수 있다.

하지만 "^"문자를 한번 사용한 target문자이하에 사용하면 위에서 사용한 target과 동일한 이름으로 적용이 된다.

또한 "$"문자는 바로위의 설정을 계속 추가하여 적용할 수 있도록 한다.

 

예를 들어 다음예와 같이 PageTop의 설정값에서 "^"문자는 위에서 사용한 target을 그대로 사용하는 설정이고 "$"는 PageTop의 설정을 추가하여 계속이어가는 것이다.

 

이런 적용을 지정한 라인이하에서 부터는 적용되지 않게 하려면 다음과 같이 설정하지 않으면 된다.

 PageTop[^]:
 PageTop[$]:

 


And one more very special Target name

target이름으로 기본값의 target이름을 그대로 적용하고자할 때에는 "_"문자를 사용하면 된다.

"^"문자나 "$"문자를 사용하지 않은채 분명한 target이름이 주어져있지 않은 경우에 기본값이 사용된다.

예를 들면 다음과 같다.

 YSize[_]: 150
 Options[_]: growright,bits,nopercent
 WithPeak[_]: ymw
 Suppress[_]: y
 MaxBytes[_]: 1250000

target이름의 기본값 적용을 하지 않으려면 아래 예처럼 비어둔채로 두면 된다.

 

참고로 다음을 참조하십시오.

 Multi Router Traffic Grapher - Configuration File Format


 

 



Copyright(c) 2001, 수퍼유저코리아 All Rights Reserved.
서버구축(운용)상담 : e-mail : webmaster@superuser.co.kr