Laravel - 错误处理


大多数 Web 应用程序都有特定的错误处理机制。他们使用这些来跟踪错误和异常,并记录它们以分析性能。在本章中,您将了解 Laravel 应用程序中的错误处理。

要点

在继续详细了解 Laravel 中的错误处理之前,请注意以下要点 -

  • 对于任何新项目,Laravel 默认情况下都会在App\Exceptions\Handler类中记录错误和异常。然后将它们提交回用户进行分析。

  • 当您的 Laravel 应用程序设置为调试模式时,Web 应用程序中发生的每个错误都会显示带有堆栈跟踪的详细错误消息。

错误日志
  • 默认情况下,调试模式设置为false,您可以将其更改为true。这使用户能够通过堆栈跟踪来跟踪所有错误。

应用程序调试
  • Laravel 项目的配置包括调试选项,该选项决定向用户显示多少有关错误的信息。默认情况下,在 Web 应用程序中,该选项设置为.env文件的环境变量中定义的值。

    • 在本地开发环境中该值设置为true ,在生产环境中设置为false 。

    • 如果在生产环境中将该值设置为true,则与最终用户共享敏感信息的风险会更高。

错误日志

在 Web 应用程序中记录错误有助于跟踪错误并规划删除错误的策略。日志信息可以在 Web 应用程序的config/app.php文件中配置。在 Laravel 中处理错误日志时请注意以下几点 -

  • Laravel 使用 monolog PHP 日志库。

  • 用于错误跟踪的日志记录参数是single、daily、syslogerrorlog

  • 例如,如果您希望在日志文件中记录错误消息,则应将应用程序配置中的日志值设置为每日,如以下命令所示 -

'log' => env('APP_LOG',’daily’),
  • 如果参数采用每日日志模式,Laravel默认会记录5 天的错误日志。如果要更改日志文件的最大数量,则必须将配置文件中的log_max_files参数设置为所需的值。

‘log_max_files’ => 25;

严重程度

由于 Laravel 使用 monolog PHP 日志库,因此有各种参数用于分析严重性级别。可用的各种严重性级别包括错误、严重、警报紧急消息。您可以设置严重性级别,如下面的命令所示 -

'log_level' => env('APP_LOG_LEVEL', 'error')