Subversion-Projekte lars-tiefland.laravel_shop

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
148 lars 1
<?php declare(strict_types=1);
2
 
3
/*
4
 * This file is part of the Monolog package.
5
 *
6
 * (c) Jordi Boggiano <j.boggiano@seld.be>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
 
12
namespace Monolog\Handler;
13
 
14
use Monolog\Logger;
15
use Monolog\ResettableInterface;
16
use Psr\Log\LogLevel;
17
 
18
/**
19
 * Base Handler class providing basic level/bubble support
20
 *
21
 * @author Jordi Boggiano <j.boggiano@seld.be>
22
 *
23
 * @phpstan-import-type Level from \Monolog\Logger
24
 * @phpstan-import-type LevelName from \Monolog\Logger
25
 */
26
abstract class AbstractHandler extends Handler implements ResettableInterface
27
{
28
    /**
29
     * @var int
30
     * @phpstan-var Level
31
     */
32
    protected $level = Logger::DEBUG;
33
    /** @var bool */
34
    protected $bubble = true;
35
 
36
    /**
37
     * @param int|string $level  The minimum logging level at which this handler will be triggered
38
     * @param bool       $bubble Whether the messages that are handled can bubble up the stack or not
39
     *
40
     * @phpstan-param Level|LevelName|LogLevel::* $level
41
     */
42
    public function __construct($level = Logger::DEBUG, bool $bubble = true)
43
    {
44
        $this->setLevel($level);
45
        $this->bubble = $bubble;
46
    }
47
 
48
    /**
49
     * {@inheritDoc}
50
     */
51
    public function isHandling(array $record): bool
52
    {
53
        return $record['level'] >= $this->level;
54
    }
55
 
56
    /**
57
     * Sets minimum logging level at which this handler will be triggered.
58
     *
59
     * @param  Level|LevelName|LogLevel::* $level Level or level name
60
     * @return self
61
     */
62
    public function setLevel($level): self
63
    {
64
        $this->level = Logger::toMonologLevel($level);
65
 
66
        return $this;
67
    }
68
 
69
    /**
70
     * Gets minimum logging level at which this handler will be triggered.
71
     *
72
     * @return int
73
     *
74
     * @phpstan-return Level
75
     */
76
    public function getLevel(): int
77
    {
78
        return $this->level;
79
    }
80
 
81
    /**
82
     * Sets the bubbling behavior.
83
     *
84
     * @param  bool $bubble true means that this handler allows bubbling.
85
     *                      false means that bubbling is not permitted.
86
     * @return self
87
     */
88
    public function setBubble(bool $bubble): self
89
    {
90
        $this->bubble = $bubble;
91
 
92
        return $this;
93
    }
94
 
95
    /**
96
     * Gets the bubbling behavior.
97
     *
98
     * @return bool true means that this handler allows bubbling.
99
     *              false means that bubbling is not permitted.
100
     */
101
    public function getBubble(): bool
102
    {
103
        return $this->bubble;
104
    }
105
 
106
    /**
107
     * {@inheritDoc}
108
     */
109
    public function reset()
110
    {
111
    }
112
}