Passed
Push — develop ( 84fc18...b7b691 )
by Andrew
03:27
created

ErrorsTarget   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 52
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 6
eloc 10
dl 0
loc 52
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A collect() 0 14 4
A init() 0 3 1
A export() 0 2 1
1
<?php
2
/**
3
 * Webperf plugin for Craft CMS 3.x
4
 *
5
 * Monitor the performance of your webpages through real-world user timing data
6
 *
7
 * @link      https://nystudio107.com
0 ignored issues
show
Coding Style introduced by
The tag in position 1 should be the @copyright tag
Loading history...
8
 * @copyright Copyright (c) 2019 nystudio107
0 ignored issues
show
Coding Style introduced by
@copyright tag must contain a year and the name of the copyright holder
Loading history...
9
 */
0 ignored issues
show
Coding Style introduced by
PHP version not specified
Loading history...
Coding Style introduced by
Missing @category tag in file comment
Loading history...
Coding Style introduced by
Missing @package tag in file comment
Loading history...
Coding Style introduced by
Missing @author tag in file comment
Loading history...
Coding Style introduced by
Missing @license tag in file comment
Loading history...
10
11
namespace nystudio107\webperf\log;
12
13
use nystudio107\webperf\Webperf;
14
15
use yii\log\Target;
0 ignored issues
show
Bug introduced by
The type yii\log\Target was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
16
17
/**
0 ignored issues
show
Coding Style introduced by
Missing short description in doc comment
Loading history...
18
 * @author    nystudio107
0 ignored issues
show
Coding Style introduced by
The tag in position 1 should be the @package tag
Loading history...
Coding Style introduced by
Content of the @author tag must be in the form "Display Name <[email protected]>"
Loading history...
Coding Style introduced by
Tag value indented incorrectly; expected 2 spaces but found 4
Loading history...
19
 * @package   Webperf
0 ignored issues
show
Coding Style introduced by
Tag value indented incorrectly; expected 1 spaces but found 3
Loading history...
20
 * @since     1.0.0
0 ignored issues
show
Coding Style introduced by
The tag in position 3 should be the @author tag
Loading history...
Coding Style introduced by
Tag value indented incorrectly; expected 3 spaces but found 5
Loading history...
21
 */
0 ignored issues
show
Coding Style introduced by
Missing @category tag in class comment
Loading history...
Coding Style introduced by
Missing @license tag in class comment
Loading history...
Coding Style introduced by
Missing @link tag in class comment
Loading history...
22
class ErrorsTarget extends Target
23
{
24
    // Public Properties
25
    // =========================================================================
26
27
    // Public Methods
28
    // =========================================================================
29
30
    /**
0 ignored issues
show
Coding Style introduced by
Missing short description in doc comment
Loading history...
31
     * @inheritdoc
32
     */
0 ignored issues
show
Coding Style introduced by
Missing @return tag in function comment
Loading history...
33
    public function init()
34
    {
35
        parent::init();
36
    }
37
38
    /**
39
     * Processes the given log messages.
40
     * This method will filter the given messages with [[levels]] and
41
     * [[categories]]. And if requested, it will also export the filtering
42
     * result to specific medium (e.g. email).
43
     *
44
     * @param array $messages log messages to be processed. See
45
     *                        [[Logger::messages]] for the structure of each
46
     *                        message.
47
     * @param bool  $final    whether this method is called at the end of the
48
     *                        current application
49
     *
50
     * @throws \yii\base\ExitException
51
     */
0 ignored issues
show
Coding Style introduced by
Missing @return tag in function comment
Loading history...
52
    public function collect($messages, $final)
53
    {
54
        // Bail if either values are null
55
        if (($messages === null) || ($this->messages === null)) {
56
            return;
57
        }
58
        // Merge in any messages intended for us
59
        $this->messages = array_merge(
0 ignored issues
show
Bug Best Practice introduced by
The property messages does not exist. Although not strictly required by PHP, it is generally a best practice to declare properties explicitly.
Loading history...
60
            $this->messages,
61
            static::filterMessages($messages, $this->getLevels(), $this->categories, $this->except)
62
        );
63
        if ($final) {
64
            $this->export();
65
            Webperf::$plugin->beacons->includeCraftErrorsBeacon();
66
        }
67
    }
68
69
    /**
0 ignored issues
show
Coding Style introduced by
Missing short description in doc comment
Loading history...
70
     * @inheritdoc
71
     */
0 ignored issues
show
Coding Style introduced by
Missing @return tag in function comment
Loading history...
72
    public function export()
73
    {
74
    }
75
}
76