您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關yii框架寫日志的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
yii框架如何寫日志?
1、Yii 使用 log 首先需要修改配置文件:
'log' => [ 'traceLevel' => YII_DEBUG ? 3 : 0, 'targets' => [ [ 'class' => 'yii\log\FileTarget', 'levels' => ['error', 'warning'], 'logVars' => ['_GET'], ], ], ],
targets參數解釋:
● class 指定了使用文件保存日志
● levels 指定了保存 error 和 warning 日志
● logVars 指定了保存 get參數
如果不指定 logVars 會保存 GET POST COOKIE SESSION SERVER等參數,這樣會影響到我們的查看,我們可以修改為
'logVars' => ['*'], // 只記錄message
2、使用如下:
Yii::error($message); Yii::warning($message);
將日志寫入到不同的文件
方法一:在需要記錄日志的地方先賦值log文件地址,再寫入日志
Yii::$app->log->targets[0]->logFile = Yii::getAlias('@runtime').DIRECTORY_SEPARATOR.'logs'.DIRECTORY_SEPARATOR.'app2.log'; Yii::warning($message);
方法二(推薦):修改配置文件 main.php
'log' => [ 'traceLevel' => YII_DEBUG ? 3 : 0, 'targets' => [ [ 'class' => 'yii\log\FileTarget', 'levels' => ['error', 'warning'], 'logVars' => ['*'], //'categories' => ['application'], //'logFile' => '@runtime/logs/app.log', ], [ 'class' => 'yii\log\FileTarget', 'categories' => ['pay'], 'levels' => ['error', 'warning'], 'logVars' => ['*'], 'logFile' => '@runtime/logs/pay.log', ], [ 'class' => 'yii\log\FileTarget', 'categories' => ['order'], 'levels' => ['error', 'warning'], 'logVars' => ['*'], 'logFile' => '@runtime/logs/order.log', ], ], ],
使用:
Yii::warning($message,'pay')
此處 message 會記錄到 pay.log中,當然同時也會記錄到默認的 app.log中
你可以 將這段代碼: //’categories’ => [‘application’], 注釋去掉,這樣就只會記錄到各自的log中了。
但是這樣也會導致 一些錯誤信息不能記錄到 app.log中。
感謝各位的閱讀!關于yii框架寫日志的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。