O local certo para se aprender Linux no Brasil, a sua fonte de artigos, dicas, tutoriais, noticias, howto, reviews e muito mais.

Gerando estatísticas do log do apache com o webalizer

Arquivado em Artigos <> Web Server
Gerando estatísticas do log do apache com o webalizer
Como gerar estatísticas do site através do log do web server apache utilizando como ferramenta o webalizer, produzindo dados completos.

O webalizer é uma ótima opção para você que quer acompanhar os logs do seu site, ele gera páginas com estatísticas completas, como urls de entrada e saída, páginas mais acessadas, hits do dia, mês, hora de acessos e tudo isso ainda com gráficos de imagens, que detalham tudo isso de uma forma clara e objetiva.O webalizer é escrito em C, e analisa os logs com grande velocidade, 13 mil linhas em um micro pentium 2 por exemplo são processadas em 1 segundo. Muitos provedores de hospedagens utilizam esta poderosa ferramente, sem perdar nenhum recurso, um deles é o famoso hpg, que gerará as páginas de estatísticas das milhôes de homepages com o webalizer.
Fazendo o download e instalando

http://www.mrunix.net/webalizer/download.html
aqui você encontra o código fonte e binários.
http://www.megaloman.com/~hany/RPM/webalizer.html
aqui há versões em rpm

Eu utilizarei a versão source, mas caso sua distribuição seja o Debian por exemplo, use # apt-get install webalizer ou se for redhat e preferir o rpm, baixe uma versão em rpm e a instale com:

# rpm -ivh webalizer-Xxxx.rpm

Instalando

Depois de baixar o source do webalizer descompacte-o entre no diretório e vamos excutar os comandos:

$ tar -zxvf webalizer-2.01-10-src.tar.gz
$ ./configure --with-language=portuguese_brazil
$ make
# make install

Por padrão essa instalação irá instalar os binários em /usr/local/bin e o arquivo de configuração em /etc/. Você pode especificar outras opções através da opção ./configure --help.

Configurando o webalizer

Como eu disse você irá gerar estatísticas através do log do servidor apache, isso é específicado no arquivo httpd.conf do seu apache a diretiva Virtual host, na linha CustomLog como no exemplo abaixo:

ServerAdmin seumail@provedor.com.br
ServerName www.seudominio.com.br
DocumentRoot /var/www/seudominio.com.br
ErrorLog /var/log/seudominio.com.br/logs/error_log
CustomLog /var/log/seudominio.com.br/logs/access_log common

Exemplo de arquivo de configuração do webalizer

Altere as entradas de acordo com suas necessidades, crie o diretório /etc/webalizer e salve com o nome seudominio.conf por exemplo. Para cada site que você for gerar as estatísticas crie um arquivo de configuração.

# Arquivo de exemplo do webalizer
#

# Arquivo de Log do Apache, ou seja, onde fica o access_log do dominio
LogFile /var/log/seudominio.com.br/logs/access_log

# Tipo de arquivo de log, no nosso caso estamos usando o formato combinado
# do Apache
LogType clf

# Diretório à ser gerado as estatísticas, ou seja, onde vai se encontrar
# a página onde ficarão todas as estatísticas para a visualização através
# de um navegador.
OutputDir /var/log/seudominio.com.br/stats/html/principal

# Modo incremental? Isso significa que ao invés de estar gerando apenas
# as estatísticas do log atual do Apache, incrementar novas informações
# do log na página. Essa opção serve para aqueles que querem manter todas
# as estatísticas e estar sempre resetando os logs para não deixar eles
# absurdamente grandes. Bom para sites com muitos acessos.
Incremental yes

# Título da página
ReportTitle Estatísticas de acesso para:

# Nome do host
HostName www.seudominio.com.br

# Tipos a ser considerados como páginas pelo webalizer, os que não tiverem
# esta extensão, não serão consideradas páginas visualizadas pelos
# navegadores.
PageType htm*
PageType cgi
PageType php

# Psit! Não faça output nenhum! Pois assim poderemos rodar o processo
# no crontab sem ter que ficar recebendo avisos!
Quiet yes
ReallyQuiet yes

# Quantidades de "Top Sites" a serem mostrados na página principal. Aqui
# mostra a quantidade de informações para serem mostradas na página.
TopSites 30
TopKSites 30
TopURLs 30
TopKURLs 30
TopReferrers 30
TopAgents 15
TopCountries 30
TopEntry 10
TopExit 10
TopSearch 20
TopUsers 20

# Gerar página com todas as entrys (contrario dos "Top"), ou seja, além
# da página principal, o webalizer também gera uma página separada para
# cada tipo de acesso, com *todas* as informações, e não apenas com as
# "mais acessadas", ou coisas do tipo.
AllSites yes
AllURLs yes
AllReferrers yes
AllAgents yes
AllSearchStr yes
AllUsers yes

# Esconde imagens dos relatórios, ou seja, dispensa as imagens para que
# elas não apareçam no relatório e não atrapalhem. Assim o relatório não
# gera "a página mais acessada", sendo que aponta para uma imagem.
HideURL *.gif
HideURL *.GIF
HideURL *.jpg
HideURL *.JPG
HideURL *.png
HideURL *.PNG
HideURL *.ra

# Grupos para a identificação dos navegadores, para ser mostrado na
# página de relatórios dos navegadores usados pelos visitantes.
GroupAgent MSIE Microsoft Internet Explorer
HideAgent MSIE
GroupAgent Mozilla Netscape/Mozilla
HideAgent Mozilla
GroupAgent Lynx* Lynx
HideAgent Lynx*

# Tipos de mecanismos de busca, para saber que fora os mecanismos
# de buscas que referenciaram a página.
SearchEngine yahoo.com p=
SearchEngine altavista.com q=
SearchEngine google.com q=
SearchEngine eureka.com q=
SearchEngine lycos.com query=
SearchEngine hotbot.com MT=
SearchEngine msn.com MT=
SearchEngine infoseek.com qt=
SearchEngine webcrawler searchText=
SearchEngine excite search=
SearchEngine netscape.com search=
SearchEngine mamma.com query=
SearchEngine alltheweb.com query=
SearchEngine northernlight.com qr=

esse é um exemplo de configuração simples, e não utiliza todas as opções do webalizer. Mas você pode conferir essas opções no arquivo de configuração do webalizer, através do webalizer.conf.

Gerando as estatíticas do seu site

Use o comando:

# webalizer -c /etc/webalizer/seudominio.conf
a opção -c especifica qual o arquivo de configuração será analisado

feito isto é só conferir as estatísticas do seu site com seu navegador, na pasta aonde você específicou a saida html, que nesse exemplo foi:

OutputDir /var/log/seudominio.com.br/stats/html/principal

Programando a execução do webalizer no crontab

Uma opção interessante, é configurar o webalizer para ser executado em determindas horas, assim você poupa tempo e faz isso de forma automatica durante o dia.

Vamos aos passos

Verifique se o crond, agendador de tarefas está rodando:
# ps aux | grep cron
caso ele não aparece na lista, o execute com o comando:
# crond

Agendando

digite:
# crontab -e
isso irá adicionar uma tarefa, e será aberto na maioria das vezes o editor vi. Aperte a tecla i para entrarmos em modo de inserção e digite.

0 7 * * * webalizer -c /etc/webalizer/seudominio.conf

Tecle ESC e salve teclando

:wq

Isso significa que todo dia as 7:00 esse tarefa será executada.

É isso ae, espero ter sido claro.

Esse texto é de autoria de Fernando Seno
Envie seu comentário
 
 
Copyright © Sputnix.com.br, Seja Livre, Use Linux