Problema com download de logSquid (Fatal error: Allowed memory..) (RESOLVIDO)
-
Olá!
Estou com um problema em gerar relatórios no logSquid pois ele não está gravando os logs no banco de dados e consequentemente o arquivo de log ficou gigante com o tempo.
Agora estou tentando baixar o arquivo de log (/var/squid/logs/logSquid.log) pra ver se consigo separar o arquivo manualmente.
Ou se alguém souber como consigo gravar os logs no banco de dados.. O problema acredito é que o arquivo já está com 2.081.863 linhas e com mais de 300 MB.
Ao tentar baixar o log, recebo a seguinte mensagem:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 389414912 bytes) in /usr/local/www/diag_command.php on line 89
Call Stack:
0.0000 234088 1. {main}() /usr/local/www/diag_command.php:0
0.0072 779384 2. fpassthru() /usr/local/www/diag_command.php:89PHP ERROR: Type: 1, File: /usr/local/www/diag_command.php, Line: 89, Message: Allowed memory size of 134217728 bytes exhausted (tried to allocate 389414912 bytes)
-
Mande print de suas configurações de chace.
-
Eu acabei desistindo do logsquid. Nem sempre ele rotaciona os logs e se o arquivo ficar muito grande só é possível rotacionar na força bruta. Apesar de tudo ele tem futuro é entrega relatórios interessantes.
COm relação ao seu problema, já ocorreu isso comigo e o que fiz foi dar um echo > access.log.. Porém com isso vc irá perder o histórico desse log.
-
Fiz alguns testes e acabei baixando o logSquid.log através do WinSCP e alterando-o para que fique bem pequeno. Por algum motivo, quando clicava para "Gravar Logs no Banco de Dados", mesmo o arquivo do logSquid.log com apenas 20 linhas, ocorria o seguinte erro:
[17-Jan-2017 12:04:45 America/Sao_Paulo] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 367 bytes) in /usr/local/www/logsquid/class/logsquid.inc on line 66
[17-Jan-2017 12:04:45 America/Sao_Paulo] PHP Stack trace:
[17-Jan-2017 12:04:45 America/Sao_Paulo] PHP 1. {main}() /usr/local/www/logsquid/functions/conectclass.php:0
[17-Jan-2017 12:04:45 America/Sao_Paulo] PHP 2. writelogs() /usr/local/www/logsquid/functions/conectclass.php:55
[17-Jan-2017 12:04:45 America/Sao_Paulo] PHP 3. require_once() /usr/local/www/logsquid/functions/conectclass.php:273
[17-Jan-2017 12:04:45 America/Sao_Paulo] PHP 4. logdaemon->__construct() /usr/local/www/logsquid/daemon/logdaemon.inc:69
[17-Jan-2017 12:04:45 America/Sao_Paulo] PHP 5. logdaemon->readLog() /usr/local/www/logsquid/daemon/logdaemon.inc:18
[17-Jan-2017 12:04:45 America/Sao_Paulo] PHP 6. logsquid->readTypeLog() /usr/local/www/logsquid/daemon/logdaemon.inc:58
[17-Jan-2017 12:04:45 America/Sao_Paulo] PHP 7. exec() /usr/local/www/logsquid/class/logsquid.inc:66Então tentei fazer algumas alterações como inserir o ini_set("memory_limit", "512M"); no logsquid.inc e também no Graph.inc e no logdaemon.inc e nenhuma dessas opções funcionaram.
A única maneira de fazer funcionar foi alterando o /etc/rc.php_ini_setup e adicionando memory_limit = 512M logo abaixo da linha ; File generated from /etc/rc.php_ini_setup.
Consegui gravar no banco de dados mas depois tive que aumentar o memory_limit para 1024M. Parece que o logSquid está usando muito mais recursos do que o necessário para realizar esse procedimento.
Enfim, depois de fazer essa alteração vou verificar se vai gravar automaticamente, mas pelo menos manualmente voltou a funcionar.