
Voici un petit tutoral technique pour pousser les métriques de vos NanoStations dans votre cacti !
Attention vous devez avoir une bonne connaissance de cacti.
Dans l’installation actuelle nous n’avons pas accès au port SNMP, il a donc fallu trouver une solution pour récupérer les donnés des NanoStations…
Nous allons utiliser un script php à installer dans le dossier /scripts/ comme client au NanoStation que voici :
// ARAN59.FR Version 1.0 $addr = $argv[1]; $post = "username=root&password=".$argv[2]."&uri=/index.cgi"; $rand = mt_rand(1000, 9999); $cook = "/tmp/ubnt_".$rand.".dat"; $call = curl_init(); curl_setopt($call, CURLOPT_RETURNTRANSFER, true); curl_setopt($call, CURLOPT_COOKIEJAR, $cook); curl_setopt($call, CURLOPT_URL, "http://".$addr."/"); curl_exec($call); curl_close($call); $call = curl_init(); curl_setopt($call, CURLOPT_RETURNTRANSFER, true); curl_setopt($call, CURLOPT_POST, true); curl_setopt($call, CURLOPT_POSTFIELDS, $post); curl_setopt($call, CURLOPT_COOKIEFILE, $cook); curl_setopt($call, CURLOPT_COOKIEJAR, $cook); curl_setopt($call, CURLOPT_URL, "http://".$addr."/login.cgi"); curl_exec($call); curl_close($call); $call = curl_init(); curl_setopt($call, CURLOPT_RETURNTRANSFER, true); curl_setopt($call, CURLOPT_COOKIEFILE, $cook); curl_setopt($call, CURLOPT_URL, "http://".$addr."/status.cgi?_=".time()); $json = json_decode(curl_exec($call), true); curl_close($call); $wireless = $json["wireless"]; $airmax = $wireless["polling"]; echo "signal:".$wireless["signal"]." "; echo "noisef:".$wireless["noisef"]." "; echo "txrate:".$wireless["txrate"]." "; echo "rxrate:".$wireless["rxrate"]." "; echo "quality:".$airmax["quality"]." "; echo "capacity:".$airmax["capacity"]; echo "\n"; unlink($cook); ?>
Nous pouvons à présent créer une nouvelle Data Input Methods :

Maintenant il vous faut importer le Data Template ci-joint

A présent il faut ajouter une Data Source :

Il ne vous reste plus qu’à créer le graph de vos rêves =
