Windows下基于C++的RRDTOOL命令行封装
前言:前些日子把RRDTOOL彻底研究了一番,发现在Windows平台上很少用到RRDTOOL,一般都是自绘图形解决问题,而在Linux上却有很多商业、非商业的软件使用了RRDTOOL。比如做监控的Zenoss和Cacti.
本来我是想用Python写这个封装的,但是估摸着才学Python没多久实现起来有些困难故而放弃了,于是就用C++吧~~哎,悲叹一声!
一般基于时间轴变化的事件都可以用RRDTOOL来搞定,只要横坐标为时间,不管纵坐标怎么变化,那都是数据展示的变化。在这里,我不打算介绍SNMP,RRDTOOL的理论知识及如何使用SNMP++库,具体都可以通过Google获取。
通过这个封装,把创建RRD库、更新RRD库、生成RRD图的三大核心功能实现,同时也完成了导出数据到XML文件的功能封装。其中所有的RRDTool封装类都同继承自RRDToolBase,三大功能类分别为:RRDCreate、RRDUpdate、RRDGraph。具体可以参见源代码,在这不赘述。
在这里给出一些有用的资源链接(demo包里有我自己整理收集的一些文档):
RRDTool:
RRDTool官方站点 http://oss.oetiker.ch/rrdtool/index.en.html
RRDTool教程 1.http://www.study-area.org/tips/rrdtool/rrdtool.html(先用Google把繁体转为简体再看吧)
2. http://blog.csdn.net/ysuncn/category/324582.aspx
SNMP:
1. http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol
2.http://www.networkdictionary.cn/protocols/snmp.php
SNMP++:
1. http://www.agentpp.com/snmp_pp3_x/snmp_pp3_x.html
好了,我要和女朋友一起到外面转转了~
下载地址:http://chenyu2202863.download.csdn.net/