Kaynağa Gözat

[FrameworkBundle] Treat all log messages >=ERR as errors

Jordi Boggiano 14 yıl önce
ebeveyn
işleme
25d7009c1c

+ 2 - 1
src/Symfony/Bundle/FrameworkBundle/Resources/views/Exception/logs.html.twig

@@ -1,7 +1,8 @@
 <ol class="traces">
     {% for log in logs %}
         <li>
-            {% if 'ERR' == log.priorityName %}
+            {% if 'EMERG' == log.priorityName or 'ERR' == log.priorityName or 'CRIT' == log.priorityName
+               or 'ALERT' == log.priorityName or 'ERROR' == log.priorityName or 'CRITICAL' == log.priorityName %}
                 <em>{{ log.priorityName }}</em>
             {% else %}
                 {{ log.priorityName }}

+ 8 - 3
src/Symfony/Bundle/MonologBundle/Logger/DebugHandler.php

@@ -11,6 +11,7 @@
 
 namespace Symfony\Bundle\MonologBundle\Logger;
 
+use Monolog\Logger;
 use Monolog\Handler\TestHandler;
 use Symfony\Component\HttpKernel\Log\DebugLoggerInterface;
 
@@ -43,8 +44,12 @@ class DebugHandler extends TestHandler implements DebugLoggerInterface
      */
     public function countErrors()
     {
-        return isset($this->recordsByLevel[\Monolog\Logger::ERROR])
-            ? count($this->recordsByLevel[\Monolog\Logger::ERROR])
-            : 0;
+        $cnt = 0;
+        foreach (array(Logger::ERROR, Logger::CRITICAL, Logger::ALERT) as $level) {
+            if (isset($this->recordsByLevel[$level])) {
+                $cnt += count($this->recordsByLevel[$level])
+            }
+        }
+        return $cnt;
     }
 }