De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Bruno Buys
Data de Publicação: 25 de Novembro de 2009
Se você assina um serviço 3G com tráfego limitado, pode ser uma boa idéia logar o seu tráfego. Quando a sua navegação mensal estoura a franquia, a cobrança é por byte adicional, e sai beeem caro.
Se você usa o wvdial para se conectar, pode usar este script para logar seu tráfego. Quando rodado, o script desconecta o modem, mas antes, recolhe a informação do volume de tráfego da interface e salva em um arquivo texto.
Faça a conexão 3G:
$ wvdial
ou
$ wvdial &
Desconecte:
$ loga3g
Se o seu usuário pode discar com o wvdial (sem precisar ser root ou usar o sudo), então você pode rodar esse script com o mesmo usuário. Se o seu sistema exige que seja rodado pelo root, então você deve rodar essse script também como root.
O arquivo-texto de log criado vai ter linhas assim:
20091110 - 12:34 - 13:25 - RX bytes:18160923 (17.3 MiB) TX bytes:2087947 (1.9 MiB)
Quanto às unidades de bytes usadas, pode haver alguma confusão. No meu sistema (Debian Lenny), o ifconfig mostra unidades em kibibytes e mebibytes, que são baseadas em potências de 2 (p.ex., 1MiB = 1024KiB). Os tradicionais kilobytes e megabytes acabam tendo uma interpretação mais ambígua, porque muita gente usa para se referir à potências de 10 (p.ex., 1MB = 1000KB). Se a sua operadora dá um valor de franquia baseado em MB, é necessário fazer a conversão.
Veja mais detalhes sobre isso em http://en.wikipedia.org/wiki/Byte#Unit_symbol_or_abbreviation
#!/bin/bash # loga3g - brunobuys, 20091121 # Salva a informação do volume de tráfego 3G, antes de interromper o wvdial. /sbin/ifconfig ppp0 1>/dev/null 2>/dev/null if [ $? -ne 0 ] ; then echo "Não há ppp rodando. Tem certeza que está conectado via 3G?" exit 1 fi PIDWVDIAL=`pidof /usr/bin/wvdial` HORAINICIOPPP=`ps aux | grep "$PIDWVDIAL".*wvdial$ | grep -o [0-9][0-9]\:[0-9][0-9]` TRAFEGO=`/sbin/ifconfig ppp0 | grep -o "RX byte.*)"` DIA=`date +%d` MES=`date +%m` ANO=`date +%Y` echo """$ANO""$MES""$DIA"" - "$HORAINICIOPPP" - "`date +%H\:%M`" - "$TRAFEGO"" >> ~/3g.log kill $PIDWVDIAL
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários