Wordpress manipulação de erros PHP e relatórios em ambiente de produção

4

Estou tentando encontrar uma solução sobre como lidar com a exibição e o registro de erros em um ambiente de produção PHP (Wordpress).

É possível fazer o seguinte (sugestões alternativas são bem-vindas):

  • Capture erros críticos e envie uma notificação por e-mail imediata ( isso parece uma solução promissora, mas testado no meu ambiente de produção ainda ).
  • Não exiba erros de PHP na tela para os visitantes. Em vez disso, exiba uma página de erro personalizada. Algo que é mais amigável do que a "tela branca da morte" do PHP. Isso inclui os erros específicos do Wordpress, como o "Erro ao estabelecer uma conexão com o banco de dados".

Detalhes do ambiente de produção específicos para esta pergunta:

  • WordPress 3.5.1
  • Anfitrião: Windows Azure Cloud
  • Servidor da Web: IIS 7.5

O que eu já configurei:

  • Ambiente de desenvolvimento (local), de preparo e produção
  • O código é gerenciado no controle de origem (controle de versão do Team Foundation Server)
  • As compilações testadas são enviadas para produção (Windows Azure Cloud)
  • Eu configurei o wp-config para vários ambientes:

    • Desenvolvimento e produção conectam-se a diferentes bancos de dados.
    • Configurações de desenvolvimento:

      • WP_DEBUG = true
      • WP_DEBUG_DISPLAY = true
      • WP_DEBUG_LOG = true
      • display_errors (via @ini_set) = true
    • Configurações de produção:

      • WP_DEBUG = falso
      • WP_DEBUG_DISPLAY = falso
      • WP_DEBUG_LOG = true
      • display_errors (via @ini_set) = false
por IntricatePixels 12.04.2013 / 04:35

1 resposta

4

É melhor simplesmente registrar erros no servidor e, em seguida, usar o bash ou um script de servidor que suporte e-mail e análise de erros (em vez de PHP). Existem muitas ferramentas de arquivo de log, simples como Logwatch , Swatch , Octopussy , ou mais complexas como Nagios .

Para os erros que são acionados usando WP_Error , você pode escrever um alerta de e-mail ou uma função de registro em a classe , isto é, se é o seu código.

Eu recomendo verificar isso: enlace

Além disso, o WP suporta um arquivo maintenance.php e um db-error.php que você pode personalizar, sendo o último mais benéfico para sua pergunta, já que ele manipulará os erros de BD relacionados ao WP.

Você pode usar o PHP para enviar erros, por exemplo, usando o acima: enlace

Mas é melhor você usar arquivos de log e um analisador de log para fazer esse tipo de trabalho em um servidor de produção.

    
por Wyck 12.04.2013 / 05:58