LoggerFactory::__invoke()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 13
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 2
eloc 7
nc 2
nop 1
dl 0
loc 13
rs 10
c 1
b 0
f 0
1
<?php
2
/**
3
 * @package EBloodBank
4
 * @since   1.6
5
 */
6
namespace EBloodBank;
7
8
use Monolog;
9
use Psr\Container\ContainerInterface;
10
11
/**
12
 * @since 1.6
13
 */
14
class LoggerFactory
15
{
16
    /**
17
     * @param  ContainerInterface $container
18
     * @return \Monolog\Logger
19
     * @since  1.6
20
     */
21
    public function __invoke(ContainerInterface $container)
22
    {
23
        $logger = new Monolog\Logger('Main Logger');
24
25
        if (EBB_DEV_MODE) {
26
            $debugHandler = new Monolog\Handler\StreamHandler(EBB_LOGS_DIR . '/debug.log', Monolog\Logger::DEBUG);
27
            $logger->pushHandler($debugHandler);
28
        }
29
30
        $warningsHandler = new Monolog\Handler\StreamHandler(EBB_LOGS_DIR . '/warnings.log', Monolog\Logger::WARNING);
31
        $logger->pushHandler($warningsHandler);
32
33
        return $logger;
34
    }
35
}
36