Page 1 sur 2

Monitoring bande passante

Publié : 01 juin 2015, 17:07
par vin100
Bonjour tous,

Je suis chez numericable la plupart du temps ca dépote bien mais j'ai eu des petit soucis qui venais de mon install a priori du coup je cherchais un moyen de monitorer la bande passante car le plus souvent ce n'est que le download qui plantais et passé de presque 50 à 3 ... bref je me suis demandé comment faire pour monitorer au plus simple tout ça.

Pourquoi ne pas utiliser domoticz ??? j'ai donc fait un script bash à partir de speedtest-cli et une fois les données récupérées, elles sont postées avec une requette json sur un virtual device en pourcentage car les text sensor n'ont pas de log ou en tout cas ca ne fonctionnait pas pour moi peut être quelqu'un pourra m'en dire plus la dessus.

Cette technique ne fonctionne que sous linux pour ma part c'est un cubietruck le serveur principal sur lequel le script tourne pour windows il existe surement un moyen similaire mais je n'en est pas sous la mains.

Dans un premier temps on va installer speedtest-cli comme cela :

download et copie du fichier dans /usr/bin

Code : Tout sélectionner

sudo wget https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py -O /usr/bin/speedtest-cli
ensuite on le rend executable

Code : Tout sélectionner

sudo chmod +x /usr/bin/speedtest-cli
nous voila donc avec speedtest-cli d'installer. Maintenant il va falloir trouver le serveur le plus proches car c'est toujours mieux pour ce genre de test. Pour cela on va taper la commande suivante:

Code : Tout sélectionner

speedtest-cli --list | grep -i "france"
et on va relever le code du serveur le plus proches de chez nous dans mon cas 1889 pour OVH à roubaix

Ensuite pour que le script fonctionne on crée 3 virtual device en pourcentage que l'on appellera PING, DOWNLOAD et UPLOAD. et on notera leur idx

Après on crée un script dans le dossier de son choix il suffira juste de bien le noté pour la suite moi je l'ai appelé speedtest.sh dans le dossier /home/vince/speedtest/
Il faudra changer le code du serveur trouver précédemment, l'ip du serveur domoticz et l'idx pour chaque device

et après le rendre exécutable par la commande

Code : Tout sélectionner

chmod +x speedtest.sh

Code : Tout sélectionner

#!/bin/bash
speedtest-cli --server 1889 --share --simple > st_results_simple
#sleep 2m
cut -d' ' -f 2  st_results_simple > st_result_cut
#sed -e "s/ //g" st_result_cut > st_result_cutnospace


# variable recup fichier cut
PING=$(sed -n '1 p' st_result_cut)
DOWN=$(sed -n '2 p' st_result_cut)
UP=$(sed -n '3 p' st_result_cut)

echo $PING
echo $DOWN
echo $UP


# envoie info domoticz
curl 'http://192.168.0.10:8080/json.htm?type=command&param=udevice&idx=270&nvalue=0&svalue='$PING
curl 'http://192.168.0.10:8080/json.htm?type=command&param=udevice&idx=271&nvalue=0&svalue='$DOWN
curl 'http://192.168.0.10:8080/json.htm?type=command&param=udevice&idx=272&nvalue=0&svalue='$UP


pour finir on détermine grâce à crontab la fréquence à laquelle on répète le script, moi perso je l'ai mis toutes les heures mais bon on peut le faire plus ou moins de fois par jour, heure, minute etc...

Code : Tout sélectionner

crontab -e
et ensuite on ajoute la ligne

Code : Tout sélectionner

0 */1 * * *  /cheminscript/nomduscript.sh
Et voila maintenant on log notre bande passante je trouve ca plutot interessant dans mon cas vous me direz ce que vous en pensé

Merci à tous

Vin100

Re: Monitoring bande passante

Publié : 01 juin 2015, 22:30
par patrice
Bonsoir
Merci et comme cela est pratique, j'ai copié ton post vers la section des tutos

Re: Monitoring bande passante

Publié : 02 juin 2015, 08:47
par jackslayter
intéressant

Re: Monitoring bande passante

Publié : 02 juin 2015, 09:08
par vil1driver
Bonjour,
Très sympa en effet mais généralement lors d'un test de bande passante on essai de ne pas du tout l'utiliser pour avoir une valeur cohérente.
Le fait que cela soit automatiquement déclanché à heure fixe, me gène un peu, l'usage que l'on peut avoir d'internet au moment du teste doit fortement influencer le résultat.
Maintenant, pouvoir lancer le script manuellement par exemple en l'associant à 'action On' d'un bouton, et sauver le résultat dans domoticz est intéressant.
Merci pour le script.

Re: Monitoring bande passante

Publié : 02 juin 2015, 09:20
par vin100
oui j'ai pensé à cela mais en ce moment vu que j'ai des dysfonctionnements c'est intéressant d'avoir le log comme cela mais on peut effectivement pensé utiliser le script avec un virtual device sans problèmes je pense que c'est perfectible mais pourquoi pas pensé un ping plus regulier et un test juste une fois par jour etc mais je ne sais pas si c'est fesable avec speedtest-cli mais c'est du python donc on doit bien pouvoir modifié un peut tout ca

Re: Monitoring bande passante

Publié : 20 sept. 2015, 21:51
par LSBdu68
Salut Vin100,

j'essaye de faire fonctionner le monitoring de la BD mais je n'ai aucun résultat. j'ai copié et modifié le fichier .sh.
Pourrais tu me guider ?
Merci à toi

Re: Monitoring bande passante

Publié : 26 sept. 2015, 11:42
par LSBdu68
Salut Vin100,

Lorsque je lance une commande sh serveur.sh, j'ai la réponse suivante :
35.408
42.06
3.48
<html><head><title>Unauthorized</title></head><body><h1>401 Unauthorized</h1></body></html><html><head><title>Unauthorized</title></head><body><h1>401 Unauthorized</h1></body></html><html><head><title>Unauthorized</title></head><body><h1>401 Unauthorized</h1></body></html>pi@raspberrypi ~/domoticz $

Aurai tu une explication ?

Re: Monitoring bande passante

Publié : 26 sept. 2015, 14:44
par vil1driver
comme dab, user & pass à mettre dans les url

Re: Monitoring bande passante

Publié : 26 sept. 2015, 15:31
par LSBdu68
Salut Vil,

Tu veux dire que je dois mettre mon id et mdp dans chacune des url, dans le style :
curl 'http://ID:mdp@192.168.0.24:8080/json.ht ... lue='$PING

C'est ca ?

Re: Monitoring bande passante

Publié : 26 sept. 2015, 15:38
par LSBdu68
Bien vu Vil,

Merci encore un fois, et toujours pour le meme soucis, ID et mdp.
Bon, si je passe un jour à Rennes, ....... :D :D :D