linux下自定义pid实现任意数据采集

当你需要采集特殊的数据,而不满足于现有的你所知的数据模版时,自定义oid将是你必须而且非常好的解决方式。

oid是snmp服务器为每条系统信息提供的唯一标识符,如果不能很好理解snmp服务的话,可以将snmp理解为一棵树,你所需要的每一条最终信息都是每一片叶子,比如cpu使用率,内存使用率,磁盘等等,cacti的数据模版就是根据oid来取之,目前包含了少量常用的oid,你需要做的就是去找到合适你的,你需要的那个oid,这个可以采用mib浏览器寻找到。

能找到需要的oid固然是好的,但有的时候情况不是你想象的那么好,找不到需要的oid,怎么定义呢

首先,你需要用shell写好你想要得到的那个值,比如memory的使用率,将他的结果输出到一个tmp文件里,

其次,怎么从文件中取得数据呢

添加oid:打开snmpd.conf配置文件,在末尾写入

exec .1.3.6.1.4.1.2021.3 mfree  /bin/cat /root/warn/tmp

这句话的意思是,添加一个oid为.1.3.6.1.4.1.2021.3(这个oid必须是唯一的,可以在使用之前用snmpwalk测试一下是否存在),将其命名为mfree,它的值是用cat查看tmp文件里面看到的数值,保存,重启snmp服务,不出问题的话,snmpwalk会得倒你tmp文件里的数值

三,创建数据模版,填写oid,然后是图片模版,然后画图。

 

摘自:http://wenku.baidu.com/view/5f3d69eb5ef7ba0d4a733bb7.html

 

posted on 2013-07-19 15:03  语辰  阅读(487)  评论(0编辑  收藏  举报