MySAR - Um ótimo analisador de logs do Squid

Neste artigo falo sobre como instalar, configurar e usar este maravilhoso analisador de logs do Squid. Para quem não gosta muito do SARG, aí está uma opção muito boa.

[ Hits: 217.027 ]

Por: Felipe Mendes em 09/08/2006


Introdução



O MySAR é um analisador de logs muito eficiente, funciona junto com MySQL criando uma base de dados a partir do access.log. O que eu acho ótimo no MySAR é que ele gera o log em tempo real.

Para instalar o SARG você precisa ter instalado em seu servidor os seguintes pacotes:
  • MySQL 4.1 ou superior
  • PHP4 ou superior
  • PHP-MYSQL
  • mysqlclient
  • Apache

Instalados estes pacotes, vamos instalar o MySAR.

O download do MySAR pode ser feito no link abaixo, que é a página oficial do projeto:
Ou então aqui:
Faça o download dentro da pasta /usr/local. Feito o download, descompacte o arquivo:

# tar zxvf mysar-2.0.6.tar.gz -C /usr/local

Agora você tem que configurar o Apache antes de instalar o MySAR. No httpd.conf insira o seguinte:

Alias /mysar /usr/local/mysar/www

<Directory "/usr/local/mysar/www">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Agora basta reiniciar o Apache.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Instalando o MYSAR
   3. Administrando o MYSAR
   4. MySQL em execução
Outros artigos deste autor

Servidor de arquivos integrado com Active Directory (AD) e quota de usuário/grupo

Squid + Winbind + Samba no AD - Autenticando por grupos

Leitura recomendada

Manual traduzido do Squid - Parte 2

Instalação do Squid 3.2.0.14 no Slackware com execução em ambiente chroot

Bloqueando Windows Live Messenger com Squid (Debian ou Ubuntu)

Filtro de conteúdo autenticado com níveis de privilégio

Bloqueando conteúdo com Squid no RedHat 9

  
Comentários
[1] Comentário enviado por removido em 09/08/2006 - 10:29h

O artigo ficou um pouco fraco, mas o MySar em si não tem segredos.
É um artigo muito bom para as pessoas conhecerem ele que corrige a maior falha do sarg. As Páginas estáticas. Com o mySar pode-se criar relatórios muitos mais personaalizado e ordenados da maneira que for melhor.
Quando estava procurando algo como ele, foi bem dificil de achar.

Mas recomendo totalmente.

[]'s

[2] Comentário enviado por fmendes em 09/08/2006 - 10:54h

Bem, fraco em que sentido? Escrevi este artigo pq quando precisei instalar o MySar em um cliente não achei muita documentação na NET, então fiz um artigo mais voltado para instalação do MySar, e não expliquei como se instala, MySQL, apache, php4.... Mesmo pq o MySar só precisa que eles estejam instalados, configurar mesmo somente o apache, o resto o MySar configura sozinho, como por exemplo o banco MySql. Quaisquer problemas podem me falar que eu passei por alguns problemas nas instalações que eu fiz.

Mais valeu pelo comentario!!!!

Felipe Mendes


[3] Comentário enviado por fchevitarese em 09/08/2006 - 11:10h

kra.. comigo ta dando erro na hora de importar os logs do squid... erro na linha 48 no codigo mysql_connect()
alguem tem alguma luz???

[4] Comentário enviado por fmendes em 09/08/2006 - 11:27h

Cara no seu php.ini verifique se tem a seguinte linha:

extension=mysql.so

Senao tiver adicione, e teste que deve funcionar, ja tive este problema e funcionaoiu assim.

Felipe Medes

[5] Comentário enviado por segalla em 09/08/2006 - 11:43h

Pessoal, vcs ja usaram essa solucao pra redes com mais de 200 usuarios de proxy? O log fica grande? Como ficou a performance?

Felipe: Legal o artigo, só conhecia o SARG e essa parece ser uma opção legal.

Abraços,

Segalla

[6] Comentário enviado por digaosp em 09/08/2006 - 12:31h

Felipe, comigo está dando a seguinte mensagem:

Fatal error: Call to undefined function: mysql_connect() in /usr/local/mysar/www/install/index.php on line 750

Eu uso o RH9, porém fiz todas as atualizações necessarias pra rodar e mesmo usando a sua dica do PHP acima nao rolou..

Abraços,

Digao

[7] Comentário enviado por fmendes em 09/08/2006 - 13:48h

Fala segalla, blz? Valeu pelo comentario. Cara tenho mysar com mais de 700 usuairos e nao afeta em nada a performace do proxy. Quanto ao log, fica grande mesmo pq são 700 usuarios acessando a net, mas nao interfere em nada.

Fala digaosp, blz? Vc verificou o seu php.ini como eu falei na resposta mas acima???

Valeu!!

Felipe Mendes

[8] Comentário enviado por zilli em 09/08/2006 - 14:25h

Gostei do artigo. Pessoalmente não conhecia essa solução. Vou testar.

Parabéns!

[9] Comentário enviado por digaosp em 09/08/2006 - 15:03h

Felipe, verifiquei o php.ini sim.. estava a linha lá, mas inseri novamente do modo q vc falou. porém nao rola mesmo.
vc acha q pode ser o q?
já fiz de tudo, ele nem passa da primeira tela de instalação..

Abraços,

Digao

[10] Comentário enviado por andrack em 09/08/2006 - 16:35h

Digao...

Já tentou reiniciar o Apache?


Falowz...

[11] Comentário enviado por arln em 09/08/2006 - 17:14h

Fera blz contigo,


seguinte velhão comigo desse erro quando fui importar os logs.


bash: ./mysar-importer.php: /usr/bin/php: bad interpreter: Arquivo ou diret�rio n�o encontrad

[12] Comentário enviado por fmendes em 09/08/2006 - 17:21h

cara, este problema aconteceu comigo quando instalei em uma maquina com debian, basta vc instalar o php-cli assim:

apt-get install php4-cli

Valeu!!

Felipe Mendes

[13] Comentário enviado por arln em 09/08/2006 - 21:51h

Valeu Felipe,


Mais agora apareceu o seguinte problema

Fatal error: Call to undefined function: mysql_connect() in /usr/local/mysar/inc/common.inc.php on line 48

[14] Comentário enviado por fernandoiury em 09/08/2006 - 23:13h

Primeiramente parabéns pelo artigo,

Ele precisa do SARG instalado para funcionar ou é independente ?

[15] Comentário enviado por fmendes em 10/08/2006 - 08:57h

Ele nao tem nada a ver com o SARG. Totalmente independente!!

Felipe Mendes

[16] Comentário enviado por rafaelcore em 10/08/2006 - 14:55h

Para atualizar os logs, estou precisando sempre rodar o script (mysar-importer.php) caso contrário os logs ficam desatualizados, editei o cron e nada, alguma dica? Já verifiquei se o serviço crond, está ok!

[17] Comentário enviado por analfabeta em 10/08/2006 - 18:12h

Eu nao consigo fazer o MySar funcionar. Ele nunca cria a database sozinho, dá erro de conexão com o MySQL, nada funciona. Saberia me ajudar?

Creating database...Failed...
You have an error in your SQL syntax near '; ' at line 6

Click here to try again!


E também:

Reading config.ini file...Failed!

You need to create the file "/var/www/mysar/etc/config.ini", making sure it is readable by the web server process, with the following contents:
dbUser =
dbPass =
dbHost =
dbName =

Click here to try again.

[18] Comentário enviado por arln em 10/08/2006 - 20:54h

OLha so, vc tem que renomear o arquivo config.ini.example para config.ini.

Se nao me engano ele estar dentro da pasta, /var/www/mysar/etc/config.ini.example

dar um locate no arquivo.

Abraços.

[19] Comentário enviado por analfabeta em 11/08/2006 - 10:48h

Oi, já fiz todos os passos do Wizard manualmente, mas no final, ele não onsegue conectar...


Error connecting to database!
ERROR on SQL query
Database error number: 1045
Database error message: Access denied for user: 'mysar@localhost' (Using password: YES)
FATAL. Exiting...

[20] Comentário enviado por analfabeta em 11/08/2006 - 10:51h

Tb tem esse erro:

SQL Error
ERROR on SQL query
SQL query: SELECT DATE_FORMAT(date, '%W, %d %M %x') AS dateFormatted,date,MIN(date) AS minDate,MAX(date) AS maxDate,COUNT(DISTINCTROW ip) AS hosts,COUNT(DISTINCTROW usersID) AS users,COUNT(DISTINCTROW sitesID) AS sites,SUM(inCache+outCache) AS bytes,TRUNCATE(SUM(inCache)/SUM(inCache+outCache)*100,0) AS cachePercent FROM trafficSummaries GROUP BY dateFormatted ORDER BY
Database error number: 1064
Database error message: You have an error in your SQL syntax near '' at line 1
Exiting...

[21] Comentário enviado por gr4ph1x em 11/08/2006 - 20:02h

Na tela de instalação para colocar o usuario, senha mysql:

Eu coloquei usuário de ROOT mesmo com senha certinho e ele nao cria,
mas tb nao reporta nenhum erro. Só fica lá "Creating database..." e para nisso.

Na maquina esta rolando slack 10.2 (indiferente), apache 2, php5 e
mysql 5. Tá tudo funcionando ok, o apache e o php estão no ar e o
mysql está com a porta aberta (3306).

ah! E eu nao estou importando uma instalação antiga nao, é uma instalação
nova.

Tb ja olhei no php.ini e possui a extensão para mysql.so.... Me ajudem

[22] Comentário enviado por fmendes em 14/08/2006 - 11:27h

Bem como eu ja disse antes, ja tive este problema q fica so no creating database e nao saie tb nao da erro nenhum.
O problema foi resolvido quando eu instalei o php4-mysql eu tinha esquecido de instalar....

[23] Comentário enviado por gr4ph1x em 15/08/2006 - 10:16h

root@servidor:/usr/local/mysar/bin# ./mysar-importer.php
Tentei importar o log e apareceu:

PHP Fatal error: Call to undefined function mysql_connect() in /usr/local/mysar/inc/common.inc.php on line 47

ele não conecta com o Mysql, eu uso o phpMyAdm para controlar o Mysql e roda normal o php..

[24] Comentário enviado por riav em 28/08/2006 - 14:15h

Para resolver o problema do mysql para ser execultado em linha de comando, descomente a linha
# extension=mysql.so
do arquivo
/etc/php4/cli/php.ini

Espero ter ajudado...
Abraços a todos.

[25] Comentário enviado por fabiofurquim em 29/08/2006 - 16:25h

Olá.. meu access.log tem em média 2GB diários.. e quando tento importar o mesmo me deparo com a seguinte mensagem:

Exceeded run time
8763 records processed

O que será q pode ser?
Se puder ajudar.

Abraços

[26] Comentário enviado por fmendes em 29/08/2006 - 16:46h

Cara, ele esta importando perfeirtamente. Vc esta importando na mao? Coloca no cron para rodar com eu falei q ele vai sincronzar e importar somente os novos. Quanto a esta mensagem ele aparece isso mesmo quando o log é mt grande, vc tem q sincronizar com o access.log.

Felipe Mendes

[27] Comentário enviado por fabiofurquim em 29/08/2006 - 17:19h

Caro Felipe,

Obrigado pela ajuda, consegui resolver mudando uma variavel dentro do arquivo mysar-importer.php chamada maxRunTime. Coloquei um valor bem alto (o default é 55) e resolveu. Minha ideia é rodar na mão mesmo pra naum comprometer o squid server.

Muito Obrigado
Artigo bem bacana

[28] Comentário enviado por brhebert em 15/09/2006 - 16:11h

Caro Felipe,

Parabens pelo artigo, mas estou com uma duvida.
Já tenho um servidor com o Mysql rodando serviços para o email. tipo mysql + postfix + etc...
a instalação do MySAR vai interferir em alguma coisa o funcionamento dos serviços já mencionados ???

[29] Comentário enviado por fmendes em 19/09/2006 - 16:21h

nao vai interferir em nada.

[30] Comentário enviado por lrg.lais em 26/09/2006 - 11:11h

Felipe,

Tenho instalado o mysar certinho e ele funciona belezinha... mas como tenho relatórios para extrair, se eu não "limpar" os dados da tabela traffic, trafficSummaries, etc, vai ficar mto lenta a geração do relatório...

Coloquei no cron pra ele executar o arquivo mysar-maintenance.php e programei pra salvar apenas 30 dias do histórico mas nada aconteceu... o q devo fazer??

[31] Comentário enviado por aazevedo1984 em 30/09/2006 - 17:28h

cara aq quando coloco a url http://localhost/mysar/ simplesmente aparece a tela como se fosse transação via ftp, sabe em arvore de diretórios, oq é isso?

[32] Comentário enviado por aazevedo1984 em 30/09/2006 - 17:29h

consegui resolver parte do problema, abringo na mão o index.php vai, mas o link retorna para a arvore do inicio, e agora?

[33] Comentário enviado por fmendes em 13/10/2006 - 17:15h

é pq esta faltando vc instalar o php4...

[34] Comentário enviado por rafaelmontek em 18/01/2007 - 01:11h

Meu problema com o seguinte erro...

Database error message: Access denied for user: 'mysar@localhost' (Using password: YES)

Era pq eu mudei o nome do host de localhost para o nome do meu servidor, mas parece que o script so roda com o nome localhost

[35] Comentário enviado por dtux em 24/01/2007 - 22:00h

Cara ta tudo certo só q não aparece nada na web a pagina fica toda em branco, será pq, coloquei certinho no apache, o php tá certo, estou usando o php5, tá tudo ok, tem como da uma ajudinha... flwss!!!

[36] Comentário enviado por erbignes em 05/02/2007 - 10:14h

fmendes, muito bom o artigo.
parabens!!

So que estou com um problema para visualizar, alguns logs, ( aqueles que tem alto volume de processamento,) quando tento abrir eles via web a pagina fica em branco..., existe alguma limitaçao alguem tem alguma sugestao?

Obrigado !!!!!!

Eugenio


[37] Comentário enviado por erbignes em 05/02/2007 - 14:44h

Felipe, olhando os logs achei o seguinte...: quando tento visualizar o
relatorio dos acessos a pagina fica erm branco por isto..:

"PHP Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 35 bytes) in /srv/www/mysar/inc/functions.inc.php on line 87, referer: http://192.168.1.12./mysar/"

Nao conheço PHP, de todos modos instalei um editor PHP, nao achei nada "intuitivo" onde possa mexer e mudar parametros,

Alguma alma solidaria pode ajudar ?

Abraços !

Eugenio

[38] Comentário enviado por erbignes em 05/02/2007 - 16:22h

Bom achei a soluçao eh bem simple...,como ja expliquei nao tenho um "know-how" em PHP, agora caso que alguem tenha o problema de exibir paginas em branco..., e com erro detalhado em minha outra mensagem aqui esta uma possivel soluçao, eu apliquei esta dica e funcionou OK !

http://www.tech-recipes.com/php_programming_tips777.html

[39] Comentário enviado por alex_a_souza em 16/02/2007 - 19:25h

Gostei do seu Artigo.

Seguir passo a passo o ki vc kolocou, no final quando do o clik no START ele da esse erro.

Fatal error: Smarty error: unable to write to $compile_dir '/usr/local/mysar/smarty-tmp'. Be sure $compile_dir is writable by the web server user. in /usr/local/mysar/inc/smarty/Smarty.class.php on line 1088


como vc pode me ajdar?

[40] Comentário enviado por antraz em 06/04/2007 - 18:12h

Muito bom, Funcionou perfeitamente.
So temos que ajustar o artigo, voce trocou alguns nomes.
Mas Ficou muito bom mesmo, o meu funcionou perfeitamente.
http://www.larainfor.com.br

[41] Comentário enviado por fmendes em 07/04/2007 - 20:56h

Como assim troquei nomes? Não entendi... poderia ser mais claro?

[42] Comentário enviado por polaco_ em 24/07/2007 - 15:35h

Dentro da pasta bin/mysar-binary-importer-v4 tem um diretorio com o importador binario, no ultimo release (2.4.13)+
O importador binario tem muito mais velocidade e suporte a logs comprimidos, agrupamento de dominios, etc...

[43] Comentário enviado por removido em 23/08/2007 - 15:09h

Olá amigo!!!!
Cara não funciona... Desisti e voltei a usar o velho e bom sarg...
O erro que dá é esse aqui:

Creating database...
Fatal error: Call to undefined function mysql_connect() in /usr/local/mysar/www/install/index.php on line 750

PODERIA ME AJUDAR, JÁ CANSEI DISSO....

[44] Comentário enviado por rodriguesrj em 11/09/2007 - 15:10h

Estou recebendo a seguinte msg, mesmo depois dos procedimentos feitos acima:

ERROR on SQL query
SQL query: INSERT INTO traffic(date,time,ip,resultCode,bytes,url,authuser) VALUES ('1969-12-31','21:33:27',INET_ATON('httpReadReply:'),'Excess','data','\"GET','')
Database error number: 1048
Database error message: Column 'ip' cannot be null

Alguém pode ajudar?
Abraço.

[45] Comentário enviado por polaco_ em 26/09/2007 - 00:02h

edson_vetorial,
ja verificou se o PHP que voce esta usando tem suporte MYSQL?

rodriguesrj,
parece ser a formatacao do seu access.log. o Mysar importa somente no formato de acordo com o padrao do Squid. da uma olhada para ver se esta conforme o padrao, ou senao tenta com o importador binario, ok?

[46] Comentário enviado por marden_pimenta em 01/10/2007 - 21:32h

segala eu coloquei aqui na empresa e tenho mais de 500 usuarios dia acessando!

a unica alteraçao que tive de fazer foi no arquivo /usr/local/mysar/bin/mysar-importer.php no parametro $maxRunTime=5500 para importar os logs antigos para visualizar o mes todo.

[47] Comentário enviado por mcsba em 16/10/2007 - 17:51h

Alguém sabe como traduzir o mysar para Português como nas telas acima?

desde já agradeço.

Márcio Carvalho.

[48] Comentário enviado por sancmk em 20/12/2007 - 10:04h

?comentario= Pessoal, respondendo a pergunta do Márcio Carvalho: - Alguém sabe como traduzir o mysar para Português como nas telas acima?

Achei na net que já existe os templates em português na própria instalação, então após o MySar instalado basta mudar o nome dos diretórios conforme a página do Sr. Tiago (http://tiagodurante.wordpress.com/nerd-stuff/mysar-installconfigure/):

-------------------------------------------------------------------------------------------
Caso você queira colocar o MySAR em português brasileiro basta fazer o seguinte:

# mv /var/www/htdocs/$SITE/www-templates /var/www/htdocs/$SITE/www-templates.en
# mv /var/www/htdocs/$SITE/www-templates.pt_BR/ /var/www/htdocs/$SITE/www-templates
# chown nobody /var/www/htdocs/$SITE/www-templates
# chmod o+rwx /var/www/htdocs/$SITE/www-templates
--------------------------------------------------------------------------------------------

No meu caso os "templates" ficam em: /usr/local/mysar

Assim os comandos que utilizei foram:

# cd /usr/local/mysar
Vai ao diretório da instalação do MySar.


# mv www-templates www-templates.en
Muda o nome do diretório www-templates para www-templates.en


# cp www-templates.pt_BR www-templates
Copia o www-templates.pt_BR para www-templates


# chown -R apache www-templates
Altera o dono do diretório www-templates e os arquivos contidos no diretório. No meu caso o usuário que tem que ser o dono do diretório é o usuário apache (vai depender da instalação feita do servidor HTTP)


Parabenizo ao Felipe Mendes (deste artigo) e o Tiago Durante (http://tiagodurante.wordpress.com/nerd-stuff/mysar-installconfigure/) pelo artigo que escreveram.

[49] Comentário enviado por sancmk em 20/12/2007 - 10:53h

Agora uma dúvida pessoal, alguém conseguiu identificar onde que no MySar eu encontro o "Tempo gasto" de acesso à Internet? E o que é "Uso do Cache" nas páginas do MySar?

[50] Comentário enviado por wolney em 11/01/2008 - 10:42h

estou problemas para vizualizar os acessos recentes, no browser so aparece os acessos de dezembro.
Tem alguma configuração a fazer ?.
Obrigado desde ja.

[51] Comentário enviado por anthonydarkness em 23/01/2008 - 17:55h

Pessoal eu gostaria de ajuda..não consigo resolver o problema de importar os logs para o banco.

ao tentar importar ele mostra o seguinte erro:


[root@Firewall-Unimar bin]# ./mysar-importer.php
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/msql.so' - /usr/lib/php/modules/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0
_PHP Notice: A non well formed numeric value encountered in /usr/local/mysar/bin/mysar-importer.php on line 151
PHP Notice: A non well formed numeric value encountered in /usr/local/mysar/bin/mysar-importer.php on line 152
PHP Notice: A non well formed numeric value encountered in /usr/local/mysar/bin/mysar-importer.php on line 153

ERROR on SQL query
SQL query: INSERT INTO traffic(date,time,ip,resultCode,bytes,url,authuser) VALUES ('1969-12-31','21:03:12',INET_ATON('-'),'[20/Jan/2008:04:30:43','-0200]','http://download918.avast.com/iavs4x/prod-av_pro.vpu.stamp','HTTP/1.0\"')
Database error number: 1048
Database error message: Column 'ip' cannot be null

[52] Comentário enviado por reginaldoluiz em 24/01/2008 - 11:09h

Olá fmendes td bem?
Tenho um servidor aqui com Squid+NatACL+MySQL, com está no tutorial do tatotino aqui no vivaolinux.
Instalei o MySAR, mas como a autenticação é feita pelo NatACL e nao pelo Squid, não consigo obter o nome dos usuários logados no relatório do MySAR, vc sabe como posso resolver isso?
O NatACL cria uma database no MySQL com o nome de NatACL e também cria uma tabela com o nome de USERS, mesmo nome de uma tabela da database mysar.
Se puder me ajudar, agradeço.
Obrigado e parabens pelo tutorial!

[53] Comentário enviado por luciobarreto em 05/03/2008 - 11:14h

Olá fmendes. Estou com o mesmo problema do reginaldoluiz! Alguma idéia? Abraços, ótimo tutorial.

[54] Comentário enviado por removido em 29/05/2008 - 18:26h

Ótima ferramenta, seria interessante fazer um artigo usando MYSAR, para os LOGs e o MYSQL AUTH para a autenticação dos usuários no SQUID.

Parabéns pelo Artigo,

[55] Comentário enviado por celleco em 20/08/2008 - 13:44h

Frmendes gostei muito do seu tutorial, eu estou tendo a mesma dificuldade que os meu companheiros na hora de importar o access.log ele da o erro:
ERROR on SQL query
SQL query: INSERT INTO traffic(date,time,ip,resultCode,bytes,url,authuser) VALUES ('1969-12-31','21:03:12',INET_ATON('-'),'[20/Aug/2008:10:21:04','-0300]','http://www.google.com.br/','HTTP/1.1\"')
Database error number: 1048
Database error message: Column 'ip' cannot be null
se puder me ajudar eu agradeço pos ja procurei na net e nao consegui soluçao:
192.168.10.54 - - [20/Aug/2008:10:21:04 -0300] "GET http://www.google.com.br/ HTTP/1.1" 302 510 TCP_MISS:DIRECT
esse é meu access.log ate onde eu entendo de banco de dados a data e a hora teria que vim antes do ip nao sei se é isso, preciso de ajuda.
Grato.

[56] Comentário enviado por sandroteo em 14/11/2008 - 15:47h

fiz tudo certinho mas na hora de importar com o mysar-importer.php da ess erro

bash: ./mysar-importer.php: /usr/bin/php: bad interpreter: Arquivo ou diretório não encontrado
ja alterei o maxruntimer e não deu certo
agradeço qualquer ajuda

[57] Comentário enviado por sandroteo em 14/11/2008 - 16:41h

Deu certo, instalei o php5-cli e ta rodando

[58] Comentário enviado por robertobrandao em 05/12/2008 - 21:38h

Pessoal esse tutorial é muito bom mais pra mim nao deu certo. Porque a versao do MySar que eu instalei é a 2.1.4 e a do tutorial é a 2.0.11 por isso acho que nao esta importando corretamente do access.log para o MySar

Como faço para importar o access.log para o MySar??

[59] Comentário enviado por mrjeday em 16/12/2008 - 15:36h

Muito bom o Mysar, já usei em uma outra ocasião. Mas agora to me deparando com uma situação aqui que ainda não tinha acontecido e não consigo encontrar o problema.
Instalei o mysar tudo direitinho ele ta rodando blz.
Mas ao tentar importar o log do squid, ele retorna assim:
############
xxx:/var/www/mysar/bin# ./mysar-importer.php

Fatal error: Call to undefined function: mysql_connect() in /var/www/mysar/inc/common.inc.php on line 48

xxx:/var/www/mysar/bin#

############

Olhando a linha 48 do referido arquivo:

// Initialize the database connection

debug('Initializing database connection...',40,__FILE__,__LINE__);

debug('dbHost='.$iniConfig['dbHost'].',dbUser='.$iniConfig['dbUser'].',dbPass='.$iniConfig['dbPass'],40,__FILE__,__LINE__);

$link=mysql_connect($iniConfig['dbHost'],$iniConfig['dbUser'],$iniConfig['dbPass']);

if (!$link) {

debug('Error connecting to database!',20,__FILE__,__LINE__);

db_error();

debug('FATAL. Exiting...',20,__FILE__,__LINE__);

die(1);

}

Porém, chequei tudo isso aí acima e ta tudo certinho (até onde sei), pois se alterar isso aí eu não consigo mais carregar meu index.php do mysar.
Outra coisa chequei o arquivo config.ini que configura as permissões de acesso ao BD sql, e estão ok. Os privilégios de acesso estão certinhos. Mas qdo vai rolar o import não roda.
Dêem uma força ae.

Obrigado,

Victor Figueira

[60] Comentário enviado por robertobrandao em 17/12/2008 - 15:42h

cara para esse seu erro ai vc deve instalar o php5-cli ou php4-cli e php5-mysql ou php4-mysql isso vai depender do php instalado ok

depois disso deve editar o seguinte arquivo em:

/etc/php5/php-cli/php.ini ou /etc/php4/php-cli/php.ini

descomente essa linha extension=mysql.so no php4 ela esta na linha de nº 556 já no php5 esta na linha de nº 599

o meu aqui esta totalmente instalado e funcionando certo mais nao esta importando os dados se vc pode me ajudar ou se souber de uma forma de importar os dados para o mysar te agradeço.

estou usando aqui a versão 2.1.4

[61] Comentário enviado por sandrocarva em 19/02/2009 - 11:48h

Ótimo, aqui funciou conforme descrito..

valeu..
Artigo muito util.


[62] Comentário enviado por newmoro em 25/02/2009 - 00:37h

Amigo,
Muito bom este seu post, mas como muitos estou com um problema na hora de executar o script # ./mysar-importer.php

Esta me dando o seguinte erro:
PHP Warning: Unknown(): Unable to load dynamic library '/usr/lib/php4/20050606+lfs/mysql.so' - /usr/lib/php4/20050606+lfs/mysql.so: cannot open shared object file: No such file or directory in Unknown on line 0

Fatal error: Call to undefined function: mysql_connect() in /usr/local/mysar/inc/common.inc.php on line 50

Já descomentei essa linha extension=mysql.so no php4 e php5 e assim mesmo continua me dando o erro.

Vc teria como me ajudar?

Newton




[63] Comentário enviado por newmoro em 25/02/2009 - 00:42h

Favor desconsiderar a minha dúvida [62]
Bastou reinstalar o php4-cli e descomentar a linha extension=mysql.so.
Até mais!

[64] Comentário enviado por lucksxe em 26/03/2009 - 09:45h

Achei muito interessante o Mysar instalei deboa, nao tive muita dificuldade nao :) instalei no debian lenny , tenho uma duvida quero colocar senha na hora de loga no mysar como faço ?

[65] Comentário enviado por mcsba em 26/03/2009 - 09:50h

Caro, lucksxe.

Uma maneira que você pode proteger o mysar para acessar com senha é usar o htaccess

[66] Comentário enviado por lucksxe em 26/03/2009 - 09:56h

:) Ja achei i templates Br :) ja fiz tudo Ok meu mysar esta funcionando perfeitamente Parabens FIlipe :)

[67] Comentário enviado por aikonjunior em 16/01/2010 - 12:10h

bom dia

adicionei as linhas que vc passou no crontab e não está puxando o log em tempo real.
o que pode estar acontecendo?

[68] Comentário enviado por whyper em 18/02/2010 - 09:59h

Viva,
antes de mais, parabéns pelo óptimo artigo.
também estou a ter este problema do crontab, não está a actualizar em tempo real...

quando corro o ./mysar-importer.php recebo esta mensagem:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20060613+lfs/msql.so' - /usr/lib/php5/20060613+lfs/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0

os registos são importados na mesma, o php5 está instalado e tenho o extension=mysql.so descomentado no /etc/php5/cli/php.ini

onde poderei corrigir este problema?
Obrigado a todos.

[69] Comentário enviado por daleffe em 03/05/2010 - 07:59h

Olá pessoal,

Estou tendo a seguinte mensagem, após alguns dias de uso do MySAR, na página inicial: Warning: date() expects parameter 2 to be long, string given in /usr/local/mysar/www/index.php on line 43

Alguém teve o mesmo problema?

Valeu!

[70] Comentário enviado por leonardo.dss em 19/07/2010 - 14:32h

Muito bom artigo Felipe parabéns,

Mais tenho uma pergunta, seguinte ao colocar aquelas três linhas no crontab atualizando o tempo todo percebi uma demora nas máquinas pra obter a resposta do servidor, as páginas agora carregam mais lentas, ainda mais durante o a variação de minuto a minuto. Por exemplo, quando o marcador chega a XX(horas):XX(minutos):59(segundos) o cron atualiza as informações do MySar nesse mesmo tempo se tiver acessando de uma máquina percebo nitidamente uma grande lerdeza....após essa virada de minuto XX(horas):X1(minutos):10(segundos), ou seja, 10 segundos após o tempo de atualização das informações o acesso volta ao normal......então minha dúvida é porque isso? Pode ser alguma coisa no squid?
As outras duas linhas mysar-resolver.php e mysar-maintence.php executam o que?

Aqui está as informações do meu crontab;

17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
* * * * * root /var/www/cedimagem/bin/mysar-importer.php > /var/log/mysar/mysar-importer.log 2>&1
* * * * * root /var/www/cedimagem/bin/mysar-resolver.php > /var/log/mysar/mysar-resolver.log 2>&1
0 1 * * * root /var/www/cedimagem/bin/mysar-maintenance.php /var/log/mysar/mysar-maintenance.log 2>&1


[71] Comentário enviado por arthur1990 em 09/09/2010 - 10:49h

Bom primeiramente eu gostaria de parabenizar pelo artigo..
Mas eu estou tendo certa dificuldade... Pois eu não manjo nada de Linux...
Meu relatório não esta atualizando automaticamente .
Para min atualizar ele eu tenho que fazer manualmente
Alguém pode me ajudar?

[72] Comentário enviado por ADelphini em 24/09/2010 - 13:09h

FMENDES!!!! Cara Parabéns excelente artigo!!!! Cara muito bom!!!! precisei instalar aqui na empresa e não encontrei nada na WEB!!!! Valeu parabéns!!!

[73] Comentário enviado por knighttux em 09/12/2010 - 12:18h

Olá, estou com dificuldade na instalação, no momento nao passa da criação do diretorio smarty-tmp, ele existe, tem todas as permissões pedidas pelo mysar setadas corretamente, mas simplesmente não avança, fica em "try again" direto. Estou testando em CentOS 5.3

Obrigado.

[74] Comentário enviado por knighttux em 09/12/2010 - 16:52h

Galera, consegui resolver este problema, simplesmente desabilite o firewall e o SElinux do CentOS e as permissões no diretorio poderão ser setadas corretamente, penei pra descobrir, mas achei rsrsrs...

[75] Comentário enviado por vaner em 16/12/2010 - 22:37h

no meu aqui deu certo, mais so aparece o relatorio do ip 127.0.0.1 que é meu servidor de internet, como faço para aparecer das maquinas de toda minha rede.

Grato

[76] Comentário enviado por knighttux em 29/12/2010 - 16:23h

Vaner,

vc deve ter o squid instalado em seu servidor para o mysar analisar os logs gerados por ele, no meu caso, o servidor de squid é outro, entao eu jogo o log por ftp num diretório do meu servidor mysar e mando o mysar analisa-lo, automatizei essas tarefas pelo cron, e os logs sao analisados de 30 em 30 minutos. Qualquer duvida estou a disposição.

Flw!

[77] Comentário enviado por matheuskamphorst em 06/01/2011 - 09:23h

Tem como fazer aquele esquema de top sites?

[78] Comentário enviado por leandrofv em 13/01/2011 - 05:37h

Bom dia,


Depois de seguir todo o tutorial esbarrei com um problema na importação do log, quando tento com o comando ./mysar-importer.php aparece a seguinte mensagem: -bash: ./mysar-importer.php: Arquivo ou diretório não encontrado, instalei seguindo uma orientação o php-cli e mesmo assim o problema persiste.

Se executo o script direto no diretório onde esta localizado o arquivo (/usr/local/mysar/bin/) a mensagem é a seguinte: -bash: mysar-importer.php: command not found.

Agradeço pela ajuda,


Leandro

[79] Comentário enviado por jgama em 04/02/2011 - 17:17h

Por acaso o desenvolvimento do mysar parou no tempo?

Também não consegui passar para português, mesmo seguindo a dica:

Achei na net que já existe os templates em português na própria instalação, então após o MySar instalado basta mudar o nome dos diretórios conforme a página do Sr. Tiago (http://tiagodurante.wordpress.com/nerd-stuff/mysar-installconfigure/):

-------------------------------------------------------------------------------------------
Caso você queira colocar o MySAR em português brasileiro basta fazer o seguinte:

# mv /var/www/htdocs/$SITE/www-templates /var/www/htdocs/$SITE/www-templates.en
# mv /var/www/htdocs/$SITE/www-templates.pt_BR/ /var/www/htdocs/$SITE/www-templates
# chown nobody /var/www/htdocs/$SITE/www-templates
# chmod o+rwx /var/www/htdocs/$SITE/www-templates
--------------------------------------------------------------------------------------------

No meu caso os "templates" ficam em: /usr/local/mysar

Assim os comandos que utilizei foram:

# cd /usr/local/mysar
Vai ao diretório da instalação do MySar.


# mv www-templates www-templates.en
Muda o nome do diretório www-templates para www-templates.en


# cp www-templates.pt_BR www-templates
Copia o www-templates.pt_BR para www-templates


# chown -R apache www-templates
Altera o dono do diretório www-templates e os arquivos contidos no diretório. No meu caso o usuário que tem que ser o dono do diretório é o usuário apache (vai depender da instalação feita do servidor HTTP)

Uso Ubuntu-server, fiz as alterações e continua mostrando em Inglês.

abraço

[80] Comentário enviado por joserf em 28/04/2011 - 00:19h

segue o meu erro amigo , se puder dar uma força agrdeço.

Reading config.ini file...Found!
Array ( [dbuser] => mysar [dbPass] => mysar [dbHost] => localhost [dbName] => mysar )

Testing database connection...
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'www-data'@'localhost' (using password: YES) in /usr/local/mysar/www/install/index.php on line 736
Failed...
Access denied for user 'www-data'@'localhost' (using password: YES)

Click here to try again!

Sorry, but I couldn't verify your database setup!
If you think it is safe to ignore this step, click here to continue.

[81] Comentário enviado por danillorc em 05/04/2012 - 13:29h

E aí galera do vol, blz o artigo,

uma coisa pra lembrar q o colega não comentou é necessário criar os arquivos de log e dá permissões para os mesmos

sudo touch /var/log/mysar/mysar-importer.log
sudo touch /var/log/mysar/mysar-resolver.log
sudo touch /var/log/mysar/mysar-maintenance.log

sudo chown server.server /var/log/mysar/mysar-importer.log

acho q isso faz funfar.

vi q tinha uns com dificuldade com o mysql talvez isso ajude:

#SE NÃO TIVER SENHA
mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('senha') WHERE User='root';
mysql> FLUSH PRIVILEGES;

#SE TIVER SENHA
mysql -u root -p
mysql> use mysql
mysql> UPDATE user SET Password=PASSWORD('senha') WHERE User='root';
mysql> FLUSH PRIVILEGES;

#TIRANDO A SENHA
mysql -u root -p
grant all privileges on *.* to 'root'@'%';
flush privileges ;





[82] Comentário enviado por xflavio em 17/05/2012 - 08:55h

Felipe, belo tutorial, porém o mysar tem alguma falha na hora de atualzar de um dia para o outro? pois o meu está tudo configurado nos conformes, porém, ele está atualizando os sites com uma data anterior ao do dia atual.

você sabe por que isso?

[83] Comentário enviado por marceloviana em 22/08/2012 - 17:30h

Por acaso tem algum jeito de pegar os logs da data anterior da instalação do mysarg?
Por exemplo, instalei o mysarg depois de trinta dias que o squid estava rodando. Então tem como eu resgatar estes logs anteriores?

[84] Comentário enviado por JardelRodrigues em 17/11/2015 - 16:53h


Alias /mysar /usr/local/mysar/www

<Directory "/usr/local/mysar/www">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>


A configuração no Apache 2.2 fica desta forma :

Order allow,deny
Allow from all

A configuração no Apache 2.4 fica desta forma :

Require all granted


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts