Announcement

Collapse
No announcement yet.

gros souci avec check_graph_traffic_rrd.pl

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • gros souci avec check_graph_traffic_rrd.pl

    Salut à tous!

    J ai cherché sur le forum mais j ai pas trouvé de solution à mon problème.
    je suis sous nagios 2.5/ oreon 1.3.1.

    j ai configurer le plugin suivant:
    Code:
    $USER1$/check_graph_traffic_rrd.pl -H $HOSTADDRESS$ -i $ARG1$ -w $ARG2$ -c $ARG3$ -C $ARG4$ -g -S $ARG5$
    avec les arguments suivants:
    Code:
    !1!80!95!public
    Je ne comprend pas pourquoi ça ne marche pas?
    Attached Files

  • #2
    apparament c'est un probleme de "my" manquant dans les scripts, mais je comprends pas ou....

    help me please...

    Comment


    • #3
      suffit de demander : oreon.pm line 142
      c certainement pas grand chose
      Intel(R) Xeon(TM) CPU 3.4GHz - MemTotal : 1034476 kB
      Centreon 2.4.1 - Nagios 3.2.1 - Nagios Plugins 1.4.15 - Manubulon Plugins tuné
      Fedora Core 5 - 2.6.20-1.2320

      Comment


      • #4
        Je voispas ou ça va pas...Chui pas tres odué sur le code...

        Voila ce que j ai:

        Code:
        ###############################################################################
        #  Fetch RRD file
        ###############################################################################
        sub fetch_rrd($$)
        {
                my ($line, $val, @valeurs, $update_time, $step, $ds_names, $data, $i) ;
                my ($rrd, $CF,@values) = @_;
                $start = time unless($start);
        
                my $ERROR = RRDs::error;
        
                ($update_time,$step,$ds_names,$data) = RRDs::fetch($rrd, "--resolution=300","--start=now-5min","--end
        =now",$CF);
        
        
            $ERROR = RRDs::error;
            if ($ERROR) {
                print "unable to update '$rrd' : $ERROR\n" ;
                exit 3;
             }
             foreach $line (@$data) {
                foreach $val (@$line) {
                        if ( defined $val ) { $valeur[$i]=$val; } else { $valeur[$i]="undef"; }
                        $i++;
                }
            }
            return @valeur;
        }

        La ligne 142 est : "$ERROR = RRDs::error;"

        Une idée ?

        J ai essayer de rajouter un "my" devant la ligne 142, mais ça fait rien...

        Comment


        • #5
          Originally posted by seb
          Je voispas ou ça va pas...Chui pas tres odué sur le code...

          Voila ce que j ai:

          Code:
          ###############################################################################
          #  Fetch RRD file
          ###############################################################################
          sub fetch_rrd($$)
          {
                  my ($line, $val, @valeurs, $update_time, $step, $ds_names, $data, $i) ;
                  my ($rrd, $CF,@values) = @_;
                  $start = time unless($start);
          
                  my $ERROR = RRDs::error;
          
                  ($update_time,$step,$ds_names,$data) = RRDs::fetch($rrd, "--resolution=300","--start=now-5min","--end
          =now",$CF);
          
          
              $ERROR = RRDs::error;
              if ($ERROR) {
                  print "unable to update '$rrd' : $ERROR\n" ;
                  exit 3;
               }
               foreach $line (@$data) {
                  foreach $val (@$line) {
                          if ( defined $val ) { $valeur[$i]=$val; } else { $valeur[$i]="undef"; }
                          $i++;
                  }
              }
              return @valeur;
          }

          La ligne 142 est : "$ERROR = RRDs::error;"

          Une idée ?
          Essaie de remplacer la définition de la ligne 138 par la ligne suivante :

          Code:
          my $ERROR = undef;
          Raphaël 'SurcouF' Bordet
          Je ne teste pas mes plugins en root, tu ne testes pas tes plugins en root...
          Dons Paypal

          Comment


          • #6
            Il semblerait que tu ais deux '/' qui se suivent dans ton chemin vers le greffon.

            /usr/local/nagios/libexec//check_gra....

            Comment


            • #7
              Originally posted by KOOL
              Il semblerait que tu ais deux '/' qui se suivent dans ton chemin vers le greffon.

              /usr/local/nagios/libexec//check_gra....
              Je ne vois pas en quoi ce serait gênant...
              Raphaël 'SurcouF' Bordet
              Je ne teste pas mes plugins en root, tu ne testes pas tes plugins en root...
              Dons Paypal

              Comment


              • #8
                salut à tous et merci de vos reponses!

                Je vais les mettres en applications demain.
                Je vous tiens au courant demain soir.

                Je me suis apercu que c'est lorsque je compile nagios avec "--enable-embedded-perl" que j avais ce probleme. Si j enleve l option, tous rentre dans l'ordre, mais je me demande si perfparse fonctionne correctement...

                Comment


                • #9
                  c'est donc un problème avec l'epn.

                  le plugin n'est pas compatible epn c'est dommage.

                  Il ne doit pas manquer grand chose pour que cela fonctionne.

                  Je n'utilise pas ce plugin sinon j'aurais pris le temps de faire un correctif.

                  Désolé :wink:
                  Intel(R) Xeon(TM) CPU 3.4GHz - MemTotal : 1034476 kB
                  Centreon 2.4.1 - Nagios 3.2.1 - Nagios Plugins 1.4.15 - Manubulon Plugins tuné
                  Fedora Core 5 - 2.6.20-1.2320

                  Comment


                  • #10
                    tu utilises un autre plugin pour le traffic des tes cartes ?

                    Comment


                    • #11
                      j'utilise

                      $USER1$/check_snmp_int.pl -H $HOSTADDRESS$ -C $USER2$ -n eth0 -kqB -w 4096,4096,10,10,10,10 -c 8192,8192,20,20,20,20

                      mais c pour des serveurs et je ne traite pas la partie perfparse donc je ne sais pas trop si il est compatible perfparse
                      Intel(R) Xeon(TM) CPU 3.4GHz - MemTotal : 1034476 kB
                      Centreon 2.4.1 - Nagios 3.2.1 - Nagios Plugins 1.4.15 - Manubulon Plugins tuné
                      Fedora Core 5 - 2.6.20-1.2320

                      Comment


                      • #12
                        Originally posted by DonKiShoot
                        j'utilise

                        $USER1$/check_snmp_int.pl -H $HOSTADDRESS$ -C $USER2$ -n eth0 -kqB -w 4096,4096,10,10,10,10 -c 8192,8192,20,20,20,20

                        mais c pour des serveurs et je ne traite pas la partie perfparse donc je ne sais pas trop si il est compatible perfparse
                        D'après sa documentation et pour l'utiliser avec, il l'est :
                        Performance output

                        -f option : output the In/out octet (as a counter).
                        -e option : in/out errors and discarded packets. -f must also be set.

                        Warning : the counters needed by -e are not always available on all machines (ex Nokia IP)
                        http://www.manubulon.com/nagios/snmp_int.html
                        Raphaël 'SurcouF' Bordet
                        Je ne teste pas mes plugins en root, tu ne testes pas tes plugins en root...
                        Dons Paypal

                        Comment


                        • #13
                          Originally posted by seb
                          salut à tous et merci de vos reponses!

                          Je vais les mettres en applications demain.
                          Je vous tiens au courant demain soir.

                          Je me suis apercu que c'est lorsque je compile nagios avec "--enable-embedded-perl" que j avais ce probleme. Si j enleve l option, tous rentre dans l'ordre, mais je me demande si perfparse fonctionne correctement...
                          Pour résoudre tes problèmes, essaie d'exécuter le plugin en tant que nagios mais en utilisant l'exécutable mini_epn (à compiler si ce n'est fait) plutôt que perl comme ils l'expliquent :
                          8 Be aware of what ePN is transforming your plugin too, and if all else fails try and debug the transformed version.

                          As you can see below p1.pl rewrites your plugin as a subroutine called 'hndlr' in the package named 'Embed::<something_related_to_your_plugin_file_nam e>'.

                          Your plugin may be expecting command line arguments in @ARGV so pl.pl also assigns @_ to @ARGV.

                          This in turn gets 'eval' ed and if the eval raises an error (any parse error and run error), the plugin gets chucked out.

                          The following output shows how a test ePN transformed the check_rpc plugin before attempting to execute it. Most of the code from the actual plugin is not shown, as we are interested in only the transformations that the ePN has made to the plugin). For clarity, transformations are shown in red:


                          package main;
                          use subs 'CORE::GLOBAL::exit';
                          sub CORE::GLOBAL::exit { die "ExitTrap: $_[0]
                          (Embed::check_5frpc)"; }
                          package Embed::check_5frpc; sub hndlr { shift(@_);
                          @[email protected]_;

                          #! /usr/bin/perl -w
                          #
                          # check_rpc plugin for Nagios
                          #
                          # usage:
                          # check_rpc host service
                          #
                          # Check if an rpc serice is registered and running
                          # using rpcinfo - $proto $host $prognum 2>&1 |";
                          #
                          # Use these hosts.cfg entries as examples
                          #
                          # command[check_nfs]=/some/path/libexec/check_rpc $HOSTADDRESS$ nfs
                          # service[check_nfs]=NFS;24x7;3;5;5;unix-admin;60;24x7;1;1;1;;check_rpc
                          #
                          # initial version: 3 May 2000 by Truongchinh Nguyen and Karl DeBisschop
                          # current status: $Revision: 1.1.1.1 $
                          #
                          # Copyright Notice: GPL
                          #
                          ... rest of plugin code goes here (it was removed for brevity) ...
                          }
                          http://nagios.sourceforge.net/docs/2...eddedperl.html
                          Raphaël 'SurcouF' Bordet
                          Je ne teste pas mes plugins en root, tu ne testes pas tes plugins en root...
                          Dons Paypal

                          Comment

                          Working...
                          X