Helper-Funktionen sind dazu gedacht, die Templates zu vereinfachen und Fehler abzufangen.
string rrd::def ( $vname, $rrdfile, $ds, [ $cf='AVERAGE' ] )
$def = rrd::def('var1', $RRDFILE[0], $DS[0], 'MAX');
string rrd::cdef ( $vname, $rpn, )
$def = rrd::cdef('var1_bits', 'var1,8,*' );
string rrd::vdef ( $vname, $rpn, )
$def = rrd::vdef('var1_avg', 'var1,AVERAGE' );
string rrd::line[1-3] ( $vname, $color, [ $text ], [ $stack ] )
$def .= rrd::line1('var1', #ff00ff );
Eine einfache Linie, ein Pixel breit, ohne Label-Text
$def .= rrd::line3('var1', '#ff00ff', 'Load' );
Eine Linie, drei Pixel breit, und dem Label “Load”
string rrd::area ( $vname, $color, [ $text ], [ $stack ] )
$def .= rrd::area('var1', '#ff00ff', 'Load' );
Eine Fläche mit dem Label “Load”
string rrd::gprint ( $vname, $cf, [ $text ] )
$def .= rrd::gprint('var1', 'MAX', '%4.2lf %s Max' );
$def .= rrd::gprint('var1', array('MIN', 'MAX', 'AVERAGE'), '%4.2lf %s' );
Ist $cf ein Array, so wird automatisch eine Legende formatiert ausgegeben.
string rrd::color ( $num [, $num ])
Liefert eine Farbe aus der HTML-Farbtabelle. Als zweites (optionales) Argument kann man einen Alpha-Wert angeben, der die Transparenz der Farbe festlegt.
Beginnend mit PNP 0.6.18 akzeptiert die Funktion ein drittes Argument, das auf Farbschemadefinitionen in config.php
verweist (oder in config_local.php
, die bei Updates nicht überschrieben wird). Dort finden Sie das Array $scheme[], z.B.
$scheme['Reds'] = array (...)
Im Template definieren Sie
$schema = $this->config->scheme['Reds'] ... rrd:color ($key, '', $schema);
Aus diese Weise wählen Sie den Wert von $scheme['Reds'][$key]. Falls $key nicht innerhalb des Arrays liegt oder der Name nicht korrekt ist (case-sensitiv), dann wird die Standardpalette verwendet.
string rrd::gradient ( $vname, [$start_color], [$end_color], [$label], [$steps], [$lower] )
Erzeugt einen Farbverlauf von $start_color nach $end_color
$def .= rrd::gradient('var1', '#ff0000', '#ffff00' );
string rrd::cut ( $text, $length )
$label = rrd::cut($LABEL[0], 18);
Schneidet einen Text auf eine gegebene Länge $length ab oder füllt wenn nötig auf $length auf. Diese Funktion ist hilfreich, wenn die Legende ausgerichtet werden soll, aber die Länge des Labels nicht bekannt ist.
string rrd::ticker ( $vname, $warning, $critical, [$fraction], [$opacity], [$color_OK], [$color_WARN], [$color_CRIT] )
Erzeugt einen farbigen Balken am oberen Rand des Graphen, der je nach OK, WARNING & CRITICAL unterschiedliche Farben annimmt
$def .= rrd::ticker( "var1", $WARN[0], $CRIT[0] );
string rrd::alerter ( $vname, $label, $warning, $critical, [$opacity], [$unit], [$color_OK], [$color_WARN], [$color_CRIT], [$line_col] )
Erzeugt Areas, die entsprechend der Werte OK, WARNING & CRITICAL unterschiedliche Farben annehmen
$def .= rrd::alerter( "var1", $LABEL[0], $WARN[0], $CRIT[0], "FF", $UNIT[0] );
string rrd::alerter_gr ( $vname, $label, $warning, $critical, [$opacity], [$unit], [$color_OK], [$color_WARN], [$color_CRIT], [$line_col], [$start_color] )
Erzeugt Gradienten, die entsprechend der Werte OK, WARNING & CRITICAL unterschiedliche Farben annehmen
$def .= rrd::alerter_gr( "var1", $LABEL[0], $WARN[0], $CRIT[0], "FF", $UNIT[0] );