Saída média de dstat

3

Preciso calcular a velocidade média de upload e download usando dstat -n . Como posso adicionar todos os tamanhos de dados recebidos e enviados que aparecem após dstat -n , para que eu possa adicioná-los e encontrar a velocidade média de upload e download durante algum período de tempo?

    
por Optimus Prime 25.01.2013 / 17:35

3 respostas

0

Como ninguém respondeu, eu descobri. Aqui está como fazer isso. Vamos dizer que precisamos medi-lo por "2 min (120 seg)". Primeiro, escreva-o em um arquivo chamado stat.txt. Atualize a cada segundo 120 vezes.

   dstat -n 1 120 >> stat.txt

Adicione as colunas do stat.txt

   awk -F" " '{t1=t1+$1;t2=t2+$2}END{t1=t1/120;t2=t2/120;print t1"\t"t2}' stat.txt

Remover stat.txt

   rm stat.txt

Também podemos criar um script a partir desses comandos.

    
por 26.01.2013 / 07:31
2

Você basicamente deseja que dstat forneça uma média em um determinado período (por exemplo, 120 segundos). Isso funciona exatamente da mesma forma que vmstat ou ifstat , o primeiro argumento é o delay , que significa o tempo fornecido para fornecer médias. O padrão é 1 segundo.

Então, isso deve ser feito:

dstat -n 120

ou para determinadas interfaces eth0 e eth1 , do:

dstat -n -N eth0,eth1 120

ou para todas as interfaces:

dstat -n -f 120

Mas se você preferir alguma saída que possa pós-processar, provavelmente é mais interessante que ela escreva os dados CSV:

dstat -n -f -o stat.csv 120

Que gravará a média de 120 segundo em um arquivo CSV chamado stat.csv .

    
por 22.04.2015 / 15:58
0

Parece que dstat é uma versão renomeada / hackeada dos comandos sysstat , e eles te darão a medida tráfego, não largura de banda ("velocidade"). Para obter isso (e isso dependerá da carga do sistema de destino, o caminho para chegar lá, ...), use algo como curl (1), que dirá a você depois qual foi a velocidade média. Além disso, a maioria das instalações domésticas são assimétricas, sua largura de banda de upload é uma fração da de download.

Considere também que a largura de banda bruta não é suficiente, a latência é crítica para aplicativos interativos (especialmente jogos).

Talvez uma olhada no fenômeno bufferbloat também esteja em ordem.

    
por 29.01.2013 / 16:50