免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1882 | 回复: 1
打印 上一主题 下一主题

Cacti 获取 SNMP 发送的自定义信息绘图 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-01-11 15:03 |只看该作者 |倒序浏览
Cacti 获取 SNMP 发送的自定义信息绘图








本文以获取 squid 内存缓存命中率为例。
在 /etc/snmp/snmpd.conf 可以看到这样的样例:
# exec .1.3.6.1.4.1.2021.50 shelltest /bin/sh /tmp/shtest
可以使用自己编写的脚本,比如:
exec .1.3.6.1.4.1.2021.50 squidmemhits /usr/local/bin/squidmemhits.sh
vi /usr/local/bin/squidmemhits.sh
  1. 01.#!/bin/sh

  2. 02.PATH=$PATH:/usr/local/squid/bin

  3. 03.export PATH

  4. 04.squidclient -t 1 -h localhost -p 3128 mgr:info | grep "Memory hits" | cut -d "%" -f 2 | awk '{print $5}'

  5. 05.squidclient -t 1 -h localhost -p 3128 mgr:info | grep "Memory hits" | cut -d "%" -f 3 | awk '{print $3}'
  6. 复制代码
复制代码
/etc/init.d/snmpd restart

检查一下能否读取到数据:
  1. snmpwalk -v 2c 192.168.0.200 -c public .1.3.6.1.4.1.2021.50
  2. 01.UCD-SNMP-MIB::ucdavis.50.1.1 = INTEGER: 1

  3. 02.UCD-SNMP-MIB::ucdavis.50.2.1 = STRING: "squidmemhits"

  4. 03.UCD-SNMP-MIB::ucdavis.50.3.1 = STRING: "/usr/local/bin/squidmemhits.sh"

  5. 04.UCD-SNMP-MIB::ucdavis.50.100.1 = INTEGER: 0

  6. 05.UCD-SNMP-MIB::ucdavis.50.101.1 = STRING: "86.0"

  7. 06.UCD-SNMP-MIB::ucdavis.50.101.2 = STRING: "86.6"

  8. 07.UCD-SNMP-MIB::ucdavis.50.102.1 = INTEGER: 0

  9. 08.UCD-SNMP-MIB::ucdavis.50.103.1 = ""
  10. 复制代码
复制代码
其中
UCD-SNMP-MIB::ucdavis.50.101.1 = STRING: "86.0"
UCD-SNMP-MIB::ucdavis.50.101.2 = STRING: "86.6"
这两行就是所需要的。
  1. 01.snmpwalk -v 1 192.168.0.200 -c public .1.3.6.1.4.1.2021.50.101.1

  2. 02.UCD-SNMP-MIB::ucdavis.50.101.1 = STRING: "86.0"

  3. 03.snmpwalk -v 1 192.168.0.200 -c public .1.3.6.1.4.1.2021.50.101.2

  4. 04.UCD-SNMP-MIB::ucdavis.50.101.2 = STRING: "86.6"
  5. 复制代码
复制代码
能采集到数据,就可以配置 Cacti 来接收了。
先创建数据模板:
  1. 01.

  2. 02.console -> Templates -> Data Templates -> Add ->

  3. 03.Data Templates Name: ucd/net - Squid - Memory Hits - 5 Minute

  4. 04.Data Source Name: |host_description| - Squid - Memory Hits - 5 Minute

  5. 05.Data Input Method: GET SNMP Data

  6. 06.Associated RRA's: remove Hourly (1 Minute Average)

  7. 07.Internal Data Source Name: squid_memhits_5min

  8. 08.create ->

  9. 09.OID: .1.3.6.1.4.1.2021.50.101.1

  10. 10.Save
复制代码
复制代码同样再创建一个 Squid - Memory Hits - 60 Minute 的数据模板。
再创建图形模板:
  1. 01.console -> Templates -> Graph Templates -> Add ->

  2. 02.Name: ucd/net - Squid Memory Hits

  3. 03.Title: |host_description| - Squid Memory Hits

  4. 04.Vertical Label: percent

  5. 05.create

  6. 06.

  7. 07.Graph Template Items -> Add

  8. 08.Data Source: ucd/net - Squid - Memory Hits - 5 Minute - (squid_memhits_5min)

  9. 09.Color: FFC73B

  10. 10.Graph Item Type: AREA

  11. 11.Consolidation Function: AVERAGE

  12. 12.Text Format: 5 Minute

  13. 13.create ->

  14. 14.Graph Template Items -> Add

  15. 15.Graph Item Type: GPRINT

  16. 16.Consolidation Function: LAST

  17. 17.Text Format: Current:

  18. 18.Insert Hard Return

  19. 19.create ->

  20. 20.

  21. 21.Graph Template Items -> Add

  22. 22.Data Source: ucd/net - Squid - Memory Hits - 60 Minute - (squid_memhits_60min)

  23. 23.Color: FF0000

  24. 24.Graph Item Type: LINE1

  25. 25.Consolidation Function: AVERAGE

  26. 26.Text Format: 60 Minute

  27. 27.create ->

  28. 28.Graph Template Items -> Add

  29. 29.Graph Item Type: GPRINT

  30. 30.Consolidation Function: LAST

  31. 31.Text Format: Current:

  32. 32.Insert Hard Return

  33. 33.create -> Save
复制代码
复制代码然后就可以选择主机,添加图形了。

论坛徽章:
0
2 [报告]
发表于 2012-01-12 10:09 |只看该作者
谢谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP