繁体   English   中英

如何禁用 Laravel 5 日志文件?

[英]How to disable Laravel 5 log file?

我的Laravel 5网站在具有 1 GB 磁盘空间的共享主机中运行。 但现在我有大约 100 MB 的日志文件。 如何在Laravel 5禁用日志文件

为了完全禁用日志记录,您需要覆盖 Laravel 设置的默认日志处理程序。 你可以很容易地做到这一点

$nullLogger = new NullHandler();
\Log::getMonolog()->setHandlers(array($nullLogger));

您需要在处理请求之前尽早调用,例如,您可以在bootstrap/app.php 中执行此操作:

$app->configureMonologUsing(function($monolog) {
  $nullLogger = new \Monolog\Handler\NullHandler();
  $monolog->setHandlers(array($nullLogger));
});

return $app;

如果您的日志非常大,那么要么您记录了很多日志,要么您的应用程序抛出了很多错误。 您应该首先检查日志,看看是否可以减少写入的数据。

您还可以切换到每日日志记录,然后执行删除旧日志文件的作业。

接下来要做的是将您的日志记录配置更新为每日而不是config/app.php中的默认单次

Laravel 将处理每日轮换文件并在 5 天后删除旧日志文件,或者如果您需要更多保留,则app.max_log_files的值。

我知道这有点旧,但是:

在 config/logging.php 中:在channels部分添加这些:

'none' => [
    'driver' => 'monolog',
    'handler' => \Monolog\Handler\NullHandler::class,
],

然后更新 your.env 文件以使用此记录器:

LOG_CHANNEL=none

一切都应该工作得很好。

最大每日日志文件

当使用每日日志模式时,Laravel 默认只会保留five days的日志文件。 如果你想调整保留文件的数量,你可以在你的app配置文件中添加一个log_max_files配置值:

配置 >> app.php

'log_max_files' => 30

更多信息: https ://laravel.com/docs/5.5/errors

对我来说,wamp 中的文件夹“tmp”增长了 15 giga! 经过一些研究,我发现原因是 xdebug 扩展,我只是简单地调整它不发送来自php.ini的调试信息:

xdebug.profiler_enable = 0

您可以通过注释以下行来禁用写入操作 Log:: 被调用:

Log::useFiles(storage_path().'/logs/laravel.log');

start/global.php

但首先,您应该找出为什么您的日志文件那么大? 其次,为您的文件提供某种存档功能也会有所帮助。 也许一天两次。

希望能帮助到你。 祝你好运!

是的,您肯定需要编辑核心 laravel 文件才能不保存日志文件。

转到 vendor->laravel->framework->src->Illuminate->Log->Writer.php,然后注释掉函数 __call 中的所有代码,如下所示。

public function __call($method, $parameters)
{
    // if (in_array($method, $this->levels))
    // {
    //  call_user_func_array(array($this, 'fireLogEvent'), array_merge(array($method), $parameters));

    //  $method = 'add'.ucfirst($method);

    //  return $this->callMonolog($method, $parameters);
    // }

    // throw new \BadMethodCallException("Method [$method] does not exist.");
}

您的日志将永远不会被保存。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM