Os programadores mantêm o relatório de erros ativado ou desativado?

12

Eu queria saber se os programadores de php mantêm error_reporting no php.ini ligado ou desligado após a entrega do site?


fonte

Respostas:

18

Você deve sempre manter o relatório de erros, o registro dos eventos mais importantes e a auditoria. Caso contrário, no dia em que o aplicativo falhar, por algum motivo, será difícil descobrir o que aconteceu.

Dito isto, o relatório de erros deve ser feito internamente e nunca mostrado ao usuário final, pois seria um problema de segurança mostrar informações confidenciais. Você pode usar display_errorse log_errorsconfigurações para isso: em php.ini-production, o primeiro é definido como off, enquanto o segundo é on.

A propósito, php.ini-productionjá responde sua pergunta:

; error_reporting
;   Default Value: E_ALL & ~E_NOTICE
;   Development Value: E_ALL | E_STRICT
;   Production Value: E_ALL & ~E_DEPRECATED

Outro comentário também diz que:

Por padrão, o PHP está definido para executar ações em todos os erros, avisos e avisos, EXCETO os relacionados a E_NOTICE e E_STRICT, que juntos cobrem as melhores práticas e os padrões de codificação recomendados no PHP. Por motivos de desempenho, esta é a configuração de relatório de erros recomendada. Seu servidor de produção não deve desperdiçar recursos reclamando das melhores práticas e dos padrões de codificação.

Arseni Mourzenko
fonte
Obrigado pela resposta. É muito óbvio que o relatório de erros é muito útil enquanto um site é desenvolvido, mas fiquei confuso se os desenvolvedores o desativarem após a criação do site para que o cliente não veja nenhum dos erros. Obrigado por limpar o conceito.
Se um desenvolvedor error_reportingdesativa a produção, ele provavelmente tem algo a esconder.
precisa saber é o seguinte
Você deseja desativar o log de nível de depuração e rastreamento na produção. Os relatórios em nível de erro são essenciais quando as coisas dão errado. A maioria dos sites deseja que o log informativo seja ativado se for feito adequadamente.
BillThor
@FahadUddin Você não quer que os visualizadores do seu site / aplicativo vejam erros. A única coisa que restringimos é a exibição de erros para o usuário final, o registro cuida do resto. No entanto, as boas práticas determinam que, no caso de um erro no nível do aplicativo (conexão ruim com o banco de dados, por exemplo), informamos ao usuário final que algo deu errado e, no back-end, alertamos os desenvolvedores imediatamente.
Ian Lewis