banner-magento-categoria

Ambiente de desenvolvimento Magento

Aprender o Magento pode variar de frustrante a irritante para o usuário pela primeira vez. Montar um ambiente de desenvolvimento com ferramentas que facilitem certas tarefas como o debug por exemplo pode ser muito úteis e valiosos. Aqui estão algumas dicas para aliviar o ônus de assimilar um sistema totalmente novo.

Ativar Logging no Ambiente de desenvolvimento

Logs básicos

Mage::Log($variable);

O Magento emitirá o conteúdo de $variable para um log. Arrays e objetos são auto-expandidos e muito impressos, permitindo ampliar rapidamente a parte da estrutura de dados em que você está interessado. Desta forma a visualização fica melhor do que despejar objetos no navegador. Particularmente considerando a frequência com que os objetos Magento armazenam referências a uma boa parte do sistema. Resulta em despejo de dados de objetos grandes.

O log está desativado por padrão, para mudar isso:

  • No Admin Magento, vá para System-> Configuration (Sistema -> Configurações)
  • Na coluna da esquerda, clique em Desenvolvedor (em Avançado)
  • Se não estiver expandido, clique em Configurações de log
  • Selecione Sim no menu suspenso “Ativado”
  • Clique em Salvar Configuração

O Magento criará os arquivos de log para você caso o seu Webserver tenha permissão para acessar e escrever nesta pasta. Verifique com o administrador do sistema a melhor maneira de fazer isso. Por padrão, os arquivos de log são armazenados em:

var/log/system.log
var/log/exception.log

As chamadas feitas usando Mage :: Log serão registradas no system.log. As exceções serão registradas para exception.log

Customizando seus logs

No caso, você pode também passar o nome de um arquivo para o log. Ficaria desta forma:

Mage::Log($variable,null,'nomedolog.log');

Quando criamos logs, temos que tomar o cuidado pois temos a possibilidade de usar uma flag para que o log seja forçado a gravar mesmo que inativo no sistema. Abaixo um exemplo:

Mage::Log($variable,null,'nomedolog.log',true);

O uso destas configurações para log serem utilizadas em ambientes de desenvolvimento. Porém dependendo do caso, dependendo do caso as vezes precisamos colocar logs. Para isso sempre tome o cuidado com esta flag. Caso seja necessário, você pode criar um método de log em algum helper associado a uma configuração de sistema para este módulo.

Habilitando o Developer Mode no ambiente de desenvolvimento

Se você olhar no arquivo de inicialização Magento, index.php, você verá linhas semelhantes às seguintes:

#Mage::setIsDeveloperMode(true);
#ini_set('display_errors', 1);

Descomente estas linhas. Em um sistema de produção, você nunca desejaria que seus erros apareçam no navegador. Mas ao mesmo tempo que o desenvolvimento de erros e avisos lançados imediatamente no seu rosto é inestimável.

Ambiente de desenvolvimento no Magento - Var Dump

Exemplo de uma saída de debug

Configurar a flag IsDeveloperMode é uma grande economia de tempo. Por padrão, quando o Magento descobre uma exceção, ele registrará a exceção em um relatório. Em seguida, encaminhar o usuário para uma página que exibirá esse relatório. Isso pode ser irritante quando você está se desenvolvendo. Isto principalmente porque o Magento redireciona de maneira que você não pode fazer backup na página em que você estava. A configuração Developer Mode resulta na saída de Exceção que está sendo enviada diretamente para o navegador.

Conclusão

O Magento pode ser um pouco custoso para se aprender, difícil de detectar erros. Porém após alguns anos trabalhando com esta ferramenta e enfrentando os seus desafios começo a compreender algumas coisas. Não só a importância dela no mercado do e-commerce. Não só por ela me gerar emprego. Mas sim por ela me oferecer desafios que ajudam a construir uma base de conhecimento excelente. Por ela me oferecer conhecimentos muito legais e interessantes dentro do mundo da programação orientada a objetos.

No caso estas dicas irão ajudar a tornar o trabalho um pouco mais agradável e um pouco mais fácil para se debugar os problemas. Espero que ajude.

 

Posts Relacionados