Drupal - Tratamento de Erros
Neste capítulo, estudaremos sobre o tratamento de erros do Drupal para o gerenciamento de mensagens de erro no site do Drupal.
O tratamento de erros é um processo de detecção e localização de soluções para os erros. Podem ser erros de programação de aplicativo ou erros comunicáveis.
As etapas a seguir descrevem como gerenciar mensagens de erro na Drupa -
Step 1 - Vá para Configuration e clique Logging and errors.
Step 2 - o Logging and errors a página será exibida conforme mostrado na tela a seguir.
A seguir estão os detalhes dos campos como vistos na tela anterior -
Error messages to display - Ele especifica mensagens de erro a serem exibidas no site Drupal.
None - Esta opção não exibe nenhuma mensagem de erro.
Errors and warnings - Esta opção exibe apenas mensagens relacionadas a erros e avisos.
All messages - Esta opção especifica todos os tipos de mensagens de erro, como erros, avisos, etc. a serem exibidos no site.
Database log messages to keep - Indica o número máximo de mensagens a serem mantidas no log do banco de dados.
Drupal usa _drupal_exception_handler ($exception)função para lidar com os erros no site. Esses erros não serão incluídos em um bloco try / catch. O script não executará a função quando um manipulador de exceção sair.
O código para _drupal_exception_handler é o seguinte -
function _drupal_exception_handler($exception) {
require_once DRUPAL_ROOT . '/includes/errors.inc';
try {
// display the error message in the log and return the error messages to the user
_drupal_log_error(_drupal_decode_exception($exception), TRUE); } catch (Exception $excp2) {
// Another uncaught exception was thrown while handling the first one.
// If we are displaying errors, then do so with no possibility of
a further uncaught exception being thrown.
if (error_displayable()) {
print '<h1>Additional uncaught exception thrown while handling exception.</h1>';
print '<h2>Original</h2> <p>'. _drupal_render_exception_safe($exception).'</p>'; print '<h2>Additional</h2> <p>'. _drupal_render_exception_safe($excp2).'</p><hr/>';
}
}
}
A função deve ser usada em todas as solicitações do Drupal. Esta função está presente na linha 2328 do arquivoincludes/bootstrap.inc.
Existem duas referências de string para _drupal_exception_handler tal como_drupal_bootstrap_configuration() presente no bootstrap.inc arquivo e_drupal_get_last_callerpresente no arquivo errors.inc. Ambos os arquivos estão presentes no‘includes’ pasta.