Script Shell dans une page php pour Nagios

Hit62218 -  
 Pseudo -
Bonjour, actuellement en stage ,j'ai installer Nagios qui fonctionne parfaitement mais j'essaie d'intégrer un script shell que j'ai créer qui va servir dans une page PHP appelée dans l'interface de Nagios.
Mon problème est que je n'arrive pas a faire exécuter mon script via ma page....
Voici ma page Ajout.php :

<?php
if(isset($_POST['btCreer']))
{


$a=$_POST['nom'];
$b=$_POST['ip'];
$c=$_POST['parent'];
$d=$_POST['groupe'];
$e=$_POST['contact'];

exec("/usr/local/nagios/share/script.sh",$a,$b,$c,$d,$e);
echo'Machine Ajoutee
<META HTTP-EQUIV="refresh" CONTENT="2;URL=ajout.php">';

}
else {

echo'<form action="ajout.php" method="post">
Ajout d\' une nouvelle machine<br /><br /><br />';

echo'Nom de la machine: <input type="text" id="nom" name=nom">
<br /><br />
Adresse IP: <input type="text" id="ip" name="ip">
<br /><br />
Parent: <input type="text" id="parent" name="parent">
<br /><br />
Groupe: <input type="text" id="groupe" name="groupe">
<br /><br />
Contact: <input type="text" id="contact" name="contact">
<br /><br />
<input type="submit" value="Creer" id="btCreer" name="btCreer" onclick="return confirmjs();" />
</form>';
}
?>

et on script.sh :

#!/bin/bash

#if [ $# -ne 5 ] ;then

# echo "5 parametres attendu [NOM] [IP] [PARENT] [NOM GROUP] [CONTACT]"

#else

echo "
##########################

define host{
use generic-switch
host_name $a
alias HP 2810
address $b
statusmap_image hp.jpg
parents $c
hostgroups $d
contact_groups $e
}

define service{
use generic-service
host_name $a
service_description PING
check_command check_ping!200.0,20%!600.0,60%
normal_check_interval 5
retry_check_interval 1
}

define service{
use generic-service
host_name $a
service_description Port 1 Link Status
check_command check_snmp!-C public -o ifOperStatus.1 -r 1 -m RFC1213-MIB
}" >> /usr/local/nagios/etc/objects/switch.cfg

echo "#$a,Port 1 Link Status" >> /usr/local/nagios/etc/objects/services.cfg


echo $1 "ajouter! ATTENTION NE PAS OUBLIER DE MODIFIER LE FICHIER SERVICES.CFG (/usr/local/nagios/etc/objects/services.cfg )"
/etc/init.d/nagios restart 1>/dev/null

#fi

Merci d'avance pour vos réponses.

A voir également:

2 réponses

Hit62218 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   1
 
J'ai réussi a régler mon problème... si quelqu'un est intéressé qu'il me le signale je lui fournirai la solution pour ajouté un switch rapidement en passant par l'interface de nagios.
1
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

Happy for you ;-))

Sans attendre que quelqu'un te le demande, tu pourrais très bien donner ta solution, sachant que ça servira sûrement à quelqu'un un jour...

Merci d'avance ;-))
0
James
 
Bonjour Hit62218 je suis aussi en stage et j'aurai besoin de faire ce fameux script a inserer dans nagios pour generer automatiquement des switch peut tu m'indiquer comment tu as proceder stp merci
0
Pseudo
 
À priori le problème viens du fait que dans son script bash il appelle des variables $a $b $c etc.
Ces variables ne sont pas définies dans le script, pour récupérer les arguments il faut utiliser respectivement $1 $2 $3 etc.
0