Medir tempo de acesso a internet no log do Squid
Publicado por Ralph Liebessohn (última atualização em 14/01/2010)
[ Hits: 10.392 ]
Homepage: http://ralph.einet.com.br
Script feito para somar o tempo de navegação dos usuários. O tempo medido é apenas o tempo de transferência de cada arquivo e não o tempo que o usuário ficou lendo o site, logo, dependendo da velocidade da conexão, o acesso a um site pode ter tempo variado. O tempo no arquivo de log é medido em milissegundos (1000 milissegundos = 1 segundo).
O script lê um arquivo (/etc/squid/usuarios_limite_tempo) que tem o seu conteúdo formatado com um usuário por linha seguido de espaço, seguido da sua quota de tempo. Exemplo:
usuario1 3600000
usuario2 10
usuario3 600000
Alguns locais que vi as pessoas tendo essa dificuldade:
http://www.mail-archive.com/linux-br@bazar2.conectiva.com.br/msg36767.html
http://www.vivaolinux.com.br/topico/Squid-Iptables/Cota-de-tempo-de-acesso
Existem outras soluções para quota de tamanho de download, limite de número de conexões, banda etc, que são configurados diretamente no squid.conf. Esse script auxilia a limitar a navegação de um usuário a 01 hora por dia por exemplo.
Palavras-chave: tempo de conexão; limitar tempo de navegação; limite de tempo squid;quota tempo squid.
Ralph Liebessohn
#!/bin/bash while read linha do usuario=`echo $linha | awk '{print $1}'` maxtempo=`echo $linha | awk '{print $2}'` tempo=`grep -i " $usuario " /var/log/squid/access.log |awk '{print $2}'` aux1=1 soma=0 for i in $tempo do varb=`echo $tempo| awk -v N=$aux1 '{print $N}'` soma=`expr $soma + $varb` let "aux1 = aux1 + 1" done if [ $soma -gt $maxtempo ] then echo Usuario: $usuario excedeu limite de $maxtempo. Tempo utilizado: $soma fi done < /etc/squid/usuarios_limite_tempo
Script para escrever uma palavra em ASCI
Baixar música no tramavirtual (wget)
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Como converter imagens PNG/JPEG para SVG em linha de comando
Fez porcaria no teu repositório Git? Aprenda a restaurar uma versão anterior do seu código!
Restaurando Fontes de Download do Hydra no Linux
Atualizando "na marra" o YT-DLP quando começa a dar erro de downloads
Como instalar o WPS com interface e corretor ortográfico em PT-BR no Arch Linux
Inicializaçao lenta (alguns processos rodando) Debian 11 Bullseye [RES... (2)
Erro na atualização dos pacotes (6)