PHP - Laravel - ログローテーション - Linux


 クラウディア


1. 概要
2. 設定

1. 概要

 「Linux」では、「logrotate」の仕組みを利用します。  「logrotate」については、「Linux - 共通事項」のログローテーションの項をご参照ください。

2. 設定

 以下、「AlmaLinux 9.5」「Laravel Framework 12.9.0」での設定です。  「Laravel」のプロジェクトが。

/var/www/html/laravel
 にあるものとして。  「root」ユーザ権限で。

vi /etc/logrotate.d/laravel
 下記を記述します。

# Laravel log ローテーション
#  daily         毎日
#  rotate 14     14日間保持
#  missingok     ログファイルが存在しない場合でもエラーとしない
#  notifempty    ログファイルが空の場合、ローテーションを実行しません
#  copytruncate  ログファイルをコピーして元のファイルを切り詰めます
/var/www/html/laravel/storage/logs/*.log {
    daily
    rotate 14
    missingok
    notifempty
    copytruncate
    create 0644 apache apache
}
 当初、13行目の記述がなかったら、ローテーションしてくれませんでした。  上記の設定で、毎日ログをローテーションします。  圧縮なしで、14日分の過去ログ残します。  バックアップした、ログファイルは。

laravel.log-YYYYMMDD
 の形式で保存されます。  これは、好かんので、いま、工夫中です。

earthcar(アースカー)