watchdog_exception

7 bootstrap.inc watchdog_exception($type, Exception $exception, $message = NULL, $variables = array(), $severity = WATCHDOG_ERROR, $link = NULL)
8 bootstrap.inc watchdog_exception($type, Exception $exception, $message = NULL, $variables = array(), $severity = WATCHDOG_ERROR, $link = NULL)

Logs an exception.

This is a wrapper function for watchdog() which automatically decodes an exception.

Parameters

$type: The category to which this message belongs.

$exception: The exception that is going to be logged.

$message: The message to store in the log. If empty, a text that contains all useful information about the passed-in exception is used.

$variables: Array of variables to replace in the message on display. Defaults to the return value of drupal_decode_exception().

$severity: The severity of the message, as per RFC 3164.

$link: A link to associate with the message.

See also

watchdog()

drupal_decode_exception()

14 calls to watchdog_exception()

File

includes/bootstrap.inc, line 1660
Functions that need to be loaded on every Drupal request.

Code

function watchdog_exception($type, Exception $exception, $message = NULL, $variables = array(), $severity = WATCHDOG_ERROR, $link = NULL) {

  // Use a default value if $message is not set.
  if (empty($message)) {
    // The exception message is run through check_plain() by _drupal_decode_exception().
    $message = '%type: !message in %function (line %line of %file).';
  }
  // $variables must be an array so that we can add the exception information.
  if (!is_array($variables)) {
    $variables = array();
  }

  require_once DRUPAL_ROOT . '/includes/errors.inc';
  $variables += _drupal_decode_exception($exception);
  watchdog($type, $message, $variables, $severity, $link);
}

Comments

Note that the $type parameter

Note that the $type parameter is passed straight to watchdog(), so you should follow the same convention here as you would there:

$type The category to which this message belongs. Can be any string, but the general practice is to use the name of the module calling watchdog().

Login or register to post comments