\Log::useDailyFiles(...)
しかし、私はまだ/storage/logs/
にログエントリを取得します。ログパスのみを使用するにはどうすればよいですか?
\Log::useDailyFiles(...)
しかし、私はまだ/storage/logs/
にログエントリを取得します。ログパスのみを使用するにはどうすればよいですか?
ConfigureLogging
クラスのブートストラップ時に、Laravelはすでにロガーのインスタンスを登録しています。したがって、Log::useDailyFiles()
を使用する場合は、追加のログハンドラを追加するだけです。そのため、標準のログエントリも取得されますstorage/logs/laravel.log
。
デフォルトのログハンドラをオーバーライドするには、アプリケーションインスタンスで利用可能なconfigureMonologUsing
メソッドを提供します。だから、ちょうどreturn $app;
ステートメントの前に、あなたのbootstrap/app.php
ファイルに次の行を追加します。
$app->configureMonologUsing(function($monolog) use ($app) {
$monolog->pushHandler(
(new Monolog\Handler\RotatingFileHandler(
// Set the log path
'/custom/path/to/custom.log',
// Set the number of daily files you want to keep
$app->make('config')->get('app.log_max_files', 5)
))->setFormatter(new Monolog\Formatter\LineFormatter(null, null, true, true))
);
});
それは維持する必要がありますどのように多くの日次ログファイルを決定するためにconfig/app.php
からlog_max_files
のための設定値を取得するためにRotatingFileHandler
試行に渡された二番目のパラメータを、それが見つからない場合は、デフォルトで5
になります。毎日のログファイルを無制限に保ちたい場合は、代わりに0
を渡すだけです。
ログ設定の詳細についてはLaravel Documentationをご覧ください。
ありがとう、私はそれを試してみましたが、私は致命的なエラーが発生しました:未定義のメソッドを呼び出す\ Foundation \ Application、なぜですか?私には分かりません –
どのようなLaravelのバージョンを使用していますか?また、エラーが発生したファイルと行番号を含むエラースタックトレース全体を投稿し、その行にどのコードがあるかを指定してください。私は以前このコードを使用して、それはうまく動作します。 – Bogdan
それは私のために働く!ありがとう – juanpscotto