【FuelPHP】ログの出力先を変更する

FuelPHPを使い始めて2年以上経ちましたが、デフォルトのログ出力が使いづらいなと思いつつ放置してたのをようやく変更。といっても、とっても簡単でした。

この時点での最新版は1.72ですね。

  1. FuelPHPのlog出力先の設定
  2. log出力先の作成
  3. logrotateの設定

FuelPHPのlog出力先の設定

app/config/config.phpに2行追加するだけです

1
2
  'log_path' => '/var/log/fuelphp/',
  'log_file' => 'fuelphp.log',

実行したら、怒られた。事前にファイルパス作っておかないダメデスね。

1
2
Fuel\Core\FuelException [ Error ]:
Unable to create or write to the log file. Please check the permissions on /var/log/fuelphp/. (mkdir(): 許可がありません)

log出力先の作成

普通に、ディレクトリ作ってパーミッションとか設定する。※例は、nginxで動作している環境

1
2
3
4
5
$ sudo mkdir /var/log/fuelphp
$ sudo chown nginx:nginx /var/log/fuelphp
$ sudo chmod 775 /var/log/fuelphp
$ ll | grep fuelphp
  drwxrwxr-x  2 nginx  nginx       24  1月  7 13:08 fuelphp

logrotateの設定

このままだとlogがパンクしてしまうので、logrotateの設定もしておく/etc/logrotate.d/fuelphpを作成。中身は下のとおり。

1
2
3
4
5
6
7
8
/var/log/fuelphp/*.log {
        daily
        missingok
        rotate 30
        compress
        notifempty
        create 664 nginx nginx
  }

以上です。簡単でしたね。