변군이글루 블로그(Development)
[draft] Laravel 애플리케이션의 요청에 대한 로그를 파일에 기록하는 방법 본문
728x90
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
'리눅스' 카테고리의 다른 글
[draft] scp 명령어를 사용하여 파일을 쉽게 업로드 및 다운로드할 수 있는 스크립트 (0) | 2024.05.27 |
---|---|
[draft] apt-cacher-ng 컨테이너를 Docker Compose로 설정하는 방법 (0) | 2024.05.27 |
[draft] Redis를 통한 세션 클러스터링을 구현하는 방법 (0) | 2024.05.19 |
[draft] NGINX와 Tomcat 두 개의 인스턴스를 사용하여 세션 클러스터링을 구성하는 방법 (0) | 2024.05.19 |
[draft] 우분투에 NGINX와 Tomcat 멀티 인스턴스를 설치하고 설정하는 방법 (0) | 2024.05.18 |