exemple manuel :
1 2 3 4 5 6 7 8 9 10 11
| francois@testbox:/sys/bus/scsi/devices/1:0:0:0$ cat iodone_cnt
0x3650
francois@testbox:/sys/bus/scsi/devices/1:0:0:0$ cat iodone_cnt
0x3652
francois@testbox:/sys/bus/scsi/devices/1:0:0:0$ cat iodone_cnt
0x3652
francois@testbox:/sys/bus/scsi/devices/1:0:0:0$ cat iodone_cnt
0x3673
francois@testbox:/sys/bus/scsi/devices/1:0:0:0$ cat iodone_cnt
0x3673
francois@testbox:/sys/bus/scsi/devices/1:0:0:0$ |
ca marcherai pareil avec /sys/bus/ide/etc...etc...
suffirait de faire un petit script pour
toutes les X secondes faire la meusure
convertir en decimal
et regarder l'heure
faire le compte par rapport aux precedents et diviser (moyenne)
le lancer par l'inittab :
............:respawn:/commun/script
et genre ( a adapter a tes besoins (la je prends 60 meusures et toutes les 60 meusures je fais la moyenne et je l'envoie dans un fichier IO_moyenne_last_hour
l'historique de l'heure en cours est ainsi consultable dans IO_liste
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
#!/bin/ksh
sleep 60
val=$(cat /sys/bus/scsi/devices/1:0:0:0)
=======>ici mettre la convertion de val en decimal<========
echo $val >> /tmp/IO_liste
if [ $(wc -l /tmp/IO_liste) -eq 60 ]; then
# pour faire la moyenne sur une heure donc sinon remplir le fichier liste
vi -c "2,$ s/$/+/|:wq" /tmp/IO_liste
#pour l'interpreteur desktop calculator (equ bc mais en rpn pour se simplifier la vie)
echo "60 / ps. quit" >> /tmp/IO_liste
#pour faire la division par 60 meusures (tjrs parceque pour faire la moyenne...faut bien diviser par le nombre de valeurs)
cat /tmp/IO_liste | dc > /tmp/IO_moyenne_last_hour
#purger le fichier pour l'heure suivante
cat /dev/null > /tmp/IO_liste
fi
exit |
ce qui sauf faute de syntaxe donne un fichier qui ressemble a ca :
1 2 3 4 5 6
| 360220
360572+
360834+
....
371954+
60 / ps. quit |
c'est a dire la syntaxe de dc pour calculer la moyenne ps. pour afficher et quitpour quitter la calculatrice
et envoyer le resultat dans /tmp/IO_moyenne_last_hour
le seul truc a ecrire ou trouver tout fait est que j'ai pas mis ici c'est un convertisseur hexa vers decimal j'ai juste note ou le mettre en oeuvre mais bon je vais pas me lancer a en ecrire un a 2h35 un dimanche matin.... je te laisse chercher..
Partager