MDL-77799 webservice_rest: unhandled exception should go in server log

This commit is contained in:
sam marshall
2023-06-07 10:02:05 +01:00
parent 20302d4f86
commit 5481c31fe6
+9
View File
@@ -153,6 +153,15 @@ class webservice_rest_server extends webservice_base_server {
* @param exception $ex the exception that we are sending
*/
protected function send_error($ex=null) {
// Unless debugging is completely off, log the error to server error log.
if (debugging('', DEBUG_MINIMAL)) {
$info = get_exception_info($ex);
// This format is the same as default_exception_handler() in setuplib.php but with the
// word 'REST' instead of 'Default', to make it easy to reuse any existing processing.
error_log('REST exception handler: ' . $info->message . ' Debug: ' .
$info->debuginfo . "\n" . format_backtrace($info->backtrace, true));
}
$this->send_headers();
echo $this->generate_error($ex);
}