function dblog_top
dblog_top($type)
Page callback: Shows the most frequent log messages of a given event type.
Messages are not truncated on this page because events detailed herein do not have links to a detailed view.
Parameters
string $type: Type of database log events to display (e.g., 'search').
Return value
array A build array in the format expected by drupal_render().
See also
File
- modules/dblog/dblog.admin.inc, line 102
- Administrative page callbacks for the Database Logging module.
Code
function dblog_top($type) { $header = array( array('data' => t('Count'), 'field' => 'count', 'sort' => 'desc'), array('data' => t('Message'), 'field' => 'message') ); $count_query = db_select('watchdog'); $count_query->addExpression('COUNT(DISTINCT(message))'); $count_query->condition('type', $type); $query = db_select('watchdog', 'w')->extend('PagerDefault')->extend('TableSort'); $query->addExpression('COUNT(wid)', 'count'); $query = $query ->fields('w', array('message', 'variables')) ->condition('w.type', $type) ->groupBy('message') ->groupBy('variables') ->limit(30) ->orderByHeader($header); $query->setCountQuery($count_query); $result = $query->execute(); $rows = array(); foreach ($result as $dblog) { $rows[] = array($dblog->count, theme('dblog_message', array('event' => $dblog))); } $build['dblog_top_table'] = array( '#theme' => 'table', '#header' => $header, '#rows' => $rows, '#empty' => t('No log messages available.'), ); $build['dblog_top_pager'] = array('#theme' => 'pager'); return $build; }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/modules!dblog!dblog.admin.inc/function/dblog_top/7.x