【问题标题】:Enable PHP error logging with Laravel 5.5使用 Laravel 5.5 启用 PHP 错误日志记录
【发布时间】:2018-10-24 05:19:48
【问题描述】:

我无法结合 Laravel 5.5 启用 PHP-FPM 错误记录(NGINX 安装) - 这是我目前在 PHP 设置中所做的:

# /etc/php/7.0/fpm/pool.d/www.conf:
catch_workers_output = yes
# /etc/php/7.0/fpm/php.ini:
log_errors = On
error_log = /var/log/php-errors.log

然后我摸了/var/log/php-errors.log,在上面做了一个chown www-data:www-data

奇怪的是,没有 Laravel,这意味着在其他无 PHP 框架的安装上,上述步骤有效,这就是为什么我假设它是某种 Laravel 设置阻止日志记录?我试图在我的一个控制器中产生一些 PHP 错误 - 但绝对没有记录到 /var/log/php-errors.log。那么,我做错了什么?

【问题讨论】:

  • Laravel 覆盖了默认的异常和错误处理程序,这意味着大多数错误将由 laravel 自己处理。但是,诸如内存不足错误之类的错误将不会由 laravel 处理(因为异常处理程序本身需要内存才能工作并且内存已经用完)。这些错误可能由默认错误处理程序处理。

标签: php laravel logging laravel-5.5


【解决方案1】:

默认情况下,laravel 记录到项目中的 storage/logs 文件夹。

multiple logging configuration options可以选择登录方式和地点。

在 Laravel 5.5 及更低版本中,您可以尝试将 .env 文件中的 APP_LOG 设置为 syslogerrorlog 以将它们放在您的首选文件夹中。

在 laravel 5.6 中,这在您的 .env 文件中重命名为 LOG_CHANNEL

【讨论】:

  • 谢谢,我已经检查过了 - 没有 PHP 错误。它“只是”里面的框架异常。
  • 你触发了什么错误?默认情况下,syntax error, unexpected: x 等 php 错误也应记录在 storage/logs/ 中。
  • 请原谅我的错。事实上,它也包含 PHP 错误。
猜你喜欢
  • 2020-08-20
  • 2011-08-09
  • 2018-11-19
  • 1970-01-01
  • 2011-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-22
相关资源
最近更新 更多