By moving the performance profile logging to the very
end of PHP processing, we cover more pages, notably those
that don't end up with a footer or a redirect, like file
serving.
This should improve quality of our performance logs, and
help catch some piggies...
@apache_child_terminate();
}
}
+ if (defined('MDL_PERF') || (!empty($CFG->perfdebug) and $CFG->perfdebug > 7)) {
+ if (defined('MDL_PERFTOLOG')) {
+ $perf = get_performance_info();
+ error_log("PERF: " . $perf['txt']);
+ }
+ }
}
/**
/// For now, only needed under apache (and probably unstable in other contexts)
- if (function_exists('apache_child_terminate')) {
+ if (function_exists('register_shutdown_function')) {
register_shutdown_function('moodle_request_shutdown');
}
$performanceinfo = '';
if (defined('MDL_PERF') || (!empty($CFG->perfdebug) and $CFG->perfdebug > 7)) {
$perf = get_performance_info();
- if (defined('MDL_PERFTOLOG')) {
+ if (defined('MDL_PERFTOLOG') && !function_exists('register_shutdown_function')) {
error_log("PERF: " . $perf['txt']);
}
if (defined('MDL_PERFTOFOOT') || debugging() || $CFG->perfdebug > 7) {
$performanceinfo = '';
if (defined('MDL_PERF') || (!empty($CFG->perfdebug) and $CFG->perfdebug > 7)) {
- if (defined('MDL_PERFTOLOG')) {
+ if (defined('MDL_PERFTOLOG') && !function_exists('register_shutdown_function')) {
$perf = get_performance_info();
error_log("PERF: " . $perf['txt']);
}