RRDtool 的学习记录

原创 2012年03月30日 14:56:08

官方文档 :http://oss.oetiker.ch/rrdtool/doc/index.en.html

RRDtool (Round Robin Database Tool用于生成图表,类似流量统计之类的。

常用的命令包括 create , update ,graph,info 等,

create :

创建 RRD 文件。

rrdtool create rrd_filename [--start | -b start time] [--step | -s step] [--no-overwrite] [ DS field ] [ RRA field ]

start 是从1970开始的一个时间戳,默认值是当前之前十秒,

step 默认值是300s,

DS(Data Source):

DS:field_name:GAUGE/COUNTER:heartbeat:min_value:max_value

声明 RRD 数据库中的一个字段,

第一部分 DS :声明 DS域;第二部分:ds-name;

第三部分:data source type;可以为个别值(GAUGE)或者累计值(COUNTER);

第四部分:有效期,如果有效期为 n, 则时间点 t 的值,来源与 [ t-n/2 , t+n/2 ];

第五部分,第六部分:记录的取值范围,U:U 表示不限定范围。

RRA(Round Robin Archive):

定义存什么样的资料,存多少笔,周期多少;

ex:

RRA:AVERAGE:0.5:12:603

表示每 12*step 的时间内,最多存入 603 笔值(超出部分会自动挤掉最老的值),存的是平均值,0.5 的意思后面说;

RRA的作用范围是这个表里面所有的 DS ;

RRA:宣告;

CF:AVERAGE/MIN/MAX/LAST;表示存入 平均值/最小值/最大值/最后一个值;

XFF:0.5 的意思大约是这样:如果这个时间区段内,有50%的值是 unknown,那么存入的值就是 unknown;

steps:间隔 value * step 的时间存入一次,所以一般会有多个 RRA ,

rows:可以把 RRD 想象成一个环形的数据库, rows 就是这个环上有多少个刻度;


info:

显示 rrd 文件信息;

rrdtool info rrd_filename


update:

store a new set of values into RRD

rrdtool update rrd_filename [ set of value ]

数据的格式:

timestamp : vlaue : value .........每一个 value 对应一个 DS域, U 表示没有值,当前时间表示为 N;

timestamp : value  timestamp :value ........每个 DS 域单独update,


graph:

由RRD生成图表(human viewer);

rrdtool graph image_file_name [ option ] [ data definition ] [ data calculation ] [ vairable definition ] [ graph element ] [ print element ]

option:
-s : --start time
-e : --end time
-S : --step seconds
-t : --title string
-v : --vertical-label string
-w : --width pixels
-h : --height pixels
-j : --only-graph
-D : --full-size-mode
-u : --upper-limit value
-l : --lower-limit value
-r : --rigid
-A : --alt-autoscale
-J : --alt-autoscale-min
-M : --alt-sutoscale-max
-N : --no-gridfit
以上是主要的参数

DEF(data definition):
DEF:vname=rrdfile_name:ds-name:CF[:step=step][:start=time][:end=time]
其中 CF 可以为 AVERAGE/MIN/MAX/LAST,
DEF 域可以有多个;
定义了 DEF 之后,可以定义 DEF 的表现方式,即数据在图表上的展现方式:line, area, stack 等;
LINE[width]:vname[#rrggbb[:legend]]
AREA:vname[#rrggbb[:legend]]
STACK:vname[#rrggbb[:legend]]
stack 是画出资料数值至其上的数值???
AREA/STACK 一定要先画大的值,再画小的,不然直接覆盖掉;
COMMENT:"comments , use \n as endl "

PS:

限制 Y axis 的范围:

-l value -u value:如果 Y axis 的高度比较大,还是会自动扩展的,除非使用 --rigid 选项强制固定 Y axis 的范围。

PS2:

format of time range:

last four week : --start end-4w --end 00:00

January 2011 : --start 20110101 --end start+31d

January 2012 : --start 20120101 --end 20120201

last hour : --start end-1h

Yesterday : --end 00:00

PS3:

date -d now +%s:获取现在的timestamp

date -d "1970-01-01 UTC timestamp seconds" +"%Y - %m - %d %T":时间戳转正常的可读时间

RRDTool(三)--fetch,info

一.rrdtool fetch 1.功能:取出rrd数据; 2.使用 rrdtool fetch file_name CF [--resolution|-r resolution] [--start|...
  • death_kada
  • death_kada
  • 2015年07月30日 09:14
  • 621

安装rrdtool

一、使用yum安装: 在 /etc/yum.repos.d/下面新建dag.repo文件在文件中输入源地址: [root@hmg2 yum.repos.d]# cat dag.repo [dag] n...
  • zhaoyangjian724
  • zhaoyangjian724
  • 2015年06月26日 21:14
  • 863

JRobin RRDTool的一个纯Java实现

JRobin网址:http://www.jrobin.org/JRobin是一套开源(基于LGPL授权)的网络性能监控系统,是RRDTool的一个纯Java实现。它使用与RRDTool相同的逻辑,相同...
  • superpan
  • superpan
  • 2007年02月13日 15:08
  • 4203

centos 安装rrdtool

下载所需要的rpm包: wget http://dag.wieers.com/rpm/packages/rrdtool/perl-rrdtool-1.2.23-1.el5.rf.x86_64.rpm...
  • czh0423
  • czh0423
  • 2015年05月08日 10:10
  • 741

Python与rrdtool的结合模块

Python与rrdtool的结合模块       rrdtool(round robin database)工具为环状数据库的存储格式,round robin是一种处理定量数据以及当前元素指针...
  • zhangtian6691844
  • zhangtian6691844
  • 2017年01月23日 18:24
  • 1137

RRDTool(一)--概述,create

一.概述 1.RRD:Round Robin Database,环状数据库,该数据库有固定大小,并有一个指针指向最近的位置; 2.RRD数据是基于时间序列的,每个数据都有个时间戳,即从1970/1/1...
  • death_kada
  • death_kada
  • 2015年07月28日 13:00
  • 517

RRDtool简体中文教程

本文转自:http://www.chinaunix.net 作者:ailmsRRDtool 简介 [color=blue] **************************************...
  • tommy_lgj
  • tommy_lgj
  • 2007年01月08日 15:05
  • 23528

RRDTool

 RRDTool  = 1 /*
  • gandrchen
  • gandrchen
  • 2008年03月18日 11:08
  • 2413

RRDtool 中文攻略

by:ysuncn(欢迎转载,请注明原创信息)        开始使用RRDtool的时候以为只能用英文,后来google一下,隐约的发现酷学园和 chinaunix上有人解决这个问题,不过都是200...
  • ysuncn
  • ysuncn
  • 2007年08月07日 12:53
  • 6892

RRDtool绘图——graph参数使用之经典实例

by:ysuncn(欢迎转载,请注明原创信息)看了一些讲RRDtool绘图命令graph用法的文章,有些版本过时,命令不同了,还有些就像我前边写的“Hello World”里边的作图一样,泛泛带过,针...
  • ysuncn
  • ysuncn
  • 2007年08月09日 02:25
  • 10484
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:RRDtool 的学习记录
举报原因:
原因补充:

(最多只允许输入30个字)