quinta-feira, 17 de janeiro de 2008

Instalando o Awstats no Ubuntu

AWStats é uma ferramenta web open-source para geração de relatórios analíticos, adequado para analisar os dados de Internet, tais como serviços web, streaming media, correio eletrônico e servidores de FTP. AWstats interpreta e analisa arquivos de log do servidor, produzindo relatórios HTML. Os dados são representados nos relatórios visualmente por tabelas e gráficos.

Este how-to foi testado utilizando:
  • Ubuntu 7.10
  • Apache 2.2.4
  • Perl 5.8.8
  • mod_perl 2.0.2

Instalando o AWStats

Para começar a brincadeira, abra uma sessão do terminal e execute os seguintes comandos:
$ sudo apt-get install awstats
$ sudo cp -r /usr/share/doc/awstats/examples /usr/local/awstats
$ sudo cd /usr/local/awstats
$ sudo mkdir wwwroot
$ sudo mkdir wwwroot/cgi-bin
$ sudo gunzip awstats.model.conf.gz
$ sudo mv awstats.model.conf wwwroot/cgi-bin
$ sudo ./awstats_configure.pl
O último comando executado é um script responsável por gerar um arquivo de configuração que será utilizado na criação dos relatórios. Ele fará uma série de perguntas. As respostas que usei foram:
  • /etc/apache2/httpd.conf
  • y
  • foo.com <-- AQUI ENTRA O NOME DO SEU SITE
Para que o relatório seja gerado corretamente e que o mesmo fique disponível através do Apache, execute:
$ sudo ln -s /usr/local/awstats/css/ wwwroot/
$ sudo ln -s /usr/share/awstats/* wwwroot/
$ sudo ln -s /usr/lib/cgi-bin/awstats.pl wwwroot/cgi-bin/
$ sudo chown -R www-data:www-data wwwroot
$ sudo chown -R www-data:www-data /var/lib/awstats
$ sudo chown root:www-data /var/log/apache2/access.log
Em /etc/apache2/httpd.conf, comente a linha
  Options None
O arquivo deverá ficar parecido com:
#
# Directives to allow use of AWStats as a CGI
#
Alias /awstatsclasses "/usr/local/awstats/wwwroot/classes/"
Alias /awstatscss "/usr/local/awstats/wwwroot/css/"
Alias /awstatsicons "/usr/local/awstats/wwwroot/icon/"
ScriptAlias /awstats/ "/usr/local/awstats/wwwroot/cgi-bin/"

#
# This is to permit URL access to scripts/files in AWStats directory.
#

#Options None
AllowOverride None
Order allow,deny
Allow from all
Feito isso, é necessário editar a linha que indica o caminho do arquivo de log do apache no arquivo /etc/awstats/awstats.foo.com.conf. Onde está
LogFile="/var/log/httpd/mylog.log"
Substitua por
LogFile="/var/log/apache2/access.log"
Pronto! Agora basta recarregar o Apache através do comando
$ sudo /etc/init.d/apache2 reload
compilar as estatísticas com o comando
$ sudo perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl --config=foo.com --update
e acessar o relatório através do link
http://foo.com/awstats/awstats.pl?config=foo.com
Se você estiver acessando o browser a partir do servidor, poderá ver o relatório no link
http://localhost/awstats/awstats.pl?config=foo.com
Para que seu relatório seja atualizado automaticamente de hora em hora, edite o arquivo /etc/crontab adicionando a linha
0 * * * * /usr/local/awstats/wwwroot/cgi-bin/awstats.pl --config=foo.com --update >/dev/null
Referências
  • http://awstats.sourceforge.net/
  • http://en.wikipedia.org/wiki/AWStats
  • http://blog.ogmaciel.com/?p=16