function drush_log

8.0.x drush_log($message, $type = LogLevel::NOTICE, $error = null)
6.x drush_log($message, $type = 'notice', $error = null)
7.x drush_log($message, $type = LogLevel::NOTICE, $error = null)
3.x drush_log($message, $type = 'notice', $error = null)
4.x drush_log($message, $type = 'notice', $error = null)
5.x drush_log($message, $type = 'notice', $error = null)
master drush_log($message, $type = LogLevel::INFO, $error = null)

Add a log message to the log history.

This function calls the callback stored in the 'DRUSH_LOG_CALLBACK' context with the resulting entry at the end of execution.

This allows you to replace it with custom logging implementations if needed, such as logging to a file or logging to a database (drupal or otherwise).

The default callback is the _drush_print_log() function with prints the messages to the shell.


message: String containing the message to be logged.

type: The type of message to be logged. Common types are 'warning', 'error', 'success' and 'notice'. A type of 'failed' can also be supplied to flag as an 'error'. A type of 'ok' or 'completed' can also be supplied to flag as a 'success'. If you want your log messages to print to screen without the user entering a -v or --verbose flag, use type 'ok', this prints log messages out to STDERR, which prints to screen (unless you have redirected it). All other types of messages will be assumed to be notices.

Related topics

152 calls to drush_log()
dlm in includes/
Run print_r on a variable and log the output.
DrushBatchContext::offsetSet in includes/
DrushMakeProject::applyPatches in commands/make/
Retrieve and apply any patches specified by the makefile to this project.
DrushMakeProject::getTranslations in commands/make/
Retrieve translations for this project.
DrushMakeProject::make in commands/make/
Build a project.

... See full list


includes/, line 1434
The drush API implementation and helpers.


function drush_log($message, $type = 'notice', $error = null) {
  $log = &drush_get_context('DRUSH_LOG', array());
  $callback = drush_get_context('DRUSH_LOG_CALLBACK', '_drush_print_log');
  $entry = array(
    'type' => $type,
    'message' => $message,
    'timestamp' => microtime(TRUE),
    'memory' => memory_get_usage(),
  $entry['error'] = $error;
  $log[] = $entry;
  drush_backend_packet('log', $entry);

  return $callback($entry);