Drupal - Fehlerbehandlung

In diesem Kapitel werden wir uns mit der Behandlung von Drupal-Fehlern zum Verwalten von Fehlermeldungen auf der Drupal-Site befassen.

Die Fehlerbehandlung ist ein Prozess zum Erkennen und Finden der Fehlerbehebungen. Dies können Programmieranwendungsfehler oder übertragbare Fehler sein.

In den folgenden Schritten wird beschrieben, wie Sie Fehlermeldungen in Drupa verwalten.

Step 1 - Geh zu Configuration und klicken Sie auf Logging and errors.

Step 2 - Die Logging and errors Die Seite wird wie im folgenden Bildschirm angezeigt angezeigt.

Im Folgenden sind die Details der Felder aufgeführt, die im vorherigen Bildschirm angezeigt werden.

  • Error messages to display - Es gibt Fehlermeldungen an, die auf der Drupal-Site angezeigt werden sollen.

    • None - Diese Option zeigt keine Fehlermeldung an.

    • Errors and warnings - Diese Option zeigt nur Meldungen zu Fehlern und Warnungen an.

    • All messages - Diese Option gibt alle Arten von Fehlermeldungen an, z. B. Fehler, Warnungen usw., die auf der Site angezeigt werden sollen.

  • Database log messages to keep - Gibt die maximale Anzahl von Nachrichten an, die im Datenbankprotokoll gespeichert werden sollen.

Drupal verwendet _drupal_exception_handler ($exception)Funktion zur Behandlung der Fehler auf der Website. Diese Fehler werden nicht in einen Try / Catch-Block eingeschlossen. Das Skript führt die Funktion nicht aus, wenn ein Ausnahmebehandler beendet wird.

Der Code für _drupal_exception_handler ist wie folgt -

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/>';
      }
   }
}

Die Funktion muss bei jeder Drupal-Anfrage verwendet werden. Diese Funktion ist in der Zeile 2328 in der Datei vorhandenincludes/bootstrap.inc.

Es gibt zwei Zeichenfolgenverweise auf _drupal_exception_handler sowie_drupal_bootstrap_configuration() vorhanden in der bootstrap.inc Datei und_drupal_get_last_callerin der Datei error.inc vorhanden. Beide Dateien sind in der‘includes’ Mappe.