반응형
Laravel 애플리케이션의 요청에 대한 로그를 파일에 기록하는 방법
Laravel에서는 내장된 Monolog 라이브러리를 사용하여 로그를 관리합니다. Monolog을 통해 로그를 파일로 기록하고 관리할 수 있습니다. 따라서 Laravel의 access 로그를 남기기 위해서는 Monolog을 구성하여 원하는 형식으로 로그를 기록하면 됩니다.
1. 환경 설정 변경
config/logging.php 파일을 편집합니다.
vim config/logging.php
2. 로그 채널 추가
access 채널을 추가합니다.
<?php
use Monolog\Handler\NullHandler;
use Monolog\Handler\StreamHandler;
use Monolog\Handler\SyslogUdpHandler;
use Monolog\Processor\PsrLogMessageProcessor;
return [
...
'emergency' => [
'path' => storage_path('logs/laravel.log'),
],
'access' => [
'driver' => 'single',
'path' => storage_path('logs/access.log'),
'level' => 'info',
],
],
];
storage/logs 디렉토리에 access.log라는 파일로 접근 로그가 기록됩니다.
3. 로그 사용
로그를 사용하려면 컨트롤러나 라우트 등에서 로그를 호출합니다.
vim routes/web.php
<?php
use Illuminate\Support\Facades\Route;
use Illuminate\Support\Facades\Log;
Log::channel('access')->info('Access log message');
...
4. 권한 설정
로그 파일에 쓰기 권한을 주어야 합니다.
chmod -R 775 storage/logs
5. 접근 로그 확인
tail -f storage/logs/access.log
$ tail -f storage/logs/access.log
[2024-05-20 03:10:18] local.INFO: Access log message
[2024-05-20 03:10:40] local.INFO: Access log message
[2024-05-20 03:10:41] local.INFO: Access log message
[2024-05-20 03:10:41] local.INFO: Access log message
[2024-05-20 03:10:41] local.INFO: Access log message
[2024-05-20 03:10:41] local.INFO: Access log message
Laravel 애플리케이션의 접근 로그를 storage/logs/access.log 파일에 기록합니다.
참고URL
- Laravel Documentation : Logging
728x90
반응형
'리눅스' 카테고리의 다른 글
Redis를 통한 세션 클러스터링을 구현하는 방법 (0) | 2024.05.20 |
---|---|
Tomcat 세션 클러스터링이란 무엇일까요? (0) | 2024.05.20 |
우분투에 NGINX와 Tomcat 멀티 인스턴스를 설치하고 설정하는 방법 (0) | 2024.05.19 |
Vim에서 한글 깨짐 문제를 해결하는 방법 (0) | 2024.05.17 |
우분투에 최신 버전의 파이썬를 설치하는 방법 (0) | 2024.05.16 |