Créer un graph RRD avec RRDTool::OO [Perl] - Perl - Programmation
MarshPosté le 23-12-2013 à 11:46:59
Bonjour,
Je débute dans le monde du RRD, alors le mieux est de partir sur un exemple qui fonctionne. Pour cela je me base sur le tuto de ce site qui reprend un exemple assez connu: http://wiki.monitoring-fr.org/supervision/rrdtool
J'en suis à l'étape "rrdtool graph vitesse2.png" et jusqu'ici tout va bien. En revanche pour l'exemple "vitesse3.png" il demande de créer un "CDEF" et là je bloque.
Voici mon script où pour "vitesse2.png" cela fonctionne :
Code :
#!/usr/bin/perl
use strict;
use warnings;
use RRDTool::OO;
# Constructor
my $rrd = RRDTool::OO->new(
file => "myrrdfile.rrd",
raise_error => 1,
);
# Create a round-robin database
# Define the RRD
my $rc = $rrd->create(
start => '1051480800',
data_source => {
name => 'vitesse',
type => 'COUNTER',
min => 'U',
max => 'U',
heartbeat => '600',
},
archive => {
cfunc => 'AVERAGE',
xff => 0.5,
cpoints => 1,
rows => 24,
},
archive => {
cfunc => 'AVERAGE',
xff => 0.5,
cpoints => 6,
rows => 10,
},
);
while (<DATA> ) {
chomp;
my ($time, $value) = split(/:/, $_);
print $time, "|", $value, "\n";
$rrd->update(time => $time, value => $value);
}
$rrd->graph(
image => "seth.png",
start => 1051481100,
end => 1051485300,
imgformat => "PNG",
width => "500",
height => "200",
color => {
canvas => '#000000',
back => '#101010',
font => '#C0C0C0',
mgrid => '#80C080',
grid => '#808020',
frame => '#808080',
arrow => '#FFFFFF',
shadea => '#404040',
shadeb => '#404040',
},
draw => {
file => "myrrdfile.rrd",
thickness => 2,
type => "line",
color => 'FF0000',
legend => "vitesse",
dsname => "vitesse",
cfunc => 'AVERAGE',
cdef => "vitesse,3600,*",
},
);
__DATA__
1051481100:12345
1051481400:12357
1051481700:12363
1051482000:12363
1051482300:12363
1051482600:12373
1051482900:12383
1051483200:12393
1051483500:12399
1051483800:12405
1051484100:12411
1051484400:12415
1051484700:12420
1051485000:12422
1051485300:12423
Quand j'enlève le commentaire ligne 70 sur le "CDEF" il me dit:
Marsh Posté le 23-12-2013 à 11:46:59
Bonjour,
Je débute dans le monde du RRD, alors le mieux est de partir sur un exemple qui fonctionne.
Pour cela je me base sur le tuto de ce site qui reprend un exemple assez connu:
http://wiki.monitoring-fr.org/supervision/rrdtool
J'en suis à l'étape "rrdtool graph vitesse2.png" et jusqu'ici tout va bien.
En revanche pour l'exemple "vitesse3.png" il demande de créer un "CDEF" et là je bloque.
Voici mon script où pour "vitesse2.png" cela fonctionne :
Quand j'enlève le commentaire ligne 70 sur le "CDEF" il me dit:
Je ne comprends pas, pourtant le cdef est bien une valeur de graph: http://cpansearch.perl.org/src/MSC [...] Tool/OO.pm
Si vous avez une idée je suis preneur, merci.