Pages : 1
#1 Le 22/09/2015, à 18:16
- screenart
Mesurer le volume (entrant/sortant)
Salut à tous,
Je vis dans une zone montagneuse en Colombie et pour moi la seule option pour recevoir internet c'est la 3G. J'ai un forfait limité et pour cela j'aimerai mesurer le débit internet entrant et sortant afin de gérer au mieux ma consommation.
J'ai trouvé le programme jnettop qui me fait ça très bien. Seulement pour que cela me soit plus pratique j'aimerai programmer un script qui enregistre et accumule cette consommation au fil des jours, après plusieurs redémarrage. Si en plus cela on pouvait afficher le résultat dans l'interface (XFCE) ça serai top.
Merci de votre avis éclairé
Matthieu
Dernière modification par screenart (Le 22/09/2015, à 20:40)
Hors ligne
#2 Le 22/09/2015, à 18:30
- nam1962
Re : Mesurer le volume (entrant/sortant)
Pourquoi ne pas jouer avec le contenu de /proc/net/netstat en stockant les valeurs de InOctets et OutOctets ?
Ou regarder du côté de vnstat : http://humdi.net/vnstat/ ?
[ Modéré ]
Hors ligne
#3 Le 22/09/2015, à 18:59
- melixgaro
Re : Mesurer le volume (entrant/sortant)
salut,
Remarque : sauf erreur, il vaudrait mieux que tu modifies ton titre de manière à parler de volume (entrant/sortant) consommé au lieu de débit.
si tu tapes
ifconfig
tu peux lire le volume consommé en entrée et en sortie (la ligne avec TX et RX) pour chaque interface (éthernet, sans-fil)
évidemment, c'est perdu lors d'un redémarrage, donc à toi de t'occuper via un script bash+cron du relevé de ces valeurs
PS : salut nam, c'est normal que le tuto xubuntu avec ses +80 pages de discussion ait disparu du forum ? je sais qu'il avait été fermé mais pendant un moment, il était toujours accessible en lecture. c'est une question épineuse, mais si tu peux répondre par mail (par exemple)
Dernière modification par melixgaro (Le 22/09/2015, à 19:01)
Linux depuis ~2007. Xubuntu seulement.
Hors ligne
#4 Le 26/09/2015, à 02:37
- screenart
Re : Mesurer le volume (entrant/sortant)
Merci pour vos réponses je vais voir ça dès que j'ai un moment
Dernière modification par screenart (Le 26/09/2015, à 15:40)
Hors ligne
#5 Le 26/09/2015, à 06:58
- moko138
Re : Mesurer le volume (entrant/sortant)
En marge de ta demande, screenart, pense aux navigateurs en ligne de commande, ils ne téléchargent pas les images, sauf à ta demande expresse (elles sont remplacées par un lien).
Comme ma connexion faiblit fréquemment, j'ai toujours un terminal ouvert avec elinks.
Par exemple, la page Vos photos que vous voulez partager, page 49 ne pèse plus que 66 kio, malgré ses 25 messages et ses nombreuses photos.
Au début, ça demande un effort d'apprentissage :
- la touche Entrée est un préalable pour pouvoir écrire ;
- les flèches droite et gauche ont un effet variable : quand on n'est pas en train de rédiger, ça fait aller à l'url précédente/suivante.
Ensuite, on trouve ça très confortable !
Et ce message est posté avec elinks
%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel : À la découverte de dcraw
Hors ligne
#6 Le 26/09/2015, à 07:59
- Compte supprimé
Re : Mesurer le volume (entrant/sortant)
Bonjour,
Un petit +1 pour vnstat. D'après ta description du besoin, c'est vraiment ce qu'il te faut. Il est dans les dépôts de la 14.04.
Ensuite tu peux te créer un lanceur "à tiroir" avec XFCE et consulter les stats de la journée, du mois ...
#7 Le 26/09/2015, à 15:54
- screenart
Re : Mesurer le volume (entrant/sortant)
Merci pour vos réponses,
Je vais tester Elink bien que j'ai du télécharger les 929 ko de l'archive hehehe
-----
vnstat a l'air nickel, au niveau des options qu'il propose c'est exactement ce que je voulais SAUF que je n'arrive pas a le faire fonctionner avec ma connexion :
Je me connecte grâce á mon tel portable en usb, les infos de connexion m'indique :
Cableada (usb0)
J'indique a vnstat :
vnstat -i usb0
Mais il ne veut rien entendre
Error: Unable to read database "/var/lib/vnstat/usb0".
Matthieu
Hors ligne
#8 Le 26/09/2015, à 16:06
- screenart
Re : Mesurer le volume (entrant/sortant)
Hola,
apres essaie :
en effet => Elinks c'est sympa et facile je vais practiquer un peu
vnstat => j'ai tenter d'updater la database
sudo vnstat -u -i usb0
a la commande :
vnstat -i usb0
il me sort :
usb0: Not enough data available yet.
Matthieu
Hors ligne
#9 Le 26/09/2015, à 17:53
- Compte supprimé
Re : Mesurer le volume (entrant/sortant)
Not enough
Bon, maintenant il doit y en avoir assez si tu as un peu navigué sur le web
Dernière modification par Compte supprimé (Le 26/09/2015, à 17:55)
#10 Le 27/09/2015, à 16:23
- screenart
Re : Mesurer le volume (entrant/sortant)
hahaha c'est ce que je me disais c'est la première chose que j'ai vérifié en me levant
Toujours pas mais peut-être faut-il au moins 24h je vous tiens au courant plus tard.
+++
Matthieu
Hors ligne
#11 Le 27/09/2015, à 16:55
- Compte supprimé
Re : Mesurer le volume (entrant/sortant)
heu non, j'ai testé sur une VM le jour où j'ai répondu et il n'a fallu que quelques minutes pour obtenir un premier résultat.
Mais c'est sur une connexion filaire.
Tu es certain de "usb0" ? Essaye sans préciser l'interface, avec un truc comme :
vnstat -d
EDIT : c'était sur une 14.04. Là je viens de voir sur une Mint 15.04 et effectivement je n'ai pas encore de résultat.
Tu peux vérifier le bon fonctionnement avec
vnstat -l
tu verras bouger les compteurs en navigant. Juste après, j'ai obtenu une réponse avec vnstat -d.
Dernière modification par Compte supprimé (Le 27/09/2015, à 17:27)
#12 Le 27/09/2015, à 17:22
- moko138
Re : Mesurer le volume (entrant/sortant)
Je vais tester elinks bien que j'ai du télécharger les 929 ko de l'archive
Je percute à retardement :
elinks est dans les dépôts universe.
Il NE faut PAS télécharger d'archive dieu sait où quand les paquets sont disponibles dans les dépôts officiels !
%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel : À la découverte de dcraw
Hors ligne
#13 Le 27/09/2015, à 17:47
- screenart
Re : Mesurer le volume (entrant/sortant)
moko138 => on s'entendait bien, je suis passé par les dépôts mais bon ça reste une archive a télécharger dans l'absolu (c’était juste un trait d'humour -- dépenser des octets pour en gagner )
Tamarou => ta commande est faite pour renvoyer les données du jour (par défaut en eth0). Ici j'ai des données seulement sur eth2 en modifiant la commande il me sort des données mais pas de la connexion que j'utilise actuelement.
vnstat -d -i eth2
Je pense être connecté en usb0 car
- je le vois quand j'utilise jnettop => device usb0
- je le vois dans l'indicateur de connexion dans l'interface option informations => Cableada (usb0)
--------------------
--------------------
finalement j'ai refait la commande :
sudo vnstat -u -i usb0
et modifié les droits du fichier généré dans var/lib/vnstat pour mettre les droits juste pour vnstat et après qqs minutes ça fonctionne !!
Je vais tenter de générer un script pour extraire les bonnes données et les caler dans l'interface, je laisse le poste ouvert.
+++
Mat
Hors ligne
#14 Le 27/09/2015, à 22:17
- screenart
Re : Mesurer le volume (entrant/sortant)
Voici ce que donne le début du script :
MOUTHDOWN=$(vnstat --iface usb0 | awk 'NR ==5 {print $2}')
MOUTHUP=$(vnstat --iface usb0 | awk 'NR ==5 {print $5}')
MOUTHTOT=$(vnstat --iface usb0 | awk 'NR ==5 {print $8}')
DAYDOWN=$(vnstat --iface usb0 | awk 'NR ==18 {print $2}')
DAYUP=$(vnstat --iface usb0 | awk 'NR ==18{print $5 }')
DAYTOT=$(vnstat --iface usb0 | awk 'NR ==18 {print $8}')
echo "Statistique du mois : "
echo "download => ${MOUTHDOWN} MiB"
echo "upload => ${MOUTHUP} MiB "
echo "total => ${MOUTHTOT} MiB"
echo "Statistique du jour : "
echo "download => ${DAYDOWN} MiB"
echo "upload => ${DAYUP} MiB "
echo "total => ${DAYTOT} MiB"
Ce morceau de code fonctionne.
Maintenant je cherche a récupérer les données du traffic temps réel mais la méthode ne fonctionne pas :
LIVEDOWN=$(vnstat -l --iface usb0 | awk ' NR ==1 {print $1 $2 $3 $4 $5}')
echo "Live upload => ${LIVEDOWN} MiB "
Quand je lance cette commande dans un terminal il y a un délai pour récupérer les données est-ce que cela bloque mon script ?
vnstat -l --iface usb0
Merci
Hors ligne
#15 Le 10/11/2015, à 16:18
- screenart
Re : Mesurer le volume (entrant/sortant)
Hello je suis toujours sur l'affaire de ce script, tu moins je le guarde en tache a faire des que j'ai un moment.
Seulement entre temps j'ai migré sur la version 14.04 de Xubuntu qui ne possede plus le "moniteur generique". C'est une option que l'on pouvait ajouter dans la barre d'interface pour lancer un script SH toutes les X secondes.
Avez-vous une solution pour cela ?
Hors ligne
#16 Le 10/11/2015, à 16:57
- Compte supprimé
Re : Mesurer le volume (entrant/sortant)
.Re,
Et la solution que je te proposais au post N°6 ne peut pas convenir ?
Ensuite tu peux te créer un lanceur "à tiroir" avec XFCE et consulter les stats de la journée, du mois ...
Un lanceur pour "vnstat -m", un autre pour "vnstat - d" un autre .....
#17 Le 10/11/2015, à 17:23
- screenart
Re : Mesurer le volume (entrant/sortant)
Pas trop fan du lanceur a tiroir...
L'idée c'est de jeter des coups d'oeil de temps en temps sans interrompre la tache que j'effectue au moment T. J'ai fait une premiere recherche l'autre jour et j'ai trouvé un script pour avoir ce type d'affichage sur la 14.04 ! puis perdu la page qqs jours plus tard...
Hors ligne
#18 Le 10/11/2015, à 17:36
- Compte supprimé
Re : Mesurer le volume (entrant/sortant)
Pas trop fan du lanceur a tiroir...
Alors fait des lanceurs sans tiroir
Je continue à suivre ce sujet car je ne sais pas ce qu'est un "moniteur generique"
Edit : tu penses peut-être à conky. Tu pourrais afficher de temps en temps le résultat d'un script.
https://doc.ubuntu-fr.org/conky
Cela me rappelle des souvenirs pas si lointains.
https://forum.ubuntu-fr.org/viewtopic.p … #p20738491
Dernière modification par Compte supprimé (Le 10/11/2015, à 17:41)
#19 Le 10/11/2015, à 18:01
- screenart
Re : Mesurer le volume (entrant/sortant)
Le "moniteur generique" c'était un des applets de l'interface de Xubuntu 12.04, voici une image du panneau :
C'est tout bete ca execute un script toutes les X secondes et affiche le resultat dans la barre. Je me rend comptes que cela doit etre plus connu sous le nom Genmon
Conky semble afficher sur le bureau (image de fond) ca ne me parait pas pratique lorsque je navigue si je dois minimiser les fenetres pour voir ou j'en suis. Idem le lanceur me fait faire un clic pour afficher un truc qui pourrait se caler dans la barre d'interface comme les autres applets indicateurs classiques.
-------------------
Du coup j'ai retrouvé le plugin Genmon :
https://github.com/dnschneid/xfce4-genmon-plugin
Mais je bloque sur l'installtaion. Il est indiqué : ./configure --prefix=<XFce4InstallationDir> (e.g. /usr/local)
Command not found
Dernière modification par screenart (Le 10/11/2015, à 18:09)
Hors ligne
#20 Le 10/11/2015, à 18:07
- Compte supprimé
Re : Mesurer le volume (entrant/sortant)
Installe donc xfce4-goodies ou si tu veux économiser du volume, au moins xfce4-genmon-plugin
Edit : Je l'ai trouvé en même temps que toi.
Il est dans les dépôts, un coup de
sudo apt-get install xfce4-genmon-plugin
Oui, ça s'affiche dans la barre, mais il faut augmenter la taille d'une ligne et le nombre de lignes dans le tableau de bord. Ou alors faire un filtre.
Avec un "grep" sur le mois ça tient sur une ligne.
Dernière modification par Compte supprimé (Le 10/11/2015, à 18:27)
#21 Le 10/11/2015, à 18:57
- screenart
Re : Mesurer le volume (entrant/sortant)
Il était dans les dépot, alors ca c'est cadeau, Génial
Oui bien sur il faut extraire les données
ALL_DOWN=$(vnstat --iface usb0 | awk 'NR ==5 {print $2 $3}')
ALL_UP=$(vnstat --iface usb0 | awk 'NR ==5 {print $5 $6}')
ALL_TOT=$(vnstat --iface usb0 | awk 'NR ==5 {print $8 $9}')
MOUTH_DOWN=$(vnstat --iface usb0 | awk 'NR ==11 {print $3 $4}')
MOUTH_UP=$(vnstat --iface usb0 | awk 'NR ==11 {print $6 $7}')
MOUTH_TOT=$(vnstat --iface usb0 | awk 'NR ==11 {print $9 $10}')
YESTERDAY_DOWN=$(vnstat --iface usb0 | awk 'NR ==19 {print $2 $3}')
YESTERDAY_UP=$(vnstat --iface usb0 | awk 'NR ==19{print $5 $6 }')
YESTERDAY_TOT=$(vnstat --iface usb0 | awk 'NR ==19 {print $8 $9}')
DAY_DOWN=$(vnstat --iface usb0 | awk 'NR ==19 {print $2 $3}')
DAY_UP=$(vnstat --iface usb0 | awk 'NR ==19{print $5 $6 }')
DAY_TOT=$(vnstat --iface usb0 | awk 'NR ==19 {print $8 $9}')
# "Statistique du mois "
#echo "download => ${MOUTH_DOWN}"
# echo "upload => ${MOUTH_UP} "
echo "${MOUTH_TOT} /mois"
# "Statistique du jour "
# echo "download => ${DAY_DOWN}"
# echo "upload => ${DAY_UP} "
echo "${DAY_TOT} /jour"
Je voulais améliorer ce truc mais pour le moment c'est fonctionnel sur ma connection usb0
Hors ligne