Test Failed
Pull Request — master (#67)
by
unknown
05:53
created

Logger::addRecord()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 10
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 2.7462

Importance

Changes 0
Metric Value
cc 2
eloc 6
nc 2
nop 3
dl 0
loc 10
rs 9.4285
c 0
b 0
f 0
ccs 3
cts 7
cp 0.4286
crap 2.7462
1
<?php
2
/**
3
 * @author    jan huang <[email protected]>
4
 * @copyright 2016
5
 *
6
 * @see      https://www.github.com/janhuang
7
 * @see      https://fastdlabs.com
8
 */
9
10
namespace FastD\Logger;
11
12
use Monolog\Formatter\LineFormatter;
13
use Monolog\Handler\StreamHandler;
14
use Monolog\Logger as MonoLogger;
15
16
/**
17
 * Class Logger.
18
 */
19
class Logger extends MonoLogger
20
{
21
    /**
22
     * @param $levelCode
23
     *
24
     * @return int
25
     */
26 16
    protected function convertStatusCodeToLevel($levelCode)
27
    {
28 16
        return ($levelCode >= 200 && $levelCode < 300) ? self::INFO : self::ERROR;
29
    }
30
31
    /**
32
     * @param int    $level
33
     * @param string $message
34
     * @param array  $context
35
     *
36
     * @return bool
37
     */
38 16
    public function addRecord($level, $message, array $context = array())
39
    {
40 16
        if (empty($this->handlers)) {
41
            $emptyHandler = new StreamHandler('php://temp');
42
            $emptyHandler->setFormatter(new LineFormatter());
43
            $this->pushHandler($emptyHandler);
44
        }
45
46 16
        return parent::addRecord($this->convertStatusCodeToLevel($level), $message, $context);
47
    }
48
}
49