informatique

Publié le 6 Décembre 2012

J'aime bien gnuplot, il m'arrive de l'utiliser pour faire des analyse post-astreinte avec des graphs sur des (sys)logs. En general je awk/cut/count/grep pour finir avec un csv qu'un tableur classique pourrai ouvrir sauf s'il y a des millions de lignes.

 

L'astuce suivante est surtout pour gerer des timeseries. 

 Dans l'exemple suivant j'ai un fichier sous la forme suivante separée par des espace (a cause de uniq -c)

     112 23:24

 

la premiere valeur est un count, la 2eme est sous la forme %H:%M (un coup de cut pour virer les minutes) avant d'avoir le nombre d'evenement par minute. Et on peut dire a gnuplot de traier du temps au lieu de valeur.

 

On specifie le time format :

gnuplot> set timefmt "%H:%M"

on indique que l'axe x sera des valeurs temporelles :

gnuplot> set xdata time

on indique le format de l'axe x (autrement il va bettement mettre 01/01 partout, pff)

gnuplot> set format x "%H:%M"

on veut un tics par heure (3600 secondes)

gnuplot> set xtics 3600

on specifique le separateur du csv :

gnuplot> set datafile separator " "

 

y'a plus qu'a grapher :

gnuplot> plot "foobar.csv" using 2:1 with line

2:1 au lieu de 1:2 parce que dans le fichier d'origine l'axe x est en 2eme "Y X" au lieu de l'habituel "X Y" si vous avez un fichier ou il y a une seule colonne vous pouvez indiquer que l'axe X (ou Y d'ailleurs mais c'est moins banal) est le N° de ligne

Dans ce cas la, par exemple on a un fichier sous la forme suivante :

12

 42

 11


y'a juste a faire :

gnuplot> plot "truc.whatever" using 0:1

dans gnuplot la colonne 0 est le N° de ligne.

Bah, simple et efficace, souvent pratique mais pas pour les timeseries (a moins de generer tres exactement une valeur toutes les minutes par exemple, mais autrement c'est un peu foireux)

 

Pour generer les fichiers a traiter par gnuplot, je conseille bien evidemment d'utiliser awk :)

 Un autre truc qui peut etre sympa est de generer automatiquement des graphs en creant un fichier gnuplot.

 Y'a juste a ecrire un header avec la config de gnuplot suivi d'un plot "-" ... puis les data terminées par "e"


Exemple :

ker2x@arthurus:~$ cat tuto.gnuplot

 set term pngcairo

set output "tuto.png"

plot "-" using 0:1 with line

1

2

3

e

ker2x@arthurus:~$ gnuplot tuto.gnuplot

ker2x@arthurus:~$ file tuto.png

tuto.png: PNG image, 640 x 480, 8-bit/color RGBA, non-interlaced


Donc on peut faire un awk qui genere ca, en metant le header dans BEGIN { } (en incluant la ligne plot "-") les data dans le corps du fichier awk et "e" dans END {}

 Voila voila, rien de sorcier, juste pratique, et puis j'oublie souvent les noms de commande gnuplot qui vont bien alors la au moins elles seront archivées quelque part :)

Voir les commentaires

Rédigé par keru

Publié dans #Informatique

Repost0

Publié le 1 Décembre 2009

On en parle un peu partout, lepost.fr (détenu par Le Monde Interactif) est "à vendre".
Parce qu'il tourne à perte : entre 1 et 1,6 Millions de pertes pour 200.000€ de chiffre d'affaire malgré ses 2~3 Millions de VU/mois, ca plombe !!

A la fois victime de la frilosité des annonceurs et de son succés ... car les serveurs n'arrivent manifestement pas a tenir la charge.

Je fais des graphiques du temps de generation des pages "portail" de plusieurs sites, on constate qu'il y a quand même un (petit) problème chez lepost.fr :

www.lepost.fr 




 A comparer avec (notez que 200m = 0.2s) :

www.over-blog.com 


Et, il faut bien le reconnaitre,  la très honorable stabilité du portail de :
www.skyrock.com 
 


A noter que tous ces jolis graphique sont calculés depuis un acces internet "grand public" Orange Fibre et pas depuis une connexion professionnelle de type Hebergeur ou Datacenter. 

Comme je ne voudrai pas trop avoir l'air de taper sur l'ambulance (roooh c'est pas mon genre ! hein ?), je tiens quand meme à signaler que lepost.fr n'est pas seul au monde a avoir ce problème. On peut citer :

www.tf1.fr



ainsi que la palme d'or du graphique le plus bizzaroïde :
www.canalblog.com 


 J'avoue que pour canalblog... j'aimerai bien comprendre, par pure curiosité professionnelle.

 

Voir les commentaires

Rédigé par keru

Publié dans #Informatique

Repost0