Como salvar o instantâneo da saída do systat?

2

Costumo usar o comando systat -ifstat para obter um instantâneo da atividade da rede: quanto tráfego o nosso servidor de arquivos recebe de três redes (existe uma global e duas VLANs). Temos diferentes microscópios em diferentes redes, por isso é útil dizer "temos muito tráfego no mês passado a partir desses 'escopos"

 @freenas] ~# systat -ifstat
                /0   /1   /2   /3   /4   /5   /6   /7   /8   /9   /10
 Load Average

  Interface           Traffic               Peak                Total
    epair0a  in      0.000 KB/s          0.000 KB/s          776.518 MB
             out     0.000 KB/s          0.000 KB/s           89.351 GB

    bridge0  in      0.000 KB/s          0.000 KB/s          180.075 GB
             out     0.000 KB/s          0.000 KB/s           73.352 TB

        lo0  in      0.000 KB/s          0.000 KB/s           14.709 GB
             out     0.000 KB/s          0.000 KB/s           14.709 GB

        ix1  in      0.000 KB/s          0.000 KB/s            1.196 TB
             out     0.000 KB/s          0.000 KB/s          987.869 GB

       igb1  in      0.000 KB/s          0.000 KB/s            1.340 GB
             out     0.000 KB/s          0.000 KB/s           35.027 GB

       igb0  in      0.000 KB/s          0.000 KB/s           46.266 TB
             out     0.000 KB/s          0.000 KB/s           73.209 TB

No entanto, eu prefiro ter esse instantâneo por e-mail para mim de vez em quando para manutenção de registros. Como eu posso fazer isso? O redirecionamento usual de saída não funciona porque o systat -ifstat é um utilitário "orientado para a tela".

Como posso tirar um instantâneo de systat -ifstat em um arquivo? Mais precisamente, como posso obter um instantâneo da quantidade de tráfego que passou por interfaces?

@freenas] ~# uname -a
FreeBSD freenas.local 9.3-RELEASE-p8 FreeBSD 9.3-RELEASE-p8 #1 r275790+18ab2bc: Wed Jan 21 12:32:31 PST 2015     [email protected]:/tank/home/jkh/build/93/FN/objs/os-base/amd64/fusion/jkh/93/FN/FreeBSD/src/sys/FREENAS.amd64  amd64
    
por aaaaaa 18.12.2017 / 23:10

1 resposta

2

Sysstat é como você escreve para uso interativo. Se você ler a man page, você notará no final que existem referências a outros comandos também:

SEE ALSO
     netstat(1), kvm(3), icmp(4), icmp6(4), ip(4), ip6(4), tcp(4), udp(4),
     gstat(8), iostat(8), vmstat(8)

A primeira referência é netstat que é:

NAME
     netstat - show network status and statistics

Esta é então a ferramenta para coletar estatísticas de maneira não interativa. Você quer saber quanto tráfego passa pelas interfaces?

netstat -i

O que dá a saída:

Name    Mtu Network       Address              Ipkts Ierrs Idrop    Opkts Oerrs  Coll
em0    1500 <Link#1>      00:00:00:00:00:00  1716175     0     0  1557634     0     0
em0       - fe80::%em0/64 0000::0000:000:00        0     -     -        3     -     -
em0       - 11.11.11.0/   static.11.11.11     245402     -     -  1551992     -     -
lo0   16384 <Link#2>      lo0                    530     0     0      530     0     0
lo0       - localhost     localhost                0     -     -        0     -     -
lo0       - fe80::%lo0/64 fe80::1%lo0              0     -     -        0     -     -
lo0       -               localhost              265     -     -      530     -     -
lo1   16384 <Link#3>      lo1                      0     0     0        0     0     0
lo1       - 172.17.2.0/24 172.17.2.0               0     -     -        0     -     -
lo1       - 172.17.2.1/32 172.17.2.1              21     -     -        0     -     -
lo1       - 172.17.2.2/32 172.17.2.2              50     -     -        0     -     -
lo1       - 172.17.2.3/32 172.17.2.3              22     -     -        0     -     -
lo1       - 172.17.2.4/32 172.17.2.4              36     -     -        0     -     -
lo1       - 172.17.2.5/32 172.17.2.5              32     -     -        0     -     -
lo1       - 172.17.2.6/32 172.17.2.6              27     -     -        0     -     -
lo1       - 172.17.2.7/32 172.17.2.7              26     -     -        0     -     -
lo1       - 172.17.2.8/32 172.17.2.8              31     -     -        0     -     -
lo1       - 172.17.2.9/32 172.17.2.9              17     -     -        0     -     -
pflog 33160 <Link#4>      pflog0                   0     0     0      506     0     0

Ipkts são pacotes em e Opackets são pacotes out . Eu acredito que foi o que você está procurando.

Se você quiser em bytes em vez de pacotes, adicione -b e -d se você estiver interessado em pacotes descartados.

Você pode obter uma boa visão geral baseada em protocolos usando netstat -s

Ao olhar para systat , os números para Tráfego e Pico são apenas para a duração do tempo enquanto ele está sendo executado. Você pode fazer a mesma coisa básica usando netstat com o parâmetro -w wait:

netstat -w 5 -q 2 -b -d

Assim, você pode encontrar o que está procurando no sistema básico e enviá-lo por e-mail para você.

O que você não está pedindo

Mas a partir do que você está perguntando, gostaria de indicar a você Munin . Se você quiser ficar de olho no uso da rede, esse é o tipo de ferramenta mais comumente usada. Outros estão disponíveis (ex. netdata ) e o próprio Munin está disponível como um package no FreeBSD. E quando usando o FreeBSD você poderia considerar o uso de Mini Munin .

É uma configuração fácil e oferece bons gráficos assim:

    
por 20.12.2017 / 12:19

Tags