我正在使用Yii2进行项目.我有一个消费第三方服务的课程.这个类有两个方法sendRequest和processResponse.我想在实际发送之前在sendRequest中维护有效负载的单独日志,并在进行任何处理之前为processResponse中收到的原始响应数据另一个日志.此外,我希望在两个日志上记录轮换,因为文件可能会无限增长,并希望这两个文件与默认的app.log分开.这可能吗?我如何使用Yii2 API实现这一点?
我最终通过在@ app / config / main.PHP中添加2个额外的文件目标来恢复使用Yii2记录器.文件目标分别有categories = [‘orders’]和[‘pushNotifications’],因此在我的代码中我使用:
Yii::info($message,'pushNotifications');
要么
Yii::info($message,'orders');
这是我的日志配置:
'log' => [ 'traceLevel' => YII_DEBUG ? 3 : 0,'targets' => [ [ 'class' => 'yii\log\FileTarget','levels' => ['error','warning'],],[ 'class' => 'yii\log\FileTarget','levels' => ['info'],'categories' => ['orders'],'logFile' => '@app/runtime/logs/Orders/requests.log','maxFileSize' => 1024 * 2,'maxLogFiles' => 20,'categories' => ['pushNotifications'],'logFile' => '@app/runtime/logs/Orders/notification.log','maxLogFiles' => 50,