web-dev-qa-db-ja.com

Laravel 5-デフォルトのログの場所を変更し、ログファイルをアプリの外に移動します

デフォルトのログファイルの場所を変更するにはどうすればよいですか<project-name>/storage/logs/laravel.logのようなものに/var/logs/<project-name>/laravel.log

11
Limon Monte

errorlog ロギングモデルを使用してWebサーバーを構成することにより、この問題を解決しました。

1。 Laravelを設定します:

config/app.php構成ファイル:

'log' => 'errorlog'

Laravelログ構成の詳細: http://laravel.com/docs/5.1/errors#configuration

2。ウェブサーバーを設定する(私の場合はNginx):

error_log    /var/log/nginx/<project_name>-error.log;
9
Limon Monte

errorlogを使いたくないが、本当にログを記録するファイルを置き換えたいだけの場合は、次のようにします。

\Log::useFiles(env('APP_LOG_FILE'), config('app.log_level', 'debug'));
$handlers = \Log::getMonolog()->getHandlers();
$handler = array_shift($handlers);
$handler->setBubble(false);

App\Providers\AppServiceProvider.phpまたは任意のProviderについて。これにより、デフォルトのAPP_LOG_FILEではなくlaravel.logの値がログに記録されます。バブリングをtrueに設定すると、アプリケーションは両方のファイルにログオンします。

6
krain143