LoggerInterfaceQueryLogger::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 0

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 0
c 1
b 0
f 0
dl 0
loc 3
rs 10
cc 1
nc 1
nop 1
1
<?php
2
namespace Kir\MySQL\QueryLogger;
3
4
use Psr\Log\LoggerInterface;
5
use Throwable;
6
7
class LoggerInterfaceQueryLogger implements QueryLogger {
8
	public function __construct(
9
		private LoggerInterface $logger
10
	) {}
11
12
	/**
13
	 * @inheritDoc
14
	 */
15
	public function log(string $query, float $duration): void {
16
		$this->logger->info(sprintf("Query %s took %0.4f seconds", $query, $duration), ['query' => $query, 'duration' => $duration]);
17
	}
18
19
	/**
20
	 * @inheritDoc
21
	 */
22
	public function logError(string $query, Throwable $exception, float $duration): void {
23
		$this->logger->error(sprintf("Error'd query %s took %0.4f seconds", $query, $duration), ['query' => $query, 'duration' => $duration, 'exception' => $exception]);
24
	}
25
}
26