rrd_xport

(PECL rrd >= 0.9.0)

rrd_xportExports the information about RRD database

Description

rrd_xport(array $options): array

Exports the information about RRD database file. This data can be converted to XML file via user space PHP script and then restored back as RRD database file.

Parameters

options

Array of options for the export, see rrd xport man page.

Return Values

Array with information about RRD database file, or false on failure.

add a note add a note

User Contributed Notes 2 notes

up
2
mrezahamedany
7 years ago
an example that shows the usage of this method ( tested in php version 5.6.30 )

class Rrd{
    public function getData($id , $start , $end)
    {
        $step = 300 ;
        $rrdFile ="/path/to/file/'.$id.rrd";

        try{
            $options = ["--start", $start , "--end", $end ,"-- step",$step,"DEF:out=$rrdFile:name:AVERAGE", "XPORT:out:test"];
            $result = rrd_xport($options);
            $datas = $result['data'][0]['data'];
            foreach($datas as $data => $value){

                if( is_nan($value) === true ) $value = 0 ;
                    $output[] = [$data=>$value] ;
            }
            return json_encode($output);

        }catch (Exception $e){

            dd($e->getMessage());
        }

    }
}
up
1
Peter R
1 year ago
A small example of connecting to an rrdcached daemon (This one running on localhost, but works across network as well) and getting in and output bits from an interface.

$options = array(
    '--daemon', '127.0.0.1:42217',
    '--start', time() - 3600,
    'DEF:in_oct=rrdfile.rrd:INOCTETS:AVERAGE',
    'DEF:out_oct=rrdfile.rrd:OUTOCTETS:AVERAGE',
    'CDEF:in_bits=in_oct,8,*',
    'CDEF:out_bits=out_oct,8,*',
    'XPORT:in_bits',
    'XPORT:out_bits'
  );

$result = rrd_xport($options);

var_dump($result);
To Top