Laravel-测井“;“未找到路线”;
当找不到路由时,我看不到任何日志输出。我在开发模式下运行laravel,当遇到不存在的路径时,我可以看到这个错误Laravel-测井“;“未找到路线”;,laravel,Laravel,当找不到路由时,我看不到任何日志输出。我在开发模式下运行laravel,当遇到不存在的路径时,我可以看到这个错误 "message": "", "exception": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException", "file": "/var/www/html/Customer_Interface/vendor/laravel/framework/src/Illuminate/Routing/RouteC
"message": "",
"exception":
"Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException",
"file":
"/var/www/html/Customer_Interface/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php",
"line": 179,
但是,它不显示任何活动/存储日志。是否仍然可以捕获此异常并将其记录在那里?在
Handler.php
(目录异常中)有一个$dontReport
数组,其中包含不应报告的异常类。据我所知,上面提到的NotFoundHttpException被列为默认值。如果将其从阵列中删除,则相关异常应显示在日志中。默认情况下,Laravel不会报告这些异常:
//src/illumb/Foundation/Exceptions/Handler.php
/**
*不应报告的内部异常类型的列表。
*
*@var数组
*/
受保护的$internalDontReport=[
AuthenticationException::类,
AuthorizationException::类,
HttpException::类,
HttpResponseException::类,
ModelNotFoundException::类,
可疑的OperationException::类,
令牌不匹配异常::类,
ValidationException::类,
];
现在,您可以在app/Exceptions/Handler.php
中导入该数组,然后删除HttpException
和ModelNotFoundException
,或者任何您想要的异常
...
//app/Exceptions/Handler.php
受保护的$internalDontReport=[
AuthenticationException::类,
AuthorizationException::类,
//HttpException::类,
HttpResponseException::类,
//ModelNotFoundException::类,
可疑的OperationException::类,
令牌不匹配异常::类,
ValidationException::类,
];
...
ModelNotFoundException
是指具有类似于route::get('/articles/{article}','ArticleController@single');代码>
并在控制器中指定为功能单一(Article$Article)
且未找到$Article
选择要保留的内容和要注释的内容
第二种方法是在同一Handler.php
文件中的report
方法中执行此操作
/**
*报告或记录异常。
*
*@param\Exception$Exception
*
*@返回无效
*@抛出异常
*/
公共职能报告(例外$Exception)
{
#报告404
if($NotFoundHttpException的异常实例| |$ModelNotFoundException的异常实例){
#日志为警告
日志::警告(“您的消息”);
#或作为信息登录
日志::信息($exception);
// ...
}
....
}
你可以在这里找到更多关于loggin的信息
及
希望这能回答你的问题 我不认为这是一个直接的答案,但我认为这会很有帮助。