用MRTG监控内存使用率
利用MRTG你可以绘制网络流量图,你还可以用它来收集其它网络信息,例如监视你系统的交换空间和内存使用率。MRTG的用途不止可以用来绘制网络流量。如果看看MRTG之友网站页面,你会发现很多连接到不同脚本和工具的链接,它们都可以把各种信息集中到MRTG图表上来。
在本文里,我们将看看如何监控本地系统在一段时间内的交换空间和内存使用率状况。这里的前提是假设MRTG已经配置好了,或者你知道如何配置MRTG(配置方法见先前的提示)。
***步是创建脚本,这非常简单。将下面的内容保存为/usr/local/bin/memstat.sh:
- #!/bin/sh
- /usr/bin/free -b | /bin/awk '
- NR==2 {ramUsed = }
- NR==4 {swapUsed = }
- END { print swapUsed " " ramUsed " 0 0" }'
输出的结果对于人来说没有太大意思:
- # /usr/local/bin/memstat.sh
- 0
- 1548009472
- 0
- 0
但是对于MRTG,如果配置得当,这个结果就会非常有意思。把下面的代码段加到/etc/mrtg.cfg里。在理想的状况下,MRTG应该每5分钟进行一次精确抽样。
- Target[localmem]: `/usr/local/bin/memstat.sh`
- Title[localmem]: Mem and Swap Usage [surtr]
- PageTop[localmem]:
- MaxBytes[localmem]: 100000000000
- ShortLegend[localmem]: B
- YLegend[localmem]: Memory
- LegendI[localmem]: Swap
- LegendO[localmem]: Mem
- Legend1[localmem]: Swap
- Legend2[localmem]: Mem
- Options[localmem]: gauge,growright,nopercent
- kMG[localmem]: k,M,G,T,P,X
- Colours[localmem]: RED#bb0000,BLUE#1000ff,GREEN#006600,VIOLET#ff00ff
上面这段代码告诉MRTG要执行/usr/local/bin/memstat.sh脚本,将它提供的用作输出的数字作为自己的输入,然后被用来创建一个典型的MRTG数据图表。这会对一段时间内内存和交换空间使用率进行抽样。MRTG能够创建年度、月度、每周和每天的统计图表。
利用相同的技巧,你可以对CPU使用率、磁盘使用率、电子邮件的统计、Web流量和更多的内容进行类似的数据分析。
【编辑推荐】