본문 바로가기

개발/PHP 라라벨

라라벨 daily 로그 적용

라라벨의 로그 설정은 디폴트로 single 로 하나의 파일에 쌓이도록 설정 되어 있다.

 

이럴 경우 로그가 너무 커지고 관리도 힘들기때문에 날짜별로 쌓이도록 변경해주면 좋다.

 

config/logging.php 

'channels' => [
        'stack' => [
            'driver' => 'stack',
            'channels' => ['daily'],
        ],

        'single' => [
            'driver' => 'single',
            'path' => storage_path('logs/laravel.log'),
            'level' => 'debug',
        ],

        'daily' => [
            'driver' => 'daily',
            'path' => storage_path('logs/laravel.log'),
            'level' => 'debug',
            'days' => 14
        ],

channels 의 값을 single 에서 daily 로 변경해준다.

 

로그파일은 정상적으로 생성되었다. 

 

하지만 나의 경우 문제가 하나 있었다.

 

crontab 을 이용하여 배치를 돌리고 있던게 있었는데 로그 권한이 없어서 실행 오류가 발생하는 것이었다.

 

나는 root 권한의 crontab 에 배치를 추가했기때문에 www-data 권한으로 생성된 로그 파일에는 쓰기 권한이 없었던 것이다.

 

그래서 www-data 권한의 crontab 으로 명령어를 옮겨 주었다.

 

sudo crontab -u www-data -e

로그 권한 오류가 해결되면서 코드도 정상적으로 실행되었다.

 

끝~