Ash*_*oja 20 php laravel laravel-5
我的Laravel 5网站正在使用1 GB磁盘空间的共享主机.但现在我有大约100 MB的日志文件.如何在Laravel 5中禁用日志文件?
jed*_*ylo 16
为了完全禁用日志记录,您需要覆盖Laravel设置的默认日志处理程序.您可以轻松地执行此操作
$nullLogger = new NullHandler();
\Log::getMonolog()->setHandlers(array($nullLogger));
Run Code Online (Sandbox Code Playgroud)
在处理请求之前,您需要尽早调用,例如,您可以在bootstrap/app.php中执行此操作:
$app->configureMonologUsing(function($monolog) {
$nullLogger = new \Monolog\Handler\NullHandler();
$monolog->setHandlers(array($nullLogger));
});
return $app;
Run Code Online (Sandbox Code Playgroud)
小智 11
如果您的日志非常大,那么您要么记录很多,要么您的应用程序丢失了很多错误.您应该首先检查日志,看看是否可以减少正在写入的数据.
您还可以切换到每日日志记录,然后找到删除旧日志文件的作业.
接下来要做的是将日志记录配置更新为每日而不是默认单个 config/app.php
Laravel将处理每天旋转文件并在5天后删除旧的日志文件,或者app.max_log_files如果您需要更多保留的值.
我知道这有点旧,但是:
在 config/logging.php: 在channels部分添加这些:
'none' => [
'driver' => 'monolog',
'handler' => \Monolog\Handler\NullHandler::class,
],
Run Code Online (Sandbox Code Playgroud)
然后更新您的 .env 文件以使用此记录器:
LOG_CHANNEL=none
Run Code Online (Sandbox Code Playgroud)
一切都应该正常工作。