PDA

View Full Version : Arguments - Comment les définir ?


jip-jip
06-15-2007, 03:56 PM
Bonjour,

Je me suis lancé depuis peu sur Oreon, j'ai donc commencer par tester un service check_host_alive qui marche correctement.

Par contre j'aurais besoin de savoir la place restante sur les disques durs, après avoir recherché un peu partout, je me suis apercu que chacun utilisait son check à savoir entre autres :
check_disk_space
check_distant_disk_space
check_disk_smb
check_local_disk (mais d'après ce que j'ai compris, c'est que pour les disques locaux, c-a-d que ce service ne marche que pour le serveur lui-même ?)

J'en ai essayé quelques uns mais mes services de disques ne marchent pas, dont check_disk_smb (d'après ce que j'ai vu c'est celui qu'il me faut) qui me marque missing argument -w (pour warning, ca j'ai compris ! lol) par contre comment définir ces foutus arguments dans la conf des services ?
dans la cellule argument j'ai essayé -w 80 puis !80 mais toujours rien.

Et dernière question, bête j'en suis sur, comment tester ces commandes en console ? J'ai essayé sous /usr/local/nagios/libexec mais les check apparaissant sous oreon et ceux qui sont sous /usr/local/nagios/libexec ne sont pas du tout les memes alors que je pensais qu'oreon reprenait justement les check de nagios, j'avou être un peu perdu entre nagios et oreon.

Merci à tous ceux qui ont pris le temps de lire ce post.

Nagios 2.6 / Oreon 1.3.3

Arkhan
06-15-2007, 04:38 PM
Voila quelque chose qui j'espère t'aidera. J'avais aussi eu du mal à trouver comment faire et j'ai pas mal fouillé avant d'y arriver.


-- Comment définir les macros de type $ARGn$ pour les plugins ?

cf la doc de nagios à cette page : macros.html

Les paramètres de ces macros sont spécifiés dans la définition de l'objet (host ou service) en les séparant du nom de la commande par des points d'exclamation '!'

Fichier services.cfg :

define service {
hostname linuxdebian
service_description PING
...
check_command check_ping!200.0,80%!400.0,40%
...
}

La commande du controle de service a deux paramètres auxquels on fait référence par les macros $ARGn$. Ici $ARG1$ vaudra "200.0,80%" et $ARG2$ "400.0,40%"
Maintenant supposons qu'on utilise la définition ci-dessus et une commande check_ping :

Fichier checkcommands.cfg :

define command {
command_name check_ping
command_line /usr/local/nagios/libexec/check_ping -H HOSTADDRESS$ -w $ARG1$ -c $ARG2
}

La ligne de commande finale à exécuter sera :
/usr/local/nagios/libexec/check_ping -H 192.168.1.2 -w 200.0,80% -c 400.0,40%

Dans Oreon, pour donner des valeurs à $ARG1$, $ARG2$, etc... avec l'utilisation des plugins, elles sont à mettre dans la case "Arguments" du service qu'on veut surveiller.
Si on reprend l'exemple du dessus, il faut remplir le champ "Arguments" comme ceci :
!200.0,80%!400.0,40%

jip-jip
06-15-2007, 05:21 PM
Voila quelque chose qui j'espère t'aidera. J'avais aussi eu du mal à trouver comment faire et j'ai pas mal fouillé avant d'y arriver.

Attends, un truc que je comprends pas,

!200.0,80%!400.0,40%
je pensais que pour mettre 80% en warning et 90% en critical (par exemple)il fallait mettre !0,80!0,90

que réprésente !200.0,80% 80% mais le 200 ? un truc que je pige pas dans la syntaxe, enfin j'vais quand meme essayé pour voir.

Merci en tout cas, j'en pouvais plus de ces arguments, et impossible à trouver sur google, en tout cas pas aisément !

Laurent M
06-15-2007, 05:33 PM
Ces valeurs sont particulières pour le ping:
-w temps_de_réponse,seuil_en_% -c temps_de_réponse,seuil_en_%

edit: j'avais mis des trucs impossibles

Arkhan
06-15-2007, 05:35 PM
Normalement tu as une aide avec chaque plugins. Je ne me souviens plus de la commande, mais en le lancant avec une certaine option tu dois pouvoir retrouver. Ou alors dans un readme..
Je ne sais plus car je n'ai pour l'instant plus de machine de test Nagios (plus de carte mère :( )

Pour l'exemple que j'ai donné, je l'avais trouvé ici :
http://nagios.manubulon.com/traduction/fr_2.5/macros.html#default_rights

Pour le 200, 400, etc je ne sais plus ce que ça signifie. Mais je me souviens que l'explication de la syntaxe pour le plugin doit être expliqué dans son man.
En gros il faut voir le readme du plugin ou son "help".

Laurent M
06-15-2007, 05:37 PM
-h pour help

jr.tpma
06-15-2007, 06:48 PM
Je te conseil d'utiliser les requetes SNMP.

pour les tester sur une console terminale :

cd /usr/local/nagios/libexec

exemple pour un controler l'espace disque restant sur le disque C: de l'hôte :

./check_snmp_storage.pl -H Hote_IP_Adress -C public -m C: -w 70 -c 85 (valeurs de warning et critical d'exemple)

Pour obtenir l'aide des commandes :

./check_nom_de_la_commande -h dans ce même répertoire.

jip-jip
06-18-2007, 04:28 PM
Je te conseil d'utiliser les requetes SNMP.

pour les tester sur une console terminale :

cd /usr/local/nagios/libexec

exemple pour un controler l'espace disque restant sur le disque C: de l'hôte :

./check_snmp_storage.pl -H Hote_IP_Adress -C public -m C: -w 70 -c 85 (valeurs de warning et critical d'exemple)

Pour obtenir l'aide des commandes :

./check_nom_de_la_commande -h dans ce même répertoire.


Merci à tout le monde pour ces infos, j'ai pu beaucoup avancé, du moins dans la compréhension.
J'ai donc testé cette commande ./check_disk_smb -H 192.168.250.xxx -W ad -u Administrateur -p password -w 80 -c 95 -s c$
qui me retourne la valeur d'occupation.
Par contre quand je veux le mettre sur oréon, j'ai un problème de $
j'ai essayé cette commande sous oréon
$USER1$/check_disk_smb -H $HOSTADRESS$ -W $ARG1$ -u $ARG2$ -p $ARG3$ -w $ARG4$ -c $ARG5$ -s $ARG6$

mais lorsque je saisis !ad!administrateur!password!80!95!C$
ca me marque invalid share c$$ !!! D'ou vient ce double $ je ne sais pas, j'ai donc essayé "c$" mais pareil j'essaye c tout court, et là j'ai l'erreur invalid share : c (normal) mais que je mette c$ dans l'argument, ou directement dans la commande ca ne marche toujours pas, soit ca me double systématiquement mon $ soit ca l'enlève.
Là maintenant, ma commande ressemble à
$USER1$/check_disk_smb -H 192.168.250.xxx -W ad -u Administrateur -p password -w 80 -c 95 -s c$ et erreur : Invalid share name c$$

$USER1$/check_disk_smb -H 192.168.250.xxx -W ad -u Administrateur -p password -w 80 -c 95 -s "c$" ou 'c$' et erreur identique

et étrangement quand je fais $USER1$/check_disk_smb -H 192.168.250.xxx -W ad -u Administrateur -p password -w 80 -c 95 -s "'c$'" l'erreur est : Invalid share 'C$'$

Qqun a t'il déjà eu ce problème de $ fantome ? lol Ca fait 2h que j'essaye toutes les bidouilles possibles et impossible de faire comprendre 1 seul $ !

jip-jip
06-18-2007, 04:56 PM
Merci à tout le monde pour ces infos, j'ai pu beaucoup avancé, du moins dans la compréhension.
J'ai donc testé cette commande ./check_disk_smb -H 192.168.250.xxx -W ad -u Administrateur -p password -w 80 -c 95 -s c$
qui me retourne la valeur d'occupation.
Par contre quand je veux le mettre sur oréon, j'ai un problème de $
j'ai essayé cette commande sous oréon
$USER1$/check_disk_smb -H $HOSTADRESS$ -W $ARG1$ -u $ARG2$ -p $ARG3$ -w $ARG4$ -c $ARG5$ -s $ARG6$

mais lorsque je saisis !ad!administrateur!password!80!95!C$
ca me marque invalid share c$$ !!! D'ou vient ce double $ je ne sais pas, j'ai donc essayé "c$" mais pareil j'essaye c tout court, et là j'ai l'erreur invalid share : c (normal) mais que je mette c$ dans l'argument, ou directement dans la commande ca ne marche toujours pas, soit ca me double systématiquement mon $ soit ca l'enlève.
Là maintenant, ma commande ressemble à
$USER1$/check_disk_smb -H 192.168.250.xxx -W ad -u Administrateur -p password -w 80 -c 95 -s c$ et erreur : Invalid share name c$$

$USER1$/check_disk_smb -H 192.168.250.xxx -W ad -u Administrateur -p password -w 80 -c 95 -s "c$" ou 'c$' et erreur identique

et étrangement quand je fais $USER1$/check_disk_smb -H 192.168.250.xxx -W ad -u Administrateur -p password -w 80 -c 95 -s "'c$'" l'erreur est : Invalid share 'C$'$

Qqun a t'il déjà eu ce problème de $ fantome ? lol Ca fait 2h que j'essaye toutes les bidouilles possibles et impossible de faire comprendre 1 seul $ !


J'ai bon j'ai trouvé, la solution est très étrange puisque j'ai mis -s c$$ et là ca m'a bien pris 1 seul $
J'ai toujours pas compris ce bug étrange marrant et énervant mais en tout cas ca marche !!

Sinon je vois quelques commandes dans /usr/local/nagios/libexec qui ne figure pas dans checkcommands.cfg
Faut les rajouter manuellement ?