Medir tempo de acesso a internet no log do Squid
Publicado por Ralph Liebessohn (última atualização em 14/01/2010)
[ Hits: 10.177 ]
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
KDE 4.1.1 no Slackware Linux 12.1
Screenshot com contagem regressiva e mensagens
PkgBuild - um gerenciador de construção de pacotes
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
pacotes 32 bit no void 64 bit (1)
erro ao clonar repo github (7)
ASRock H310CM-HG4 vs Linux (1)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (26)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba