Back to listPHP
Monolog - Structured Logging
Lv.5945@mukitaro11 playsDec 31, 2025
Monolog logging library with handlers, formatters, and structured context.
preview.php
1use Monolog\Logger;2use Monolog\Handler\StreamHandler;3use Monolog\Handler\RotatingFileHandler;4use Monolog\Formatter\JsonFormatter;5 6class LoggerFactory7{8 public function createLogger(string $channel): Logger9 {10 $logger = new Logger($channel);11 12 $streamHandler = new StreamHandler(13 'php://stdout',14 Logger::DEBUG15 );16 $streamHandler->setFormatter(new JsonFormatter());17 $logger->pushHandler($streamHandler);18 19 $fileHandler = new RotatingFileHandler(20 '/var/log/app.log',21 7,22 Logger::WARNING23 );24 $logger->pushHandler($fileHandler);25 26 return $logger;27 }28 29 public function logWithContext(Logger $logger, array $data): void30 {31 $logger->info('Processing started', [32 'user_id' => $data['user_id'],33 'action' => $data['action'],34 'timestamp' => time()35 ]);36 }37}Custom problems are not included in rankings