在Debian上管理Laravel日志可以通過幾種方式進行,包括配置日志存儲路徑、日志輪轉以及使用系統日志工具。以下是具體的管理方法:
Laravel允許你通過修改 .env 文件來指定日志的存儲路徑。例如,你可以將日志存儲路徑設置為 /var/log/nginx/ 下的某個目錄:
LOG_CHANNEL=daily
然后在 config/logging.php 文件中配置日志驅動為 daily,并指定日志文件的存儲路徑和保留天數:
'daily' => [
'driver' => 'daily',
'path' => storage_path('logs/laravel.log'),
'level' => env('LOG_LEVEL', 'debug'),
'days' => env('LOG_DAILY_DAYS', 14),
'replace_placeholders' => true,
],
Debian系統通常使用 logrotate 工具來管理日志文件的輪轉。你可以創建一個 logrotate 配置文件來管理Laravel的日志文件。例如,在 /etc/logrotate.d/ 目錄下創建一個名為 laravel 的配置文件:
/var/log/nginx/laravel/*.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
create 0644 nginx adm
}
這個配置文件會每天輪轉 /var/log/nginx/laravel/ 目錄下的日志文件,并保留最近7天的日志文件。
Debian系統使用 journalctl 命令來查看和管理系統日志。雖然 journalctl 主要用于查看系統日志,但你可以通過 journalctl 來查看Laravel通過 Monolog 記錄的日志。例如,使用以下命令查看所有與Laravel相關的日志:
journalctl _unit=laravel
你可以使用 php artisan 命令來清理Laravel的日志文件。例如,要清除所有日志文件,可以運行:
php artisan log:clear
要清除除最后一個以外的所有日志文件,可以運行:
php artisan log:clear --keep-last
Laravel的日志文件通常位于 storage/logs 目錄下。你可以使用任何文本編輯器或命令行工具來查看這些日志文件。例如,使用 tail 命令實時查看日志文件的內容:
tail -f storage/logs/laravel.log
通過上述方法,你可以在Debian上有效地管理Laravel的日志,確保日志文件既不會占用過多磁盤空間,也便于排查問題。