PDA

View Full Version : check_graph_http


nico_papy
28th February 2007, 17:29
salut

je voudrais plus de précision sur la facon dont on utilise le plugin check_graph_http.
en ligne de commande ./check_graph_http.pl -H www.xxxx.ccc -f warning marche très bien, ca renvoie ok et compagnie

par contre via oreon c est un tout autre problème. jai mis mes sites en services, lié a un host qui est le serveur web et je test chaque site avec un check_graph_http avec comme argument !www.xxx.ccc
le problème est que j'ai le message suivant dans information :

Unknown -S Service ID expected... or it doesn't exist, try another id - number

une idé ? svp help !

xspoon
28th February 2007, 18:17
tu utilise probablement un -g sans -S $ARGx$ dant ta definition de commande ?

nico_papy
28th February 2007, 19:09
si pourtant j utilise bien un -g -S $ARGx$

je ne comprend pas d'ou cela peut bien venire..; voila ma commande :
$USER1$/check_graph_http.pl -H $HOSTADDRESS$ -f -g -S $ARG1$

surcouf
28th February 2007, 19:17
si pourtant j utilise bien un -g -S $ARGx$

je ne comprend pas d'ou cela peut bien venire..; voila ma commande :
$USER1$/check_graph_http.pl -H $HOSTADDRESS$ -f -g -S $ARG1$

Dans la définition du service, il ne faut surtout PAS fournir de valeur pour $ARG1$. Tu laisses la macro $ARG1$ dans la définition de la commande mais tu ne dois pas lui fournir de valeur avec le service. Oreon se chargera lui-même de remplir la bonne valeur.
Oui, je sais, c'est un peu tordu mais c'est ainsi que ça fonctionne.

nico_papy
1st March 2007, 10:56
ba pourtant c'est ce que je fais, je ne renseigne pas -S $ARGx$..
dans la commande pour le service je met check_graph_http et dans argument je met simplement : !www.xxx.ccc

surcouf
1st March 2007, 11:42
ba pourtant c'est ce que je fais, je ne renseigne pas -S $ARGx$..
dans la commande pour le service je met check_graph_http et dans argument je met simplement : !www.xxx.ccc

Oui mais www.xxx.ccc, c'est justement la valeur de $ARG1$.
La macro $HOSTADRESS$ récupère l'adresse IP de l'hôte auquel est associé le service exécutant la commande.

nico_papy
1st March 2007, 12:01
ha ok j'ai compri mais dans ce cas il va tester le serveur web, et non le site web ! il me faut un test sur le site, pas sur le serveur.. comment jpeux faire ?

MaEsTrO
1st March 2007, 12:43
check_graph_http --help

nico_papy
1st March 2007, 13:11
j'ai regardé l'help mais ne suis pas sure d'avoir bien saisi..
j'ai donc modifié ma commande de vérification en rajoutant après -H $HOSTADDRESS$, -u $ARG1$
oreon va donc renseigner HOSTADDRESS par l'adresse de lhost auquel apartient le service, puis va renseigner $ARG1$ par la commande rentré en argument, en l occurence ici !www.ssss.cccc. Enfin le -g -S $ARG2$ est renseigné automatiquement. C'est bon ou je me trompe ?

j'ai le résultat de la commande ci-dessus et aparement cela ne marche pas très bien, jai maintenant comme état : warning: HTTP WARNING: HTTP/1.1 400 Bad Request

pourtant les sites que je test sont bels et bien disponible. je sais plus trop quoi faire..

surcouf
1st March 2007, 14:41
j'ai regardé l'help mais ne suis pas sure d'avoir bien saisi..
j'ai donc modifié ma commande de vérification en rajoutant après -H $HOSTADDRESS$, -u $ARG1$
oreon va donc renseigner HOSTADDRESS par l'adresse de lhost auquel apartient le service, puis va renseigner $ARG1$ par la commande rentré en argument, en l occurence ici !www.ssss.cccc. Enfin le -g -S $ARG2$ est renseigné automatiquement. C'est bon ou je me trompe ?

j'ai le résultat de la commande ci-dessus et aparement cela ne marche pas très bien, jai maintenant comme état : warning: HTTP WARNING: HTTP/1.1 400 Bad Request

pourtant les sites que je test sont bels et bien disponible. je sais plus trop quoi faire..

C'est pourtant correct comme configuration. Il est possible que l'URL "/" soit redirigée.
Il faut le vérifier en simulant la requête HTTP via un telnet sur le port 80 (ce que tu dois taper est en gras) :
$ telnet xxx.yyy.zzz.aaa 80
Trying xxx.yyy.zzz.aaa...
Connected to ssss.cccc (xxx.yyy.zzz.aaa).
Escape character is '^]'.
GET / HTTP/1.1
Host: www.ssss.cccc
[ENTER]
...
HTTP/1.0 302 Moved Temporarily
Date: Thu, 01 Mar 2007 12:40:45 GMT
Server: Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-16 mod_jk/1.2.5 DAV/1.0.3
Location: http://www.zzz.ccc/

Et tu auras ta réponse. Dans mon cas, je suis redirigé automatiquement vers une autre URL, cependant un code 302 est considéré comme correct par check_http, si je ne m'abuse.

nico_papy
1st March 2007, 15:30
j'ai fait ce que tu ma dit
telnet IP.MON.SERV.WEB 80
GET / HTTP/1.1
Host: www.monsite.com
[ENTER]
HTTP /1.1 200 OK
[...]
content-location: http://www.monsite.com/index.html
[...]

Apparement mon site a l'air d'être bel et bien sur le serveur. Je ne comprend pas pourquoi le check marche bien. Pourtant je suis sur qu'il y a juste un problème de syntaxe. Si quelqu'un a un exemple concret avec check_graph_http en testant une url je suis preneur. merci pour votre aide

nico_papy
1st March 2007, 15:52
aller, un petit UP a moi tout seul, mais c'est pour la bonne cause puisque j'ai la réponse a ceux qui auront peut être les mêmes problèmes. En fait ma commande est toujours la même c'est a dire ..../check_graph_http -H $HOSTADDRESS$ -u $ARG1$ -f -g -S $ARG2$

pour l'argument, il ne faut pas mettre !www.monsite.com mais !http://www.monsite.com/index.html

et ca marche nikel, ca me renvoi bien le HTTP OK :D

nico_papy
1st March 2007, 16:10
bon j m'enfonce un peu plus dans ce check_graph_http mais je pense que la c est un problème un peu différent. J'ai donc tout mes test sur mes sites webs (check_graph_http) qui sont opérationnels et qui renvoient OK; le problème est que maintenant que cela marche, dans les vue d'oréon je ne peux pas voir les graph associé a check_graph_http, je n'est que des proposition pour les ping... comment faire ?