十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章主要介绍了yii手动生成错误日志的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

具体方法如下:
首先配置错误方法,修改errorHandler参数
在config/web下,默认为site控制器下的error方法
'errorHandler' => [ 'errorAction' => 'site/error', ]
修改为:
'errorHandler' => [ 'errorAction' => 'error/error', ]
我习惯于重新创建一个错误方法,根据个人习惯来。
在error控制器里创建actionError,如下:
public function actionError(){
$error = \Yii::$app->errorHandler->exception;
$error_msg = '';
if($error){
$filed = $error->getFile(); //获取错误文件
$line = $error->getLine(); //获取错误行数
$message = $error->getMessage(); //获取错误消息
$code = $error->getCode(); //获取错误码
$log = new FileTarget();
$log->logFile = \Yii::$app->getRuntimePath() . "/log/error.log"; //生成文件到log目录下
$error_msg = $message ." [file:{$filed}][line:{$line}][message:{$message}][code:{$code}][url:{$_SERVER['REQUEST_URI']}][POST_DATA:".http_build_query($_POST)."]";
$log->messages[] = [
$error_msg,
1,
'applicition',
microtime( true )
];
$log->export();
}
return $error_msg;
}这样错误日志就会生成在runtime/log目录下了。
感谢你能够认真阅读完这篇文章,希望小编分享yii手动生成错误日志的方法内容对大家有帮助,同时也希望大家多多支持创新互联网站建设公司,,关注创新互联行业资讯频道,遇到问题就找创新互联网站建设公司,,详细的解决方法等着你来学习!