Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PHP - RRD rrd_error() Function



The PHP RRD rrd_error() function is used to get the error message from the most recent call to an RRD function. When an RRD function fails, it will help us to identify the reason of the error.

Syntax

Below is the syntax of the PHP RRD rrd_error() function −

string rrd_error ( void )

Parameters

This function does not take any parameters.

Return Value

The rrd_error() function returns a string with the error message from the previous call to the RRD method. If there is not an error, it returns an empty string.

PHP Version

The rrd_error() function is available from version 0.9.0 of the PECL rrd extension onwards.

Example 1

This example shows how to use the PHP RRD rrd_error() function to record and display an error that occurs after an unsuccessful call to an RRD function.

<?php
   // Try to create an RRD file 
   $result = rrd_create("test.rrd", array(
       "--start", "-1d",
       "--step", "300",
       "DS:sample:GAUGE:600:U:U",
       "RRA:AVERAGE:0.5:1:288"
   ));
   
   // Check for errors
   if ($result === FALSE) {
       echo "Error: " . rrd_error();
   }   
?>

Output

The above code will result something like this −

Error: creating 'test.rrd': invalid parameter '--step'

Example 2

In the below PHP code we will try to use the rrd_error() function and handle errors when updating an RRD file.

<?php
   // Update RRD file 
   $result = rrd_update("test.rrd", array(
       "invalid_update_string"
   ));
   
   // Check for errors
   if ($result === FALSE) {
       echo "Update Error: " . rrd_error();
   }
?> 

Output

After running the above program, it generates the following output −

Update Error: illegal update statement: invalid_update_string

Example 3

Now the below code uses rrd_error() function to detect errors occurs when retrieving data from an RRD file.

<?php
   // Fetch data from an RRD file
   $result = rrd_fetch("test.rrd", array(
       "--start", "-1h",
       "--end", "now",
       "INVALID_CONSOLIDATION_FUNCTION"
   ));
   
   // Check for errors
   if ($result === FALSE) {
       echo "Fetch Error: " . rrd_error();
   }
?> 

Output

This will create the below output −

Fetch Error: consolidation function 'INVALID_CONSOLIDATION_FUNCTION' unknown

Example 4

In the following example, we are using the rrd_error() function how to use rrd_error() to handle and catch errors while creating a graph from an RRD file.

<?php
   // Create a graph
   $result = rrd_graph("test.png", array(
       "--start", "-1h",
       "DEF:mysample=test.rrd:sample:AVERAGE",
       "LINE2:mysample#FF0000"
   ));
   
   // Check for errors
   if ($result === FALSE) {
       echo "Graph Error: " . rrd_error();
   }
?> 

Output

When the above program is executed, it will produce the below output −

Graph Error: No such file or directory
php_function_reference.htm
Advertisements