]> source.dussan.org Git - nextcloud-server.git/commitdiff
Add message key to context of logException
authorThomas Müller <thomas.mueller@tmit.eu>
Fri, 15 Jan 2016 12:13:27 +0000 (13:13 +0100)
committerThomas Müller <thomas.mueller@tmit.eu>
Fri, 15 Jan 2016 13:55:30 +0000 (14:55 +0100)
lib/private/backgroundjob/job.php
lib/private/log.php
lib/public/ilogger.php
tests/lib/backgroundjob/job.php

index d666cfe085ec836630fb02da77182869373e567c..e7268894848465785241469bfdd7c63af935134e 100644 (file)
@@ -52,8 +52,10 @@ abstract class Job implements IJob {
                        $this->run($this->argument);
                } catch (\Exception $e) {
                        if ($logger) {
-                               $logger->error('Error while running background job (class: ' . get_class($this) . ', arguments: ' . print_r($this->argument, true) . ')');
-                               $logger->logException($e);
+                               $logger->logException($e, [
+                                       'app' => 'core',
+                                       'message' => 'Error while running background job (class: ' . get_class($this) . ', arguments: ' . print_r($this->argument, true) . ')'
+                               ]);
                        }
                }
        }
index 6c1666a9d7f45072e0de3de56b6f14ade4a9e011..addefe6e53d4c3176bc1a669ca18f595f9ff96cc 100644 (file)
@@ -285,6 +285,8 @@ class Log implements ILogger {
                        'Line' => $exception->getLine(),
                );
                $exception['Trace'] = preg_replace('!(login|checkPassword)\(.*\)!', '$1(*** username and password replaced ***)', $exception['Trace']);
-               $this->error('Exception: ' . json_encode($exception), $context);
+               $msg = isset($context['message']) ? $context['message'] : 'Exception';
+               $msg .= ': ' . json_encode($exception);
+               $this->error($msg, $context);
        }
 }
index 368b25ab6936b3263920c2196e92ef68bd1656f2..2a727697a6a9bb96b15827ec8b13fa08636da340 100644 (file)
@@ -125,6 +125,14 @@ interface ILogger {
 
        /**
         * Logs an exception very detailed
+        * An additional message can we written to the log by adding it to the
+        * context.
+        *
+        * <code>
+        * $logger->logException($ex, [
+        *     'message' => 'Exception during cron job execution'
+        * ]);
+        * </code>
         *
         * @param \Exception $exception
         * @param array $context
index 75b4865819aa9cbc7666f5691afd2ecf53f6b106..12413e2c52aa9d1499b388867909dad3538f1e39 100644 (file)
@@ -27,9 +27,6 @@ class Job extends \Test\TestCase {
                $logger = $this->getMockBuilder('OCP\ILogger')
                        ->disableOriginalConstructor()
                        ->getMock();
-               $logger->expects($this->once())
-                       ->method('error')
-                       ->with('Error while running background job (class: Test\BackgroundJob\TestJob, arguments: )');
                $logger->expects($this->once())
                        ->method('logException')
                        ->with($e);