개요
monolog 는 PHP 5.3 이상에서 동작하는 로깅 프레임워크이다. 자바의 log4j 나 logback 과 동일한 역할을 수행한다고 보면 된다.
laravel 에도 적용된 훌륭한 로깅 프레임워크이니 PHP의 error_log 나 print, echo 로 로그 메시지를 찍었다면 monolog 를 사용해 보자.
PHP 도 Java의 JSR 처럼 PSR 이라는 표준 인터페이스 규정이 있고 monolog는 PSR-3 을 준수한다.
추가로 system log 프로토콜에 대해 RFC 가 지정되어 있으며 이 안에 로그 레벨도 정의되어 있으며 monolog 가 따르는 PSR-3 는 이를 준용한다.
설치
명령행에서 composer require를 실행한다.
composer require
composer require "monolog/monolog"
BASH
사용
<?php
require 'vendor/autoload.php';
use \Monolog\Logger as Logger;
use Monolog\Handler\StreamHandler;
// 로거 채널 생성
$log = new Logger('name');
// log/your.log 파일에 로그 생성. 로그 레벨은 Info
$log->pushHandler(new StreamHandler('log/your.log', Logger::INFO));
// add records to the log
$log->info('Info log');
// Debug 는 Info 레벨보다 낮으므로 아래 로그는 출력되지 않음
$log->debug('Debug log');
// Error 와 warnig 은 출력
$log->error('Error log');
$log->warning('Warning log');
PHP
같이 보기
참고