+ Responder ao Tópico



  1. #1
    whinston
    Visitante

    Padrão Tráfego de rede

    Galera, quando a gente usa o ifconfig, ele mostra o tráfego processado por uma interface:

    eth1 Link encap:Ethernet HWaddr 00:11:2F:36:81:EB
    inet addr:200.171.x.y Bcast:200.171.x.t Mask:255.255.255.192
    inet6 addr: fe80::211:2fff:fe36:81eb/64 Scope:Link
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX packets:101275 errors:0 dropped:0 overruns:0 frame:0
    TX packets:105104 errors:0 dropped:0 overruns:0 carrier:0
    collisions:133 txqueuelen:1000
    RX bytes:59699902 (56.9 MiB) TX bytes:17393171 (16.5 MiB)
    Interrupt:10 Base address:0x9800

    preciso fazer um script pra pegar estes valor no ifconfig ou tem algum arquivo de log (ou talvez no /proc) onde isto fique gravado?[/b]

  2. #2



  3. #3

    Padrão Vê se ajuda

    Não sei exatamente o que você quer mais da uma olhada no script em perl, que o tema smooty do superkaramba usa.



    Fiz umas adaptações aqui e foi blz.


    SCRIPT
    _________________________________


    #!/usr/bin/perl

    $packet_in = `cat /proc/net/dev | grep eth0 | awk -F: '/:/ {print \$2}' | awk '{printf \$1}'`;
    if($packet_in < 1024**3) { $packet_in = sprintf("%.02f",$packet_in / 1024**2)." Mb"; } else { $packet_in = sprintf("%.02f", $packet_in / 1024**3)." Gb"; }
    print $packet_in ."\n";

    $packet_out = `cat /proc/net/dev | grep eth0 | awk -F: '/:/ {print \$2}' | awk '{print \$9}'`;
    if($packet_out < 1024**3) { $packet_out = sprintf("%.02f",$packet_out / 1024**2)." Mb"; } else { $packet_out = sprintf("%.02f", $packet_out / 1024**3)." Gb"; }
    print $packet_out ."\n";

    __________________________________________________________

    Salva aí, da permissão de execusão e
    $ perl eth0.pl

    Irá exibir primeiro o trafego de entrada e depois de saída.

    Blz.

    Acho que deve ajudar ...

  4. #4
    whinston
    Visitante

    Padrão muito foda!

    Citação Postado originalmente por sparch
    muito foda, valeu !



  5. #5
    whinston
    Visitante

    Padrão Re: Vê se ajuda

    ./fluxorede eth1
    174.54 Mb
    24.55 Mb


    funcionou lindeza, valeu!

    Citação Postado originalmente por warlinux
    Não sei exatamente o que você quer mais da uma olhada no script em perl, que o tema smooty do superkaramba usa.



    Fiz umas adaptações aqui e foi blz.


    SCRIPT
    _________________________________


    #!/usr/bin/perl

    $packet_in = `cat /proc/net/dev | grep eth0 | awk -F: '/:/ {print \$2}' | awk '{printf \$1}'`;
    if($packet_in < 1024**3) { $packet_in = sprintf("%.02f",$packet_in / 1024**2)." Mb"; } else { $packet_in = sprintf("%.02f", $packet_in / 1024**3)." Gb"; }
    print $packet_in ."\n";

    $packet_out = `cat /proc/net/dev | grep eth0 | awk -F: '/:/ {print \$2}' | awk '{print \$9}'`;
    if($packet_out < 1024**3) { $packet_out = sprintf("%.02f",$packet_out / 1024**2)." Mb"; } else { $packet_out = sprintf("%.02f", $packet_out / 1024**3)." Gb"; }
    print $packet_out ."\n";

    __________________________________________________________

    Salva aí, da permissão de execusão e
    $ perl eth0.pl

    Irá exibir primeiro o trafego de entrada e depois de saída.

    Blz.

    Acho que deve ajudar ...

  6. #6

    Padrão Tráfego de rede

    Caraca Lindo isso