Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
22.22% covered (danger)
22.22%
2 / 9
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
VerboseCronLogTrait
22.22% covered (danger)
22.22%
2 / 9
0.00% covered (danger)
0.00%
0 / 2
11.53
0.00% covered (danger)
0.00%
0 / 1
 resolveCronLogLevel
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 1
6
 writeVerboseCronLog
50.00% covered (danger)
50.00%
2 / 4
0.00% covered (danger)
0.00%
0 / 1
2.50
1<?php
2
3namespace BO\Zmsdb\Helper;
4
5trait VerboseCronLogTrait
6{
7    /**
8     * @return array{0: string, 1: string}
9     */
10    protected static function resolveCronLogLevel(string $message, string $level): array
11    {
12        if (preg_match('/^(DEBUG|INFO|NOTICE|WARN(?:ING)?|ERROR|CRITICAL|ALERT|EMERGENCY):\s*(.*)$/s', $message, $matches)) {
13            $level = $matches[1];
14            $message = $matches[2];
15        }
16        $level = \BO\Slim\Bootstrap::normalizeLogLevelName($level);
17
18        return [$level, $message];
19    }
20
21    protected function writeVerboseCronLog(string $message, string $level = 'info'): void
22    {
23        if (!$this->verbose) {
24            return;
25        }
26        [$level, $message] = self::resolveCronLogLevel($message, $level);
27        \App::$log->{$level}($message);
28    }
29}