memory

Play Memory
Log | Files | Refs

CustomFormatter.php (1158B)


      1 <?php
      2 namespace App\Util;
      3 
      4 use Monolog\Formatter\FormatterInterface;
      5 
      6 class 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 }