mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-08 20:38:52 +00:00
Merge pull request #2570 from Nicofuma/ticket/12687
[ticket/12687] Add a constant to display the load time without DEBUG * Nicofuma/ticket/12687: [ticket/12687] Remove french spaces [ticket/12687] Display the number of cached queries [ticket/12687] Don't check if memory_get_peak_usage() exists [ticket/12687] Wrap $GLOBALS['starttime'] in a if [ticket/12687] Fix the namespace of $request [ticket/12687] Update doc block [ticket/12687] Use microtime(true) [ticket/12687] Remove globals [ticket/12687] Return a string and move the displaying of the sql report [ticket/12687] Rename DISPLAY_LOAD_TIME to PHPBB_DISPLAY_LOAD_TIME [ticket/12687] Display the explain link only when DEBUG is set [ticket/12687] Add a constant to display the load time without DEBUG
This commit is contained in:
commit
a262bfc78f
2 changed files with 70 additions and 58 deletions
|
@ -5030,6 +5030,72 @@ function page_header($page_title = '', $display_online_list = false, $item_id =
|
|||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check and display the SQL report if requested.
|
||||
*
|
||||
* @param \phpbb\request\request_interface $request Request object
|
||||
* @param \phpbb\auth\auth $auth Auth object
|
||||
* @param \phpbb\db\driver\driver_interface $db Database connection
|
||||
*/
|
||||
function phpbb_check_and_display_sql_report(\phpbb\request\request_interface $request, \phpbb\auth\auth $auth, \phpbb\db\driver\driver_interface $db)
|
||||
{
|
||||
if ($request->variable('explain', false) && $auth->acl_get('a_') && defined('DEBUG'))
|
||||
{
|
||||
$db->sql_report('display');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate the debug output string
|
||||
*
|
||||
* @param \phpbb\db\driver\driver_interface $db Database connection
|
||||
* @param \phpbb\config\config $config Config object
|
||||
* @param \phpbb\auth\auth $auth Auth object
|
||||
* @param \phpbb\user $user User object
|
||||
* @return string
|
||||
*/
|
||||
function phpbb_generate_debug_output(phpbb\db\driver\driver_interface $db, \phpbb\config\config $config, \phpbb\auth\auth $auth, \phpbb\user $user)
|
||||
{
|
||||
$debug_info = array();
|
||||
|
||||
// Output page creation time
|
||||
if (defined('PHPBB_DISPLAY_LOAD_TIME'))
|
||||
{
|
||||
if (isset($GLOBALS['starttime']))
|
||||
{
|
||||
$totaltime = microtime(true) - $GLOBALS['starttime'];
|
||||
$debug_info[] = sprintf('Time: %.3fs', $totaltime);
|
||||
}
|
||||
|
||||
$debug_info[] = $db->sql_num_queries() . ' Queries (' . $db->sql_num_queries(true) . ' cached)';
|
||||
|
||||
$memory_usage = memory_get_peak_usage();
|
||||
if ($memory_usage)
|
||||
{
|
||||
$memory_usage = get_formatted_filesize($memory_usage);
|
||||
|
||||
$debug_info[] = 'Peak Memory Usage: ' . $memory_usage;
|
||||
}
|
||||
}
|
||||
|
||||
if (defined('DEBUG'))
|
||||
{
|
||||
$debug_info[] = 'GZIP: ' . (($config['gzip_compress'] && @extension_loaded('zlib')) ? 'On' : 'Off');
|
||||
|
||||
if ($user->load)
|
||||
{
|
||||
$debug_info[] = 'Load: ' . $user->load;
|
||||
}
|
||||
|
||||
if ($auth->acl_get('a_'))
|
||||
{
|
||||
$debug_info[] = '<a href="' . build_url() . '&explain=1">SQL Explain</a>';
|
||||
}
|
||||
}
|
||||
|
||||
return implode(' | ', $debug_info);
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate page footer
|
||||
*
|
||||
|
@ -5062,37 +5128,10 @@ function page_footer($run_cron = true, $display_template = true, $exit_handler =
|
|||
return;
|
||||
}
|
||||
|
||||
// Output page creation time
|
||||
if (defined('DEBUG'))
|
||||
{
|
||||
$mtime = explode(' ', microtime());
|
||||
$totaltime = $mtime[0] + $mtime[1] - $starttime;
|
||||
|
||||
if ($request->variable('explain', false) && $auth->acl_get('a_') && defined('DEBUG') && method_exists($db, 'sql_report'))
|
||||
{
|
||||
$db->sql_report('display');
|
||||
}
|
||||
|
||||
$debug_output = sprintf('Time : %.3fs | ' . $db->sql_num_queries() . ' Queries | GZIP : ' . (($config['gzip_compress'] && @extension_loaded('zlib')) ? 'On' : 'Off') . (($user->load) ? ' | Load : ' . $user->load : ''), $totaltime);
|
||||
|
||||
if ($auth->acl_get('a_') && defined('DEBUG'))
|
||||
{
|
||||
if (function_exists('memory_get_peak_usage'))
|
||||
{
|
||||
if ($memory_usage = memory_get_peak_usage())
|
||||
{
|
||||
$memory_usage = get_formatted_filesize($memory_usage);
|
||||
|
||||
$debug_output .= ' | Peak Memory Usage: ' . $memory_usage;
|
||||
}
|
||||
}
|
||||
|
||||
$debug_output .= ' | <a href="' . build_url() . '&explain=1">Explain</a>';
|
||||
}
|
||||
}
|
||||
phpbb_check_and_display_sql_report($request, $auth, $db);
|
||||
|
||||
$template->assign_vars(array(
|
||||
'DEBUG_OUTPUT' => (defined('DEBUG')) ? $debug_output : '',
|
||||
'DEBUG_OUTPUT' => phpbb_generate_debug_output($db, $config, $auth, $user),
|
||||
'TRANSLATION_INFO' => (!empty($user->lang['TRANSLATION_INFO'])) ? $user->lang['TRANSLATION_INFO'] : '',
|
||||
'CREDIT_LINE' => $user->lang('POWERED_BY', '<a href="https://www.phpbb.com/">phpBB</a>® Forum Software © phpBB Limited'),
|
||||
|
||||
|
|
|
@ -146,37 +146,10 @@ function adm_page_footer($copyright_html = true)
|
|||
return;
|
||||
}
|
||||
|
||||
// Output page creation time
|
||||
if (defined('DEBUG'))
|
||||
{
|
||||
$mtime = explode(' ', microtime());
|
||||
$totaltime = $mtime[0] + $mtime[1] - $starttime;
|
||||
|
||||
if ($request->variable('explain', false) && $auth->acl_get('a_') && defined('DEBUG') && method_exists($db, 'sql_report'))
|
||||
{
|
||||
$db->sql_report('display');
|
||||
}
|
||||
|
||||
$debug_output = sprintf('Time : %.3fs | ' . $db->sql_num_queries() . ' Queries | GZIP : ' . (($config['gzip_compress']) ? 'On' : 'Off') . (($user->load) ? ' | Load : ' . $user->load : ''), $totaltime);
|
||||
|
||||
if ($auth->acl_get('a_') && defined('DEBUG'))
|
||||
{
|
||||
if (function_exists('memory_get_peak_usage'))
|
||||
{
|
||||
if ($memory_usage = memory_get_peak_usage())
|
||||
{
|
||||
$memory_usage = get_formatted_filesize($memory_usage);
|
||||
|
||||
$debug_output .= ' | Peak Memory Usage: ' . $memory_usage;
|
||||
}
|
||||
}
|
||||
|
||||
$debug_output .= ' | <a href="' . build_url() . '&explain=1">Explain</a>';
|
||||
}
|
||||
}
|
||||
phpbb_check_and_display_sql_report($request, $auth, $db);
|
||||
|
||||
$template->assign_vars(array(
|
||||
'DEBUG_OUTPUT' => (defined('DEBUG')) ? $debug_output : '',
|
||||
'DEBUG_OUTPUT' => phpbb_generate_debug_output($db, $config, $auth, $user),
|
||||
'TRANSLATION_INFO' => (!empty($user->lang['TRANSLATION_INFO'])) ? $user->lang['TRANSLATION_INFO'] : '',
|
||||
'S_COPYRIGHT_HTML' => $copyright_html,
|
||||
'CREDIT_LINE' => $user->lang('POWERED_BY', '<a href="https://www.phpbb.com/">phpBB</a>® Forum Software © phpBB Limited'),
|
||||
|
|
Loading…
Add table
Reference in a new issue