Awstats

Introdução

AWStats é uma ferramenta gratuita, poderosa e cheia de recursos avançados que gera gráficos estatísticos de acessos web, incluindo streaming, ftp e servidor de correio. Este analisador de log funciona com um CGI de linha de comando e exibe todas as informações possíveis contidas no log, em poucas páginas web com gráficos.

Ele usa um arquivo de informações parciais para ser capaz de processar grandes arquivos de log, muitas vezes e rapidamente. Analisa arquivos de log do servidor de todas as ferramentas importantes, como arquivos de log do Apache (NCSA combinado / XLF / ELF formato de registro ou formato de log common / CLF), WebStar, IIS (W3C formato de log) e um monte de outros Web, proxy, wap, servidores de streaming, servidores de correio e alguns servidores ftp.

Dê uma olhada na tabela de comparação abaixo, extraída da página do awstats, para uma idéia sobre as características e diferenças entre as ferramentas de estatísticas mais conhecidas (AWStats, Analog, Webalizer e Sawmill).

AWStats é um software livre distribuído sob a GNU Licença Pública Geral, funciona a partir da linha de comando, mas também como um CGI, e pode trabalhar com todos os provedores de hospedagem web que permitem o acesso Perl, CGI e log.

Escopo

Sistema Operacional Linux:
http://distrowatch.com/
Awstats
http://prdownloads.sourceforge.net/awstats/awstats-7.0.tar.gz
O awstats é distribuído nos seguintes formatos:
  • awstats-7.0.zip
  • awstats-7.0.exe
  • awstats-7.0.tar.gz
  • awstats-7.0-1.noarch.rpm
O escopo deste artigo, trata apenas de Linux, se utilizar outro SO, poderá pular a parte de instalação.

Instalação

Baixe o arquivo de instalação
wget http://prdownloads.sourceforge.net/awstats/awstats-7.0.tar.gz
Descompacte e desempacote no local de instalação escolhido:
tar xvzf awstats-7.0.tar.gz -C /usr/local
Crie os diretórios que serão utilizados na configuração
mkdir -v awstats-7.0/{confs,database,logs}
mkdir: foi criado o diretório `awstats-7.0/confs' mkdir: foi criado o diretório `awstats-7.0/database' mkdir: foi criado o diretório `awstats-7.0/logs'
Daqui em diante, assuma-se que o diretório de instalação, INSTALL_DIR, seja /usr/local/awstats-7.0.

configuração

arquivo de configuração do sítio

Localize o modelo, disponibilizado na instalação, Normalmente no caminho abaixo:
INSTALL_DIR/wwwroot/cgi-bin/awstats.model.conf
Faça uma cópia para o ambiente de trabalho criado
cp INSTALL_DIR/wwwroot/cgi-bin/awstats.model.conf INSTALL_DIR/confs/
O arquivo contém 1550 linhas com ajuda detalhada de como configurar cada uma de suas opções; neste artigo destacam-se as linhas 51, 153,168, 203
51 LogFile="/var/log/httpd/mylog.log"
A linha 51 contém o nome do arquivo de log, coloque o nome configurado no virtualhost do apache; ou o nome do log do serviço utilizado.
153 SiteDomain=""
A Linha 153 deve conter o domínio principal
168 HostAliases="localhost 127.0.0.1 REGEX[myserver\.com$]"
A linha 168 deve conter todos os apelidos para o host de origem do log;
203 DirData="."
A linha 203 deve conter o caminho que o awstats armazenará os dados estatísticos.
Exemplo   
51 LogFile="INSTALL_DIR/logs/access_incolume.log" 
LogType=W  
LogFormat=1  
LogSeparator=" "   
153  SiteDomain="incolume.com.br"  
168  HostAliases="www.incolume.com.br perfumes.incolume.com.br blog.incolume.com.br"    
DNSLookup=2 
203 DirData="INSTALL_DIR/database"  
No arquivo de configuração utilize caminhos absolutos, substitua o INSTALL_DIR, pelo caminho real de instalação. Agora renomeie o arquivo INSTALL_DIR/wwwroot/cgi-bin/awstats.model.conf, para contemplar a palavra-chave de teu site, no exemplo o site é www.perfumes.incolume.com.br.
mv INSTALL_DIR/confs/awstats.model.conf INSTALL_DIR/confs/awstats.incolume.conf
Salve o arquivo de log para o diretório de logs INSTALL_DIR/logs/
mv access_incolume.log INSTALL_DIR/logs/access_incolume.log

configurando Apache/Httpd

Localize o modelo para configuração do apache, disponibilizado na instalação, normalmente no caminho abaixo, e respectivo conteúdo:
cat INSTALL_DIR/tools/httpd_conf
# # Directives to allow use of AWStats as a CGI 
# Alias /awstatsclasses "INSTALL_DIR/wwwroot/classes/" 
Alias /awstatscss "INSTALL_DIR/wwwroot/css/" 
Alias /awstatsicons "INSTALL_DIR/wwwroot/icon/" 
Alias /awstatsdocs "INSTALL_DIR/docs/" 
ScriptAlias /awstats/ "INSTALL_DIR/wwwroot/cgi-bin/"  
# # This is to permit URL access to scripts/files in AWStats directory. 
# <Directory "INSTALL_DIR/wwwroot">  
Options None 
AllowOverride None 
Order allow,deny 
Allow from all 
</Directory> 
Copie o arquivo de configuração, para diretório do apache com as respectivas mudanças
Debian-like: 
$ cp -v INSTALL_DIR/tools/httpd_conf /etc/apache2/sites-available/awstats.conf 
$ a2ensite awstats.conf 
/etc/init.d/apache2 reload   


Redhat-lite: 
$ cp -v INSTALL_DIR/tools/httpd_conf /etc/httpd/conf.d/awstats.conf 
$ service httpd reload 

Gerando as estatísticas

Atualizar um sítio:
INSTALL_DIR/wwwroot/cgi-bin/awstats.pl -update -config=www.incolume.com.br
Atualizar todos
INSTALL_DIR/tools/awstats_updateall.pl now -configdir=./confs/ -awstatsprog=./wwwroot/cgi-bin/awstats.pl
Gerando múltiplos arquivo de configuração, a partir de uma origem modelo comum.
for i in $(echo www.incolume.com.br perfumes.incolume.com.br brito.blog.incolume.com.br); do sed -e "s;siteModelo;$i;" awstats.modelo.conf >> awstats.$i.conf; done

Referências

http://awstats.sourceforge.net

Comentários