Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1448 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  [Perl] Créer un graph RRD avec RRDTool::OO

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Perl] Créer un graph RRD avec RRDTool::OO

n°2214341
Sethenssen
Posté le 23-12-2013 à 11:46:59  profilanswer
 

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 :
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4. use RRDTool::OO;
  5. # Constructor
  6. my $rrd = RRDTool::OO->new(
  7.         file    => "myrrdfile.rrd",
  8.         raise_error     => 1,
  9. );
  10. # Create a round-robin database
  11. # Define the RRD
  12. my $rc = $rrd->create(
  13.         start           => '1051480800',
  14.         data_source     => {
  15.                 name            => 'vitesse',
  16.                 type            => 'COUNTER',
  17.                 min             => 'U',
  18.                 max             => 'U',
  19.                 heartbeat       => '600',
  20.         },
  21.         archive         => {
  22.                 cfunc   => 'AVERAGE',
  23.                 xff     => 0.5,
  24.                 cpoints => 1,
  25.                 rows    => 24,
  26.         },
  27.         archive         => {
  28.                 cfunc   => 'AVERAGE',
  29.                 xff     => 0.5,
  30.                 cpoints => 6,
  31.                 rows    => 10,
  32.         },
  33. );
  34. while (<DATA> ) {
  35.         chomp;
  36.         my ($time, $value) = split(/:/, $_);
  37.         print $time, "|", $value, "\n";
  38.         $rrd->update(time => $time, value => $value);
  39. }
  40. $rrd->graph(
  41.         image   =>      "seth.png",
  42.         start           => 1051481100,
  43.         end             => 1051485300,
  44.         imgformat       => "PNG",
  45.         width           => "500",
  46.         height          => "200",
  47.         color           => {
  48.                         canvas  => '#000000',
  49.                         back    => '#101010',
  50.                         font    => '#C0C0C0',
  51.                         mgrid   => '#80C080',
  52.                         grid    => '#808020',
  53.                         frame   => '#808080',
  54.                         arrow   => '#FFFFFF',
  55.                         shadea  => '#404040',
  56.                         shadeb  => '#404040',
  57.         },
  58.         draw            => {
  59.         file            => "myrrdfile.rrd",
  60.         thickness       => 2,
  61.         type            => "line",
  62.         color           => 'FF0000',
  63.         legend          => "vitesse",
  64.         dsname          => "vitesse",
  65.         cfunc           => 'AVERAGE',
  66.         cdef            => "vitesse,3600,*",
  67.         },
  68. );
  69. __DATA__
  70. 1051481100:12345
  71. 1051481400:12357
  72. 1051481700:12363
  73. 1051482000:12363
  74. 1051482300:12363
  75. 1051482600:12373
  76. 1051482900:12383
  77. 1051483200:12393
  78. 1051483500:12399
  79. 1051483800:12405
  80. 1051484100:12411
  81. 1051484400:12415
  82. 1051484700:12420
  83. 1051485000:12422
  84. 1051485300:12423


 
Quand j'enlève le commentaire ligne 70 sur le "CDEF" il me dit:

Code :
  1. rrdtool graph seth.png --width 500 --imgformat PNG --height 200 --end 1051485300 --start 1051481100 CDEF:draw1=vitesse,3600,* LINE2:draw1#FF0000:vitesse --color MGRID#80C080 --color SHADEB#404040 --color GRID#808020 --color BACK#101010 --color FRAME#808080 --color FONT#C0C0C0 --color CANVAS#000000 --color ARROW#FFFFFF --color SHADEA#404040 failed: invalid rpn expression in: vitesse,3600,* at /usr/share/perl5/RRDTool/OO.pm line 438


 
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.

mood
Publicité
Posté le 23-12-2013 à 11:46:59  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  [Perl] Créer un graph RRD avec RRDTool::OO

 

Sujets relatifs
[Résolu][Perl] XML::DOM Comment avoir une belle indentation?On a besoin de vous pour créer l'e-démocratie !
[HTML/JS] Créer et télécharger un fichier CSV avec ieBesoin d'aide pour creer un programme
créer un logiciel d'avatarsplit + perl
perl tk getOpenFile[PERL] Probleme avec module Chart::Gnuplot
perl + TK[Perl] CGI qui parse le STDIN n'importe comment
Plus de sujets relatifs à : [Perl] Créer un graph RRD avec RRDTool::OO


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR