获取 RRD 文件的信息

一)前言

      可能你已经颇不亟待的想知道如何往  RRD  文件插入数据、如何绘图了吧?hoho,先别急,在你做这些事情之前,最好先思考以下几个问题 

      A)如果给你一个  RRD  文件,你能知道它的第一次/最后一次  update  的时间是在什么时候吗?

      B)如果你很久之前建立了一个  RRD  文件,现在因为工作原因需要对该  RRD  文件进行一些修改。不过遗憾的是,
     
              你已经不记得得当初设置的具体选项和参数了,    这时候该怎么办呢?
             
      这两个问题就对应今天要讲的两个操作  :first/last  、info 
     
      first  就是用于查看该  RRD  文件中某个  RRA  的第一个数据是在什么时候插入的(或者说第一次更新);
     
      last  就是查看该  RRD  文件的最近一次更新;
     
      info就是查看  rrd  文件的结构信息。
     
      下面就以实际例子来看一下该怎么用这三个命令  : 
       
     
二)如何查询一个 RRD 文件的结构信息
       
       
 [root@dns1 bob]# rrdtool info eth0.rrd (由于输出信息较多,截取了一部分) 
filename "eth0.rrd" 
rrd_version "0003" 
step 300 # RRDtool 希望每5分钟收到一个数据 
last_update 1163862985 # 这是最近一次更新的 timestamp 。可以用 date 转换为具体的时间 
ds[eth0_in].type "COUNTER" # 有一个名为 eth0_in 的 DS,DST是 COUNTER 
ds[eth0_in].minimal_heartbeat 600 # hearbeat 时间是600 秒 
ds[eth0_in].min 0.0000000000e+00 # eth0_in 的最小值是 (bytes) 
ds[eth0_in].max 1.2500000000e+07 # eth0_in 的最大值是 1250000000 (bytes) 
ds[eth0_in].last_ds "UNKN" 
ds[eth0_in].value 0.0000000000e+00 
ds[eth0_in].unknown_sec 85 
ds[eth0_out].type "COUNTER" 
ds[eth0_out].minimal_heartbeat 600 
ds[eth0_out].min 0.0000000000e+00 
ds[eth0_out].max 1.2500000000e+07 
ds[eth0_out].last_ds "UNKN" 
ds[eth0_out].value 0.0000000000e+00 
ds[eth0_out].unknown_sec 85 
rra[0].cf "AVERAGE" # 第一个 RRA 的编号是0,不是1。 
rra[0].rows 600 # 共保存 600 个记录 
rra[0].pdp_per_row 1 # 每个 CDP 由一个 PDP 统计得出 
rra[0].xff 5.0000000000e-01 # 只要当前interval 的 PDP 为 unknown ,则该 CDP 的值也是unknown 
rra[0].cdp_prep[0].value NaN 
rra[0].cdp_prep[0].unknown_datapoints 0 
rra[0].cdp_prep[1].value NaN 
rra[0].cdp_prep[1].unknown_datapoints 0 
rra[1].cf "AVERAGE" # 第二个 RRA 的编号是 1。同样也是 AVERAGE 型。 
rra[1].rows 600 # 也是保存 600 个记录 
rra[1].pdp_per_row 4 # 每个 CDP 由4个 PDP 的求平均值得出 
rra[1].xff 5.0000000000e-01 # 每个 CDP 最多允许2个 PDP 为 unknown ,超过则该 CDP 为unknown 
rra[1].cdp_prep[0].value NaN 
rra[1].cdp_prep[0].unknown_datapoints 3 
rra[1].cdp_prep[1].value NaN 
rra[1].cdp_prep[1].unknown_datapoints 3 
 [root@dns1 bob]# 
 



[color=red]由于信息太长,这里截取了后面2个  RRA  的信息。


三)第一次更新/最近一次更新

如果想知道最近一次更新发生在什么时候,除了可以用上面的  info  操作,还可以用  last  操作

 [root@dns1 bob]# rrdtool last eth0.rrd 
1163862985 
[root@dns1 bob]# 
 


如果转换成具体的时间就是 

 [root@dns1 bob]# rrdtool last eth0.rrd |xargs -i date -d '1970-01-01 {} sec utc' 
六 11月 18 23:16:25 CST 2006 
[root@dns1 bob]# 
 


 [root@dns1 bob]# rrdtool first eth0.rrd 
1163683200 
[root@dns1 bob]# 
 


如果换成具体的时间就是 

 [root@dns1 bob]# [root@dns1 bob]# rrdtool first eth0.rrd |xargs -i date -d '1970-01-01 {} sec utc'  
四 11月 16 21:20:00 CST 2006 
[root@dns1 bob]# 
 


这三个命令的语法都非常简单,但并不可以因此小看它们的功能,尤其是  info  操作。日后如果需要对  RRD  文件进行调整,是经常需要用到的。
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值