Announcement

Collapse
No announcement yet.

[Réglé] Probleme etat check_graph_traffic

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

  • [Réglé] Probleme etat check_graph_traffic

    Bonjour enfin rebonjour
    Je met tous mes problemes dans des topic differents, comme on me l'a dit pour les personnes qui recherchent.
    Alors j'ai un souci avec les etat warnong et critique du check_graph_traffic.
    J'ai defini un taut warn a 1% et un tot critique a 2%.

    $USER1$/check_graph_traffic.pl -H $HOSTADDRESS$ -i $ARG1$ -w $ARG2$ -c $ARG3$ -C $ARG4$ -v $ARG5$ -g -S $ARG6$

    !24!1!2!public!2

    Au moment ou je vous parle mon utilisation du port est un 30%, donc je devrais etre en critique et pas warning pourtant je reste tjrs en warning.
    Par contre quand le port est en dessous des 1% j'ai bien l'etat OK.

    Merci
    Aways

  • #2
    Bien alors j'ai trouver, c'est dans le plugin check_graph_traffic.

    Faites cela
    editer /usr/lib/nagios/plugins/check_graph_traffic.pl
    remplacer

    if (($in_usage > $critical) or ($out_usage > $critical)){
    $status = "CRITICAL";
    printf($status);
    }
    if (($in_usage > $warning) or ($out_usage > $warning)){
    $status = "WARNING";
    printf($status);
    }

    Par

    if (($in_usage > $warning) or ($out_usage > $warning)){
    $status = "WARNING";
    printf($status);
    }

    if (($in_usage > $critical) or ($out_usage > $critical)){
    $status = "CRITICAL";
    printf($status);
    }

    Je m'explique (dans le cas ou l'alerte est critique) il suffit d'inverser le test (if) du warning avec le critical.
    Car dans l'ordre d'origine il rentre dans le premier if, met le status "critical", mais le deuxieme if est aussi verifié donc ecrase le status critical par le status WARNING, donc au lieux de renvoyer un status CRITICAL il renvoie un status WARNING.
    Bon j'espere avoir ete claire sinon me contacter et je m'expliquerais mieux.
    Ce code n'est qu'une version temporaire, car il n'est pas "propre", je reposte la version finale des que je l'ai teste.

    Comment


    • #3
      Bien voila un code plus "propre" ou il ne rentre pas dans les 2 tests (if).
      Il y a bcp de solution, cela ne me parait pas la plus ellegante, mais celle avec un elseif me retourne toujours un code out of bound.Je n'est pas trop le temps de savoir pourquoi.
      Donc je vous en propose une autre.

      Remplacer
      Code:
      if (($in_usage > $critical) or ($out_usage > $critical)){
      $status = "CRITICAL";
      printf($status);
      }
      if (($in_usage > $warning) or ($out_usage > $warning)){
      $status = "WARNING";
      printf($status);
      }
      Par
      Code:
      if ((($in_usage > $warning) or ($out_usage > $warning)) and (($in_usage < $criti
      cal) and ($out_usage < $critical))){
              $status = "WARNING";
      }
      
      if (($in_usage > $critical) or ($out_usage > $critical)){
              $status= "CRITICAL";
      }
      Voila
      Aways
      Last edited by aways; 24 April 2007, 16:45.

      Comment


      • #4
        je comprend pas trop...

        j'ouvre le plugin et je trouve ca :

        if (($in_usage > $critical) or ($out_usage > $critical)){
        $status = "CRITICAL";
        }

        if(($in_usage > $warning) or ($out_usage > $warning)){
        $status = "WARNING";
        }

        quel plugin utilisez vous ?
        Julien Mathis
        Centreon Project Leader
        www.merethis.com |

        Comment


        • #5
          Bas oui justement ceci est faut ne marche pas (question de logique).
          Le premier if est verifier dans le cas d'un erreur critique, mais le warning aussi est verifier forcement.
          Donc a la derniere sortie du if, on se retrouve avec un status warning plustot que critique.
          C'est bien ce que j'ai mis de remplacer juste au dessus ....

          Comment


          • #6
            Le probleme est bien present, et il as ete corriger dans un patch.
            Vu avec julio hier.
            Merci
            Si un admin pouvez mettre un petit resolu dans le titre.

            Aways

            Comment

            Working...
            X