Laravel - 错误处理
大多数 Web 应用程序都有特定的错误处理机制。它们使用这些机制来跟踪错误和异常,并记录它们以分析性能。在本章中,您将阅读有关 Laravel 应用程序中的错误处理的内容。
要点
在进一步详细了解 Laravel 中的错误处理之前,请注意以下要点 −
对于任何新项目,Laravel 默认在 App\Exceptions\Handler 类中记录错误和异常。然后将它们提交回给用户进行分析。
当您的 Laravel 应用程序设置为调试模式时,Web 应用程序中发生的每个错误都会显示带有堆栈跟踪的详细错误消息。
默认情况下,调试模式设置为 false,您可以将其更改为 true。这使用户能够使用堆栈跟踪跟踪所有错误。
Laravel 项目的配置包括 debug 选项,该选项决定要向用户显示多少有关错误的信息。在 Web 应用程序中,默认情况下,该选项设置为 .env 文件的环境变量中定义的值。
在本地开发环境中,该值设置为 true,在生产环境中,该值设置为 false。
如果在生产环境中将该值设置为 true,则与最终用户共享敏感信息的风险更高。
错误日志
在 Web 应用程序中记录错误有助于跟踪错误并制定消除错误的策略。可以在 Web 应用程序中的 config/app.php 文件中配置日志信息。在 Laravel 中处理错误日志时请注意以下几点 −
Laravel 使用 monolog PHP 日志库。
用于错误跟踪的日志参数是 single、daily、syslog 和 errorlog。
例如,如果您希望将错误消息记录在日志文件中,则应将应用程序配置中的日志值设置为 daily,如以下命令所示 −
'log' => env('APP_LOG','daily'),
如果将 daily 日志模式作为参数,则 Laravel 默认会记录 5 天 的错误日志。如果您希望更改日志文件的最大数量,则必须将配置文件中的 log_max_files 参数设置为所需值。
'log_max_files' => 25;
严重性级别
由于 Laravel 使用 monolog PHP 日志库,因此有各种参数用于分析严重性级别。可用的各种严重性级别包括 error、critical、alert 和 emergency messages。您可以按照以下命令设置严重性级别 −
'log_level' => env('APP_LOG_LEVEL', 'error')