【Lumen】Log 파일을 날짜별로 출력시킨다
Log 출력을 위한 설정
Lumen에서 Log 출력을 사용하려면 $app->withFacades();
의 주석 처리를 해제해야 합니다.
단순히 Log 출력시키는 것만이라면 이것만으로 좋을 것 같습니다만, 일자 단위로 되면, bootstrap\app.php를 여러가지 편집할 필요가 있습니다.
bootstrap\app.php
app.php<?php
require_once __DIR__.'/../vendor/autoload.php';
// 以下を追加する
+ use Monolog\Handler\RotatingFileHandler;
+ use Monolog\Formatter\LineFormatter;
~~~略~~~
// コメントアウトを解除
- // $app->withFacades();
+ $app->withFacades();
~~~略~~~
// 以下を追加
+ $app->configureMonologUsing(function($monolog) {
+ $handlers[] = (new RotatingFileHandler(storage_path('logs/api.log')))
+ ->setFormatter(new LineFormatter(null, null, true, true));
+
+ $monolog->setHandlers($handlers);
+
+ return $monolog;
+ });
위의 설정 후에는 storage\logs 이하에 다음과 같이 log가 토출됩니다.
log 이름을 변경하는 경우 storage_pathg의 api.log 부분을 변경하면 k
([log name]-Y-m-d.log처럼 내뿜습니다.)
덧붙여서 LineFormatter 클래스의 인수의 디폴트치는 이하와 같이 세트 되는 것 같습니다.
(자세한 것은 LineFormatter 클래스의 생성자 참조)
LineFormatter.phppublic function __construct($format = null, $dateFormat = null, $allowInlineLineBreaks = false, $ignoreEmptyContextAndExtra = false)
이 근처의 인수를 건네주면 날짜 부분의 포맷을 변경할 수 있을 것 같습니다.
참고
<?php
require_once __DIR__.'/../vendor/autoload.php';
// 以下を追加する
+ use Monolog\Handler\RotatingFileHandler;
+ use Monolog\Formatter\LineFormatter;
~~~略~~~
// コメントアウトを解除
- // $app->withFacades();
+ $app->withFacades();
~~~略~~~
// 以下を追加
+ $app->configureMonologUsing(function($monolog) {
+ $handlers[] = (new RotatingFileHandler(storage_path('logs/api.log')))
+ ->setFormatter(new LineFormatter(null, null, true, true));
+
+ $monolog->setHandlers($handlers);
+
+ return $monolog;
+ });
public function __construct($format = null, $dateFormat = null, $allowInlineLineBreaks = false, $ignoreEmptyContextAndExtra = false)
Reference
이 문제에 관하여(【Lumen】Log 파일을 날짜별로 출력시킨다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sola-msr/items/43466f0b3340bdb6856a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)