[Cascavel-pm] Contador Web de usuários OnLine

Ednardo Lobo ednardo em elobo.cjb.net
Terça Junho 21 16:52:19 PDT 2005


On Tue, Jun 21, 2005 at 08:23:29PM -0300, Igor Sutton Lopes wrote:
> Ednardo,
> 
> >     Analisando  logs,  a  estratégia,  ao  menos  no  Webalizer  que
> > conheço,  é  contabilizar  uma  visita para  o  conjunto  de  'hits'
> > efetuados em um  determinado período (30 minutos  no Webalizer). Mas
> > para  o propósito  que tenho,  seria muito  trabalhoso e  consumiria
> > recursos  escassos  de  processamento analisando  "on-the-fly"  logs
> > de  diferentes  domínios. De  qualquer  forma  darei uma  olhada  no
> > awstats[1],  talvez   ele  implemente  uma  outra   estratégia  mais
> > eficiente.
> 
> Eu utilizo a estratégia de análise  de logs "on-the-fly" em um sistema
> de contabilização de  emails (mais de 4 milhões de  linhas por dia, em
> média) e o consumo de cpu e memória é muito pouco (0.7 de cpu e 1.4 de
> memória, pois  tenho uma  estrutura de  dados armazenada  em runtime).
> Creio que em qualquer abordagem que  você vá fazer, *sempre* vai ter a
> inconsistência dos clientes atrás de NAT.  Sempre, não dá prá fugir :)
> Ressaltando que para o leitor on-the-fly, utilize File::Tail :)
>
> Abraço,
> Igor.

    É verdade, Igor, analisar os logs  não irá resolver nem minimizar em
nada o problema que estamos discutindo. O Gabriel propos a utilização de
um  jascript  para  obter  informações, via  cliente,  que  identifiquem
unicamente  cada  visitante.  Mas  quais  especificamente  seriam  essas
informações  e quão  exclusivas elas  são?  Estou numa  situação em  que
preciso encontrar uma  solução efetiva e exata mas, caso  não exista tal
solução, tenho que provar esse fato.

    O File::Tail,  é excelente  para analisar logs,  mas certa  fez tive
dificuldades com  um script  que precisei  rodar em  um Apache  sobre um
OpenBSD.  Não  consegui  solucionar  o  problema  que,  ao  que  parece,
estava relacionado  com o  fato do  arquivo sempre  ler lido  de maneira
"bufferizada" quando  o script  era executado no  BSD. Nem  executando a
instrução "$| =  1;" explicitamente resolveu o  problema. Acabei mudando
de estratégia  e ao invés  de registrar linhas  em um arquivo,  passei a
registrar  arquivos em  um  diretório. Tudo  acabou  ficando muito  mais
eficiente. :-)

-- 
    Ednardo Lobo

    LOBO's NET - www.lobosnet.com
    eboleto    - www.eboleto.com

--
What we see depends on mainly what we look for.
		-- John Lubbock


Mais detalhes sobre a lista de discussão Cascavel-pm