我正在阅读有关日志记录的laravel文档,但我无法找到如何将某些内容记录到我的自定义文件中。例如,如果我这样做:
Log::info('I am logging something!');
或任何其他日志消息。这一切都进入 laravel.log
我想要的是将该消息记录到/storage/logs/my_logs.log
文件中。
怎么做?
我不想覆盖默认日志文件....我想拥有laravel.log以及我自己的自定义日志日志文件。
答案 0 :(得分:3)
也许这个包对您的目的很有用: https://github.com/Edujugon/laravel-log
它非常容易使用。
答案 1 :(得分:2)
您可以在bootstrap/app.php
之前添加以下行,然后再返回$app
。
$app->configureMonologUsing(function ($monolog) {
$monolog->pushHandler(new \Monolog\Handler\StreamHandler(storage_path("logs/my_logs.log"), \Monolog\Logger::ERROR));
});
有关详情,请参阅此帖:Advance Logging with Laravel and Monolog 或Custom Monolog Handler
答案 2 :(得分:1)
Laravel 5.6允许在config / logging.php中添加自定义日志记录“通道”。
https://laravel.com/docs/5.6/upgrade
https://laravel.com/docs/5.6/logging#creating-custom-channels
答案 3 :(得分:0)
要覆盖默认日志记录配置,请在 AppServiceProvider 中添加以下内容:
public function register()
$this->app->configureMonologUsing(function() {
$this->app->log->useFiles($this->app->storagePath().'/logs/my_logs.log');
});
}