yii怎么手动生成错误日志


具体方法如下:

首先配置错误方法,修改errorHandler参数

(相关推荐:yii框架)

在config/web下,默认为site控制器下的error方法

1

2

3

'errorHandler' => [

            'errorAction' => 'site/error',

        ]

修改为:

1

2

3

'errorHandler' => [

            'errorAction' => 'error/error',

        ]

我习惯于重新创建一个错误方法,根据个人习惯来。

在error控制器里创建actionError,如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

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目录下了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值