您的位置:首页 > 其它

RRDTool(二)--update,graph

2015-07-29 14:08 344 查看
一.rrdtool update|updatev

1.功能:向由rrdtool create所创建的rrd文件提供数据;

2.使用

rrdtool update|updatev file_name [--template|-t ds_name[:ds_name]...] [--] N|timestamp:value[:value...]

3.选项及参数

file_name:指定文件名;

--template|-t:指定数据源及其顺序;

N|timestamp:value:value...:N表示当前时间,timestamp指定时间戳,后跟的value对应数据源顺序插入数据,当然,只有一个数据源或者按数据源原有顺序提供数据时,可以不用--template|-t;

二.rrdtool graph

1.功能:绘图;

2.使用

rrdtool graph|graphv pic_file_name [option...] [data definition...] [data calculation...] [variable definition] [graph element...] [print element...]  

3.选项及参数

 1)[option...]:

pic_file_name:指定生成图片名称,格式默认为.png;

--start|-s time:指定开始时间;

--end|-e time:指定结束时间;

--step|-S second:指定解析度;

--title|-t string:指定图片标题;

--vertical-label|-v string:指定纵坐标标签;

--width|-w pixels:指定图像宽度的像素;

--height|-h pixels:指定图像高度的像素;

--only-graph|-j:只绘制预览图;

--full-size-mode|-D:图像能根据空间自动缩放;

--upper-limit|-u value:指定图像取值上限;

--lower-limit|-l value:指定图像取值下限;

--rigid|-r:取值超过上下限时取到最上点或最下点,保持不变,即不能自动缩放;

--alt-autoscale|-A:自动缩放;

--alt-autoscale-min|-J:自动缩放最小值;

--alt-autoscale-max|-M:自动缩放最大值;

--no-gridfit|-N:不显示网格线;

--x-grid|-x GTM:GST:MTM:MST:LTM:LST:LPR:LFM:八个参数分别指定横轴副网格线绘制的单位,时间,主网格线绘制的单位,时间,标签显示的单位,时间,最后两个指定时间格式;

如:-x MINUTE:10:HOUR:1:HOUR:4:0:%X:每十分钟画一条副网格线(灰色线),每1小时画一条主网格线(红色线),横轴标签每4小时显示一个;

--y-grid|-y grid step:label factor:step指定每多长指定一个刻度,label_factor指定每隔多长时间显示一个

--imgformat|-a PNG|SVG|EPS|PDF:指定图片格式;

2)[data definition...]

DEF:vname=rrdfile:ds_name:CF[:step=step][:start=time][:end=time]

DEF:关键字;

vname=rrdfile:ds_name:CF:将rrdfile中的DS通过聚合后的数据保存在变量vname,该变量长度小于256,只能包含[a-zA-Z0-9];

3)[graph element...]

线条图和面积图

LINE[width]:vname[#color] [:[legend][:STACK]]:LINE是关键字,表示画线条图,width表示线条粗细1-3,vname就是上面定义的数据变量,color指定颜色,如ff0000表示红色,000000表示黑色,legend表示该线条的指示字符;

AREA:vname[#color] [:[legend][:STACK]]:AREA是关键字,表示面积图;

4)[print element...]

GPRINT:vname:CF:string

GPRINT:关键字;

vname:定义的数据变量;

CF:聚合函数;

string:需要打印的内容和格式(出现冒号要转义);

4.实例

rrdtool graph test.png --step 300 -s 1341664750 -t Test -v vtest DEF:vtest=test.rrd:testds:AVERAGE LINE1:vtest#ff0000:"testline"

解释:画图,图片名称为test.png,指定解析度为300s(也可以在DEF中指定step=300),指定绘图起始时间1341664750,标签为Test,垂直标签为vtest,将数据变量vtest绘制成图像,线条用LINE1,颜色为红色,该线条的指示字符为testline;

rrdtool graph test.png -s 1341664750 -t Test -v vtest DEF:vtest=test.rrd:testds:AVERAGE:step=5 DEF:vtest2=test.rrd:testds:AVERAGE:step=50 LINE1:vtest#ff0000:"testline" LINE1:vtest2#00ff00:"testline2" GPRINT:vtest:AVERAGE:"iftraffic1 \: %6.2lf" GPRINT:vtest2:AVERAGE:"iftraffic2
\: %6.2lf;

解释:指定了两个变量,分别是5s和50s的数据,绘制了两条线在同一张图上,分别为红色和绿色,分别显示平均值。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  rrdtool graph