Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#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é smile
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 smile

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 ! smile
Et ce message est posté avec elinks big_smile


%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 smile

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 smile

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)

screenart a écrit :

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 smile (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 !! smile

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 smile
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 : Image
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 tongue

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 big_smile

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