Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 将日志记录到自定义日志文件中_Laravel_Logging - Fatal编程技术网

Laravel 将日志记录到自定义日志文件中

Laravel 将日志记录到自定义日志文件中,laravel,logging,Laravel,Logging,我正在阅读有关日志记录的laravel文档,但找不到如何将某些内容记录到自定义文件中。例如,如果我这样做: Log::info('I am logging something!'); 或任何其他日志消息。这一切都进入了laravel.log 我想要的是将该消息记录到/storage/logs/my_logs.log文件中 如何做到这一点 更新 我不想覆盖默认的日志文件…我想拥有laravel.log以及自定义日志的我自己的日志文件。在它返回$app之前,您可以在引导/app.php中添加以下行

我正在阅读有关日志记录的laravel文档,但找不到如何将某些内容记录到自定义文件中。例如,如果我这样做:

Log::info('I am logging something!');
或任何其他日志消息。这一切都进入了laravel.log

我想要的是将该消息记录到
/storage/logs/my_logs.log
文件中

如何做到这一点

更新
我不想覆盖默认的日志文件…我想拥有laravel.log以及自定义日志的我自己的日志文件。

在它返回
$app
之前,您可以在
引导/app.php
中添加以下行

$app->configureMonologUsing(function ($monolog) {
    $monolog->pushHandler(new \Monolog\Handler\StreamHandler(storage_path("logs/my_logs.log"), \Monolog\Logger::ERROR));
});
欲了解更多信息,请参阅本帖:
或者

您可以在
引导/app.php
返回
$app
之前添加以下行

$app->configureMonologUsing(function ($monolog) {
    $monolog->pushHandler(new \Monolog\Handler\StreamHandler(storage_path("logs/my_logs.log"), \Monolog\Logger::ERROR));
});
欲了解更多信息,请参阅本帖:

要覆盖默认日志记录配置,请在AppServiceProvider中添加以下内容:

public function register()
  $this->app->configureMonologUsing(function() {
    $this->app->log->useFiles($this->app->storagePath().'/logs/my_logs.log');
  });
}

要覆盖默认日志记录配置,请在AppServiceProvider中添加以下内容:

public function register()
  $this->app->configureMonologUsing(function() {
    $this->app->log->useFiles($this->app->storagePath().'/logs/my_logs.log');
  });
}

也许这个软件包对您的目的很有用:


使用起来非常简单。

也许这个软件包对您的目的很有用:


它的使用非常简单。

Laravel 5.6允许在config/logging.php中添加自定义日志记录“通道”


Laravel 5.6允许在config/logging.php中添加自定义日志记录“通道”


但问题是,我不想丢失laravel的默认日志记录……它应该保持不变……我只想在我自己的文件中保存我自己的日志。然后你就不能使用日志facade——后面的日志记录程序只是将所有日志推送到同一位置。Laravel应该如何区分您的日志和其他日志?Laravel在内部也使用Log facade。如果您想轻松识别日志,只需在日志消息中添加一些唯一的字符串,并根据该字符串筛选日志。您还可以创建另一个facade,该facade将使用另一个logger实例,该实例将写入另一个位置。但问题是,我不想丢失laravel的默认日志记录…该日志将保持不变…我只想在我的日志中拥有我自己的日志那么你就不能使用LogFacade了——它后面的记录器只是将所有日志推送到同一个位置。Laravel应该如何区分您的日志和其他日志?Laravel在内部也使用Log facade。如果您想轻松识别日志,只需在日志消息中添加一些唯一的字符串,并根据该字符串筛选日志。您还可以创建另一个facade,该facade将使用另一个logger实例,该实例将写入另一个位置。非常感谢这正是我要查找的内容非常感谢这正是我要查找的内容