PDA

View Full Version : **ePN check_graph_snmp_value.pl: "Option S requires an argurement"


sdesse
23rd February 2007, 15:18
Bonjour,
J'ai un petit souci avec le check_graph_snmp_value.pl. J'ai fait des recherche et j'ai trouvé une solution mais ca ne me satisfait qu'a moitier.

Mon install : OREON 1.3.3, Nagios 2.6 avec l'interpréteur Perl et le cache intégré (ePN). Perl 5.8.4 d'une distribe Debian Sarge à jour.

Quand je lance (en utilisateur nagios) :
./check_graph_snmp_value.pl -H xx.xx.xx.xx -C xxxxxxx -o .1.3.6.1.4.1.17373.2.2.1.5.1 -w 29 -c 35 -g -f -S 111_119
Ok value : 25|value=25;29;35;;
Ca fonctionne.

Par contre lors de l'utilisation du check par nagios ca ne marche pas :
**ePN /usr/local/nagios/libexec//check_graph_snmp_value.pl: "Option S requires an argument".

La commande se nomme bien check_graph_xxx, elle est définie comme suit :
define command{
command_name check_graph_temperature
command_line $USER1$/check_graph_snmp_value.pl -H $HOSTADDRESS$ -C xxxxxxxx -o .1.3.6.1.4.1.17373.2.2.1.5.1 -w $ARG1$ -c $ARG2$ -g -f -S $ARG3$
}

et est le service est le suivant :
define service{
host_name MAINFENV01
service_description Temperature_Salle_Machine
use Template_Service_Reseau
check_command check_graph_temperature!29!35!111_119
max_check_attempts 3
normal_check_interval 6
retry_check_interval 2
check_period 24x7
}

J'ai plein d'autres services type check_graph_traffic qui fonctionnent parfaitement. Le problème semble venir de l'éxécution de ce script par l'interpréteur perl de nagios.

Pour mettre cela en évidence et résoudre le problème j'ai ajouté /usr/bin/perl dans la définition de ma commande :
define command{
command_name check_graph_temperature
command_line /usr/bin/perl $USER1$/check_graph_snmp_value.pl -H $HOSTADDRESS$ -C bourbon148 -o .1.3.6.1.4.1.17373.2.2.1.5.1 -w $ARG1$ -c $ARG2$ -g -f -S $ARG3$
}
et là ca fonctionne !

Qu'un a-t'il les compétences pour fixer ce problème à la source (le script, pas la désactivation de l'interpréteur...)?

Merci.

Seb

surcouf
23rd February 2007, 15:47
Bonjour,
J'ai un petit souci avec le check_graph_snmp_value.pl. J'ai fait des recherche et j'ai trouvé une solution mais ca ne me satisfait qu'a moitier.

Mon install : OREON 1.3.3, Nagios 2.6 avec l'interpréteur Perl et le cache intégré (ePN). Perl 5.8.4 d'une distribe Debian Sarge à jour.

Quand je lance (en utilisateur nagios) :
./check_graph_snmp_value.pl -H xx.xx.xx.xx -C xxxxxxx -o .1.3.6.1.4.1.17373.2.2.1.5.1 -w 29 -c 35 -g -f -S 111_119
Ok value : 25|value=25;29;35;;
Ca fonctionne.

Par contre lors de l'utilisation du check par nagios ca ne marche pas :
**ePN /usr/local/nagios/libexec//check_graph_snmp_value.pl: "Option S requires an argument".

La commande se nomme bien check_graph_xxx, elle est définie comme suit :
define command{
command_name check_graph_temperature
command_line $USER1$/check_graph_snmp_value.pl -H $HOSTADDRESS$ -C xxxxxxxx -o .1.3.6.1.4.1.17373.2.2.1.5.1 -w $ARG1$ -c $ARG2$ -g -f -S $ARG3$
}

et est le service est le suivant :
define service{
host_name MAINFENV01
service_description Temperature_Salle_Machine
use Template_Service_Reseau
check_command check_graph_temperature!29!35!111_119
max_check_attempts 3
normal_check_interval 6
retry_check_interval 2
check_period 24x7
}

J'ai plein d'autres services type check_graph_traffic qui fonctionnent parfaitement. Le problème semble venir de l'éxécution de ce script par l'interpréteur perl de nagios.

Pour mettre cela en évidence et résoudre le problème j'ai ajouté /usr/bin/perl dans la définition de ma commande :
define command{
command_name check_graph_temperature
command_line /usr/bin/perl $USER1$/check_graph_snmp_value.pl -H $HOSTADDRESS$ -C bourbon148 -o .1.3.6.1.4.1.17373.2.2.1.5.1 -w $ARG1$ -c $ARG2$ -g -f -S $ARG3$
}
et là ca fonctionne !

Qu'un a-t'il les compétences pour fixer ce problème à la source (le script, pas la désactivation de l'interpréteur...)?

Merci.

Seb

As-tu lu les conseils de la documentation officielle à propos du support de l'interpréteur embarqué de Perl ?

sdesse
24th February 2007, 03:10
Pour être franc non. Mais maintenant c'est fait, 2x !

J'avoue être en cancre en dev (je me ratrappe sur d'autres sujets). Je ne fais que des petits scripts en perl et je ramme pour le debug.

La doc s'adresse au développeurs principalement, c'est un peu obscur pour moi même avec de bonne volonté. Ce que je ne comprend pas bien c'est pourquoi je n'arrive pas à faire fonctionner ce scripts que des gens plus compétents que moi ont mis au point et probablement testé.

Est-ce moi ou le script ? Dans les deux cas si qqu'un à une idée je ne veux bien la connaitre (a part que j'arrête l'informatique bien sûr!).

Merci.

Seb

sdesse
9th March 2007, 11:14
juste up car ca concerne un plugin OREON et que malgrès avoir lu la doc sur ce point je ne vois pas de cause immédiate.

Seb

flox
14th May 2007, 17:03
Meme problème sur le plugin: check_graph_ping.pl

**ePN /usr/share/nagios2/plugins/eventhandlers/check_graph_ping.pl: "Option S requires an argument".

Si quelqu'un à une solution ?