CustomFormatter.php (1158B) download
1<?php
2namespace App\Util;
3
4use Monolog\Formatter\FormatterInterface;
5
6class CustomFormatter implements FormatterInterface {
7
8 /**
9 * De onderstaande methode formatteert de log-messages zodat ze makkelijk op één regel passen.
10 * Hierdoor kun je met `tail -f log` tijdens het ontwikkelen de logs in de gaten houden.
11 *
12 * Pas deze methode aan als je je eigen formaat wilt hebben. Om te zien welke data er allemaal
13 * in zo'n records zit, kun je de laatste regel uit het commentaar halen (en de rest in commentaar
14 * zetten, natuurlijk; of weghalen). Je loopt dan wel het risico dat je output-buffer volloopt.
15 */
16
17 public function format(array $record):string {
18 $msg = $record['datetime']->date ?? date("Y-m-d H:i:s");
19 $msg .= "\t".($record['context']['request_uri'] ?? '');;
20 $msg .= "\t".$record['message']."\r\n";
21 return $msg;
22
23// return print_r ($record, true);
24 }
25
26
27 public function formatBatch(array $records):string {
28 $message = '';
29 foreach ($records as $record) {
30 $message .= $this->format($record);
31 }
32
33 return $message;
34 }
35
36}