PHP和rrd:rrd_xport函数返回错误

时间:2013-08-19 08:57:11

标签: php rrdtool rrd

我正在尝试使用rrd_xport函数从RRD文件中读取数据。 函数rrd_xport采用带有'options'作为参数的数组,但对于我的生活,我无法让它工作。函数没有记录是没有用的。我得到的只是“rrd_xport失败”。

有人能为我提供一个简单的例子,说明它在数组中的期望吗?

以下是代码段:

$options = Array(
  "start" => "now-1d",
  "end" => "now",
  "step" => 1,
  "def" => Array(
    "vname" => 'connections_vname',
    "file" => 'data.rrd',
    "dsname" => 'connections',
    "cfunc" => 'MAX'
  ),
  "xport" => Array(
    'vname' => 'connections_vname',
    'legend' => 'legend'
  ),
);

print_r(rrd_xport($options));

编辑:

似乎期望数组的格式如下:

                $options = array(
                         "--step", "60",
                         "--start", "-1 year",
                         "DEF:out=data.rrd:outoctets:AVERAGE",
                         'XPORT:out:"foo"',
                 );

我已经从命令行开始运行脚本,至少它正在读取rrd文件。尽管如此仍然没有骰子。

编辑2:

解决了这个问题!为了将来参考,rrd_xport函数需要一个以下格式的数组:

$options = Array(
  "--step", "1",
  "--start", "-1 year",
  "--end", "now",
  "DEF:out=<filename>:<name of your DS>:AVERAGE",
  'XPORT:out:"<legend>"',
);

XPORT和DEF区分大小写。希望它对别人有用!

亲切的问候,

Dennis,i3D.net

1 个答案:

答案 0 :(得分:1)

解决了这个问题!为了将来参考,rrd_xport函数需要一个以下格式的数组:

$options = Array(
  "--step", "1",
  "--start", "-1 year",
  "--end", "now",
  "DEF:out=<filename>:<name of your DS>:AVERAGE",
  'XPORT:out:"<legend>"',
);