Subscription date : 09 August 2010
Messages : 11
|
Bonjour,
J'ai configuré mon doncky pour obtenir un résultat des plus satisfaisant. Je n'arrive toutefois pas à y intégrer les infos sur mon trafic réseau.
Quelle commande utilisez vous ?
J'ai trouvé quelques solutions sur le site mais chacune d'elle nécessite l'installation d'une application extérieure supplémentaire. Toutefois l'applet Réseau de Glx renvoie le trafic up et down. Comment récupérer sa requête ?
Merci d'avance.
Julien |
matttbe, Friday 20 August 2010 à 19:06
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Salut!
Il y a une commande bash qui donne des info sur la connexion il me semble mais je ne l'ai plus en tete. Regarde à la fin du man ifconfig, il y a des noms d'outils semblables.
Il n'y a pas une commande interne dans Doncky?
C'est une question pour Nochka (ou taiebot) je pense  |
fabounet, Saturday 21 August 2010 à 02:39
|
|
Subscription date : 30 November 2007
Messages : 17118
|
ou sinon direct dans /proc |
Subscription date : 09 August 2010
Messages : 11
|
Oui. Les infos sont dans proc/net/dev.
Pour la vitesse, il suffit de récupérer les données reçues au temps t (cat /proc/net/dev | grep eth0 | sed -e "s/eth0://" | awk '{print $1}') et ensuite au temps t+5 après un sleep. La formule étant simplement ((T+5)-T)/5
En théorie pas compliqué, je débuté juste et c'est encore un peu du chinois pour moi. De plus la recours à Awk nécessite d'utiliser des quotes ce qui m'empêche d'utiliser la commande directement dans le conf.xml de doncky.
J'avance... |
fabounet, Tuesday 24 August 2010 à 12:07
|
|
Subscription date : 30 November 2007
Messages : 17118
|
awk n'est pas nécessaire ici, avec un "cut" ça devrait le faire aussi |
SQP, Tuesday 24 August 2010 à 12:15
|
|
Subscription date : 03 July 2010
Messages : 1081
|
est ce qu'il serait possible d'avoir ca en applet, pour bénéficier du mode graph ? |
Subscription date : 09 August 2010
Messages : 11
|
L'applet existe déjà, il me semble. |
fabounet, Tuesday 24 August 2010 à 12:38
|
|
Subscription date : 30 November 2007
Messages : 17118
|
il y'a netspeed qui le fait, et network-monitor le fera aussi (un jour ) |
SQP, Tuesday 24 August 2010 à 13:21
|
|
Subscription date : 03 July 2010
Messages : 1081
|
euh j'ai buggué, je voulais un graph de l'activité disque qui va surement necessiter un applet spécifique |
fabounet, Tuesday 24 August 2010 à 17:00
|
|
Subscription date : 30 November 2007
Messages : 17118
|
ça peut se rajouter à system-monitor, vu qu'on peut l'instancier plusieurs fois
tiens d'ailleurs il manque aussi la température CPU |
Subscription date : 09 August 2010
Messages : 11
|
Ce code calcule la vitesse de dowload (de eth0 pour le moment):
#!/bin/bash
# Downspeed 0.0
#Intervalle
T=5
#1re mesure
rm /tmp/Downspeed
cat /proc/net/dev | grep eth0 | sed -e "s/eth0://" | awk '{print $1}'> /tmp/Downspeed
while true :
do
#Mesure suivante
sleep $T
cat /proc/net/dev | grep eth0 | sed -e "s/eth0://" | awk '{print $1}'>> /tmp/Downspeed
#Sélection des mesures
T1=`head -n 1 /tmp/Downspeed`
T2=`tail -n 1 /tmp/Downspeed`
let SPEED=($T2-$T1)/$T
KO=`echo "scale=3;${SPEED}/1024" |bc`
echo $KO" ko/s"
#Suppression de la première mesure
sed -i '1d' /tmp/Downspeed
done |
SQP, Tuesday 24 August 2010 à 20:11
|
|
Subscription date : 03 July 2010
Messages : 1081
|
j'ai juste arrangé un peu le code pour eviter le fichier temporaire, je ne me suis pas penché sur les calculs (mais ca a l'air de correspondre)
#!/bin/bash
# Downspeed 0.0a
#Intervalle
TIMER=5
function get_value () {
echo `grep eth0 /proc/net/dev | cut -d':' -f2 | cut -d' ' -f1`
}
function display () {
KO=`echo "scale=3;${1}/1024" |bc`
echo $KO" ko/s"
}
#1re mesure
OLD=$(get_value)
while true :
do
sleep $TIMER
#Mesure suivante
NEW=$(get_value)
let SPEED=($NEW-$OLD)/$TIMER
echo $(display $SPEED)
OLD=$NEW
done
petites remarques :
pas besoin du cat, "grep string fichier" suffit, et le conseil du cut était bon, je l'ai gardé
c'est mieux de vérifier si le fichier existe avant de l'effacer
[ -e /tmp/Downspeed ] && rm /tmp/Downspeed |
matttbe, Tuesday 24 August 2010 à 20:25
|
|
Subscription date : 24 January 2009
Messages : 12573
|
J'allais proposer la même chose  |
Subscription date : 09 August 2010
Messages : 11
|
Pour ajouter le script dans le Doncky, j'ai supprimé le sleep et mis un refresh dans le Doncky.xml.
J'ai supprimé le cat mais gardé le awk. Quel est l'avantage du cut sur le awk ? (De plus le second cut ne semblait pas marcher).
Donc, je crée 2 fichiers l'un nommé Upspeed.sh:
#!/bin/bash
# Upspeed 0.1
#Intervalle
TIMER=5
#Suppression de l'information périmée
if [ -z /tmp/Upspeed ] || [ "`wc -l '/tmp/Upspeed' | awk '{print $1}'`" != 2 ]
then
grep eth0 /proc/net/dev | sed -e "s/eth0://" | awk '{print $9}'>> /tmp/Upspeed
echo "En cours de calcul ..."
elif [ -e /tmp/Upspeed ] && [ "`wc -l '/tmp/Upspeed' | awk '{print $1}'`"=2 ]
then
#Nouvelle mesure
sed -i '1d' /tmp/Upspeed
grep eth0 /proc/net/dev | sed -e "s/eth0://" | awk '{print $9}'>> /tmp/Upspeed
#Calcul de la vitesse
OLD=`head -n 1 /tmp/Upspeed`
NEW=`tail -n 1 /tmp/Upspeed`
let SPEED=($NEW-$OLD)/$TIMER
KO=`echo "scale=3;${SPEED}/1024" |bc`
echo $KO" ko/s"
fi
L'autre Downspeed.sh:
#!/bin/bash
# Downspeed 0.1
#Intervalle
TIMER=5
#Suppression de l'information périmée
if [ -z /tmp/Downspeed ] || [ "`wc -l '/tmp/Downspeed' | awk '{print $1}'`" != 2 ]
then
grep eth0 /proc/net/dev | sed -e "s/eth0://" | awk '{print $1}'>> /tmp/Downspeed
echo "En cours de calcul ..."
elif [ -e /tmp/Downspeed ] && [ "`wc -l '/tmp/Downspeed' | awk '{print $1}'`"=2 ]
then
#Nouvelle mesure
sed -i '1d' /tmp/Downspeed
grep eth0 /proc/net/dev | sed -e "s/eth0://" | awk '{print $1}'>> /tmp/Downspeed
#Calcul de la vitesse
OLD=`head -n 1 /tmp/Downspeed`
NEW=`tail -n 1 /tmp/Downspeed`
let SPEED=($NEW-$OLD)/$TIMER
KO=`echo "scale=3;${SPEED}/1024" |bc`
echo $KO" ko/s"
fi
Ensuite, je fais appel à mes scripts dans Doncky.xml :
<txt>Download : </txt>
<cmd>
<echo>`<chemim>/Downspeed.sh`</echo>
<refresh>5</refresh>
</cmd>
<br>1</br>
<txt>Upload : </txt>
<cmd>
<echo>`<chemim>/Upspeed.sh`</echo>
<refresh>5</refresh>
</cmd>
<br>1</br> |
|