[Bash] Monitoring bande passante

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
vin100
Messages : 29
Inscription : 12 mars 2015, 12:00

[Bash] Monitoring bande passante

Message 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
Cubietruck - domoticz principal - RFXcom / Zwave
2 x Raspberrypi B - domoticz slave - PiFace - RFlink - Mysensors
Plein de device RF et zwave dans tout les sens
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Monitoring bande passante

Message par vil1driver »

doublon avec ce sujet
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
jackslayter
Messages : 1040
Inscription : 30 sept. 2014, 14:40
Localisation : Isère (38)

Re: Monitoring bande passante

Message par jackslayter »

oui est non car c'est patrice qui la mis la ;)
patrice a écrit :Bonsoir
Merci et comme cela est pratique, j'ai copié ton post vers la section des tutos
Raspberry Pi + RFLink + Domoticz Beta
Oregon - 3x Thgr122Nx / Chacon - micromodule 200w, télécommande 3b et 16b, 2x module 1000w, détecteur de fumée, contact de porte, 2x prise 3500w / OWL - CM180 / TRC02 v2 RGB 3M / Cheap - PIR, contact de porte
patrice
Messages : 1720
Inscription : 22 sept. 2014, 21:51

Re: Monitoring bande passante

Message par patrice »

Bonjour
Merci les gars de vos contributions et participation
Raspberry pi 3, Dongle RfxCom et Zigate +, plugin de pipiche, Volets Roulants profalux, contrôle d'éclairage, détecteurs de présence, alarme incendie, pilotage livebox ...
Objectif : WAF > 1
Datawolf
Messages : 273
Inscription : 03 avr. 2018, 13:51

Re: Monitoring bande passante

Message par Datawolf »

[Mode déterrage=On]

Bonjour vin100,

Merci pour ce script. Je n'ai pas réussi à l'installer (erreur 404) avec :

Code : Tout sélectionner

sudo wget https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py -O /usr/bin/speedtest-cli
mais j'y suis arrivé avec l'instruction telle que mentionnée sur github:

Code : Tout sélectionner

sudo wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
EDIT:
J'ai d'abord eu un problème de permission =>résolu avec un sudo chmod +x /usr/bin/speedtest-cli
Mais le script ne renvoyait rien.
J'ai donc fini par exécuter speedtest-cli (sudo speedtest-cli) : il ne se passait rien.
J'ai alors refait une install avec sudo pip install speedtest-cli
J'ai alors eu "ERROR: No matched servers: 1889" => on peut virer l'option SERVER, ou en trouver d'autres sur http://speedtestserver.com/. ;)

@+
Datawolf
TG76
Messages : 49
Inscription : 10 nov. 2017, 12:04

Re: Monitoring bande passante

Message par TG76 »

Bonjour,

j'ai beau essayer différentes versions, différents réglages, je n'ai aucunes remontée sur DZ.

ca marche bien en ligne de commande, mais rien ne remonte.

j'ai essayé de mettre a la fin http://user:mdp@ip... rien n'y fait

Si quelqu'un peut me filer un coup de main...

d'avance merci
Domoticz sur raspberry pi4 + station météo WMR86
Porte auto poulailler par détournement moteur porte de garage
suivi nas synology et onduleur
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: Monitoring bande passante

Message par denis_brasseur »

Tu as bien personnalisé les idx de tes virtual device ?

Code : Tout sélectionner

# 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
PING, DOWN et UP doivent être des custom sensor.
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
TG76
Messages : 49
Inscription : 10 nov. 2017, 12:04

Re: Monitoring bande passante

Message par TG76 »

Merci de ta réponse,

je n'ai pas réussi a avoir de retour d'état avec ce script. je suis passé par un autre script qui fonctionne et avec lequel on peut lancer manuellement une requête.
Domoticz sur raspberry pi4 + station météo WMR86
Porte auto poulailler par détournement moteur porte de garage
suivi nas synology et onduleur
Répondre