Verificar Log do Sistema

Arquivos de log’s são muito úteis durante o processo de desenvolvimento do sistema para encontrar problemas, conflitos, e identificar falhas de funcionamento.

O Magento oferece 3 (três) controles de log’s:

1. Log de monitoramento de navegação. Ver post: Limpando tabela de Log’s.
2. Log de falha no sistema. Ver post: Error log record number.
3. Log de eventos e exceções. Que veremos neste post.

Por que eu deveria

Enquanto você está montando sua loja, desenvolvendo módulos, customizando páginas, instalando extensões, é muito importante que você monitore os eventos e exceções que ocorrem no seu sistema.

É muito comum as pessoas começarem a personalizar a loja inteira, e “do nada” algo para de funcionar como deveria, seja um cadastro de endereços, um meio de pagamento, ou avaliação de produtos.

Você pode estar com problemas/conflitos no código que não chegam a gerar uma falha de continuidade no sistema, e por isso não possui o famoso Error log record number.

O que não significa que não existam erros.

Como usar

Assim que você instala o Magento o controle de log’s de eventos e exceções vem desligado.

Pois não é algo essencial para o funcionamento do sistema.

Mas fundamental para quem está desenvolvendo.

Por isso acesse:

Sistema -> Configuração -> Avançado -> Desenvolvedor [Configurações de Log]

E altere a opção Habilitado para “Sim” e clique em salvar.

magento-imagem-log

Veja ainda que você pode personalizar o nome dos arquivos.

E abaixo do nome ele indica o diretório onde estes arquivos serão gerenciados.

Como ler

Agora que seu sistema está gerando arquivos de log, você pode acompanhar os arquivos para identificar possíveis problemas, basta acessar o diretório indicado:

sua instalação -> var -> log

Ambos os arquivos estarão listados system.log e exception.log.

Onde você pode usar o system.log para gerar um debug do código, com mensagens do tipo “metodo chamado e retornando valor X“.

Ou ainda gerar um alerta do tipo “valor inválido para cálculo na assinatura do método“.

E o arquivo exception.log é onde os erros são monitorados.

São erros similares aos gerados pelo Error log record number, a diferença é que eles não chegam a impedir o sistema de continuar funcionando.

Exemplo:

2013-07-24T07:23:14+00:00 ERR (3):

exception 'Exception' with message 'Strict Notice: Non-static method Mage_Core_Model_Locale::date() should not be called statically, assuming $this from incompatible context in /Users/mariosam/app/design/frontend/base/default/template/catalog/product/widget/new/content/new_list.phtml on line 74' in /Users/mariosam/app/code/core/Mage/Core/functions.php:245

Stack trace:

#0 /Users/mariosam/app/design/frontend/base/default/template/catalog/product/widget/new/content/new_list.phtml(74): mageCoreErrorHandler(2048, 'Non-static meth...', '/Users/mariosam...', 74, Array)

#1 /Users/mariosam/app/code/core/Mage/Core/Block/Template.php(216): include('/Users/mariosam...')

Ele continua até o número #20, #30, #40 {main}.

Mas o que interessa mesmo são as primeiras linhas.

E caso você não saiba interpretar a mensagem, copie a informação e leve para o fórum da Escola Magento para obter ajuda.

Usando o log

Se você é um desenvolvedor, pode utilizar os arquivos de log para debugar seu código.

Basta utilizar o código abaixo:

Log de exceção:

...
} catch(Exception $e) {
Mage::logException($e);
}

A assinatura do método é esta:

public static function logException(Exception $e)

Log de eventos:

Mage::log('sua msg aqui...');

A assinatura do método é esta:

public static function log($message, $level = null, $file = '', $forceLog = false)

Veja que é possível informar além da mensagem, um grau (level) de importância, o nome de um arquivo (file) para gravar o log, e se você deve forçar a gravação do arquivo mesmo com sistema de log’s desligado.

Quer outras dicas de como usar o arquivo de log para debug? Veja o wiki no site oficial (em inglês): Magento Debugging Tips.

Sucesso!

2017-01-24T20:26:18+00:00

RECEBA DICAS VALIOSAS NO SEU EMAIL

x