2010-10-22 36 views
2

Nous sommes en mesure de queue le trafic sur un serveur que nous hébergeons:moyen facile de calculer requêtes par valeur En deuxième lieu, en fonction de journal, avec shell

... 
+1287737841.266952 ... 
+1287737841.267117 ... 
+1287737841.267136 ... 
+1287737841.278288 ... 
+1287737841.278310 ... 
+1287737841.278321 ... 
+1287737841.278331 ... 
+1287737841.278341 ... 
... 

Comme vous pouvez le voir, ils comprennent horodatages, jusqu'à la micro-seconde! Je veux juste pouvoir calculer un QPS flottant (requêtes par seconde), et peut-être par minute, et par heure de ceci. Une façon de le faire avec la coquille?

+0

Quelle plateforme de serveur est-ce? –

+0

Pré-réglage: serveur personnalisé. Pas OSS. –

Répondre

2

En supposant que vous avez bash disponible et que votre journal est sur le fichier traffic.log, cela vous donne le nombre de requêtes par seconde:

chat traffic.log | colrm 1 1 | colrm 11 | uniq -c

Cela vous donne le nombre de requêtes par minute:

pour i dans cat traffic.log | colrm 1 1 | colrm 11; fais écho $ (($ i/60)); fait uniq -c

Et cela vous donne le nombre de requêtes par heure:

pour i dans cat traffic.log | colrm 1 1 | colrm 11; fais écho $ (($ i/3600)); fait Je suis sûr qu'il doit y avoir une manière moins intensive du CPU de le faire mais c'est la première chose qui me vient à l'esprit. Laissez-moi savoir si cela a fonctionné.

+0

Parfait! C'est exactement ce dont j'avais besoin. –

+0

Super! Alors, combien de requêtes traitez-vous par seconde? ;) – bpedro